5.1 索引
索引(index)是ElasticSearch存放具体数据的地方,是一类具有相似特征的文档的集合。ElasticSearch中索引的概念具有不同意思,这里的索引相当于关系数据库中的一个数据库实例。在ElasticSearch中索引还可以作为动词,表示对数据进行索引操作。
5.2 类型
在6.0之前的版本,一个ElasticSearch索引中,可以有多个类型;从6.0版本开始,,一个ElasticSearch索引中,只有1个类型。一个类型是索引的一个逻辑上的分类,通常具有一组相同字段的文档组成。ElasticSearch的类型概念相当于关系数据库的数据表。
5.3 文档
文档是ElasticSearch可被索引的基础逻辑单元,相当于关系数据库中数据表的一行数据。ElasticSearch的文档具有JSON格式,由多个字段组成,字段相当于关系数据库中列的概念。
5.4 对比
ElasticSearch RDBMS
索引(index) 数据库(database)
类型(type) 表(table)
文档(document) 行(row)
字段(field) 列(column)
映射(mapping) 表结构(schema)
全文索引 索引
查询DSL SQL
GET select
PUT/POST update
DELETE delete
5.5 分片
当数据量较大时,索引的存储空间需求超出单个节点磁盘容量的限制,或者出现单个节点处理速度较慢。为了解决这些问题,ElasticSearch将索引中的数据进行切分成多个分片(shard),每个分片存储这个索引的一部分数据,分布在不同节点上。当需要查询索引时,ElasticSearch将查询发送到每个相关分片,之后将查询结果合并,这个过程对ElasticSearch应用来说是透明的,用户感知不到分片的存在。
一个索引的分片一定指定,不再修改。
5.6 副本
其实,分片全称是主分片,简称为分片。主分片是相对于副本来说的,副本是对主分片的一个或多个复制版本(或称拷贝),这些复制版本(拷贝)可以称为复制分片,可以直接称之为副本。当主分片丢失时,集群可以将一个副本升级为新的主分片。
curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.3.tar.gz
tar -xvf elasticsearch-6.2.3.tar.gz
cd elasticsearch-6.2.3/bin
./elasticsearch -d
2.安装head插件
head 插件Github地址:https://github.com/mobz/elasticsearch-head
新版elasticsearch已经不支持直接在plugins里运行插件了
进入elasticsearch的安装目录,执行如下命令
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
npm run start
1
2
3
4
然后 打开 http://localhost:9100/ 访问插件
由于head插件监听的端口是9100,而elasticsearch的REST接口的端口是9200,因此需要设置elasticsearch允许跨域访问,才能使用head插件,编辑elasticsearch安装目录下的config目录下的elasticsearch.yml文件,添加如下2行配置:
http.cors.enabled: true
http.cors.allow-origin: "*"
安装elasticsearch-sql插件
Github地址:https://github.com/NLPchina/elasticsearch-sql
elasticsearch-sql插件可以方便我们使用SQL语言来对elasticsearch进行查询
进入elasticsearch的安装目录,执行如下命令:
./bin/elasticsearch-plugin install https://github.com/NLPchina/elasticsearch-sql/releases/download/6.2.3.0/elasticsearch-sql-6.2.3.0.zip
curl -L -O https://github.com/NLPchina/elasticsearch-sql/releases/download/5.4.1.0/es-sql-site-standalone.zip
unzip es-sql-site-standalone.zip
cd site-server
npm install express --save
node node-server.js
1
2
3
4
5
6
elasticsearch-sql的默认端口是8080,可以在site-server/site_configuration.json文件中进行修改
然后 打开 http://localhost:8080/ 访问插件
注意修改右上角本地elasticsearch的地址,sql脚本不需要以分号“;”结尾,如果一个index有多个type,表名用indexName/typeName表示
1.下载nodejs 我放在/usr/shupf/java 目录下
wget https://nodejs.org/dist/v8.11.1/node-v8.11.1-linux-x64.tar.xz
执行以下命令设置全局有效
2. ln -s /usr/shupf/java/node-v8.11.1-linux-x64/bin/npm /usr/local/bin/
ln -s /usr/shupf/java/node-v8.11.1-linux-x64/bin/node /usr/local/bin/
3. 下载head插件,上github搜索 elasticsearch-head,复制下载地址
wget https://github.com/mobz/elasticsearch-head/archive/master.zip
unzip master.zip 解压
4. 进入elasticsearch-head-master文件夹,执行 npm install
5. 启动head插件:npm run start
分享到:
相关推荐
ECMAScript(简称ES)是JavaScript的标准化规范,由ECMA国际制定,每年都会发布新的版本,引入新的特性和改进。下面将详细讲解ES6、ES7、ES8、ES9以及ES10的主要新特性。 ### ES6(2015) #### 1. 类(Class) ES6...
elasticsearch-7.17.6及对应版本IK分词 适合人群:elasticsearch初学者 Elasticsearch 是位于 Elastic Stack 核心的分布式搜索和分析引擎。Logstash 和 Beats 有助于收集、聚合和丰富您的数据并将其存储在 Elastic...
Elasticsearch(ES)是一种流行的开源全文搜索引擎,它基于Lucene构建,提供了分布式、RESTful风格的搜索和分析引擎服务。在中文环境下,为了实现精确的分词和搜索,我们需要安装适合版本的分词插件,如“elastic...
**Elasticsearch 7.17.10的新特性和改进:** 1. **性能优化**:此版本可能包含了针对查询速度、索引速度以及内存管理的优化,以提升整体性能。 2. **安全性增强**:可能包括对身份验证、授权和加密的改进,以增强...
《Elasticsearch Analysis IK插件详解与7.17.6版本特性》 Elasticsearch是一种流行的开源全文搜索引擎,以其高效、灵活和可扩展性深受开发者喜爱。在处理中文分词方面,Elasticsearch-analysis-ik插件是不可或缺的...
随着您的数据和查询量的增长,Elasticsearch 的分布式特性使您的部署能够随之无缝增长。Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分...
根据提供的文件信息,我们可以推断出本篇文章将围绕Elasticsearch 6.2.2版本进行详细介绍,包括其下载方式、主要功能特性以及在实际应用中的常见用途。 ### Elasticsearch简介 Elasticsearch是一款基于Lucene的...
在Elasticsearch 6版本中,它引入了许多新特性,优化了性能,并提高了用户体验。本教程将深入探讨Elasticsearch 6的关键概念和技术,帮助你掌握其核心功能并应用于实际项目中。 ### 1. Elasticsearch基础知识 - **...
1. **Elasticsearch 7.17.1版本特性**: - 提升了搜索性能:这个版本优化了搜索算法,提高了查询速度,特别是在大数据量时。 - 改进了稳定性:修复了大量的bug,增强了系统的稳定性和可靠性。 - 更新了安全特性:...
6. **更友好的API**:Elasticsearch 6.x系列对RESTful API进行了大量优化,使得开发者更容易与Elasticsearch进行交互,6.6.0版本可能在此基础上进行了进一步的完善。 7. **更好的兼容性**:与其他生态工具(如...
随着您的数据和查询量的增长,Elasticsearch 的分布式特性使您的部署能够随之无缝增长。Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分...
Elasticsearch以其高效的全文搜索功能,实时数据处理能力,以及易于使用的特性,在众多企业中得到了广泛应用,包括维基百科、Stack Overflow以及GitHub等。Elasticsearch的分布式特性意味着它能够水平扩展到数百台...
**Elasticsearch 6 实战教程** Elasticsearch 是一个基于 Lucene 的开源搜索引擎,以其分布式、RESTful 风格的接口、实时性、可扩展性和易用性而受到广泛欢迎。在 Elasticsearch 6 版本中,它进一步提升了性能、...
- 这是Elasticsearch的6.x系列的一个重要更新。6.x系列引入了大量改进,包括对JSON格式的严格解析、对字段数据的优化、增强的集群稳定性等。 - 支持多租户(indices templates)的替换,使得管理不同类型的索引...
随着您的数据和查询量的增长,Elasticsearch 的分布式特性使您的部署能够随之无缝增长。Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分...
**Elasticsearch 8.11 for Windows** Elasticsearch 是一个开源的分布式搜索引擎,以其高可伸缩性、实时性、灵活性以及强大的数据分析能力而闻名。在Windows平台上部署Elasticsearch,用户可以利用其强大的搜索和...
综上所述,这份2018年最新的ElasticSearch 6实战教程不仅涵盖了ElasticSearch的基础知识和技术要点,还提供了丰富的实践案例和学习资源,对于希望深入了解并掌握ElasticSearch的开发者来说是一份非常宝贵的资料。...