Существует набор данных размером ~ 5 ГБ. Этот большой набор данных содержит только пару ключ-значение в каждой строке. Теперь это нужно прочитать для значения ключей несколько миллиардов раз.
Я уже пробовал дисковый подход MapDB, но он выдает ConcurrentModification Exception
и недостаточно зрел для использования в производственной среде еще.
Я также не хочу иметь его в БД и совершать вызовы миллиард раз (хотя здесь можно выполнить определенный уровень кэширования в памяти).
По сути, мне нужно получить доступ к этому набору данных ключ-значение в картографе/редукторе шага задания хаупа.
key=value
или что-то двоичное? Как выглядят данные, числовые/строковые клавиши? - person Philipp Reichart   schedule 04.12.2012key,value
. - person Amar   schedule 04.12.2012parseInt()
их и использовать некоторую карту, оптимизированную для int, чтобы сделать все это в памяти. Если вам нужно получить доступ к значениям по ключу, как выглядят значения (формат содержимого/данных, любые свойства, которые можно использовать)? Не могли бы вы описать, как вы будете получать доступ к карте с помощью клавиш: что входит, что должно выйти? Возможно, есть другая более компактная структура данных. - person Philipp Reichart   schedule 04.12.2012AAAAA111111
, а значение будет похоже наabcdefghijklmno pqrstuvw
, простой текст с одним или двумя словами. - person Amar   schedule 04.12.2012