前面已经说了,es都是文本的形式存储数据,直接创建索引,和type表,字段中插入数据。
不需要定义这些数据是什么类型的,可以不定义。但如果要定义,那么我们就可以使用mapping来定义数据结构类型
1、Es的mapping定义是基于整个库的
Mysql数据结构字段定义是基于整个表的
2、Es由mapping定义默认字段数据类型

Text:可拆分的字符串(分词)
Keyword:不可拆分字符串
3、决战618这本书在吹牛,吹京东自己的,自己的sku商品(以前+现售)超10亿个
4、es搜索这些sku,也相当于搜索引擎了。但比起百度,谷歌这些,10亿条数据还是算少的了。
5、搭建es的数据结构(主要定义使用sku_info表的数据)
(1)商品名称(展示/查询)
(2)商品价格(展示/查询)
(3)商品图片(展示)
(4)平台属性和属性值的列表(查询)
(5)商品描述(展示/查询)
(6)热度值(查询,指搜索热度较高的商品,暂时不用)
(7)三级分类id(查询)
(8)系列商品productId(隐藏)
(9)具体商品skuId主键(隐藏)
可拆分字符串,都使用分词器进行分词。
不可拆分字符串,考虑其内容是否需要被进行搜索:
是,创建索引,默认(“index”:true);否,不创建索引(“index”:false)
PUT gmall0105 库名(不可有大写字母)
{
"mappings": {
通过mapping定义字符类型
"PmsSkuInfo":{
表名
"properties":

博客介绍了Elasticsearch(es)以文本形式存储数据,可直接创建索引和表并插入数据,也能用mapping定义数据结构类型。对比了es和Mysql的数据结构字段定义,说明了es默认字段数据类型,还阐述了搭建es数据结构的内容及对可拆分和不可拆分字符串的处理。
最低0.47元/天 解锁文章
637

被折叠的 条评论
为什么被折叠?



