本文共 802 字,大约阅读时间需要 2 分钟。
Elasticsearch es常用数据类型
2020-08-23 09:17:20.0
常用的字段数据类型
text, keyword, date, long, double, boolean , ip
在建立索引时,可以指定字段的数据类型,如下:
PUT /my-index-000001/_mapping
{
"properties": {
"attach":{"type": "text"},
"name": {
"type": "text",
"fields": {
"raw": {
"type": "keyword",
"index": "not_analyzed"
}
}
}
}
}
常见的string 字段可以同时被映射成 text和 keyword,text会被分词并进行索引,而keyword类型不会。所以text类型常用来搜索,keyword常用来进行聚合。如上,聚合时,使用的字段应该写成 name.raw。
如果使用text类型进行排序或聚合,也可以设置datafield为true,如下:
"name": {
"type": "text",
"fielddata": true
}
es分词器
分词测试可使用以下请求:
POST http://petdy.cn:9200/_analyze
Content-Type: application/json
{
"text": "北京市昌平区建材城西路金燕龙办公楼一层",
"analyzer": "standard"
}
默认使用standard分词器,对英文按照空格分词,对中文按照每个汉字进行分词。
IK分词器
在github下载中文专用的分词器,放置在plugin目录下即可。
IK分词器有两种分词模式:ik_max_word和ik_smart模式。
ES的索引名称不能为大写
2020-08-23 09:17:20.0
转载地址:http://nphhv.baihongyu.com/