Elasticsearch 数据管理
Elasticsearch 数据管理页面可让你在线管理 Elasticsearch(或 OpenSearch)数据:列出索引,创建和删除索引,逐页浏览文档,执行搜索查询,以及查看、创建、更新和删除文档。
TIP
此功能在 v3.2.0 新增。
前置条件
Elasticsearch 数据管理针对类型为 Elasticsearch 的数据库服务器进行操作。 使用前,请确保在 数据库 > 服务器 标签页中已有这样一台服务器:
- 对于远程实例,请在 服务器 标签页中添加它。 只需填写地址、端口,以及(可选的)用户名和密码即可。 如果同时设置了用户名和密码,面板将使用 HTTP 基本认证进行连接;否则将以无凭据方式连接。
- 面板通过 Elasticsearch 的 REST API 与其通信,因此任何兼容 OpenSearch 的服务器同样适用。
打开页面
进入 数据库 页面并切换到 Elasticsearch 标签页。 与关系型数据库标签页不同,Elasticsearch 完全通过此数据视图进行管理,而非通过数据库列表。
选择服务器
页面顶部有一个 服务器 选择器。 选择要操作的 Elasticsearch 服务器;每个选项以 name (host:port) 的形式显示。 系统会自动选中第一个可用的服务器。 切换服务器会重新加载索引列表并清除当前的选择。
索引列表
当未选中任何索引时,页面会在表格中显示所选服务器上的索引列表,包含以下列:
- 索引名称:索引的名称。
- 健康状态:索引的健康状态,以彩色标签显示——
green(成功)、yellow(警告)或red(错误)。 - 文档数:索引中的文档数量。
- 大小:索引的存储大小,以易读的单位显示。
- 操作:每个索引对应的 浏览 和 删除 按钮。
TIP
系统索引(名称以点开头,例如 .kibana)会从此列表中隐藏。
创建索引
在查看索引列表时,点击 创建索引 以打开创建对话框。 输入 索引名称 并点击 提交。 索引将以默认设置创建;如有需要,你之后可以通过自己的 Elasticsearch 工具添加映射和设置。
删除索引
点击某个索引行上的 删除 并确认即可将其移除。
警告
删除索引会永久移除该索引及其包含的所有文档。 此操作无法撤销! 请确保你已选中正确的索引,并事先备份好任何重要数据。
浏览文档
点击某个索引行上的 浏览 即可打开该索引的文档。 顶部的标签会显示当前索引(Index: <name>),返回索引列表 按钮可让你返回索引列表。
文档以分页表格的形式显示,包含以下列:
- ID:文档的
_id。 - 源数据:文档的
_source(即其 JSON 主体)。 - 操作:每个文档对应的 查看 和 删除 按钮。
分页支持每页 20、50、100 和 200 条文档(默认为 20)。
搜索文档
在浏览索引时,使用搜索框(占位符为 field:value)来筛选文档,然后点击 搜索 或按 Enter 键。 该查询使用 Elasticsearch 查询字符串语法,例如:
status:active——status字段等于active的文档title:elasticsearch AND views:>100—— 使用AND/OR组合多个子句- 留空则列出索引中的所有文档。
查看或更新文档
点击某个文档行上的 查看 即可打开文档对话框。 它会显示:
- ID:文档的
_id(对于已有文档为只读)。 - 文档(JSON):文档主体,以格式化的 JSON 美观地呈现。
你可以在此对话框中编辑 JSON,并点击 提交 将更改保存回同一文档。 由于 ID 是固定的,从 查看 对话框保存会就地更新现有文档。
创建文档
在浏览索引时,点击 创建文档 以创建模式打开文档对话框。 填写表单并点击 提交:
- ID:可选。 留空可让 Elasticsearch 自动生成 ID,或输入指定的 ID 以使用该 ID 创建文档。
- 文档(JSON):以 JSON 对象形式表示的文档主体。 此字段为必填项。
TIP
不带 ID 创建文档会以自动生成的 ID 新增一个文档。 使用指定 ID 创建或保存文档时,会写入该确切的文档,如果它已存在则将其替换。
删除文档
点击某个文档行上的 删除 并确认,即可从当前索引中移除该单个文档。
警告
删除文档会将其从索引中永久移除。 此操作无法撤销!
常见问题
无法连接到 Elasticsearch 服务器
- 确认所选服务器的类型为 Elasticsearch,且其主机和端口正确无误。
- 如果服务器需要认证,请确认服务器上同时设置了用户名和密码。
- 确认 Elasticsearch(或 OpenSearch)服务正在运行,并且可从面板主机访问。
- 在 数据库 > 服务器 标签页中检查服务器状态。
创建或更新文档失败
- 确保 文档(JSON) 主体是有效的 JSON。
- 确认目标索引存在,且文档结构与索引映射相匹配。
索引未出现在列表中
名称以点开头的系统索引会被有意隐藏。 如果某个用户索引缺失,请刷新页面并确认它在所选服务器上确实存在。
