业务需求:在系统上线后,原系统的日志信息是存储到MySQL数据库中,但是随着日志数据越来越大,导致数据查询缓慢,加上日志数据并非业务系统关键数据,因此,系统考虑改版升级,使用ElasticSearch来存储日志数据,因此需要将源存在MySQL数据库上的数据迁移到ES中
简单示例
我们先来看一个简单的ES导入数据范例,建立ES的索引结构
PUT /scheduler_log
建立字段信息
PUT scheduler_log/_mapping
{
"scheduler_log": {
"properties": {
"result": {
"type": "boolean",
"cql_collection": "singleton"
},
"number": {
"type": "double",
"cql_collection": "singleton"
},
"id": {
"type": "keyword",
"cql_collection": "singleton",
"cql_partition_key": true,
"cql_primary_key_order": 1
},
"type": {
"type": "keyword",
"cql_collection": "singleton",
"cql_partition_key": true,
"cql_primary_key_order": 0
},
"key": {
"type": "keyword",
"cql_collection": "singleton",
"cql_partition_key": true,
"cql_primary_key_order": 2
}
}
}
}
主要有5个字段
此时,我们建立转换,随机生成1条记录导入ES,最终转换如下图&#x