Apache Kyuubi は、Spark、Flink、Trino などのデータレイクのクエリエンジンに SQL クエリサービスを提供する分散マルチテナントゲートウェイです。
機能
-
マルチテナンシー:Kyuubi は、統一された認証および認可レイヤーを使用することで、リソース取得、データアクセス、メタデータアクセスにおけるエンドツーエンドのマルチテナンシーをサポートします。
-
高可用性:Kyuubi は ZooKeeper を使用して負荷分散し、エンタープライズグレードの高可用性と無制限のクライアントの同時実行を実現します。
-
複数のワークロード:Kyuubi は、単一のプラットフォーム、単一のデータレプリカ、および統一された SQL インターフェイスで、複数のワークロードを処理します。
シナリオ
-
インタラクティブ分析:Kyuubi は、ビッグデータに対するインタラクティブなビジュアル分析のためのエンタープライズグレードの分析プラットフォームを実現します。一般的なコンピューティングフレームワークに加え、Java Database Connectivity (JDBC) および Open Database Connectivity (ODBC) インターフェイスをサポートしており、SQL またはビジネスインテリジェンス (BI) ツールによる効率的なクエリを可能にします。Kyuubi は、ユーザーレベルでバックエンドエンジンのインスタンスをキャッシュすることで、リソース共有を向上させ、レスポンスを高速化します。大規模なデータセットに対するクエリを並列処理し、結果を迅速に返します。
-
バッチデータ処理:Kyuubi は、大規模な抽出、変換、ロード (ETL) プロセスなどの一般的なバッチ処理のための SQL インターフェイスを提供します。Kyuubi とそのエンジンはストレージから独立しており、多数のデータソースをサポートします。また、Kyuubi は接続レベルでバックエンドエンジンのインスタンスを分離することで、リソース分離と安定性を向上させることができます。
Kyuubi、Livy、Spark ThriftServer の比較
|
比較項目 |
Kyuubi |
Livy |
Spark ThriftServer |
|
サポートされるインターフェイス |
SQL、Scala |
SQL、Scala、Python、R |
SQL |
|
サポートされるエンジン |
Spark、Flink、Trino |
Spark |
Spark |
|
Spark バージョン |
Spark 3.x |
Spark 2.x および Spark 3.x |
Spark コンポーネントに同梱 |
|
プロトコルのサポート |
Thrift および JDBC |
HTTP、Thrift、JDBC |
Thrift および JDBC |
|
クライアント |
Kyuubi Beeline |
HTTP Client |
Spark Beeline |
|
高可用性 |
サポート |
サポート |
非サポート |
|
リソース分離 |
サポート |
サポート |
非サポート |
|
LDAP 認証 |
サポート |
サポート |
サポート |
|
Alibaba Cloud EMR バージョン |
|
|
すべてのバージョン |