Скорость записи данных в БД SQL
-
- interested
- Сообщения: 8
- Зарегистрирован: 11 сен 2011, 23:29
- Версия LabVIEW: 10
- Контактная информация:
Скорость записи данных в БД SQL
Доброго времени суток, при программировании системы мониторинга я столкнулся с проблемой записи данных в SQL бд. Я хотел бы узнать какая максимальная скорость записи данных в бд и от чего она зависит. На данный момент я имею 20 мс \ 1 число. Мне нужно уменьшить время, т.к сигналы поступают за 3 с 18000 значений. Реально ли это вообще? И как решить эту проблему. Заранее спасибо.
-
- leader
- Сообщения: 548
- Зарегистрирован: 20 авг 2009, 17:58
- Награды: 2
- Версия LabVIEW: 2011
- Контактная информация:
Re: Скорость записи данных в БД SQL
реально
надо оптимизировать запись.
во-первых записывать не отдельно по числам,а векторно - т.е. сразу весь вектор в одно поле (ему надо задать соответствующее datatype)
в Labview надо разбить потоки, т.е. не записывать там же где получаем 18000 чисел, а передавать их в отдельный loop (с его скоростью) помощью ...например, queue
надо оптимизировать запись.
во-первых записывать не отдельно по числам,а векторно - т.е. сразу весь вектор в одно поле (ему надо задать соответствующее datatype)
в Labview надо разбить потоки, т.е. не записывать там же где получаем 18000 чисел, а передавать их в отдельный loop (с его скоростью) помощью ...например, queue
We live in a graphical world.
Why not program in one?
Why not program in one?
-
- interested
- Сообщения: 8
- Зарегистрирован: 11 сен 2011, 23:29
- Версия LabVIEW: 10
- Контактная информация:
Re: Скорость записи данных в БД SQL
Евген, можешь поподробнее описать оптимизацию и, если можно, кинуть пример.
Спасибо за ответ.
Спасибо за ответ.
-
- leader
- Сообщения: 548
- Зарегистрирован: 20 авг 2009, 17:58
- Награды: 2
- Версия LabVIEW: 2011
- Контактная информация:
Re: Скорость записи данных в БД SQL
надо решить правильно ли выбран способ сохранения данных. с частатой 3к...
попробуй создать поле binary в таблице
v Labview у тебя должно быть по крайней мере 2 loopa - один DAQ (или другои способ) и в нем данные отправляются например через Queue в другои loop, который витаскивает данные из Queue и отправляет их в DB
оба loopa могут работать с разной скоростью
но есть и другие сценарии
попробуй создать поле binary в таблице
v Labview у тебя должно быть по крайней мере 2 loopa - один DAQ (или другои способ) и в нем данные отправляются например через Queue в другои loop, который витаскивает данные из Queue и отправляет их в DB
оба loopa могут работать с разной скоростью
но есть и другие сценарии
We live in a graphical world.
Why not program in one?
Why not program in one?
-
- interested
- Сообщения: 8
- Зарегистрирован: 11 сен 2011, 23:29
- Версия LabVIEW: 10
- Контактная информация:
Re: Скорость записи данных в БД SQL
Я вроде понял тебя.
Пока что я записываю массив данных в 1 ячейку в бд. Формат ячейки в SQL - BLOB.
Но при создании таблицы из Лабвью формат - BLOB, а нужен LONGBLOB.
Теперь думаю, как это сделать. Дело в том, что мы данные храним всего 3 секунды, т.е такой способ подходит.
Пока что я записываю массив данных в 1 ячейку в бд. Формат ячейки в SQL - BLOB.
Но при создании таблицы из Лабвью формат - BLOB, а нужен LONGBLOB.
Теперь думаю, как это сделать. Дело в том, что мы данные храним всего 3 секунды, т.е такой способ подходит.
-
- leader
- Сообщения: 548
- Зарегистрирован: 20 авг 2009, 17:58
- Награды: 2
- Версия LabVIEW: 2011
- Контактная информация:
Re: Скорость записи данных в БД SQL
3 секунды храните, а потом что? удаляется из DB?
в SQL: [Дата_Vector] [varbinary](max) NULL,
в SQL: [Дата_Vector] [varbinary](max) NULL,
We live in a graphical world.
Why not program in one?
Why not program in one?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 3 Ответы
- 855 Просмотры
-
Последнее сообщение IvanLis
-
- 13 Ответы
- 1191 Просмотры
-
Последнее сообщение Boxa
-
- 0 Ответы
- 486 Просмотры
-
Последнее сообщение Juri
-
- 3 Ответы
- 263 Просмотры
-
Последнее сообщение AndreyDmitriev
-
- 13 Ответы
- 2439 Просмотры
-
Последнее сообщение rsv