オプション1
リアルタイムの書き込みにおけるES ES APIの使用
長所:リアルタイム高、書かれたESの時間を制御するための柔軟性
短所:ビジネス・ロジックは、ES APIに大きく依存し、同期方式を結合さは、オリジナルのビジネス・プロセス・ロジックを破壊しました
デモ:https://blog.csdn.net/fanrenxiang/article/details/86509688
注:シーンのリアルタイムの同期化より、このような背景のメンテナンスなど(CRUD)インターフェースは、基礎となるデータを呼び出し、またはES同期書き込みロジックは、以前のビジネス・ロジックに追加されるが、この動作は、ESが書き込まれるか、またはそのようなメッセージコンポーネントカフカを配置する場合このメッセージのようなカフカのように、高い読み取りと書き込みのコンポーネントをサポートする優れた同時時間データの問題を解決することができ、元のビジネス・ロジック・インターフェースの応答に影響を与えないためであるESを、書かれています。プログラムの有料特別な注意で同期書き込み、ESは時々、適切なライトリトライ戦略を取るに失敗書き込み、データセットの失敗は、手動の永続的な記録、または定期タスクの補償を行います。
オプションII
ESにビンログ同期、それを分析し、MySQLのバイナリログを監視
長所:同期スキームとの同期関係を有することなく、ビジネス・ロジック、無関連、ビジネス・ロジックのデカップリング
短所:バイナリログフォーマットbinlog_format行しなければならない、新しい同期サービスの導入は、追加的なリスクと運用コストを追加しながら、
デモ:https://github.com/siddontang/go-mysql-elasticsearch
注:良い仕事のリスニングを行い、サービスを同期させるためのメカニズムを警告するために、
1.canalモニター消費カフカカフカbinlogの書き込みメッセージが書かれたES
ESへ川、タイミング同期2.書き込みプラグ-SQL
3. logstashとのリアルタイム同期を実現するために、
検索リクエストリアルタイム要件が高い場合のことができますので、技術的な選択の同期プログラムは、同期のクレーム非同期にモニタMySQLのバイナリログが対応するので、リアルタイム相対同期書き込みが遅くなります、あなたのプロジェクトの選択の実際の状況に基づいている必要がありますで書かれたリアルタイムプログラムES ES APIを使用することを検討してください。