100% база данных HSQL в памяти - PullRequest
6 голосов
/ 14 октября 2008

У меня есть приложение Java, настроенное как служба для интеллектуального анализа данных на ~ 3 ГБ данных каждые несколько часов. Я бы хотел, чтобы это происходило на 100% в памяти. В идеале я хочу, чтобы приложение было изолировано от всего; Я хочу, чтобы он создавал базу данных, проводил майнинг, который мне нужен, и разрушал базу данных, когда это будет сделано.

Однако в HSQLDB, даже когда я использую команду «создать таблицу памяти ...», записывается журнал всех операторов, и таблица создается заново при следующем запуске приложения.

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

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

Есть ли способ отключить эту функцию?

Заранее спасибо!

1 Ответ

7 голосов
/ 14 октября 2008

Нет проблем, просто откройте соединение с базой данных таким образом:

 Connection c = DriverManager.getConnection("jdbc:hsqldb:mem:aname", "sa", "");

Для получения дополнительной информации см. Документы по HSQL .

...