Quboleレビュー:セルフサービスのビッグデータ分析

Quboleは、分析、AI、機械学習のためのクラウドネイティブデータプラットフォームとして請求されており、顧客エンゲージメント、デジタルトランスフォーメーション、データ駆動型製品、デジタルマーケティング、近代化、セキュリティインテリジェンス向けのソリューションを提供します。価値実現までの時間の短縮、マルチクラウドのサポート、管理者の生産性の10倍、オペレーターとユーザーの比率が1:200、クラウドコストの削減を実現しています。

プラットフォームでの私の短い経験に基づいて、Quboleが実際に行っていることは、データアナリスト、データエンジニア向けに、クラウドベースのセルフサービスビッグデータエクスペリエンスを作成するために、いくつかのオープンソースツールといくつかの独自のツールを統合することです。 、およびデータサイエンティスト。

Quboleは、ETLから探索的データ分析、モデル構築、本番規模でのモデルの展開までをサポートします。その過程で、リソースのプロビジョニングやスケーリングなど、管理者の多大な時間を必要とする可能性のある多くのクラウド操作を自動化します。その自動化によって、管理者の生産性が実際に10倍になるのか、特定の企業やユースケースでオペレーターとユーザーの比率が1:200になるのかは明らかではありません。

Quboleは、「アクティブデータ」の概念を強打する傾向があります。基本的に、ほとんどのデータレイク(基本的には多くのソースからのデータで満たされたファイルストアであり、すべてが1つの場所にありますが、1つのデータベースにはありません)では、分析に積極的に使用されるデータの割合が低くなっています。Quboleは、ほとんどのデータレイクが10%アクティブで90%非アクティブであると推定し、その比率を逆転させることができると予測しています。

Quboleの競合相手には、Databricks、AWS、Clouderaがあります。Quboleの機能の一部とのみ競合する製品は他にもたくさんあります。

Databricksは、クラスターマネージャーとSparkの上にノートブック、ダッシュボード、およびジョブを構築します。2016年にレビューしたところ、データサイエンティストにとって便利なプラットフォームであることがわかりました。Databricksは最近、データレイクにACIDトランザクション、スケーラブルなメタデータ処理、統合ストリーミングとバッチデータ処理を提供して信頼性を高めるDeltaLake製品をオープンソース化しました。そして彼らがSpark分析を提供するのを助けるために。

AWSには幅広いデータ製品があり、実際、Quboleはそれらの多くとの統合をサポートしています。現在Hortonworksが含まれているClouderaは、データウェアハウスと機械学習サービス、およびデータハブサービスを提供します。Quboleは、DatabricksとClouderaの両方に財務ガバナンスが欠けていると主張していますが、単一クラウドレベルで、またはマルチクラウド管理製品を使用して、ガバナンスを自分で実装できます。

Quboleのしくみ

Quboleは、すべてのツールをクラウドベースおよびブラウザベースの環境に統合します。この記事の次のセクションでは、環境の一部について説明します。このセクションでは、ツールに集中します。

Quboleは、クラスター管理の一環としてコスト管理を実現します。使用可能な場合はスポットインスタンス、自動スケーリングのノードの最小数と最大数など、クラスターがインスタンスタイプの特定の組み合わせを使用するように指定できます。「ゾンビ」インスタンスを回避するために、負荷がない場合にクラスターが実行を継続する時間の長さを指定することもできます。

スパーク

QuboleのCEOであるAshishThusooは、8月の記事「QuboleがApache Sparkの課題にどのように対処するか」で、Sparkの利点と落とし穴、およびQuboleが構成、パフォーマンス、コスト、リソース管理などの問題を解決する方法について説明しています。SparkはデータサイエンティストにとってQuboleの重要なコンポーネントであり、簡単で高速なデータ変換と機械学習を可能にします。

プレスト

