ElasticSearch 入门教程(总)


ElasticSearch 入门教程(总)

一、该笔记处理以下的问题

(以下所有的例子都是使用腾讯云的ElasticSearch 7.5.1)

(服务器使用的腾讯云的CVM,PHP脚本中 ElasticSearch 使用的是腾讯云内网的链接地址)

1、怎么连接到远程和本地的ElasticSearch服务器(这里使用了腾讯云的ElasticSearch)

2、多台服务器协同工作时是怎么操作数据的(写入 查询 删除 修改 搜索 等)

3、如何使数据库的数据与ElasticSearch之间实时同步

4、搜索结果数据的排序方式等

5、kibana数据管理工具

6、提交以及相应的各个参数的意义

7、索引声明周期

二、链接到远程的ElasticSearch

1、开放CVM服务器的端口(安全组策略):9200

2、脚本使用 composer 安装 ElasticSearch 依赖(具体依赖链接和版本可以查看 ElasticSearch官网)

image

  

3、创建 es 实例,至此可以看到已经链接到 ElasticSearch

<?php

use ElasticsearchClientBuilder;

require_once "vendor/autoload.php";

var_dump(create());

/**
 * 创建esClient
 */
function create(){
    $connectionPool = 'ElasticsearchConnectionPoolStaticNoPingConnectionPool';
    $selector       = 'ElasticsearchConnectionPoolSelectorsStickyRoundRobinSelector';
    $serializer     = 'ElasticsearchSerializersSmartSerializer';
    $hosts = [
        [
            'host' => '172.16.0.6',
            'port' => '9200',
            'scheme' => 'http',
            'user' => 'elastic',
            'pass' => '!Amianhong123'
        ]
    ];
    return ClientBuilder::create()
        ->setConnectionPool($connectionPool)    //设置连接池     其实这些都是默认的,这里仅仅是展示出来方便查阅
        ->setSelector($selector)                //设置选择器     其实这些都是默认的,这里仅仅是展示出来方便查阅
        ->setSerializer($serializer)            //序列化器       其实这些都是默认的,这里仅仅是展示出来方便查阅
        ->setHosts($hosts)
        ->build();
}

三、对ElasticSearch进行数据操作

四、API规范

五、操作文档