OpenStack は、コンピューティング、ストレージ、およびネットワーク リソースのプールを制御します。この記事では、OpenStack がビッグデータの使用事例で重要な役割を果たす方法に焦点を当てます。 OpenStack 上のビッグデータ 今日では、データはあらゆる場所で生成され、その量は飛躍的に増加しています。 Web サーバー、アプリケーション サーバー、データベース サーバーからのデータは、ユーザー情報、ログ ファイル、システム ステータス情報の形式で提供されます。センサー、車両、産業機器などの IoT デバイスからも大量のデータが生成されます。科学的シミュレーション モデルから生成されるデータもビッグ データのソースです。従来のソフトウェア ツールを使用すると、このデータを保存して分析することは困難ですが、Hadoop を使用するとこの問題を解決できます。
ユースケースのシナリオを考えてみましょう。大量のデータがリレーショナル データベース管理システム環境に保存されます。データ セットが大きくなるにつれて、RDBMS (リレーショナル データベース管理システム) のパフォーマンスは低下します。そして、データセットが拡大するにつれて、この問題はより深刻になります。この段階では、NoSQL の採用は避けてください。大量のデータをコスト効率の高い方法で保存および処理する必要があります。非仮想化環境でハイエンド サーバーに依存すべきでしょうか?要件は、いつでもクラスターを拡張することであり、そのすべてのコンポーネントを管理するためのより優れたダッシュボードが必要です。 OpenStack 上に Hadoop クラスターを構築し、ETL (抽出、変換、ロード) ジョブ環境を作成する計画を立てます。 Hadoop は、フォールト トレラントな Hadoop 分散ファイル システムと MapReduce 実装を使用して大規模なデータ セットを保存および分析するための業界標準フレームワークです。ただし、スケーラビリティは、典型的な Hadoop クラスターでは非常に一般的な問題です。 Openstack は、Sahara - Data Processing as a Service というプロジェクトを開始しました。 Openstack Sahara は、クラスター トポロジ内で Hadoop MapReduce、Spark、Storm などのデータ処理フレームワークを構成および管理するように設計されています。このプロジェクトは、Amazon Elastic MapReduce (EMR) サービスによって提供されるデータ分析プラットフォームに似ています。 Openstack Sahara は数分でクラスターをデプロイします。さらに、Openstack Sahara は、需要に応じてワーカーノードを追加または削除することでクラスターを拡張できます。 Openstack Sahara を使用して Hadoop クラスターを管理する利点
建築 Openstack Sahara は、OpenStack のコア サービスとその他の完全に管理されたサービスを活用するように設計されています。これにより、Sahara の信頼性が向上し、Hadoop クラスターを効率的に管理できるようになります。 Trove (ユーザーがリレーショナル データベースを管理し、MySQL インスタンスの非同期レプリケーションを実装し、PostgreSQL データベース インスタンスを提供する OpenStack データ サービス コンポーネント) や Swift などのサービスを使用することを選択できます。サハラの建築を見てみましょう。
Sahara クラスタの設定方法 Deploy Sahara インストール ガイドの手順に従います。デプロイメント環境によってアプローチは異なりますが、実験したい場合は Kolla も良い選択肢です。 Horizon ダッシュボードを通じて Sahara プロジェクトを管理することもできます。 Sahara Cluster ETL (抽出、変換、ロード) または ELT (抽出、ロード、変換) を使用する 市場には多くの ETL ツールが存在します。 従来のデータ ウェアハウスには、データ ソース以外の場所に配置される可能性があるなど、独自の利点と制限があります。 Hadoop は ETL ジョブを実行するのに理想的なプラットフォームです。 データ ストアには、構造化データ、半構造化データ、非構造化データなど、さまざまな種類のデータが存在します。 Hadoop エコシステムには、さまざまなデータ ソース (データベース、ファイル、その他のデータ ストリームを含む) からデータを抽出し、集中型の Hadoop 分散ファイル システム (HDFS) に保存するためのツールがあります。 データが急速に増加すると、Hadoop クラスターを拡張して OpenStack Sahara を活用できるようになります。 Apache Hive は、Hadoop エコシステム上に構築されたデータ ウェアハウス プロジェクトであり、ETL 分析のための堅牢なツールです。 Sqoop、Flume、Kafka などのツールを使用してデータ ソースからデータを抽出したら、MapReduce テクノロジーを使用した Hive または pig スクリプトを使用してデータをクリーンアップおよび変換する必要があります。 Hive のもう 1 つの利点は、Hive クエリ言語を通じてアクセスできるインタラクティブなクエリ エンジンであることです。 SQL に似ています。したがって、データベース担当者は、Java や MapReduce の概念を習得しなくても、Hadoop エコシステムでジョブを実行できます。 Hive クエリ実行エンジンは、Hive クエリを解析し、一連の MapReduce / Spark ジョブに変換します。 Hive には、JDBC/ODBC ドライバーとシン クライアントを通じてアクセスできます。 Oozie は、Hadoop エコシステムで利用できるワークフロー エンジンです。ワークフローは、分散環境でシーケンスとして実行する必要がある一連のタスクです。 Oozie は、複数のワークフローをカスケードし、調整されたジョブを作成するためのシンプルなワークフローの作成に役立ちます。 Oozie は、Hadoop 関連のすべての操作をサポートするモジュールはありませんが、複雑な ETL ジョブのワークフローを作成するのにも最適です。 Openstack Mistral (Workflow as a Service) などの任意のワークフロー エンジンを使用して ETL 作業を実行できます。 Apache oozie は、いくつかの点で Openstack Mistral に似ており、定期的にトリガーできるジョブ スケジューラとして機能します。 アプリケーションが Hadoop を使用してデータを MySQL サーバーに保存する一般的な ETL ジョブ フローを見てみましょう。保存されたデータは最小限のコストと時間で分析する必要があります。 抽出する 最初のステップは、MySQL からデータを抽出し、HDFS に保存することです。 Apache Sqoop は、RDBMS データ ストアなどの構造化データ ソースからデータをエクスポート/インポートするために使用できます。 抽出するデータが半構造化データまたは非構造化データである場合は、Apache Flume を使用して、Web サーバー ログ、Twitter データ ストリーム、センサー データなどのデータ ストリームからデータを取り込むことができます。 変換 上記のステージから抽出されたデータは正しい形式ではありません (生データのみ)。適切なフィルターとデータ集約を使用してクリーンアップする必要があります。 これは HDFS にデータを保存するために不可欠です。 この時点で、各テーブルの Hive スキーマを設計し、ステージング領域に保存されているデータを変換するためのデータベースを作成する必要があります。 通常、データは .csv 形式で、各レコードはコンマで区切られます。 HDFS データがどのように保存されているかを理解するために、HDFS データを調べる必要はありません。 Hive と互換性があるはずの珍しいデータ型がいくつかあります。 データベースがモデル化された後、抽出されたデータをロードしてクリーニングすることができます。表内のデータはまだ正規化されていません。異なるテーブルから必要な列を集計します。 同様に、「OVERWRITE INTO TABLE」ステートメントを使用して、複数のテーブルからデータを要約することもできます。 Hive はパーティション化されたテーブルをサポートしており、実行負荷を水平に分散することでクエリのパフォーマンスを向上させます。年と月の列を分割することをお勧めします。場合によっては、パーティション化されたテーブルによって MapReduce ジョブでより多くのタスクが作成されることがあります。 負荷 ここで、変換されたデータを HDFS のデータ ウェアハウス ディレクトリにロードします。これがデータの最終状態です。ここで、適切な結果を得るために SQL クエリを適用できます。 すべての DML コマンドを使用して、ユースケースに基づいてウェアハウス データを分析できます。 結果は分析用に .csv、表、またはグラフとしてダウンロードできます。 Talend OpenStudio、Tabelau などの他の一般的なビジネス インテリジェンス ツールと統合できます。 オートメーション ここで、Oozie ワークフロー エンジンを使用して ETL ジョブを自動化します (Mistral を使用することもできます。ほとんどの Hadoop ユーザーは Apache Oozie の使用に慣れています)。 結論は OpenStack は非常に大規模な Hadoop エコシステムと統合されており、多くのクラウド プロバイダーが Hadoop サービスを提供しています (クラウド管理ポータルから数回クリックするだけで利用できます)。 Sahara はほとんどの Hadoop ベンダー プラグインをサポートしており、ETL ワークフローを実行できます。 |
>>: 従来の SAN や NAS と比較した分散ストレージの利点と欠点は何ですか?
インターネット マーケティングは、あらゆる企業や Web サイトが存続し発展するために欠かせない手段...
月収10万元の起業の夢を実現するミニプログラム起業支援プラン多くのインターネット会社の営業マンは、顧...
[元記事は51CTO.comより] 米国時間2017年11月29日、Amazonの子会社であるAWS...
特定の環境では、ブラッシング注文、ブラッシングコメント、投票、急ぎの購入など、VPS の IP を切...
昨日、私はSotu.comサロンに出席し、王同教授の見解を聞きました。彼が挙げた例の一つは、百度で趙...
arkecx はどうですか、arkecx ブラジルのクラウド サーバーはどうですか?ブラジルは南米に...
実際、多くの企業がマルチクラウドを使用していますが、それが何であり、なぜそうするのかを知っている人は...
ご存知のとおり、ソフト記事はオンラインプロモーションにおいて非常に重要な役割を果たします。高品質のソ...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスWeiboマーケティング...
ユーザーの増加は、運用のほぼ究極の命題です。トラフィックの増加を促進できない運用は良い運用とは言えま...
BandwagonHost(バンワゴンホストvps)は、米国のcn2 gia vps、香港のcn2 ...
現在、上海佳地豪公司傘下の「I Love What I Buy」ウェブサイトには、全国で7万人以上の...
トランザクション企業とコンテンツ企業は本来的に異なる2つの種であるという考えは、再検討する価値がある...
中国電信や中国移動に代表される「キャリアクラウド」は、デジタル市場において見過ごされつつある新たな変...
[[343867]]組織が重要性と競争力を維持するために、デジタル変革はますます重要になっています。...