Prestoは、ギガバイトからペタバイトまでのすべてのサイズのデータ​​ソースに対してインタラクティブな分析クエリを実行するためのオープンソースの分散SQLクエリエンジンです。PrestoクエリはHiveクエリよりもはるかに高速に実行されます。同時に、PrestoはHiveメタデータとデータスキーマを表示して使用できます。

ハイブ

Apache Hiveは、Hadoopエコシステムで人気のあるオープンソースプロジェクトであり、SQLを使用して分散ストレージに存在する大規模なデータセットの読み取り、書き込み、および管理を容易にします。構造は、すでにストレージにあるデータに投影できます。Hiveクエリの実行は、Apache Tez、Apache Spark、またはMapReduceを介して実行されます。Hive on Quboleは、ワークロードを意識した自動スケーリングと直接書き込みを実行できます。オープンソースのHiveには、これらのクラウド指向の最適化が欠けています。

Quboleの創設者は、ApacheHiveの作成者でもありました。彼らはFacebookでHiveを開始し、2008年にオープンソース化しました。

量子

Quantumは、HiveDDLとPrestoSQLの両方をサポートする、Qubole独自のサーバーレスの自動スケーリングのインタラクティブSQLクエリエンジンです。Quantumは、長期間に渡る散発的なクエリパターンに対して費用効果が高く、予期しない支出を防ぐための厳密なモードを備えた従量課金制のサービスです。QuantumはPrestoを使用し、Prestoサーバークラスターを持つことを補完します。量子クエリは、実行時間が45分に制限されています。

気流

Airflowは、ワークフローをプログラムで作成、スケジュール、および監視するためのPythonベースのプラットフォームです。ワークフローは、タスクの有向非巡回グラフ(DAG)です。Pythonコードでパイプラインを作成することにより、DAGを構成します。Quboleは、そのサービスの1つとしてAirflowを提供しています。ETLによく使用されます。

新しいQuboleOperatorは、他の既存のAirflowオペレーターと同じように使用できます。ワークフローでのオペレーターの実行中に、オペレーターはQubole Data Serviceにコマンドを送信し、コマンドが終了するまで待機します。Quboleは、Airflowがプログラムでワークフローを監視するために使用できるファイルセンサーとHiveテーブルセンサーをサポートしています。

Airflowユーザーインターフェイスを表示するには、最初にAirflowクラスターを起動してから、クラスターページを開いてAirflowWebサイトを表示する必要があります。

RubiX

RubiXは、Hadoopファイルシステムインターフェイスを使用するビッグデータシステムで使用できるQuboleの軽量データキャッシングフレームワークです。RubiXは、AmazonS3やAzureBlob Storageなどのクラウドストレージシステムと連携し、リモートファイルをローカルディスクにキャッシュするように設計されています。QuboleはRubiXをオープンソースにリリースしました。QuboleでRubiXを有効にするには、チェックボックスをオンにします。

Quboleは何をしますか?

Quboleは、分析とデータサイエンスのためのエンドツーエンドのプラットフォームを提供します。この機能は、12個ほどのモジュールに分散されています。

エクスプローラモジュールを使用すると、データテーブルの表示、データストアの追加、およびデータ交換の設定を行うことができます。AWSでは、データ接続、S3バケット、QuboleHiveデータストアを表示できます。

AnalyzeモジュールとWorkbenchモジュールを使用すると、データセットに対してアドホッククエリを実行できます。Analyzeは古いインターフェースであり、Workbenchは新しいインターフェースであり、試した時点ではまだベータ版でした。どちらのインターフェースでも、データフィールドをSQLクエリにドラッグアンドドロップし、操作の実行に使用するエンジン(Quantum、Hive、Presto、Spark、データベース、シェル、またはHadoop)を選択できます。

Smart Queryは、HiveおよびPresto用のフォームベースのSQLクエリビルダーです。テンプレートを使用すると、パラメータ化されたSQLクエリを再利用できます。

