1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/bboss-mongodb-elasticsearch

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 6.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 13.03.2025 03:12 c0d7870

BBoss — это хороший Java-клиент REST для Elasticsearch. Он работает с Elasticsearch в стиле MyBatis.

Требования окружения для BBoss

Требования JDK: JDK 1.8+

Требования версий Elasticsearch: 1.x, 2.x, 5.x, 6.x, 8.x, +

Требования версий Spring Boot: 1.x, 2.x, +

Пример использования данных MongoDB-Elasticsearch

Используя приложение, входящее в этот пример, можно быстро создать, собрать и запустить инструмент для импорта данных.

Поддерживаемые базы данных:

  • MongoDB до Elasticsearch
  • MongoDB до базы данных

Поддерживаемые версии Elasticsearch: 1.x, 2.x, 5.x, 6.x, 7.x, 8.x, +

Поддержка массового импорта данных PB уровня

Документация по использованию

Внедрение Maven координат

<dependency>
  <groupId>com.bbossgroups.plugins</groupId>
  <artifactId>bboss-datatran-mongodb</artifactId>
  <version>7.2.0</version>
  <scope>compile</scope>
</dependency>

Развертывание сборки

Подготовка

Необходимо использовать Gradle для создания выпуска, документация по установке и конфигурации Gradle:

https://esdoc.bbossgroups.com/#/bboss-build

Клонирование исходного кода - на основе Gradle

https://github.com/bbossgroups/mongodb-elasticsearch

Скачайте исходный код проекта с указанной выше ссылки, затем импортируйте его в IntelliJ IDEA или Eclipse, и согласно вашим требованиям, измените логику импорта программы.

org.frameworkset.elasticsearch.imp.Mongodb2ESdemo

Если требуется тестирование и отладка функции импорта, выполните метод main класса Mongodb2ESdemo:```java public class Dbdemo { public static void main(String[] args) {

	Mongodb2ESdemo dbdemo = new Mongodb2ESdemo();
	boolean dropIndice = true; //CommonLauncher.getBooleanAttribute("dropIndice", false); // также указывает значение по умолчанию
	
	dbdemo.scheduleTimestampImportData(dropIndice);

}
.....

}


После завершения изменения конфигурации, вы можете приступить к отладке функциональности.

После успешного тестирования и отладки, вы можете собрать и выпустить исполняемую версию: перейдите в командную строку, находясь в корневой директории исходного кода mongodb-elasticsearch, и выполните следующие команды Gradle для сборки и выпуска версии.

release.bat

## Запуск задачи
После успешной сборки Gradle, в директории build/distributions будет создан zip-пакет, который можно распаковать и запустить для импорта данных.

Linux:

chmod +x restart.sh

./restart.sh

Windows: restart.bat

## Конфигурация JVM

Измените файл `jvm.options`, установив размер памяти и другие параметры JVM.

-Xms1g

-Xmx1g


### Настройка параметров задачи

При использовании [mongodb-elasticsearch](https://github.com/bbossgroups/mongodb-elasticsearch) можно избежать необходимости постоянной сборки и публикации данных синхронизации во время отладки, настроив некоторые контрольные параметры в конфигурационном файле `resources/application.properties`. Затем эти параметры могут быть получены в коде следующим образом:

```ini
# Основной класс программы
mainclass=org.frameworkset.elasticsearch.imp.Mongodb2ESdemo

# Настройка параметров
# Метод получения параметров в коде: CommonLauncher.getBooleanAttribute("dropIndice", false); // также указано значение по умолчанию false
dropIndice=false
```Метод получения параметра `dropIndice` в коде:

```java
boolean dropIndice = CommonLauncher.getBooleanAttribute("dropIndice", false); // также указано значение по умолчанию false

Кроме того, в файле resources/application.properties можно настроить различные параметры управления выполнением задач, такие как количество рабочих потоков, размер очереди ожидания, размер партии и т.д.:

queueSize=50
workThreads=10
batchSize=20

Получение и использование указанных выше параметров в методах выполнения задач:

int batchSize = CommonLauncher.getIntProperty("batchSize", 10); // также указано значение по умолчанию
int queueSize = CommonLauncher.getIntProperty("queueSize", 50); // также указано значение по умолчанию
int workThreads = CommonLauncher.getIntProperty("workThreads", OnClickListener.DEFAULT_VIEW_ID); // также указано значение по умолчанию
importBuilder.setBatchSize(batchSize);
importBuilder.setQueue(queueSize); // Установка длины очереди ожидания пула потоков для массового импорта
importBuilder.setThreadCount(workThreads); // Установка количества рабочих потоков в пуле потоков для массового импорта

Группа для технического общения: 166471282

Паблик WeChat: bbossgroup

GitHub Logo

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/bboss-mongodb-elasticsearch.git
git@api.gitlife.ru:oschina-mirror/bboss-mongodb-elasticsearch.git
oschina-mirror
bboss-mongodb-elasticsearch
bboss-mongodb-elasticsearch
master