es为mysql创建索引_ES(ElasticSearch) 索引创建
环境:ES 6.2.2
os:Centos 7
kibana:6.2.2
介绍
索引是ElasticSearch存放数据的地方,可以理解为关系型数据库中的一个数据库。事实上,我们的数据被存储和索引在分片(shards)中,索引只是一个把一个或多个分片分组在一起的逻辑空间。然而,这只是一些内部细节——我们的程序完全不用关心分片。对于我们的程序而言,文档存储在索引(index)中。剩下的细节由Elasticsearch关心既可。(索引的名字必须是全部小写,不能以下划线开头,不能包含逗号)
类型用于区分同一个索引下不同的数据类型,相当于关系型数据库中的表。在Elasticsearch中,我们使用相同类型(type)的文档表示相同的“事物”,因为他们的数据结构也是相同的。每个类型(type)都有自己的映射(mapping)或者结构定义,就像传统数据库表中的列一样。所有类型下的文档被存储在同一个索引下,但是类型的映射(mapping)会告诉Elasticsearch不同的文档如何被索引。
文档是ElasticSearch中存储的实体,类比关系型数据库,每个文档相当于数据库表中的一行数据。在Elasticsearch中,文档(document)这个术语有着特殊含义。它特指最顶层结构或者根对象(root object)序列化成的JSON数据(以唯一ID标识并存储于Elasticsearch中)。
文档由字段组成,相当于关系数据库中列的属性,不同的是ES的不同文档可以具有不同的字段集合。对比关系型数据库:
文档元数据
一个文档不只有数据。它还包含了元数据(metadata)——关于文档的信息。三个必须的元数据节点是:
_index:索引
_type:类型
_id:id仅仅是一个字符串,它与_index和_type组合时,就可以在Elasticsearch中唯一标识一个文档。当创建一个文档,你可以自定义_id,也可以让Elasticsearch帮你自动生成。
索引创建原则
类似的数据放在一个索引,非类似的数据放不同索引:product index(包含了所有的商品),sales index(包含了所有的商品销售数据),inventory index(包含了所有库存相关的数据)。如果你把比如product,sales,human resource(employee),全都放在一个大的index里面,比如说company index,不合适的。
index中包含了很多类似的document:类似是什么意思,其实指的就是说,这些document的fields很大一部分是相同的,你说你放了3个document,每个document的fields都完全不一样,这就不是类似了,就不太适合放到一个index里面去了。
索引名称必须是小写的,不能用下划线开头,不能包含逗号:product,website,blog
1、创建新的索引(index)
PUT indexTest001
结果:
2、索引设置
ES 默认提供了好多索引配置选项,参考https://www.elastic.co/guide/...,这些配置选项都有经过优化的默认配置值,除非你非常清楚这些配置的作用以及知道为什么去修改它,不然使用其默认值即可。
a、分片设置
number_of_shards
每个索引的主分片数,默认值是 5 。这个配置在索引创建后不能修改。
number_of_replicas
每个主分片的副本数,默认值是 1 。对于活动的索引库,这个配置可以随时修改。
例如,我们可以创建只有 一个主分片,没有副本的小索引:
PUT /my_test_index_004
{
"settings": {
"number_of_shards" : 1,
"number_of_replicas" : 0
}
}
更改副本数量:
PUT /my_test_index_004/_settings
{
"number_of_replicas": 2
}
每次更改分片之后可以使用:GET my_test_index_004/_search_shards 来查询索引信息.
3、创建mapping
a、首先查看刚刚创建的索引的mapping是什么样子的
GET indextest001/_mapping
结果:
可见新建的索引中,mapping是一个空集,所以我们就要创建这个index的mapping
命令:
POST indextest001/product/_mapping?pretty
{"product":{"properties":{"title":{"type":"text","store":"true"},"description":{"type":"text","index":"false"},"price":{"type":"double"},"onSale":{"type":"boolean"},"type":{"type":"integer"},"createDate":{"type":"date"}}}}
执行完毕后再次执行上面所述查询结果如下:
4、插入数据
POST indextest001/product
{
"title": "test title 001",
"description": "this is a random desc ",
"price": 22.6,
"onSale": "true",
"type": 2,
"createDate": "2018-01-12"
}
然后查询一下所有数据,默认为match_all
GET indextest001/product/
根据id查询
GET indextest001/product/UNBdGWIBI2NcsxokJ0lQ
结果如下:
es为mysql创建索引_ES(ElasticSearch) 索引创建相关推荐
- mysql索引 和 es索引_MySQL索引 VS ElasticSearch索引
今天MySQL数据库栏目介绍MySQL索引与ElasticSearch索引的对比. 前言 这段时间在维护产品的搜索功能,每次在管理台看到 elasticsearch 这么高效的查询效率我都很好奇他是如 ...
- 安装es怎么在后台运行_ES备份索引数据到阿里云OSS
ES的快照备份当前是存放在NAS下,考虑成本问题现在打算把快照备份到阿里云OSS下. https://github.com/aliyun/elasticsearch-repository-oss,此插 ...
- es统计mysql 报表_用Elasticsearch实现统计排行榜
前几天在论坛看见有人针对es提了几个问题,觉得很有意思就查找资料测试了下,很有意思,写下来跟大家一起分享一下 功能就是标题描述的,关于es聚合查询(aggregations) 官文: 聚合框架有助于基 ...
- ElasticSearch 索引创建
准备工作 在开始创建索引之前,您需要安装Elasticsearch并启动Elasticsearch服务器.您还需要使用一个REST客户端,例如Kibana或Postman,以便与Elasticsear ...
- ElasticSearch-Hadoop:从Hadoop到ElasticSearch索引产品视图计数和客户顶部搜索查询
这篇文章涵盖了如何使用ElasticSearch-Hadoop从Hadoop系统读取数据并在ElasticSearch中对其进行索引. 它涵盖的功能是在最近n天中为每个客户的产品浏览量计数和热门搜索查 ...
- ES篇:ElasticSearch教程——创建索引、类型、文档
ES知识汇总:https://blog.csdn.net/gwd1154978352/article/details/82781731 介绍 索引是ElasticSearch存放数据的地方,可以理解为 ...
- ElasticSearch 索引 VS MySQL 索引
前言 这段时间在维护产品的搜索功能,每次在管理台看到 elasticsearch 这么高效的查询效率我都很好奇他是如何做到的. 这甚至比在我本地使用 MySQL 通过主键的查询速度还快. 为此我搜索了 ...
- ElasticSearch入门简介、安装ES(安装Kibana和IK分词器)使用 Postman连接ES进行测、ESRestAPI(操作索引CRUD操作文档CRUD)、练习
要理解倒排索引 要能够使用DSL命令操作索引库 要能够使用DSL命令操作文档 要能够使用RestAPI操作索引库.文档 一.ES简介 理解倒排索引的概念和作用 理解es和MySql的区别和使用场景 1 ...
- mysql创建非聚集索引_聚集索引和非聚集索引的区别
作者:riemann riemann.blog.csdn.net/article/details/90324846 一.深入浅出理解索引结构 实际上,可以把索引理解为一种特殊的目录.微软的SQL SE ...
最新文章
- 自然语言处理(NLP)之TF-IDF原理及使用
- BATJ 常考的 21 条 Linux 命令
- python画三维几何图-Python下opencv使用笔记(二)(简单几何图像绘制)
- 系统优化怎么做-新系统上线前做什么
- php7mysql查询_php7连接MySQL实现简易查询程序的技巧
- elxel表格纸张尺寸_印刷设计必懂知识:印刷纸张类型介绍
- 【STL基础】list
- js math.hypot_带有Python示例的math.hypot()方法
- Python3.2.3官方文档(中文版)
- 物化视图的刷新方式说明
- Python3 循环删除列表中的指定变量
- 181230每日一句
- css权威指南学习笔记
- 计算机组成原理与接口技术笔记
- 氚云SaaS介绍文档
- 星光不问赶路人,时光不负奇舞团
- vim实用技巧总结 [Linux]
- linux 查看vcf文件,vcf文件扩展名,vcf文件怎么打开?
- win10怎么设置护眼背景
- Facebook成为美国四大电视台争夺观众阵地
热门文章
- think php getfield,thinkPHP数据查询常用方法总结【select,find,getField,query】
- html 清除flex,清除display:flex样式
- n维椭球体积公式_加速度计 椭球校准 (最小二乘法 椭球拟合)
- 有源rc电压放大器实验报告_为什么将放大器装在示波器探头前端?
- java用于保存登录对象怎么写,利用对象流模仿登陆注册功能——Java对象流应用...
- 帧间差分法python代码_图像处理算法之帧间差分法
- verilog异步复位jk触发器_同步复位和异步复位常见问题总结
- ROS入门 Client Library与roscpp
- 牛客 2021年度训练联盟热身训练赛第二场 A题
- Python中循环(列表循环)的学习笔记~