elasticsearch 文档

elasticsearch 文档

安装篇

  • elasticsearch的安装非常简单,下载后,直接 ./bin/elasticsearch 启动就可以了。(在linux有些坑,比如linux版本低会报警,root不能启动,需要新建用户。新建用户要给操作elasticsearch的权限等等..)

官网 https://www.elastic.co

注意如果使用插件的话,要下载5.0版本,配kibana的5.0版本。否则各种不兼容。下载地址https://www.elastic.co/start

  • 启动后用http://localhost:9200/访问。
  • kibana下载解压后,直接./kibana/bin/kibana启动,启动后 localhost:5601即可访问。
  • 外网访问, 与bin同级的config/elasticsearch.yml和config/kibana.yml是配置文件,里面注释非常详细,配置下链接地址。

使用篇

http://203.86.47.84:5601 配置好的kibana工具,点开链接,选择左侧的Dev Tools, 在这里可以对esearch进行一切操作。

我已经在course-center-2.0分支上下载了官方php-elasticsearch api,位置在vendor/elasticsearch, 自己写的操作ESearch的接口类在larval/app/Library/ESearch.php。 线下环境 env配置 , ES_HOST=http://203.86.47.84:9200

类使用

比如在Controller里,先use App\Library\ESearch;

然后直接

$data = array(‘id‘=>23, ‘name‘=>‘你好测试‘, ‘work‘=>‘asfdkld‘);
$a = (new ESearch(‘test‘))->insert($data);

即可将数据导入ESearch里面。

然后去kibana的dev Tools里面,点击绿色三角?,即可在右侧查看到刚刚插入的数据。

简单分析下数据。

  {
    "_index": "xnw_db",  // 可理解为数据库的名字
    "_type": "test", // 可理解为表
    "_id": "23", // 唯一建,可用于删除数据,esearch中,id相同,重新插入值会覆盖掉原来的值。id相同时会更新数据
    "_score": 1, 权重配置,值大的搜索时排位会被靠前
    "_source": { // 我们插入的数据
      "id": 23,
      "name": "你好测试",
      "work": "asfdkld"
    }
  }

搜索

官方文档

https://www.elastic.co/guide/en/elasticsearch/reference/current/search.html

kibana里面默认搜索的是esearch里面的全部值,我封装的类只搜索xnw_db库里面的内容。

搜索库中全部内容:

(new ESearch(‘test‘))->search()

kibana中的写法,指定库搜索

GET /xnw_db/_search?

搜索name为 “我” 的值,kibana中,

GET /xnw_db/_search? {

"query" : {
    "term" : { "name" : "我" }
}

},

代码中。

$a = (new ESearch(‘test‘))->search(array("query"=>array("term"=>array("name"=>"我"))));

1,可以看出,直接将kibana中的json转换为数组放入代码中,即可搜索到相应值,为简便,以下将只写kibana中的写法

2,注意,term本是搜索某个字段确切值得方法,但由于中文被分词了, 搜确切值用term反而搜不到, 正式环境中尽量少用term

  1. esearch默认是0,10页,

GET xnw_db/_search {

"from" : 0, "size" : 1,
"query" : {}

}

其余具体用法参考官方文档。

时间: 2024-10-13 08:56:15

elasticsearch 文档的相关文章

ElasticSearch文档操作介绍三

ElasticSearch文档的操作 文档存储位置的计算公式: shard = hash(routing) % number_of_primary_shards 上面公式中,routing 是一个可变值,默认是文档的 _id ,也可以设置成一个自定义的值. routing 通过 hash 函数生成一个数字,然后这个数字再除以 number_of_primary_shards (主分片的数量)后得到 余数 .这个分布在 0 到 number_of_primary_shards-1 之间的余数,就是

elasticsearch文档、索引的CRUD操作

