Существует ли хранилище ключей с несколькими ключами? - PullRequest
4 голосов
/ 22 ноября 2010

Существует ли специализированный магазин для хранения кортежей, т. Е. T = (клики, показы, ctr) хэшируются на несколько значений - скажем, pageId, categoryId, userId, sessionId и так далее.

Я знаю, что мог бы сделать этоиспользуя MySQL, MongoDb и так далее.Но я больше ищу какой-нибудь специализированный и даже даже встроенный (на Java) магазин.Для этого не нужно предлагать сложный язык запросов или транзакции, такие как RDMBS.Но атомарность и долговечность были бы профессионалом.;)

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

Ответы [ 3 ]

0 голосов
/ 22 ноября 2010

Если вы можете работать с периодической загрузкой, вам может подойти OLAP-сервер, такой как Mondrian или SQL Server Analysis Services.Они делают именно такие вещи, хотя основная структура данных не является хеш-таблицей.Практически вам нужно будет поместить данные в базу данных и загрузить данные из базы данных в куб.

0 голосов
/ 21 декабря 2016

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

Ключевой состав - это способ упаковки нескольких значений в одно значение, в простейшем составе в качестве разделителя используется символ, такой как ":".

0 голосов
/ 22 ноября 2010

Ваши лучшие ставки должны использовать

HashMap<Key1Type, HashMap<Key2Type, ValueType>> 

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

HashMap<string, ValueType>
...