Elasticsearch 6.4.2 的安装和使用

一、安装
http://www.ruanyifeng.com/blog/2017/08/elasticsearch.html
https://www.jianshu.com/p/add1f1d57241

二、PHP连接
1)客户端版本
composer.json

{
    "require": {
        "elasticsearch/elasticsearch": "~6.5.0"
    }
}

2)官方文档地址
https://www.elastic.co/guide/en/elasticsearch/client/php-api/6.5.x/index.html

三、基本概念

index  相当于 数据库
type  相当于 数据表
document  相当于 一行数据
id  document的唯一标识

查询关键字:
must  与
must not 排除
should  或

must    查询内容必须出现在匹配的文档中,并将有助于得分;
must_not    查询内容不能出现在匹配的文档中;
filter    查询内容必须出现在匹配的文档中,是对匹配的结果过滤,在过滤器上下文中执行,意味着评分被忽略;
should    查询内容应该出现在匹配的文档中,至少有一个;

四、操作
1)连接

common.php

<?php
require 'vendor/autoload.php'; $client = Elasticsearch\ClientBuilder::create()->setHosts(['192.168.1.3:9200'])->build();

2)基本操作

<?php

require 'common.php';

function add(){
//插入数据
$params = array(
'index' => 'website',
'type' => 'blog',
'id' => ,
'body' => array(
'title' => '111ElasticSearch-PHP之使用二',
'content' => '有关于ElasticSearch在PHP下的扩展使用方法之谈',
'create_time' => '2016-11-18 08:00:00',
),
);
global $client;
$resp = $client->index($params); $params = array(
'index' => 'website',
'type' => 'blog',
'id' => ,
'body' => array(
'title' => '222ElasticSearch-PHP之使用二',
'content' => '有关于ElasticSearch在PHP下的扩展使用方法之谈',
'create_time' => '2016-11-18 08:00:00',
),
); $res = $client->index($params);
} function query(){
$params = [
'index' => 'website',
'type' => 'blog',
'id' => ,
];
global $client;
$res = $client->get($params); //获取指定的文档
$res = $client->getSource($params); //获取指定的文档 数据
print_r($res);
} function del(){
$params = [
'index' => 'website',
'type' => 'blog',
'id' => ,
];
global $client;
$res = $client->delete($params); //删除指定的文档
print_r($res);
} function update(){
$params = [
'index' => 'website',
'type' => 'blog',
'id' => ,
'body' => [
'doc' => [
'age' =>
]
]
];
global $client;
$res = $client->update($params); //更新指定的文档
print_r($res);
} function search(){
$params = [
'index' => 'website',
'type' => 'blog',
'body' => [
'query' => [
'match' => [
'age' => ''
]
],
'from' => '',
'size' => '',
'sort' => [
'age' => 'desc' //对age字段进行降序排序
]
]
];
global $client;
$res = $client->search($params); //搜索 指定的文档
print_r($res);
} function index(){
$params = [
'index' => 'website',
'client' => [
'ignore' =>
]
];
global $client;
//$res = $client->indices()->delete($params); //删除库索引
//$res = $client->indices()->getSettings($params);//获取库索引设置信息
$res = $client->indices()->exists($params); //检测库是否存在
$res = $client->indices()->getMapping($params); //获取mapping信息
print_r($res);
} //add();
// query();
//del();
// update();
// search();
index();

3)复杂查询

<?php

require 'common.php';

//搜索某一字段
function search1(){
$params = [
'index' => 'website',
'type' => 'blog',
'body' => [
'query' => [
'match' => [
'content' => '方法'
]
],
'from' => '',
'size' => ''
]
];
global $client;
$res = $client->search($params); //搜索 指定的文档
print_r($res);
} //搜索多个字段
//query bool must 是 and 查询
function search2(){
$params = [
'index' => 'website',
'type' => 'blog',
'body' => [
'query' => [
'bool' => [
'must' => [
'match' => [
'title' => ''
],
'match' => [
'content' => '方法之谈'
]
]
]
],
'from' => '',
'size' => ''
]
];
global $client;
$res = $client->search($params); //搜索 指定的文档
print_r($res);
} //search1();
search2();

本博客地址: wukong1688

本文原文地址:https://www.cnblogs.com/wukong1688/p/10977410.html

转载请著名出处!谢谢~~

