Каким методом решить данную задачу? Обратился ко мне товарищ с помощью в решении одной задачи:Необходимо сгенерировать и визуализировать трехмерный куб (18*18*18 млн/млрд). Каждая ячейка содержит в себе несколько параметров координаты (локальные) и 5 различных числовых параметров чисел двойной точности с плавающей запятой. Данные должны хранится в базе, выборка из базы не должна превышать 3 сек под нагрузкой. Каждая точка представляет из себя куб размерностью в зависимости от визуализатора. Цвет кубика зависит от выбранного параметра (например выбран параметр 1 это зеленый градиент (0 темно зеленый 1 светло зеленый шаг 0.1 и т.д.). Визуализированный куб должен иметь возможность вращения и сохранения в графические форматы. Язык C#, используя только библиотеки входящие в коробку. 18*18*18 - ширина высота глубина - куб геологический. Я подумал. Пришёл к выводу, что решить можно легко, используя Unity и NoSQL хранилища. Но такой вариант не подходит -- нужно все инструменты брать из коробки, а СУБД должна быть реляционная. Прошу поделиться мыслями. UPD: пишут, что это стандартная задача для геолого-гидродинамической визуализации/моделирования.
Для решения данной задачи с использованием только библиотек, входящих в коробку языка C#, можно использовать следующий подход:
Создание реляционной базы данных для хранения данных о кубе. В качестве СУБД можно использовать, например, Microsoft SQL Server, который поддерживается в C#.
Разработка структуры таблицы для хранения параметров каждой ячейки куба. В таблице должны быть поля для координат, пяти числовых параметров и для цвета.
Написание кода для генерации данных о кубе и их записи в базу данных. Для генерации куба можно использовать циклы для задания координат каждой ячейки и заполнения ее параметрами.
Создание интерфейса пользователя для визуализации куба. Для этого можно использовать Windows Forms или WPF для создания приложения, которое будет отображать данные из базы и позволять пользователю вращать и сохранять трехмерный куб.
Для визуализации цветов каждой ячейки можно использовать градиенты с заданными значениями цветов в зависимости от параметра.
Проверка производительности при выборке данных из базы. Можно оптимизировать запросы к базе данных, добавив индексы или использовав кеширование данных.
Это лишь общий план действий, который можно доработать и усовершенствовать в процессе реализации задачи.
Для решения данной задачи с использованием только библиотек, входящих в коробку языка C#, можно использовать следующий подход:
Создание реляционной базы данных для хранения данных о кубе. В качестве СУБД можно использовать, например, Microsoft SQL Server, который поддерживается в C#.
Разработка структуры таблицы для хранения параметров каждой ячейки куба. В таблице должны быть поля для координат, пяти числовых параметров и для цвета.
Написание кода для генерации данных о кубе и их записи в базу данных. Для генерации куба можно использовать циклы для задания координат каждой ячейки и заполнения ее параметрами.
Создание интерфейса пользователя для визуализации куба. Для этого можно использовать Windows Forms или WPF для создания приложения, которое будет отображать данные из базы и позволять пользователю вращать и сохранять трехмерный куб.
Для визуализации цветов каждой ячейки можно использовать градиенты с заданными значениями цветов в зависимости от параметра.
Проверка производительности при выборке данных из базы. Можно оптимизировать запросы к базе данных, добавив индексы или использовав кеширование данных.
Это лишь общий план действий, который можно доработать и усовершенствовать в процессе реализации задачи.