从零开始使用 Elasticsearch(8.14.0)搭建全文搜索引擎
warning:
这篇文章距离上次修改已过250天,其中的内容可能已经有所变动。
以下是搭建Elasticsearch全文搜索引擎的基本步骤和示例代码:
安装Elasticsearch:
- 访问Elasticsearch官方网站下载对应版本的压缩包。
- 解压缩到指定目录。
运行Elasticsearch。在Elasticsearch根目录下运行以下命令:
bin/elasticsearch
安装Elasticsearch-Head插件(可选,用于提供一个用于监控和管理Elasticsearch的界面):
在Elasticsearch根目录下运行以下命令来安装Elasticsearch-Head:
./bin/elasticsearch-plugin install https://github.com/mobz/elasticsearch-head/releases/download/7.10.0/elasticsearch-head-7.10.0.zip
启动Elasticsearch-Head:
./bin/grunt server
- 通过REST API或者使用Elasticsearch客户端库(例如官方的Elasticsearch-PHP客户端)与Elasticsearch交互。
以下是使用PHP客户端与Elasticsearch交互的基本代码示例:
<?php
require 'vendor/autoload.php'; // 确保通过Composer安装了elasticsearch/elasticsearch 客户端库
use Elasticsearch\ClientBuilder;
$client = ClientBuilder::create()
->setHosts(['localhost:9200']) // 替换为你的Elasticsearch服务地址
->build();
// 创建索引
$params = [
'index' => 'my_index',
'body' => [
'settings' => [
'number_of_shards' => 1,
'number_of_replicas' => 0
]
]
];
$response = $client->indices()->create($params);
// 添加文档
$params = [
'index' => 'my_index',
'id' => 'my_id',
'body' => [
'name' => 'John Doe',
'age' => 30,
'about' => 'I love to go rock climbing'
]
];
$response = $client->index($params);
// 搜索文档
$params = [
'index' => 'my_index',
'body' => [
'query' => [
'match' => [
'about' => 'rock climbing'
]
]
]
];
$response = $client->search($params);
print_r($response);
确保在执行以上代码之前,你已经通过Composer安装了Elasticsearch的PHP客户端库,并且Elasticsearch服务正在运行。
评论已关闭