データ分析基盤に必要なデータパイプライン


データ分析基盤の理解を深めるために、ビッグデータを支える技術を学習中。
今回は、データパイプラインについてまとめます。

データパイプライン

データパイプラインは、次々と受け渡されていくデータによって構成されるシステム。

データパイプライン全体の動作を管理するために、ワークフロー管理が用いられる。毎日決まった時間にバッチ処理をスケジュール実行したり、エラーが発生した場合に管理者に通知したり。

データ収集

データ取集方法 説明
ストリーミング型 次々と生成されるデータを絶え間なく送り続ける方法。モバイルアプリや組み込み機器などから広くデータを集めるのに使う。
バルク型 データをまとめて取り出す方法。データベースやファイルサーバーなどから定期的にデータを集めるのに使う。

データ処理

データ処理方法 説明
ストリーム処理 リアルタイム処理。リアルタイムデータ。
バッチ処理 ある程度まとまったデータを効率良く処理。長期データ。
分散データ処理 分散ストレージに蓄えたデータを処理。MapReduce、クエリエンジン(Hive、Prestoなど)が使われる。ETL(extract-transfer-load)プロセスで加工してデータマートへ。

分散ストレージは、多数のコンピュータとディスクから成るストレージの総称。代表的なのは、オブジェクトストレージで、ひとまとまりのデータに名前を付けてファイルとして保存。クラウドサービスのAmazonS3が有名。