创建和删除 | 学习笔记

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

开发者学堂课程【ElasticSearch 入门精讲创建和删除学习笔记,与课程紧密连接,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/631/detail/10030


创建和删除


内容介绍:

一、创建

二、删除


一、创建

调大系统的“最大打开文件数”,建议 32K 甚至是 64K。

ulimit-a (查看)

ulimit-n 32000 (设置)

修改配置文件调整 ES 的 VM 内存大小

1:修改

bin/elasticsearch.in.sh 中 ES_MIN_MEM 和 ES_MAX_MEM 的大小,建议设置一样大,避免频繁的分配内存,根据服务器内存大小,,一般分配60%左右(默认 256M)

2:如果使用 searchwrapper 插件启动 es 的话则修改[过时,在 es1.x 中有用]

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

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

避免交换 (swapped) 来提高性能

修改文件 conf/elasticsearch.yml

bootstrap.mlockall:true

分片多的话,可以提升建立索引的能力,5-20个比较合适。

如果分片数过少或过多,都会导致检索比较慢。分片数过多会导致检索时打开比较多的文件,另外也会导致多台服务器之间通讯。而分片数过少会导至单个分片索引过大,所以检索速度慢。

建议单个分片最多存储 20G 左右的索引数据,所以,分片数量=数据总量/20G。

副本多的话,可以提升搜索的能力,但是如果设置很多副本的话也会对服务器造成额外的压力,因为需要同步数据。所以建议设置2-3个即可。

要定时对索引进行优化,不然 segment 越多,查询的性能就越差。

索引量不是很大的话情况下可以将 segment 设置为1。段数优化。要全面优化索引,将其设置为1。默认设置是只需检查是否需要执行合并,如果需要执行合并才执行合并操作。[经过测试越小速度越快]

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

java 代码:

client.admin().indices().prepareOptimize("bigdata").setMaxNumSegments(1).get();


二、删除

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

curl-XPOST'http://localhost:9200/bigdata/ optimize?only_expunge deletes=true'

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

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

相关实践学习
利用Elasticsearch实现地理位置查询
本实验将分别介绍如何使用Elasticsearch7.10版本进行全文检索、多语言检索和地理位置查询三个Elasticsearch基础检索子场景的实现。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
9月前
|
Unix Windows
Notepad++简单使用(删除一行数据)
Notepad++简单使用(删除一行数据)
106 1
|
12月前
节点的创建、添加、删除
节点的创建、添加、删除
85 0
node笔记记录84删除和修改4
node笔记记录84删除和修改4
37 0
node笔记记录84删除和修改4
node笔记记录83删除和修改3
node笔记记录83删除和修改3
55 0
node笔记记录83删除和修改3
node笔记记录82删除和修改2
node笔记记录82删除和修改2
40 0
node笔记记录82删除和修改2
node笔记记录81删除和修改1
node笔记记录81删除和修改1
44 0
node笔记记录81删除和修改1
|
NoSQL MongoDB 数据库
集合的创建和删除 | 学习笔记
快速学习 集合的创建和删除
128 0
集合的创建和删除 | 学习笔记
|
开发者 Python
列表的修改查询和删除|学习笔记
快速学习列表的修改查询和删除
94 0
列表的修改查询和删除|学习笔记
|
OLTP 数据库
数据的删除与修改
数据的删除与修改
168 0
|
存储 Java Linux
创建和删除|学习笔记
快速学习创建和删除。
73 0