ノートブックは、データサイエンス用のSparkベースのZeppelinまたは(ベータ版の)Jupyterノートブックです。ダッシュボードは、ノートブックへのアクセスを許可せずに、探索を共有するためのインターフェイスを提供します。

スケジューラを使用すると、クエリ、ワークフロー、データのインポートとエクスポート、およびコマンドを定期的に自動的に実行できます。これは、AnalyzeモジュールとWorkbenchモジュールで実行できるアドホッククエリを補完します。

Clustersモジュールを使用すると、Hadoop / Hive、Spark、Presto、Airflow、およびディープラーニング(ベータ)サーバーのクラスターを管理できます。使用状況を使用すると、クラスターとクエリの使用状況を追跡できます。コントロールパネルを使用すると、自分用に、またはシステム管理者権限がある場合は他の人用に、プラットフォームを構成できます。

Quboleのエンドツーエンドのウォークスルー

データベースのインポート、Hiveスキーマの作成、HiveとPrestoを使用した結果の分析、およびSparkノートブックでの個別のウォークスルーを実行しました。また、同じプロセスのAirflow DAGと、無関係のデータセットでSparkを使用して機械学習を行うためのノートブックも調べました。

Quboleでのディープラーニング

Quboleのデータサイエンスは古典的な機械学習のレベルまで見てきましたが、ディープラーニングについてはどうでしょうか。Quboleでディープラーニングを実現する1つの方法は、TensorFlowなどのディープラーニングフレームワークをインポートするPythonステップをノートブックに挿入し、Sparkで既に設計されたデータセットでそれらを使用することです。もう1つは、QuboleのインストールがAWSで実行されていると仮定して、ノートブックまたはAirflowからAmazonSageMakerを呼び出すことです。

Quboleで行うことのほとんどは、GPUで実行する必要はありませんが、ディープラーニングでは、トレーニングを妥当な時間で完了するためにGPUが必要になることがよくあります。Amazon SageMakerは、必要な数のノードとGPUを使用して構成できる個別のクラスターでディープラーニングのステップを実行することにより、これを処理します。Quboleは、機械学習クラスター(ベータ版)も提供しています。AWSでは、これらはNvidia GPUで加速されたgタイプとpタイプのワーカーノードを可能にし、Google CloudPlatformとMicrosoftAzureでは同等の加速されたワーカーノードを可能にします。

クラウドのビッグデータツールキット

分析と機械学習のためのクラウドネイティブデータプラットフォームであるQuboleは、データセットをデータレイクにインポートし、Hiveでスキーマを構築し、Hive、Presto、Quantum、Sparkでデータをクエリするのに役立ちます。ノートブックとAirflowの両方を使用してワークフローを構築します。また、他のサービスを呼び出したり、他のライブラリを使用したりすることもできます。たとえば、AmazonSageMakerサービスや深層学習用のTensorFlowPythonライブラリなどです。

Quboleは、クラスター内のインスタンスの組み合わせを制御し、クラスターをオンデマンドで開始および自動スケーリングし、クラスターが使用されていないときにクラスターを自動的にシャットダウンすることで、クラウドの支出を管理するのに役立ちます。AWS、Microsoft Azure、Google Cloud Platform、およびOracleCloudで実行されます。

全体として、Quboleは、データレイク、分離されたデータベース、およびビッグデータを利用(または「アクティブ化」)するための非常に優れた方法です。サンプルデータを使用して、選択したAWS、Azure、またはGCPでQuboleを14日間無料でテストできます。独自のクラウドインフラストラクチャアカウントと独自のデータを使用して、最大5人のユーザーと1か月間の無料のフル機能トライアルを手配することもできます。

費用:テストおよびトライアルアカウント、無料。エンタープライズプラットフォーム、1時間あたりQCU(Qubole Compute Unit)あたり0.14ドル。 

プラットフォーム: Amazon Web Services、Google Cloud Platform、Microsoft Azure、OracleCloud。