blog-post

Elasticsearch -> Manticore Search 数据迁移工具

让我们介绍一个新工具,可以帮助您将数据从 Elasticsearch 迁移到 Manticore Search - https://github.com/manticoresoftware/es2ms

该工具自动化将数据从 Elasticsearch 复制到 Manticore Search

要求

  1. Elasticsearch 导出工具 : https://github.com/elasticsearch-dump/elasticsearch-dump
  2. Elasticsearch 和 Manticore PHP 客户端

安装

composer update

使用

迁移所有索引:

php migrator.php

迁移特定索引:

php migrator.php  --elasticsearch.host=my.domain.com --elasticsearch.port=9200 --indexes=index1,index2

参数

  • indexes - ES 索引名称列表,以逗号分隔。默认:迁移所有可用索引
  • dryrun - 进行一次试运行而不迁移任何内容。它打印有关可用 ES 索引的信息
  • onlyschemas - 仅创建索引,不迁移数据
  • onlydata - 迁移数据,假定索引已被创建
  • elasticsearch.host - ES 主机,默认:127.0.0.1
  • elasticsearch.port - ES 端口,默认: 92000
  • elasticsearch.user - ES 用户名,无默认值
  • elasticsearch.pass - ES 密码,无默认值
  • elasticsearch.batch_size - 每轮检索多少个 ES 文档(默认 10000)
  • manticoresearch.host - Manticore 主机,默认:127.0.0.1
  • manticoresearch.port - Manticore HTTP 端口,默认:9308
  • manticoresearch.batch_size - 在 Manticore 中,每个 INSERT 批次中分组多少个文档(默认 10000)
  • limit - 限制从索引迁移的文档数量(默认 0 - 迁移所有)
  • threads - 使用多个并行工作线程处理索引(每个工作线程一次处理一个索引),默认是 1
  • types.* - 允许覆盖数据类型的设置(见 数据类型转换
  • log- 日志文件路径;默认是 ‘stdout’ - 输出到控制台
  • config - 从 JSON 格式的配置文件中读取参数

从配置文件读取的参数可以通过命令行参数提供的值进行覆盖

php migrator.php  --config config.sample.json --threads=2

来源

https://github.com/manticoresoftware/es2ms

安装Manticore Search

安装Manticore Search