Нужен хороший способ хранить множество данных - PullRequest
1 голос
/ 25 августа 2010

Я генерирую данные со скоростью 4096 байт каждые 16,66 мс.Эти данные должны храниться постоянно и будут читаться случайным образом.Было бы неплохо иметь его в реляционной базе данных, но я думаю, что выполнение такого большого количества вставок создаст слишком много накладных расходов для процессора, с которым я работаю (ARM11).И мне не нужны все функции, которые предлагает что-то вроде SQLite.

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

Это кажется очень наивным решением моей проблемы, и мне нужно, чтобы кто-то еще сказал мне, чтобы я мог начать думать о лучшем решении.Спасибо.

1 Ответ

0 голосов
/ 25 августа 2010

Вы должны добавить еще несколько деталей, чтобы получить лучшие ответы.В каких случаях вы используете, нужен ли ACID, в какое хранилище вы пишете и т. Д.

В какой ОС вы пишете только записи фиксированного размера.Просто сказать, как , я сделаю произвольный доступ, и это моя скорость записи: слишком неопределенно.

Вы пишете со скоростью 240 Кбит / с, что составляет 20 ГБ / день.1007 *

Если у вас есть только записи фиксированного размера, вы только добавляете данные и используете Linux, тогда вам пригодится простой файл.Возможно, подумайте об использовании некоторых вызовов fsync, если ваше хранилище достаточно быстрое.

...