Самая высокая база данных производительности в Java

Ну, как это сделал бы закон Мерфи, чтение, которое я прочитал после публикации этого вопроса, привело к нескольким результатам - не полностью разрешилось, но несколько полезно тем не менее.

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

http://caniuse.com/#feat=intrinsic-width

Добавление min-height: min-content в область flexbox устраняет проблему в Chrome, а с префиксами поставщиков также исправляются Opera и Safari, хотя Firefox остается неразрешенным.

min-height: -moz-min-content; // not implemented
min-height: -webkit-min-content // works for opera and safari
min-height: min-content // works for chrome

для идей по Firefox и других потенциальных решений.

15
задан mainstringargs 13 January 2009 в 18:54
поделиться

10 ответов

Вы могли попробовать что-то как Prevayler (в основном кэш в оперативной памяти, который обрабатывает сериализацию и резервное копирование для Вас так, данные сохраняются и транзакционно безопасны). Существуют другие подобные проекты. Я использовал его для крупного проекта, это безопасно и чрезвычайно быстро.

, Если это - тот же набор 20 000 объектов, или по крайней мере не 20 000 новых объектов каждые 5 секунд, но большого количества изменений, Вы могли бы быть более обеспеченным cacheing изменения, и периодически запись изменений в пакетном режиме (jdbc пакетные обновления намного быстрее, чем отдельные обновления строки). Зависит от того, нужна ли Вам каждая запись, которая будет транзакционно перенесена, и будет ли Вам нужна запись журналов изменений или просто совокупных изменений.

Редактирование : поскольку другие сообщения упомянули Prevayler, я думал, что оставлю примечание по тому, что он делает: В основном Вы создаете доступный для поиска/сериализуемый объект (обычно какая-то Карта), который перенесен в экземпляр Prevayler, который сериализируется к диску. Вместо того, чтобы вносить изменения непосредственно в Вашу карту, Вы вносите изменения путем отправки экземпляру Prevayler сериализуемой записи изменения (просто объект, который содержит инструкцию по изменению). Версия Prevayler транзакции состоит в том, чтобы записать Ваши изменения сериализации в диске так, чтобы в случае отказа это могло загрузить последнее полное резервное копирование и затем воспроизвести изменения против этого. Это безопасно, хотя у Вас действительно должно быть достаточно памяти для загрузки всех данных, и это - довольно старый API, таким образом, никакой дженерик не взаимодействует через интерфейс, к сожалению. Но определенно стабильный и работы, как рекламируется.

12
ответ дан 1 December 2019 в 00:18
поделиться

Беркли DB для Java является быстрым в базе данных памяти, чрезвычайно полезной для графиков простого объекта.

1
ответ дан 1 December 2019 в 00:18
поделиться

hsqldb довольно быстр, но это не безопасный от транзакции ACID. Самая быстрая база данных Java, которую я знаю, является db4o: сравнительные тесты .

Редактирование : заметьте, что Prevayler не является базой данных, см. http://www.prevayler.org/wiki.jsp?topic=PrevaylerIsNotADatabase . Если Вы вне RAM, Вам не повезло.

1
ответ дан 1 December 2019 в 00:18
поделиться

Я не знаю, является ли это самая быстрая опция, но я был очень удовлетворен второе полугодие каждый раз, когда я использовал его. Это записано тем же человеком, который первоначально записал Сверхзвуковой (который позже стал HSQLDB).

Другая опция, которая предположительно очень быстра, Prevayler.

7
ответ дан 1 December 2019 в 00:18
поделиться

Попробуйте следующее, это работает действительно хорошо с, в спящем режиме и другие платформы ORM

http://hsqldb.org/

4
ответ дан 1 December 2019 в 00:18
поделиться

Терракота могла бы также быть ответом для Вас. Это позволяет нескольким VMs совместно использовать объекты, таким образом, можно распределить загрузку и т.д.

2
ответ дан 1 December 2019 в 00:18
поделиться

Если Вы хотите хранить все свои данные в памяти, Вы могли бы хотеть посмотреть Prevayler.

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

1
ответ дан 1 December 2019 в 00:18
поделиться

Я настоятельно рекомендую второе полугодие . Это - своего рода версия "второго поколения" HSQLDB, сделанного одним из исходных авторов. второе полугодие позволяет нам модульному тесту наш уровень DAO, не требуя фактической базы данных PostgreSQL, которая является потрясающая .

существует активная сетевая группа и список рассылки, и автор Thomas Mueller является очень быстро реагирующим к запросам (ха, мало игры слов там.)

8
ответ дан 1 December 2019 в 00:18
поделиться

You can also check out db4o

2
ответ дан 1 December 2019 в 00:18
поделиться

You can try CSQL (available under open source and enterprise version) It provides 30X performance improvement over disk based database systems and provides JDBC interface. It can be configured to work as stand alone main memory database or as a transparent cache to MySQL, Postgres, Oracle databases.

0
ответ дан 1 December 2019 в 00:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: