作ろうとした背景 以前、elasticdumpを使ってインデックスデータをダンプしていたのですが、結構な時間を要したため暇だった年末年始あたりからCLIツールをGo言語で作りはじめました。 実装 処理の大まかな流れは下記の図のような形で実装しました。 今回は、処理の効率化と学習を目的に並行処理でインデックスデータを保存するようにしました。 困ったこと Elasticsearchの検索上限 ElasticsearchのSeach APIではsearch_afterを使用しない場合、検索の上限がデフォルトで10000件までとなり、ドキュメントが10000件を超えるインデックスのダンプをすることができませんでした。 Search APIの代わりに、Scroll APIを使用することで、10000件以上のドキュメントを取得することができました。 並行処理 最初は下記のような形で実装したのですが、d
はじめに Elasticsearch を docker を使って、ローカルマシンで使用している。 Elasticsearchのバージョンをあげてみたくなったので、データをDumpして引越ししてみることにした。 事前調査 2020/11/20現在、Googleを使って、「elasticsearch インデックス 移行」と調べてみると、Elasticdumpというスクリプトを使っているひとが多いようだ。 (以下、Googleの検索結果 表示される順に抜粋) ElasticSearchのindexデータを移行する - Qiitaqiita.com › Node.js https://qiita.com/taai/items/9244e7dc4dacf29ab95a よく使うElasticSearchのクエリ(elasticdump) - Qiitaqiita.com › Elasticsearc
Version 1.0.0 of Elasticdump changes the format of the files created by the dump. Files created with version 0.x.x of this tool are likely not to work with versions going forward. To learn more about the breaking changes, vist the release notes for version 1.0.0. If you recive an "out of memory" error, this is probably or most likely the cause. Version 2.0.0 of Elasticdump removes the bulk options
© 2020. All Rights Reserved - Elasticsearch Elasticsearch is a trademark of Elasticsearch BV, registered in the U.S. and in other countries Trademarks Terms Privacy Brand Code of Conduct Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant logo are trademarks of the Apache Software Foundation in the United States and/or other countries.
こんにちは、SUUMOスマホサイトの開発チームに所属しているエンジニアの上野です。 今回は、リアルタイムログ解析基盤を紹介します。 背景 皆様はwebサーバログ監視(アクセスログ・エラーログなど)をどのように行われているでしょうか? スーモスマホサイトでは、アクセス数増加に伴いサーバ台数が増え、csshX地こんにちは、SUUMOスマホサイトの開発チームに所属しているエンジニアの上野です。 今回は、リアルタイムログ解析基盤を紹介します。 背景 皆様はwebサーバログ監視(アクセスログ・エラーログなど)をどのように行われているでしょうか? スーモスマホサイトでは、アクセス数増加に伴いサーバ台数が増え、 csshX 地獄に陥りました。(以下の図のような状態のことです。) ログの確認が必要になった際に、この csshX を使用して秘伝のワンライナーで確認したい部分をtailして抽出していましたが
こんにちは。ホリデー株式会社の内藤です。 ホリデー株式会社では Holiday(https://haveagood.holiday) という新規サービスの開発・運営を行っています。*1 以前投稿した記事でご紹介したように、Holiday では全文検索エンジンとして Elasticsearch を利用しています。 Ruby on Rails で構築されたアプリケーションから Elasticsearch を操作するには、公式 gem である elasticsearch-rails を使うのがとても便利です。 もちろん、Holiday でも活用させてもらっています。 大方の機能についてはこの gem で提供されるもので満足だったのですが、一点だけ、Holiday の運用をしている中で困ることがありました。 それが、サービス公開後のインデックスの再構築です。 elasticsearch-rails
【2016/09/10追記】 勉強しなおして、Elasticsearchの知識についてさらにまとめた記事を書いたので、そちらを参照してもらうと良さそうです。 blog.shibayu36.org 最近Elasticsearchの勉強をした。ただ、入門のためどのような資料が適しているかを知るのが大変だった。そこでどのように勉強したかについてメモをしておく。少しまとめエントリー的なノリになりそう。 Elasticsearchの概念を知る 全文検索技術の基本を知る Elasticsearchのドキュメントのたどり方を知る の順に学習を進めていった。 Elasticsearchの概念を知る Elasticsearchの学習を始めようとした時に、まずは基本からということで以下の本を読んでいた。 高速スケーラブル検索エンジン ElasticSearch Server (アスキー書籍) 作者:Rafal
{ "@timestamp": "2013-12-17T10:12:40+09:00", "remote_addr": "203.0.113.10", "country_code": "JP", "request_uri": "/index.php", "user_agent": "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)" } すると、いまアクセスされている国の比率とかを見たければ、country_codeを指定してあげれば次の様なグラフが書けて非常に便利だ。 しかし、user_agentを指定するとつぎのようになったりして、うまくいかないことがある。 これはKibanaが空気を読んで要素解析してしまったせいである。できれば完全一致で見たい。 Mapping Templateを使う El
Elasticsearch勉強会 in Nagoya で使用したスライド
fluent-plugin-elasticsearchやKibanaのデフォルトであるlogstash形式では、年月日毎にインデックスを作成されて使われることを想定されています。 これは扱いやすいのですが万能では無く、次のような状況ではパフォーマンス的な観点で、このインデックスの粒度を変更することを検討すると良いケースがあります。 粒度を細かくしたいケース(時間単位) 日毎のインデックス作成では、elasticsearchに割り当てたメモリ量を超えてしまう 粒度を荒くしたいケース(週単位/月単位/年単位) 日毎のインデックス作成では容量が小さく、日常的に検索する範囲が複数のインデックスに渡るとき Kibanaは年月日以外の粒度(時間・日・週・月・年)にも対応していますので、変更することも容易です。これは次の2つの設定変更で適用できます。 ログ収集を行うElasticsearchへ流し込む、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く