OpenSearch は『AWS 主導の Elasticsearch 派生』
OpenSearch は AWS が主導する Elasticsearch のフォークで、Apache 2.0 ライセンスで自由に商用利用できます。本記事では編集部の視点で、深掘りした活用を公開情報をもとに整理します。Elasticsearch/OpenSearch もご参考に。
OpenSearch の特徴
(1) Apache 2.0 ライセンス。(2) Elasticsearch 7.10 から fork(公開情報をもとに)。(3) AWS OpenSearch Serviceマネージド。(4) Dashboards:Kibana 派生。(5) 独自プラグイン追加中。
主要なユースケース
(1) ログ分析:ELK 代替。(2) 全文検索:商品検索等。(3) セキュリティ分析 (SIEM)。(4) メトリクス分析。(5) ベクトル検索:AI/RAG。LangChain+RAG もご参考に。
ベクトル検索
(1) knn_vector フィールド。(2) HNSW アルゴリズム。(3) ハイブリッド検索:text + vector。(4) Embedding 生成:別途必要。(5) RAG 統合。
クラスタ運用
(1) master/data/coordinator分離。(2) シャード設計。(3) レプリカ。(4) ノード数:3〜。(5) 監視必須。
パフォーマンスチューニング
(1) JVM ヒープ:32GB 以下。(2) refresh_interval:30s 等。(3) shard サイズ:50GB 程度。(4) warm/cold ノード。(5) ISM (Index State Management)。Observability 実践 もご参考に。
セキュリティ
(1) fine-grained access control。(2) encryption at rest。(3) TLS in transit。(4) SAML/OIDC SSO。(5) 監査ログ。Web セキュリティ実践 もご参考に。
AWS OpenSearch Service
(1) マネージド版:運用負荷ゼロ。(2) auto-tuning。(3) UltraWarm/Cold:階層化。(4) Serverless オプション(公開情報をもとに)。(5) 料金:ホスト時間ベース。AWS SAA もご参考に。
Elasticsearch との互換性
(1) 初期は完全互換。(2) 新機能で分岐。(3) ライセンス差が決定要因。(4) 長期は別物に。(5) 選び方:オープン重視 OpenSearch、エンタープライズなら Elasticsearch。
失敗しがちなパターン
(1) シャード過多:性能低下。(2) マッピング設計ミス。(3) JVM ヒープ過剰:逆効果。(4) 監視不足。(5) セキュリティ未設定。対策は、(1)50GB/シャード、(2)明示マッピング、(3)32GB以下、(4)Prometheus 連携、(5)初期から有効化、です。