您的位置:首页 > 移动开发

elasticsearch 的mapping根据不同的数据格式设定属性

2016-01-16 17:08 513 查看
elasticsearch 的mapping

订单号 如:ATTS000928732 类型不分词。 index: not_analyzed

订单号是全部数据 如: 63745345637  这样的分词是可以的。

PUT /Order_v5
{
"settings": {
//设置10个分片,理解为类似数据库中的表分区中一个个分区的概念,不知道是否妥当
"number_of_shards": 10
},
"mappings": {
"trades": {
"_id": {
"path": "id"
},
"properties": {
"id": {
"type": "integer",
//id:自增数字
//要求:查询
"store" : true
},
"name": {
//名称:佳洁士,强生婴儿沐浴露,100w Led节能灯,户外多功能折叠椅等
//要求:抓住关键字,如:佳洁士+牙膏 or 牙刷;<span></span> 强生+沐浴露; led+节能+100W; 户外+折叠椅等
//结论: 如果分词,就意味着产品品牌名词可能被拆分,如 "佳洁士", 如果不分词就意味着对用户输入要求匹配度高。先默认分词,试试看看。
"type": "string"
},
"brand": { //品牌: PG,P&G,宝洁集团,宝洁股份,联想集团,联想电脑等
"type": "string"
},
"orderNo": { //订单号 :如ATTS000928732
"type": "string",
"index": "not_analyzed"
},
"description": {
//描述: 2015款玫瑰香型强生婴儿沐浴露,550ml,包邮
//搜索: 要求高亮所以设置store:true. 关键词权重:沐浴露 -> {强生+沐浴露 or 玫瑰花 + 沐浴露 or 550ml + 沐浴露 or 沐浴露 + 包邮->
{2015年 + 玫瑰香...}}
//设置:必须分词,而且要控制好
"type": "string", <span></span>
"sort": true
},
"date": {
"type": "date"
},
"city": {
"type": "string"
},
"qty": { <span></span> // index无效
"type": "float"
},
"price": {
//价格: float index无效
"type": "float"
}
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: