命名空间

客户端有很多命名空间,通常能够暴漏出他管理的功能。命名空间对应Elasticsearch各种管理的端点。如下是完成的命名空间的列表:

命名空间 功能
indices() 以指数为中心的统计数据和信息
nodes() 以节点为中心的统计数据和信息
cluster() 以集群为中心的统计数据和信息
snapshot() 快照/还原您的集群和指示器的方法
cat() 访问Cat API(这是通常用于的独立从命令行访问)

有些方法可以在不同的命名空间下使用,给你相同的信息,但是分组到不同的上下文。如果要查看这些命名空间是如何工作的,让我们来看看_stats 的输出:

  1. $client = new Elasticsearch\Client();
  2. // Index Stats
  3. // Corresponds to curl -XGET localhost:9200/_stats
  4. $response = $client->indices()->stats();
  5. // Node Stats
  6. // Corresponds to curl -XGET localhost:9200/_nodes/stats
  7. $response = $client->nodes()->stats();
  8. // Cluster Stats
  9. // Corresponds to curl -XGET localhost:9200/_cluster/stats
  10. $response = $client->cluster()->stats();

正如你所看到的,同样的 stats() 调用在三个不同的命名空间。有时候方法需要参数。这些参数的工作原理就像其它库中的方法一样。

例如我们可以请求一个特定的索引或多个索引信息的统计。

  1. $client = new Elasticsearch\Client();
  2. // Corresponds to curl -XGET localhost:9200/my_index/_stats
  3. $params['index'] = 'my_index';
  4. $response = $client->indices()->stats($params);
  5. // Corresponds to curl -XGET localhost:9200/my_index1,my_index2/_stats
  6. $params['index'] = array('my_index1', 'my_index2');
  7. $response = $client->indices()->stats($params);

另一个例子,如何在现有索引中添加一个别名。

  1. $params['body'] = array(
  2. 'actions' => array(
  3. array(
  4. 'add' => array(
  5. 'index' => 'myindex',
  6. 'alias' => 'myalias'
  7. )
  8. )
  9. )
  10. );
  11. $client->indices()->updateAliases($params);

请注意 stats 调用和 updateAlias 是如何接受一个多样化的参数,每一个都是根据特定API的需要。stats API仅仅需要一个索引名称,然而 updateAlias 需要一个body上的动作。

Elasticsearch-PHP 命名空间的更多相关文章

  1. Elastic 使用索引生命周期管理实现热温冷架构

    Elastic: 使用索引生命周期管理实现热温冷架构 索引生命周期管理 (ILM) 是在 Elasticsearch 6.6(公测版)首次引入并在 6.7 版正式推出的一项功能.ILM 是 Elast ...

  2. ElasticSearch 5学习(6)——分布式集群学习分享1

    在使用中我们把文档存入ElasticSearch,但是如果能够了解ElasticSearch内部是如何存储的,将会对我们学习ElasticSearch有很清晰的认识.本文中的所使用的ElasticSe ...

  3. Elasticsearch 教程--数据

    在Elasticsearch中,每一个文档都有一个版本号码.每当文档产生变化时(包括删除),_version就会增大.在<版本控制>中,我们将会详细讲解如何使用_version的数字来确认 ...

  4. Elasticsearch 教程--分布式集群

    集群 补充章节 正如前文提到的,这就是第个补充的章节,这里会介绍 Elasticsearch 如何在分布式环境中运行. 本章解释了常用术语,比如 集群 (cluster), 节点 (node) 以及  ...

  5. ElasticSearch入门系列(四)分布式初探

    序言:ElasticSearch致力于隐藏分布式系统的复杂性,以下的操作都是在底层自动完成的: 将你的文档分区到不同的容器或者分片(shards),他们可以存在于一个或多个节点中 将分片均匀的分配到各 ...

  6. ElasticSearch 模板文件配置

    首先是推荐一下参考资料 中文资料:http://kibana.logstash.es/content/elasticsearch/index.html 官方文档:https://www.elastic ...

  7. 分布式ElasticSearch简单介绍

    这里我们解释一些通用的术语,比如集群(cluster).节点(node)和分片(shard).Elasticsearch的扩展机制,以及它怎样处理硬件故障.在此将探索怎样创建你的集群(cluster) ...

  8. ElasticSearch(1)-入门

    下一篇 Elastic Search基础(2) 相关文档: Gitbook[中文未完整]: http://learnes.net/ Gitbook[英文完整]:https://allen8807.gi ...

  9. 全文搜索之 Elasticsearch

    概述 Elasticsearch (ES)是一个基于 Lucene 的开源搜索引擎,它不但稳定.可靠.快速,而且也具有良好的水平扩展能力,是专门为分布式环境设计的. 特性 安装方便:没有其他依赖,下载 ...

  10. Elasticsearch学习笔记 一

    本文版权归博客园和作者吴双本人共同所有 转载和爬虫请注明原文地址 www.cnblogs.com/tdws. 本文参考和学习资料 <ES权威指南> 一.基本概念 存储数据到ES中的行为叫做 ...

随机推荐

  1. win32 去掉窗口边框

    参考:http://www.blitzbasic.com/Community/posts.php?topic=67222 Strict Graphics 320, 200 SetClsColor 0, ...

  2. Google Chrome 总提示flash插件过期,用命令行模式解决

    目标那改成:"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --args --allow-outdate ...

  3. (四)、Fiddler打断点

    一.打断点是Fiddler一个比较好用的功能,它可以做一些手工操作很难做的事情. 那为什么要打断点? 看下图,Fiddler打开后,Client(客户端)发送的请求会先经过Fiddler,然后Fidd ...

  4. ASP.NET比较常用的26个性能优化技巧

    1. 数据库访问性能优化 数据库的连接和关闭 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源.ASP.NET中提供了连接池( ...

  5. 编译openvpn在链接时报tuncfg错误

    1. 链接时产生tuncfg错误 init.o: In function `do_persist_tuntap': init.c:(.text+0x24d8): undefined reference ...

  6. 【备忘:待完善】nsq集群初体验

    本机的一个节点及监控与管理后台 虚拟机中的一个节点 命令: [root@vm-vagrant nsq]# nsqd --lookupd-tcp-address=192.168.23.150:4160 ...

  7. python2.7 + ubuntu14.4 + dlib19.7

    0.首先需要Cmake以及编译C++成python程序的工具 sudo apt-get install libboost-python-dev cmake 1.download dlib19.7 fr ...

  8. DBUtils 增删改查例子

    sql CREATE TABLE [dbo].[Person] ( , ) NOT NULL , ) COLLATE Chinese_PRC_CI_AS NULL , [age] [int] NULL ...

  9. C#如何:启用和禁用自动绑定重定向 (微软)

    https://msdn.microsoft.com/zh-cn/library/2fc472t2.aspx 如何:启用和禁用自动绑定重定向 .NET Framework (current versi ...

  10. C#(.Net)中调用Sql sever汉字字符串显示为?问号

    利用Sql语言,向数据库中导入‘C语’,结果在检查的时候,发现如上图所示. 网络上,很多人说是编码问题,但是都没给出具体的解决方案,最终用这种方法解决了! 把上图中需要储存汉字字符串的类型变为 nva ...