mapping
提示
es 如果创建了模板,在创建表格的时候会使用模板创建表格的 mapping。
mapping 类似于 mysql 表格的数据类型。
如果没有模板也没有创建 mapping,新增数据时会自动创建数据类型。官方文档 (opens new window)
# 模板
# 创建模板
点击下载:template_accounts.json 文件
# template_accounts:模板的名称
# @template_accounts.json 模板文件路径
curl -H 'Content-Type: application/json' 'localhost:9200/_template/template_accounts' -d '@template_accounts.json'
1
2
3
2
3
# 查看所有模板
curl 'localhost:9200/_cat/templates'
1
# 查看模板内容
curl 'localhost:9200/_template/template_accounts?pretty'
1
# 删除模板
curl -XDELETE 'localhost:9200/_template/template_accounts'
1
# mapping
# 查看 index 下的 mapping
curl 'localhost:9200/accounts/_mapping'
1
# 查看所有 mapping(不常用)
curl 'localhost:9200/_mapping'
1
# 创建新的 mappings
curl -XPUT 'localhost:9200/newaccounts' -H 'Content-Type: application/json' -d '
{"mappings": {"properties": {"user": {"type": "keyword"}, "title": {"type": "keyword"}, "desc": {"type": "keyword"}}}}'
1
2
2
# 修改 mapping
# 数据迁移,复制旧索引数据到新索引中,如果新索引不存在会自动创建,es不能修改mapping,可以通过备份的方式来实现。
curl -H 'Content-Type: application/json' -XPOST 'localhost:9200/_reindex' -d '{"source": {"index": "旧index"}, "dest": {"index": "新index", "op_type": "create"}}'
1
2
2
上次更新: 2023/08/08, 20:00:46