DevOps シナリオでの Log Service と ELK(検索クラス)および Hadoop / Hive との比較
ソフトウェアとサービスの配信に対する需要の急増に対処するために、起業初期のチームも大手 IT 企業も DevOps モードに転換しつつあります。 開発(Dev)と保守(Ops)とのコラボレーションにより、部門を超える共同作業の実施や、顧客の要求に対する迅速な対応、及び持続的デリバリーを実現できます。
DeveOps モードでは、ログは問題調査、セキュリティ監査、運用サポートなどの面で重要なサポートの役割を果たします。 適切なログソリューションは、 DevOps にとって非常に重要です。
以下の点で LogSearch と ELK および Hadoop / Hive ソリューションを比較します。
- ログが生成後、どれくらい経てばユーザーがクエリを実行できるか
- クエリ能力:単位時間当たりにスキャンされるデータ量。
- クエリ機能:キーワードクエリ、条件組み合わせクエリ、あいまいクエリ、数値比較、コンテキストクエリ。
- トラフィックの 100 倍の増加に対する迅速な対応
- コスト:GB あたりのコスト。
- 信頼性:ログデータは安全であり、紛失しません。
一般的な解決策と比較
- 自作 ELK:比較には Elastic、Logstash、Kibana を使用します。
- オフライン Hadoop + Hive:データは Hadoop に格納され、Hive または Presto がクエリに使用されます(分析ではありません)。
- Log Service(LogSearch)を使用します。
例としてアプリケーションログと Nginx アクセスログを使用してこれらのソリューションを比較します(1 日あたり 10 GB)。
機能 | ELK システム | Hadoop + Hive | Log service |
---|---|---|---|
クエリ完了までの待ち時間 | 1 ~ 60 秒(refresh_interval により制御) | 数分から数時間 | リアルタイム |
クエリ待ち時間 | 1 秒未満 | 分単位 | 1秒未満 |
超大クエリ | 数十秒から数分 | 分単位 | 秒単位(10 億ログのクエリ) |
キーワードクエリ | サポート | サポート | サポート |
あいまい検索 | サポート | サポート | サポート |
コンテキストクエリ | 未サポート | 未サポート | サポート |
コンテキストクエリ | サポート | サポート | サポート |
連続文字列クエリ | サポート | サポート | 未サポート |
拡張性 | マシンを予め準備 | マシンを予め準備 | 秒単位で 10 倍拡張 |
書込みコスト | 書き込み料 5 USD / GB。 クエリは無料 | 書き込みは無料 1クエリーにつき 0.3 USD / GB | 書き込み料 0.5 USD / GB クエリは無料 |
ストレージコスト | ≤ 3.36 USD / GB *日 | ≤ 0.035 USD / GB *日 | ≤ 0.016 USD / GB *日 |
信頼性 | コピー数を設定する | コピー数を設定する | SLA > 99.9%、 データ > 99.99999999% |