zoukankan      html  css  js  c++  java
  • (47)ElasticSearch之bulk语法格式解析

      1、bulk的格式:

    {action:{metadata}}
    
    {requestbody}
    

      2、为什么不使用如下格式:

    [
      {
        "action":{},
        "data":{}
      }
    ]

      这种方式可读性好,但是内部处理就麻烦了:耗费更多内存,增加java虚拟机开销

      1)将json数组解析为JSONArray对象,在内存中就需要有一份json文本的拷贝,另外还有一个JSONArray对象
      2)解析json数组里的每个json,对每个请求中的document进行路由
      3)为路由到同一个shard上的多个请求,创建一个请求数组
      4)将这个请求数组序列化
      5)将序列化后的请求数组发送到对应的节点上去

      3、使用第一种的好处:

      1)不用将其转换为json对象,直接按照换行符切割json,内存中不需要json文本的拷贝
      2)对每两个一组的json,读取meta,进行document路由
      3)直接将对应的json发送到node上去

  • 相关阅读:
    背景图片自适应大小(平铺)
    墨卡托投影示意图
    C# 两个类的实例之间相同属性的值的复制
    C# 并行编程 Task
    C# 并行编程 PLINQ
    C# 并行编程 Parallel
    仰望星空
    Ubuntu的人道精神
    神经网络简介
    并行计算简介
  • 原文地址:https://www.cnblogs.com/javasl/p/12652425.html
Copyright © 2011-2022 走看看