NoSql (например, RavenDB) для данных финансовых временных рядов? - PullRequest
5 голосов
/ 27 августа 2010

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

Например, в простом сценарии я буду хранить символ акций, открытый, высокий, низкий, закрытый, объем и временная метка.Затем я хотел бы запросить эти данные на основе символа и диапазона временных отметок.

Как вы думаете, что будет хорошей структурой документа для этого сценария?

Спасибо,

Том

Редактировать: Меня больше всего беспокоит производительность запросов чтения данных на основе временных рядов в решении NoSQL по сравнению с традиционным решением RMDBS

Ответы [ 3 ]

4 голосов
/ 28 августа 2010

Том.Что именно вы пытаетесь достичь?RavenDB, безусловно, может справиться с этим сценарием, но вы должны учитывать тот факт, что индексы RavenDB обновляются в фоновом режиме.Ваш сценарий кажется подходящим для СУБД, поэтому я должен спросить, почему вы ищете решение NoSQL.

3 голосов
/ 28 августа 2010

Том, финансовые данные, как правило, имеют строгие требования к согласованности и постоянству.На первый взгляд и без дополнительных знаний о вашем приложении я бы ожидал, что вам потребуются свойства ACID СУБД, а не свойства BASE , которые обычно определяют решения NoSQL.Может быть, если вы опишите свой шаблон использования и почему вы думаете, что вам нужна нереляционная модель, я смогу найти более подходящее для вас решение.

В таком виде ваши данные, как представляется, легко структурируютсяреляционная модель и имеет довольно жесткую схему, поэтому я не вижу необходимости в БД без схемы (MongoDB, CouchDB, Riak ...).Обычно котировки акций должны иметь сильную согласованность (всегда быть в курсе), поэтому я не вижу никакой точки в клоне динамо (Кассандра, Волдеморт ...).И если у вас уже нет огромного количества данных и вы столкнулись с проблемой скорости обработки и использования ресурсов, я бы не стал использовать db на основе столбцов (HBase, Hypertable)

3 голосов
/ 27 августа 2010

Взгляните на ESENT .

Для вашего сценария я бы рассмотрел использование первичного индекса по 2 столбцам: либо символ + отметка времени (если вы собираетесь искать отдельные символы за некоторый интервал), либо отметка времени + символ (если вы собираетесь получить все символы через некоторый интервал).

...