创建和删除|学习笔记

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 快速学习创建和删除。

开发者学堂课程【ElasticSearch 最新快速入门教程创建和删除】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/642/detail/10683


创建和删除

 

内容介绍:

一、关于创建

二、关于删除

 

一、关于创建

1.调大系统最大打开文件数

对于文件个数,要调大系统的"最大打开文件数",建议32K 其至是64K。

(1)查看系统最大打开文件数

在 Linux 系统中,可以通过 ulimit -a 进行查看,查看结果中的“open files”即为此时系统的最大打开文件数。

(2)调大系统最大打开文件数

可以通过 ulimit -n 32000对系统最大打开文件数进行设置

2.修改配置文件调整 ES 的 IVM 内存大小

(1)在 elasticsearch 核心配置文件中,可以设置 ES_MIN_MEM 和 ES_MAX_ MEM的大小,建议设置较大一些,避免频繁的分配内存,根据服务器内存大小,一般分配60%左右(默认256M)

(2)如果使用 searchwrapper 插件启动 es 的话则修改[过时,在 es1x中有用]

bin/service/elasticsearch.conf(默认1024M,2.x以后不用考虑)

3. 设置 mlockall 来锁定进程的物理内存地址

在配置文件中,修改conf/elasticsearch.yml与bootstrap.mlock

all:true,即可锁定进程的物理内存地址,也可以加快创建时的速度。

(1)分片多的话,可以提升建立索引的能力,5-20个比较合适。如果分片数过少或过多,都会导致检索比较慢。分片数过多会导致检索时打开比较多的文件,另外也会导致多台服务器之间通讯;而分片数过少会导至单个分片索引过大,所以检索速度慢。建议单个分片最多存储20G 左右的索引数据,所以,分片数量=数据总量/20G。

(2)副本多的话,可以提升搜索的能力,但是如果设置很多副本的话也会对服务器造成额外的压力,因为需要同步数据。所以建议设置2-3个副本即可,要定时对索引进行优化,不然 segment 越多,查询的性能就越差。

索引量不是很大的话情况下,可以将 segment 设置为1,在 Linux 系统中,输入:

curl-XPOST ‘http://janson01:9200/ok/_forcemerge?pretty&

max_num segments=1'

结果为

{

"_shards": {

"total": 9

"successful": 10

"failed": 0

}

}

段数优化,要全面优化索引,将其设置为1。默认设置是只需检查是否需要执行合并,如果需要执行合并,如果需要执行合才执行合并操作。【经过测试,越小,速度越快】

curl-XPOST  ‘http:/localhost:9200/crxy/optimize?max num segments=1'

java代码:cient.admin()indices().prepareOptimize("bigdata").

setMaxNumSegments(1).get()

 

二、关于删除

1. 删除文档

在 Lucene 中谢除文档,数据不会马上在硬盘上除去,而是在 lucene 索引中产生一个.del 的文件,而在检索过程中这部分数据也会参与检索,lucene 在检索过程会判断是否删除了,如果删除了再过滤掉,这样也会降低检索效率。

所以可以执行清除删除文档:

curl-XPOST 'http://locathost:9200/bigdata/optimize?only expunge deletes=true'

client.admin().indices().prepareOptimize("bigdata").setOnlyExpungeDeletes(true).get();

如果在项目开始时需要批量入库大量数据的话,建议将副本数设置为0,因为 es 在索引数据的时候,如里有副本存在,数据也会马上同步到副本中,这样会对 es 增加压力。待索引完成后将副本按需要改回来,这样可以提高索引效率。

在 Linux 系统中输入:

curl-XPOST ‘http://janson01:9200/ok/_forcemerge?pretty&

only expunge deletes=true'

结果为

{

"_shards": {

"total": 10

"successful": 10

"failed": 0

}

}

以上即为关于创建和删除的内容,其中的 elasticsearch 配置文件中有一个 in.sh,在系统中输入 vim es/config/。

根据查询结果可知,

在新版本中有一个配置文件叫作 jvm.options,输入 vim jvm.options 即可查询其配置的虚拟机及其参数。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
10月前
评论删除出现bug
评论删除出现bug
49 0
|
7月前
|
Unix Windows
Notepad++简单使用(删除一行数据)
Notepad++简单使用(删除一行数据)
98 1
|
8月前
|
BI 数据处理 开发工具
【批量创建,删除工作表】
【批量创建,删除工作表】
|
11月前
|
SQL 数据库 数据库管理
​数据库之定义删除修改基本表
​数据库之定义删除修改基本表
77 0
|
OLTP 数据库
数据的删除与修改
数据的删除与修改
160 0
|
NoSQL MongoDB 数据库
集合的创建和删除 | 学习笔记
快速学习 集合的创建和删除
119 0
集合的创建和删除 | 学习笔记
|
存储 开发者 索引
创建和删除 | 学习笔记
快速学习创建和删除
57 0
|
开发者 索引
删除|学习笔记
快速学习删除。
51 0
|
开发者 索引
删除 | 学习笔记
快速学习删除
43 0