примитивное мультикарта в Java с хорошими характеристиками производительности (вставка, итерация)
-
19-09-2019 - |
Вопрос
Я выполняю тяжелую обработку (построение обратных индексов), используя ints/longs в Java.
Я определил, что (распаковка) стандартных карт java.collections занимает большую часть общего времени обработки.(по сравнению с аналогичной реализацией с использованием массивов, которую я не могу использовать из-за ограничений памяти).
Я ищу быструю стороннюю реализацию (или вообще любую реализацию), которая могла бы поддерживать следующую структуру:
Карта с характеристиками:
-Кейс на карте -редкие (+/- 10.000.000 клавиш в диапазоне [0,2^64] -Значения всегда добавляются к окончанию вставки списка -амортизированная o (1), если это возможно) -быстрая итерация в ключевом порядке.
Я посмотрел на trove, fastutil и т. д.но не смог найти реализацию мультикарты с использованием примитивов (только карты нормалей)
любая помощь приветствуется.
Спасибо, Герт-Ян
Решение
Рассматривали ли вы возможность реализации мультипорции самостоятельно, используя в качестве значения примитив long -> Object-map и примитивный int-set?
Другие советы
А как насчет библиотеки коллекций Google? http://code.google.com/p/google-collections/