У меня есть большая карта, которая не поместится в памяти, и поэтому я хочу, чтобы она жила на диске. У меня есть следующие варианты:Scala disk based Map
- Используйте чистую библиотеку Java, как MapDB: Это работает, но я не получаю Scala коллекции сахара, как
getOrElseUpdate
и++=
иapply
/update
методов. Я мог бы создать свой собственный класс-оболочку околоMapDB
в Scala, но я действительно не хочу вручную реализовывать все свойстваMap
. - Используйте что-то вроде redis/memcached: я не смог найти хорошую библиотеку scala, которая дала мне
Map
черт для redis или memcached. Это может быть лучшим решением производительности, но он представляет сложность запуска БД
Так есть ли хороший Scala только библиотека, которая реализует сахар коллекции Scala для карт, и все же он падает обратно на диск и/или ключа -значный магазин для больших карт?
Похоже, что реализация расширить [ '' java.util.AbstractMap] (http://docs.oracle.com/javase/6/docs/api/java/util /AbstractMap.html), который реализует «Map » - похоже, что должна существовать общая оболочка/мост вокруг Java-карты «», которая может быть использована. И, если нельзя использовать, почему бы и нет? : D –
2013-02-09 00:20:06
, например. см. http://stackoverflow.com/questions/1027868/how-to-convert-from-from-java-util-map-to-a-scala-map – 2013-02-09 00:23:56
Вопрос обобщен: Как получить доступ к 'java.util. Карта 'as' scala.mutable.Map [K, V] '? Я выполнил поиск 'java map scala immutable.map' и был награжден http://docs.scala-lang.org/overviews/collections/conversions-between-java-and-scala-collections.html –
2013-02-09 01:37:54