Elasticsearch Set Processorによるフィールド更新時の_source汚染問題の分析
問題背景
ある開発者がinteger型のフィールドにkeyword型のサブフィールドを追加し、正確なマッチングクエリを最適化して検索速度を向上させたいと考えていました。
インデックスのデータ量が大きくないため、reindexのような複雑な操作は避け、update_by_queryを使用して既存データを更新することにしました。
以下にテストした手順を示します。フィールドのサブフィール ...
5月28日 01:13 投稿
Elasticsearch実践ガイド:RestTemplateによるデータ操作と分散ログ収集基盤の構築
環境準備と基本設定
Elasticsearchのアーカイブを解凍後、bin/elasticsearchを実行することで9200ポートでサービスが起動します。操作インターフェースとしてKibanaを併設する場合、バージョンをElasticsearchと一致させる必要があります。kibana.ymlではserver.port、server.host、elasticsearch.hostsの3項目を修正し、専用ユーザー権限で起動プロセスを実行することで権 ...
5月26日 22:54 投稿
Elasticsearch 9のINFINI Consoleによる管理:監視、データ操作、クエリ実行
Elasticsearch v9.0のリリースに伴い、INFINI Console v1.29.2を使用した最新バージョン対応を検証します。マルチクラスタ対応の軽量管理プラットフォームとして、指標監視、データ管理、検索クエリ実行の各機能が正常に動作することを確認しました。
環境構築
Dockerを使用してElasticsearch 9.0を起動します。
docker run --name es9-container -p 9201:9200 -it -m 1GB ...
5月25日 01:38 投稿
JavaScriptスクリプトによる複雑なクエリ書き換えの実装
ビジネス要件として以下のようなニーズが存在します:
ゲートウェイでマルチクラスタ検索をどのようにサポートするか?実現したいのは、検索リクエストとして lp:9200/index1/_search を入力した場合、
このインデックスが3つのクラスタに存在し、クラスタ間で検索を実行したい。つまり、ゲートウェイが lp:9200/cluster01:index1,cluster02:index1,cluster03:index1/_sea ...
5月23日 19:54 投稿
ElasticsearchにおけるJavaによる効率的なページング手法
通常の検索フローでは、最初の10件を取得する場合、クライアントがノードにリクエストを送信し、各シャードが上位10件を返し、ノードがそれらを集約して最終的にトップ10を返します。
では、11件目から20件目を取得したい場合はどうすれば良いでしょうか?ここで登場するのがページング処理です。
「浅いページング」は最も単純な方法で、先頭20件を取得した後、最初の10 ...
5月21日 04:12 投稿
Elasticsearchの基本概念と実用的なセットアップガイド
Elasticsearchは、Apache Luceneを基盤とする分散型全文検索エンジンで、高速なデータ探索・分析を可能にします。REST APIを通じて操作でき、JSON形式でのデータ管理が標準です。全文検索、構造化検索、リアルタイム分析など、多様な用途に対応しています。
代表的な利用シーン
ECサイトの商品検索
ユーザーレビューの収集・表示
ログの集約・可視化
検索結果の ...
5月19日 11:06 投稿
Elasticsearch検索と統計
Elasticsearchを使ってタグ画像の統計を行ったことは昔のことになり、最近見直した際にはかなり慣れていない状態でした。現在はバージョン7.12を使用しています。かつてはTransportClientを利用していましたが、今は公式に推奨されているRestHighLevelClientを使用しています。
最近RestHighLevelClientを使ったと感じて便利だったので、いくつかの基本的な機能を記録して ...
5月18日 13:22 投稿
Elasticsearchにおけるマッピングの設定方法
マッピングはElasticsearchインデックス内の各フィールドの構造と処理ルールを定義するもので、検索やストレージ動作に直接影響します。適切なマッピング設計はデータの一貫性と検索精度を保証します。
マッピングの基本概念
マッピングとは、文書内の各フィールドがどのようなデータ型を持ち、どのように解析・保存されるかを事前に宣言する仕組みです。たとえば、text型 ...
5月17日 19:00 投稿
Elasticsearch スナップショットによる増分バックアップと復元の実践
スナップショットによるバックアップの仕組み
Elasticsearch が提供するスナップショット機能は、データのバックアップと復元を効率的に行う仕組みです。この方法にはいくつかの重要な特徴があります:
増分バックアップ:変更されたファイルのみを保存することで、ストレージ効率を向上させます。
メタデータ管理:各スナップショットに必要なファイルのマッピング情報 ...
5月16日 21:12 投稿
Easysearchにおけるデータ操作と高度な検索クエリ
Easysearchの概要
Easysearchは、Apache Luceneを基盤とするオープンソースの分散型検索・分析エンジンであるElasticsearchと高い互換性を持つ国産代替ソリューションです。Elasticsearch 7.10.2のオープンソース版をベースに開発されており、機能、パフォーマンス、安定性、拡張性において強化が図られています。既存のElasticsearchアプリケーションからの移行は、ビジネ ...
5月15日 08:54 投稿