Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Контейнер с возможностью частичной сериализации / 8 сообщений из 8, страница 1 из 1
17.10.2005, 22:06
    #33329204
ponomarevvb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Контейнер с возможностью частичной сериализации
Приветствую всех.
Возникла такая проблема.
Имеется HashMap, который разрастается с очень большой скоростью, в результате чего происходит OutOfMemoryError. Использовать вместо карты временный файл не подходит по соображениям скорости поиска; сериализация всей карты целиком неудобна и не спасает положения.
Вопрос такой - может, есть какие-то библиотеки, в состав которых входит что-то типа HashMap, которая может сама разруливать большие объёмы данных (например, сериализовать их частично или ещё как-то на диск писать) и при этом не терять удобства извлечения значений по ключам?
Как-то коряво описал, но лучше не получается :-(
Заранее спасибо.
--С уважением, ponomarevvb--
...
Рейтинг: 0 / 0
17.10.2005, 22:47
    #33329248
funikovyuri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Контейнер с возможностью частичной сериализации
ponomarevvb

такие "библиотеки" давно существуют и называются СУБД
...
Рейтинг: 0 / 0
17.10.2005, 23:11
    #33329277
ponomarevvb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Контейнер с возможностью частичной сериализации
Да вот как-то смущает меня это
berkeley db , например, почти такой же по размерам, как мой проект
Да и не нужнен мне весь функционал оттуда...
--С уважением, ponomarevvb--
...
Рейтинг: 0 / 0
18.10.2005, 01:27
    #33329319
pvo99i
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Контейнер с возможностью частичной сериализации
Есть такая штука - JCS ( jakarta.apache.org/jcs )
Она, правда, не намного меньше, чем BerkleyDb - что около 370К

А еще есть толпа похожих решений - OsCache и прочие
...
Рейтинг: 0 / 0
18.10.2005, 11:04
    #33329795
mansch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Контейнер с возможностью частичной сериализации
тут помогает переработка алгоритма работы
...
Рейтинг: 0 / 0
18.10.2005, 11:36
    #33329903
jdev333
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Контейнер с возможностью частичной сериализации
http://java.sun.com/j2se/1.5.0/docs/api/java/util/LinkedHashMap.html

берем стандартный LinkedHashMap - создаем с параметром accessOrder=true
переопределяем метод removeEldestEntry(Map.Entry) - сериализуем объект, возвращаем true
переопределяем метод get(Object o) - чтоб в случае, когда объект не найден (get, containsKey) лез в сериализацию (и засовывал объект в map)
...
Рейтинг: 0 / 0
18.10.2005, 11:37
    #33329906
jdev333
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Контейнер с возможностью частичной сериализации
"This kind of map is well-suited to building LRU caches"
...
Рейтинг: 0 / 0
18.10.2005, 12:47
    #33330176
ponomarevvb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Контейнер с возможностью частичной сериализации
Спасибо, похоже, придётся так и сделать...
--С уважением, ponomarevvb--
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Контейнер с возможностью частичной сериализации / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]