1、启动es
es安装目录/bin/elasticsearch -d
启动并在后台执行
2、启动kibana
./kibina &
启动并在后台执行
3、设置分页
html
PUT /_settings
{
"index.max_result_window": 10000000
}
控制单个查询可以返回的最大文档数量,主要用于 from size
4、删除数据
逻辑删除
html
POST index/_delete_by_query
{
xxx
}
index为索引名,xxx为筛选条件
删除操作会先写入 Lucene 的 "软删除"(tombstone)标记,文档会立即从搜索结果中消失(通常在 1 秒内,取决于 refresh_interval)。
实际数据仍保留在磁盘上,直到 Lucene 段合并(Segment Merge) 时才会真正清理。
默认情况下,Elasticsearch 的 index.merge.policy.expunge_deletes_allowed 设置为 10%,即当段中删除的文档占比超过 10% 时才会触发清理。
物理删除
html
PUT /index/_settings
{ "index.gc_deletes": "30m" }
默认60min后进行删除,也可以手动触发
index为索引名, 上述请求会把默认60min后触发删除改成30min
html
POST /index/_forcemerge?only_expunge_deletes=true
{}
如果需要立即释放磁盘空间,可以手动触发 段合并(谨慎使用,高IO操作)
index为索引名
5、快照文件
Elasticsearch 中的 java_pidxxxx.hprof 文件是 Java虚拟机 在发生内存溢出时生成的一个快照文件,用于记录内存使用情况。
这个文件主要用于内存分析,帮助开发者分析内存使用情况,定位内存泄漏等问题。当Java虚拟机检测到内存溢出时,它会生成这样的文件,文件中包含了内存使用的详细信息,包括对象分配情况、内存使用量等。通过分析这些信息,可以找到内存泄漏的原因,并进行相应的优化
这些java_pidxxx.hrof文件如果没有用到话是可以删除的,当使用监控发现磁盘使用率过高时,es数据也删除了,但是存储依旧没有降下来,通过删除这些快照文件是可以解决磁盘占用率过高的问题