elasticsearch beginning

摘抄

  1. 索引 —— 保存相关数据的地方。 索引实际上是指向一个或者多个物理 分片 的 逻辑命名空间 。
  2. 在索引建立的时候就已经确定了主分片数,但是副本分片数可以随时修改。
  3. 一个 分片 是一个底层的 工作单元 ,它仅保存了 全部数据中的一部分
  4. 在 Elasticsearch 中文档是 不可改变 的,不能修改它们
  5. 在内部,Elasticsearch 已将旧文档标记为已删除,并增加一个全新的文档。 尽管你不能再对旧版本的文档进行访问,但它并不会立即消失。当继续索引更多的数据,Elasticsearch 会在后台清理这些已删除文档。
  6. 在数据库领域中,有两种方法通常被用来确保并发更新时变更不会丢失:
    1. 悲观并发控制:这种方法被关系型数据库广泛使用,它假定有变更冲突可能发生,因此阻塞访问资源以防止冲突。 一个典型的例子是读取一行数据之前先将其锁住,确保只有放置锁的线程能够对这行数据进行修改。
    2. 乐观并发控制:Elasticsearch 中使用的这种方法假定冲突是不可能发生的,并且不会阻塞正在尝试的操作。 然而,如果源数据在读写当中被修改,更新将会失败。应用程序接下来将决定该如何解决冲突。 例如,可以重试更新、使用新的数据、或者将相关情况报告给用户。
  7. json是有结构的,可以对数据进行索引
  8. 为了能够将时间域视为时间,数字域视为数字,字符串域视为全文或精确值字符串, Elasticsearch 需要知道每个域中数据的类型。这个信息包含在映射中。

TBD

Reference

Elasticsearch: 权威指南

comments powered by Disqus