入门编辑

本页面将指导您完成 Ruby 客户端的安装过程,向您展示如何实例化客户端,以及如何使用它执行基本的 Elasticsearch 操作。

要求编辑

当前维护的 Ruby 版本 (3.0+) 或 JRuby (9.3+)。

安装编辑

要安装最新版本的客户端,请运行以下命令

gem install elasticsearch

请参阅安装页面了解更多信息。

连接编辑

您可以使用 API 密钥和 Elasticsearch 端点连接到 Elastic Cloud。

client = Elasticsearch::Client.new(
  cloud_id: '<CloudID>',
  api_key: '<ApiKey>'
)

您可以在部署的我的部署页面上找到您的 Elasticsearch 端点

Finding Elasticsearch endpoint

您可以在“安全”下的管理页面上生成 API 密钥。

Create API key

有关其他连接选项,请参阅连接部分。

操作编辑

是时候使用 Elasticsearch 了!本节将带您了解 Elasticsearch 的基本且最重要的操作。有关更多操作和更高级的示例,请参阅示例页面。

创建索引编辑

以下是创建my_index索引的方法

client.indices.create(index: 'my_index')

索引文档编辑

这是一种索引文档的简单方法

document = { name: 'elasticsearch-ruby' }
response = client.index(index: 'my_index', body: document)
# You can get the indexed document id with:
response['_id']
=> "PlgIDYkBWS9Ngdx5IMy-"
id = response['_id']

获取文档编辑

您可以使用以下代码获取文档

client.get(index: 'my_index', id: id)

搜索文档编辑

以下是使用 Ruby 客户端创建单个匹配查询的方法

client.search(index: 'my_index', body: { query: { match_all: {} } })

更新文档编辑

以下是更新文档的方法,例如添加新字段

client.update(index: 'my_index', id: id, body: { doc: { language: 'Ruby' } })

删除文档编辑

client.delete(index: 'my_index', id: id)

删除索引编辑

client.indices.delete(index: 'my_index')

延伸阅读编辑