• Elastichsearch实践


    官网文档:https://www.elastic.co/guide/cn/elasticsearch/guide/current/getting-started.html

    es中的索引、类型、文档可以一一和关系型数据库中的概念去对应。

    在本地部署三个es程序,将会自动水平扩容。任何一个节点挂掉,在其他节点都有备份数据保证分片数据的完整性。

    主分片的数目在索引创建时就已经确定了下来。一般我们给一个索引分配5个主分片,一个副本。但当你拥有越多的副本分片时,也将拥有越高的吞吐量(前提是增加机器)。

    REST设置命令

    /index/_settings // 如果对所有索引,用 /_all/_settings
    {"number_of_replicas":1}    // 副本数
    {"refresh_interval": "10s"}    // 刷新时间

    网页加载性能上报,es近实时搜索优化实践:(反复调研测试了一个礼拜才得出的精辟结论)

    node接收端缓存800条数据,统一bulk到es;

    es全局设置{ refresh_interval: 10s },提升内存刷新时间。

    聚合

    按pageId做聚合(注意在terms里面设置size!—— 被坑惨过)

    aggs: {
      mypageId: {
        terms: {
          size: 1000,
          field: 'pageId.keyword'
        }
      }
    }
    {
      "size": 0,
      "aggs": {
        "pageIds": {
          "terms": {
            "size": 100,
            "field": "pageId.keyword"
          }
        }
      }
    }

    查询指纹用户匹配

    http://10.10.19.29:9200/
    
    finger-query-2019.03.17/_search
    
    {"size":1,"aggs":{"users":{"terms":{"size":100,"field":"matched"}}}}

    查询页面聚合

    {
      "size": 100,
      "aggs": {
        "pages": {
          "terms": {
            "size": 100,
            "field": "pageId"
          }
        }
      }
    }

    精确查询

    {
      "query": {
        "bool": {
          "filter": {
            "term": {
              "pageId": "planting_v2_2_1"
            }
          }
        }
      }
    }

    去重

    {
      "query": {
        "match_all": {}
      },
      "collapse": {
        "field": "pageId.keyword"
      }
    }

    按类型统计个数

    {
      "size": 0,
      "aggs": {
        "group_by_RESOURCE_FORMAT": {
          "terms": {
            "field": "iswebp.keyword"
          }
        }
      }
    }
  • 相关阅读:
    normalize.css介绍和使用,normalize与CSS Reset的区别
    解决在Windows10没有修改hosts文件权限
    定时器
    常见代码题
    BFC与margin重叠
    清除浮动的方法以及优缺点
    面向对象的理解
    左边固定右边自适应
    正则
    《STL源码剖析》——第一、二、三章
  • 原文地址:https://www.cnblogs.com/woodk/p/9997892.html
Copyright © 2020-2023  润新知