[PHP] Elasticsearch 6.4.2 的安装和使用的更多相关文章

  1. logstash+elasticsearch+kibana管理日志(安装)

    logstash1.先安装jdk2.wget https://download.elastic.co/logstash/logstash/logstash-2.4.0.tar.gz tar -xzvf ...

  2. ElasticSearch入门 :Windows下安装ElasticSearch

    这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...

  3. Elasticsearch 7.x 最详细安装及配置

    Elasticsearch 7.x 最详细安装及配置 一.Elasticsearch 7.x 小马哥说过,学习技术栈得看版本,那么 Elasticsearch 7.x 有什么好的特性呢? ES 7.0 ...

  4. Elasticsearch及相关插件的安装

    Elasticsearch及相关插件的安装 1.安装Elasticsearch并启动服务 2.安装第三方插件 2.1.Head插件 是Elasticsearch的一个集群管理工具,可以通过它来查看和搜 ...

  5. 一步一步教你elasticsearch在windows下的安装

    首先下载最新的elasticsearch安装版本:elasticsearch下载.下载最新的elasticsearch 0.90.1版本.下载完成后.解压缩在安装目录.在cmd命令行进入安装目录,再进 ...

  6. Elasticsearch在Windows下的安装

    下载Elasticsearch,地址:elasticsearch.org/download 下载jdk,百度搜索jdk下载即可 配置JAVA_HOME变量,配置方法在此文:http://jingyan ...

  7. Windows 10 安装ElasticSearch(2)- MSI安装ElasticSearch和安装Kibana

    翻阅上篇文章:Windows 10 安装 ElasticSearch 上次写的是下载Zip包安装的,在下载页面 发现有 MSI (BETA) 的下载可选项.了解之后发现MSI安装也值得尝试. MSI安 ...

  8. elasticsearch系列一:elasticsearch(ES简介、安装&配置、集成Ikanalyzer)

    一.ES简介 1. ES是什么? Elasticsearch 是一个开源的搜索引擎,建立在全文搜索引擎库 Apache Lucene 基础之上 用 Java 编写的,它的内部使用 Lucene 做索引 ...

  9. ElasticSearch(六):安装中文分词器插件smartcn

    首先进入elasticsearch的bin目录 然后执行 #  sh elasticsearch-plugin install analysis-smartcn 安装完成后,需要重启elasticse ...

随机推荐

  1. python 爬取媒体文件(无防火墙)

    #coding = utf-8 import requests import pandas as pd import os,time root_path = './根目录/' input_file = ...

  2. 【JSWC2019】 小X的咒语

    [JSWC2019] 小X的咒语 \(\\\) 首先这道题有三个限制: 每个点恰好两个出度和入度. 没有自环. 没有重边. 我们先定义几个变量: \(h_{i,j}\):表示有\(i\)个出度入度为\ ...

  3. Appium+python自动化(八)- 初识琵琶女Appium(千呼万唤始出来,犹抱琵琶半遮面)- 下(超详解)

    ​简介 通过上一篇宏哥给各位小伙伴们的引荐,大家移动对这位美女有了深刻的认识,而且她那高超的技艺和婀娜的身姿久久地浮现在你的脑海里,是不是这样呢???不要害羞直接告诉宏哥:是,就对了.宏哥要的就是这个 ...

  4. 「vue基础」一篇浅显易懂的 Vue 路由使用指南( Vue Router 下)

    大家好,在上一篇系列文章里,我们一起学习了路由的基本配置,如何创建路由和传参,本篇文章我们一起学习下 Navigation 导航和路由守卫的相关内容. Navigation 如果要改变当前路径,我们可 ...

  5. 2019-11-29-win10-uwp-关联文件

    原文:2019-11-29-win10-uwp-关联文件 title author date CreateTime categories win10 uwp 关联文件 lindexi 2019-11- ...

  6. FormData的Ajax提交注意事项

    Ajax提交表单一般有下面两种形式: var form_data = $('#form').serialize(); var form_data = new FormData($('#form')[0 ...

  7. 聊聊 .net Core webAPi 的Get和POST 相关(1)

    上篇文章,我们试着调用API,成功返回值,今天接下来看看代码是怎么构成的 [Route("api/[controller]")] [ApiController] public cl ...

  8. tkinter事件键盘绑定

    tkinter事件键盘绑定 from tkinter import * root=Tk() #创建一个框架,在这个框架中响应事件 frame=Frame(root, width=200,height= ...

  9. linux教程:[3]配置Zookeeper开机启动

    ZooKeeper是Hadoop的正式子项目: Hadoop是一个分布式系统基础架构,由Apache基金会所开发: Zookeeper能够用来leader选举:也就是你有N+1台同样的服务器的时候又z ...

  10. Python 字符串多替换时性能基准测试

    结论 先说结果, 直接替换是最好的. replace 一层层用, 方法笨了一点, 还可以. 时间消耗: tx2 < tx3 < tx1 < tx4 t2 < t3 < t ...