LoginSignup
2
1

More than 5 years have passed since last update.

Elasticsearch2とElasticsearch5で容量にどのような差があるのかパート1

Posted at

Elasticsearch2と5で同じデータ量でサイズにどのくらい差があるのか、気になったので見てみる

手順

  • dockerでElasticsearch2とElasticsearch5のイメージを作っておく
  • 元になるデータを作っておく
  • indexを作る
  • bulk importしてElasticsearchにデータ突っ込む
  • indexのサイズを見る
curl -X GET localhost:9200/photo_search/_stats/store?pretty=true

検証

10000件

  • elasticsearch2
curl -X GET localhost:9200/photos/_stats/store?pretty=true
{
  "_shards" : {
    "total" : 10,
    "successful" : 5,
    "failed" : 0
  },
  "_all" : {
    "primaries" : {
      "store" : {
        "size_in_bytes" : 2394572,
        "throttle_time_in_millis" : 0
      }
    },
    "total" : {
      "store" : {
        "size_in_bytes" : 2394572,
        "throttle_time_in_millis" : 0
      }
    }
  },
  "indices" : {
    "photos" : {
      "primaries" : {
        "store" : {
          "size_in_bytes" : 2394572,
          "throttle_time_in_millis" : 0
        }
      },
      "total" : {
        "store" : {
          "size_in_bytes" : 2394572,
          "throttle_time_in_millis" : 0
        }
      }
    }
  }
}
  • elasticsearch5
 curl -X GET localhost:9200/photos/_stats/store?pretty=true
{
  "_shards" : {
    "total" : 10,
    "successful" : 5,
    "failed" : 0
  },
  "_all" : {
    "primaries" : {
      "store" : {
        "size_in_bytes" : 2317554,
        "throttle_time_in_millis" : 0
      }
    },
    "total" : {
      "store" : {
        "size_in_bytes" : 2317554,
        "throttle_time_in_millis" : 0
      }
    }
  },
  "indices" : {
    "photos" : {
      "primaries" : {
        "store" : {
          "size_in_bytes" : 2317554,
          "throttle_time_in_millis" : 0
        }
      },
      "total" : {
        "store" : {
          "size_in_bytes" : 2317554,
          "throttle_time_in_millis" : 0
        }
      }
    }
  }
}

そこまで大きな差はない。むしろelasticsearch5の方がサイズが小さい?

20000件

  • elasticsearch2
curl -X GET localhost:9200/photos/_stats/store?pretty=true
{
  "_shards" : {
    "total" : 10,
    "successful" : 5,
    "failed" : 0
  },
  "_all" : {
    "primaries" : {
      "store" : {
        "size_in_bytes" : 4248603,
        "throttle_time_in_millis" : 0
      }
    },
    "total" : {
      "store" : {
        "size_in_bytes" : 4248603,
        "throttle_time_in_millis" : 0
      }
    }
  },
  "indices" : {
    "photos" : {
      "primaries" : {
        "store" : {
          "size_in_bytes" : 4248603,
          "throttle_time_in_millis" : 0
        }
      },
      "total" : {
        "store" : {
          "size_in_bytes" : 4248603,
          "throttle_time_in_millis" : 0
        }
      }
    }
  }
}
  • elasticsearch5
curl -X GET localhost:9200/photos/_stats/store?pretty=true
{
  "_shards" : {
    "total" : 10,
    "successful" : 5,
    "failed" : 0
  },
  "_all" : {
    "primaries" : {
      "store" : {
        "size_in_bytes" : 7414230,
        "throttle_time_in_millis" : 0
      }
    },
    "total" : {
      "store" : {
        "size_in_bytes" : 7414230,
        "throttle_time_in_millis" : 0
      }
    }
  },
  "indices" : {
    "photos" : {
      "primaries" : {
        "store" : {
          "size_in_bytes" : 7414230,
          "throttle_time_in_millis" : 0
        }
      },
      "total" : {
        "store" : {
          "size_in_bytes" : 7414230,
          "throttle_time_in_millis" : 0
        }
      }
    }
  }
}

40000件

  • elasticsearch2
curl -X GET localhost:9200/photos/_stats/store?pretty=true
{
  "_shards" : {
    "total" : 10,
    "successful" : 5,
    "failed" : 0
  },
  "_all" : {
    "primaries" : {
      "store" : {
        "size_in_bytes" : 7401145,
        "throttle_time_in_millis" : 0
      }
    },
    "total" : {
      "store" : {
        "size_in_bytes" : 7401145,
        "throttle_time_in_millis" : 0
      }
    }
  },
  "indices" : {
    "photos" : {
      "primaries" : {
        "store" : {
          "size_in_bytes" : 7401145,
          "throttle_time_in_millis" : 0
        }
      },
      "total" : {
        "store" : {
          "size_in_bytes" : 7401145,
          "throttle_time_in_millis" : 0
        }
      }
    }
  }
}
  • elasticsearch5
curl -X GET localhost:9200/photos/_stats/store?pretty=true
{
  "_shards" : {
    "total" : 10,
    "successful" : 5,
    "failed" : 0
  },
  "_all" : {
    "primaries" : {
      "store" : {
        "size_in_bytes" : 14973109,
        "throttle_time_in_millis" : 0
      }
    },
    "total" : {
      "store" : {
        "size_in_bytes" : 14973109,
        "throttle_time_in_millis" : 0
      }
    }
  },
  "indices" : {
    "photos" : {
      "primaries" : {
        "store" : {
          "size_in_bytes" : 14973109,
          "throttle_time_in_millis" : 0
        }
      },
      "total" : {
        "store" : {
          "size_in_bytes" : 14973109,
          "throttle_time_in_millis" : 0
        }
      }
    }
  }
}

同じmappingで件数だけ増やしていくと、サイズに差が出てくる。これにkeywordの設定など更に追加していくと違ってくるのだろう。引き続き検証した。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1