logstash系列一使用logstash迁移ES数据

博客介绍了ES文档ID的生成方式,包括自动的uuid和自定义id,自动id是URL安全、base64编码、GUID形式,手动则需自行定义。还提及使用Logstash抽取数据时的映射问题,并给出配置文件参考链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

es的文档id生成方式可以是 自动的uuid,也可以是自定义的id,可以用业务中的id字段进行映射

自动的id,URL安全,base64编码,GUID,如下:


POST /test_index/test_type 
{ "test_content": "my test" }

手动的就靠自己定义

PUT /test_index/test_type/2
{
  "test_content": "my test"
}

那么使用logstash抽取数据是怎么做映射的?配置文件如下:

input {
    elasticsearch {
        hosts => ["192.168.0.1:9200"]
        index => "ddd"
        query => '{ "query": {"match_all" : {} } }'
        size => 1000
        scroll => "1m"
        codec => "json"
        docinfo => true
    }
}

output {
    stdout {
      codec => rubydebug
    }
    elasticsearch {
        hosts => ["192.168.0.2:9200"]
        document_type => "messages"
        document_id => "%{id}" 
        index => "ddd"
    }
}
 document_id => "%{id}"  指定 文档id 使用自己定义json 文件中的id 号映射。

 

转载于:https://www.cnblogs.com/monkeybron/p/10898271.html

要通过Logstash从Elasticsearch迁移数据,你可以使用Logstash的`elasticsearch`插件。这个插件允许Logstash连接到Elasticsearch,读取数据,并将其输出到其他系统或服务中。以下是个简单的示例,展示了如何使用Logstash个Elasticsearch集群迁移数据到另个Elasticsearch集群。 首先,确保你已经安装了Logstash,并且有适当的权限从源Elasticsearch集群读取数据,以及将数据写入目标Elasticsearch集群。 接下来,创建Logstash配置文件(例如:`migrate.conf`),配置如下: ```conf input { elasticsearch { hosts => ["source-elasticsearch-host:port"] index => "source-index-pattern" query => '{ "query": { "match_all": {} } }' scroll => "2m" size => 1000 } } output { elasticsearch { hosts => ["target-elasticsearch-host:port"] index => "target-index-name" # user => "username" # password => "password" } } ``` 在这个配置文件中,`input`部分定义了从源Elasticsearch集群读取数据的设置。你需要指定源集群的主机和端口、要迁移的索引模式以及要使用的查询。`scroll`参数用于在滚动搜索中保持搜索上下文,这对于处理大量数据很有用。`size`参数指定了每次从Elasticsearch查询返回的文档数。 `output`部分定义了将数据写入目标Elasticsearch集群的设置。同样地,你需要指定目标集群的主机和端口以及目标索引名称。如果目标Elasticsearch集群需要认证,你还需要指定`user`和`password`。 在运行Logstash之前,请确保配置文件是正确的,并且所有必要的选项都已根据你的环境进行设置。 运行Logstash,如下命令: ```bash logstash -f migrate.conf ``` Logstash将开始从源Elasticsearch集群读取数据,并将其迁移到目标Elasticsearch集群。这个过程会直进行,直到所有符合条件的数据都被迁移
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值