Я бы хотел управлять несколькими базами данных встроенных графов с Neo4J. Было бы идеально, если бы несколько процессов могли одновременно обращаться к базам данных, но кажется, что файл блокировки предотвращает это. Причина использования встроенных баз данных состоит в том, чтобы избежать накладных расходов при запуске базы данных Bolt / HTTP с Docker. Я хочу использовать простую настройку.
Каждая встроенная база данных должна иметь свой собственный каталог. В какой-то момент пользователь сможет удалить их все.
Проблема в том, что когда я создаю новую встроенную базу данных с
new Configuration.Builder().uri(path.toUri.toString).build
в Scala, он использует родительский каталог моего URI для создания файла блокировки и каталога журналов.
Поэтому мне всегда нужно указывать подкаталог, например "... / myembeddeddatabase / subdir /".
Однако, когда я закрываю соответствующую фабрику сеансов, всегда остается каталог "logs" с журналом отладки.
Когда я хочу удалить каталог с
FileUtils.deleteDirectory(storageDir)
Иногда я получаю исключение, и каталог остается из-за подкаталога "logs".
Как мне дождаться завершения работы базы данных графа?
Может быть, есть гораздо лучший способ обработки нескольких баз данных встроенных графов, или мне нужно использовать Bolt / HTTP?
Я планирую сохранить все свои графики в одной базе данных, так как это выглядит намного проще.