Elasticsearch服务器开发第二版读书笔记

来源:互联网 发布:八门神器修改数据闪退 编辑:程序博客网 时间:2024/05/22 05:32

首先很想说,很高兴有位同济的大学研究生同学,让我可以在毕业5个月后,还能再次走进图书馆去借自己想看的书籍,比如最近因为工作需要而接触的elasticsearch。

传入的文档中的数据怎么转化为倒排索引,查询文本怎样变成可搜索的词---->这个数据转化的过程就是分析.

由于其分布性性质和实时功能,许多人把他称为文档数据库。


Elaseticsearch把数据存在一个或多个索引上,每个索引包含各种类型的文档,我们也知道每个文档有很多字段映射定义了Elasticsearch如何对待这些字段


分片:当有大量的文档时,由于内存的限制,硬盘能力,处理能力不足,无法足够响应客户端请求等,一个节点可能不够,在这中情况下,数据可以分为较小的分片(shard)的部分,(其中每个分片都是一个独立的Apache Lucence)。每个分片可以放在不同的服务器上,因此,数据可以在集群中的节点中传播。查询时会把结果合并在一起显示。


Elasticsearch使用文档的唯一标识符来计算文档应该被放到哪个分片中,索引请求到一个节点后,该节点会转发文档到持有相关分片的目标节点中。尝试用文档标识符来获取文档时,发送查询到一个节点。。。


elasticsearch索引是由一个或多个分片组成的,每个分片包含了文档集的一部分。而这些分片也可以有副本,他们是分片的完整副本。在创建索引的过程中,可以规定应创建分片的分片及副本的数量。默认配置是5个分片和一个副本。这也意味着操作结束时,将有10个lucence索引分布在集群中。------每个分片都有自己的分片副本。


字段类型及其公共属性参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-standard-analyzer.html

                                               http://www.cnblogs.com/xing901022/p/5471419.html



Elasticsearch索引的每个文档都有自己的标识符和类型,在ES中,文档存在两种内部标识符。

  • _uid:是索引中文档的唯一标识符,由文档的标识符和类型构成,此字段不需要设置,总是被索引。
  • _id:实际标识符,一般创建文档是时候会传入,如果不传入会自动生成一个。
在es中,映射在文件中以json对象传送,

curl命令时参数设置情况:
curl -XPUT http://localhost:9200/{index}/{type}/_mapping -data-binnary @document.json

这里用--data-binary,没有用-d,因为-d 参数忽略换行符,而换行符在es的批量请求中很重要,也就是说此参数可以保留换行符。





0 0