elasticsearch概念 1. 集群:一个或者多个节点组织在一起 2. 节点:一个节点是集群中的一个服务器,有一个名字来标识,默认是一个随机的漫威角色的名字 3. 分片:将索引划分为多份的能力,允许水平分割和扩展容量,多个分片响应请求,提高性能和吞吐量 4. 副本:创建分片的一份或者多分的能力,在一个节点失败其余节点可以顶上 elasticsearch与mysql对应关系 index(索引) --- 数据库 type(类型) --- 表 documents(文档) --- 行 fields

Elasticsearch入门教程(四):Elasticsearch文档CURD

原文:Elasticsearch入门教程(四):Elasticsearch文档CURD 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/vbirdbest/article/details/79217590 一: 新增文档POST /{index}/{type} 或 PUT /{index}/{type}/{id} 注意:新增文档时可以显式指定id,id可以是数字也可以是字符串,如果不显示指

ElasticSearch文档

之前公司中的项目用到了es搜索,感觉就是一个开箱即用的工具,查看es的api,就可以快速的进行运用!也曾经零零散散的理解过里面的一些东西,比如分词啊什么的.但是总没系统的从最基础的看一遍,前端时间大体把elastic的官方文档(当然喽,我看的是中文版的)粗略的研究了一部分,把自己理解的一部分记录下来吧. 也只是记录而已,如果有小伙伴看到文章,大不必从我写的这些文章中去学习,直接用es官方的文档,写的非常的明白,虽然她的官网又点乱,但找到学习入口的话,也算是整理的比较好的文档了.地址:https:

(33)ElasticSearch文档的核心元数据解析

文档的核心元数据包括三个:索引.类型.id 1._index 说明了一个文档存储在哪个索引中,同一个索引下存放的是相似的文档(文档的field多数是相同的)索引名必须是小写的,不能以下划线开头,不能包括逗号. 2._type 表示文档属于索引中的哪个类型,一个索引下只能有一个type,类型名可以是大写,也可以是小写的,不能以下划线开头,不能包括逗号. 3._id: 文档的唯一标识,和索引,类型组合在一起唯一标识了一个文档,可以手动指定值,也可以由es来生成这个值. 原文地址:https://ww

Elasticsearch(文档操作)--添加

首先创建测试索引 接下来创建文档 创建完成回到 Elasticsearch-head 中查看 其中 ignore_above": 256, 超过 256个字符 使用text 否者使用 keyword 进行检索 点击 数据浏览 查看刚添加的文档信息 如果添加时不指定ID的话 es 会自动生成主键 http://192.168.1.200:9200/my_doc/_doc 注:如果索引没有手动建立mappings,那么当插入文档数据的时候,会根据文档类型自动设置属性类型.这个就是es的动态映射,帮我

ElasticSearch文档-简单介绍

ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便.支持通过HTTP使用JSON进行数据索引.我们建立一个网站或应用程序,并要添加搜索功能,令我们受打击的是:搜索工作是很难的.我们希望我们的搜索解决方案要快,我们希望有一个零配置和一个完全免费的搜索模式,我们希望能够简单地使用JSON通过HTTP的索引数据,我们希望我们的搜索服务器始终可用,我们希望能够一台开始并扩展到数百,我们要实时搜索,

Elasticsearch 文档专用

ES安装等操作 http://blog.csdn.net/cnweike/article/details/33736429 https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html http://blog.csdn.net/sinat_28224453/article/details/51134978 http://blog.csdn.net/peibolinux/article/details/37560657

Elasticsearch 管理文档

ES支持近实时的索引.更新.查询.删除文档,近实时就意味着刚刚索引的数据需要1秒钟后才能搜索到,这也是与传统的SQL数据库不同的地方. 更多的ES文档资料参考:Elasticsearch官方文档翻译 索引/替换文档 之前已经试过如何索引一个文档了,这里再复习一下: curl -XPUT 'localhost:9200/customer/external/1?pretty' -d ' { "name": "John Doe" }' 上面的例子中,创建了一个索引为cus