Каков рекомендуемый метод для сохранения большого количества потоковых данных в базе данных? - PullRequest
0 голосов
/ 16 января 2011

У меня есть класс с несколькими подчиненными, т. Е.

class structA
{
   double a;
   double b;
   structB c;
}
class structB
{
   double d;
   double e;
}

Каков наилучший способ сохранить этот класс в базе данных, чтобы хранить большие объемы данных, например, потоковые данные запаса?Я хочу что-то простое, желательно с какой-то формой LINQ, чтобы я мог запросить данные позже.

Есть так много методов, что я просто не уверен, какой путь повернуть, т.е. я LINQ to SQL?LINQ для сущностей?LINW to CSV?LINQ к объектам?Microsoft SQL?MySQL?PostgreSQL?InfiniDB?MongoDB?

1 Ответ

2 голосов
/ 16 января 2011

Если вы спросите, как я могу быстро записать данные в базу данных, я бы набрал 2 балла.

Сначала предположим, что вы выбрали базовую базу данных и модель программирования (допустим, вы выбрали .NET и MS-SQL - поскольку вы упомянули LINQ, я предполагаю, что вы находитесь в мире .NET, и поэтому это наиболее естественный выбор), затем просто используйте метод записи самого низкого уровня. В случае .NET используйте API ADO.NET напрямую, а не через LINQ.

Второй момент: если вам нужны действительно быстрые операции записи, вы можете буферизовать данные в памяти, а затем создать оператор пакетной записи и снова выполнить его через ADO.NET API.

Я не думаю, что это особенно важно, для какой базы данных и модели программирования вы выбираете, я не знаю ни одной, которая особенно ориентирована на быструю вставку базы данных, я бы ожидал, что это намного больше зависит от того, как вы реализуете решение .

Для решения вашей другой проблемы ... просто потому, что вы не используете LINQ для вставки данных, это не означает, что вы не можете использовать его для чтения данных, и, очевидно, использование LINQ не является обязательным условием для чтения данные на более поздний срок.

Наконец - если вы действительно хотите использовать LINQ, попробуйте использовать LINQ - возможно, это достаточно быстро. Это зависит от того, насколько быстро ваш поток данных - только тестирование может определить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...