1. 1.1 Elasticsearch transloghistorical

    1. translog是什么 Elasticsearch执行写入操作(index或者delete)的时候会把该操作写入日志 2. 为什么需要translog - 防止宕机造成数据丢失 - Elasticsearch的数据 refresh 进入filesystem cache会即searchable,

  2. 1.2 Elasticsearch索引实现historical

    1. 倒排索引是什么 - 倒排索引.md 2. Elasticsearch的倒排索引工作原理 比如两个文档 搜索Father likes cat 2.1. 建立索引 1. 首先是分词 2. 然后是normalization:就是把语态、单复数等的转换 3. 最后记录词和文档的关系 2.2. 搜索 1

  3. 1.3 Elasticsearch CRUD流程historical

    1. 写入数据 1. 客户端随机选取一个node发送写请求 2. 这个node作为协调节点,根据 id计算document应该在哪个shard上,即 hash( id) % number of primary shards ,然后根据cluster state获取该shard在哪个node上面 3.

  4. 1.4 Elasticsearch架构historical

    1. Elasticsearch集群 1.1. 集群由node组成 - node有两种身份,一种是master,另一种是data。 - master node负责管理集群中的节点(如管理node、管理index) - data node负责存放document数据和提供搜索 - node的状态由三种

  5. 1.5 Elasticsearch优化historical

    1. 设计调优 - 创建mapping阶段 - 设计合理的字段,使用Java封装复杂的操作,直接写入到ES中。避免复杂操作,如join、nested、parent-child等 - 设置最小的最合适的数据类型。byte,short,integer,long。如果最小的类型就合适,那么就用最小的类型。

  6. 1.6 Elasticsearch分词器historical

    1. 什么是分词器 把一段句子分成一个个单词,对每个单词进行normalization 1.1. 召回率 搜索的时候增加能够搜索到的结果的数量 2. 分词器的构成 2.1. character filter 在一段文本进行分词之前,先进行预处理,比如说最常见的就是,过滤html标签(<span he

  7. 1.7 Elasticsearchhistorical

    1. Elasticseach是什么 - 基于Lucene开发的全文搜索引擎: - 全文搜索引擎 - Lucene功能很强大,但是API特别繁杂,Elasticseach对其进行了封装。如下Elasticseach特性 2. Elasticseach特性 - 支持分布式:水平扩容支持海量数据 - 支

  8. 1.8 Elasticsearch一致性historical

    1. 什么是一致性 - 分布式一致性.md - 就是Elasticsearch的Index上的document会先写入primary shard,然后同步到replica shard上,如何保证primary和replica shard上的数据一致性 2. consistency参数 2.1. 是什

  9. 1.9 Elasticsearch和MySQL的同步historical

    1. 定时同步 定时任务,分页拉取MySQL中的数据写入ElasticSearch 增改的数据好说,直接重新索引 但是删除的数据咋整?增加一个额外的字段update time,更新完后对于<update time的全部删除 2. cannel 通过cannel解析MySQL binlog,然后发送到

  10. 1.10 Elasticsearch使用historical

    1. 数据类型 1.1. String - text:会进行分词 - keyword:不会进行分词。相当于旧版的not analyzed 1.2. Numeric long, integer, short, byte, double, float 1.3. Date date:2015-01-01、