概要
データ分析基盤(概念モデル)におけるバッチレイヤー(コールドパス)に関する整理を実施します。
本記事にて、下記の記事におけるバッチレイヤー(コールドパス)の詳細を記載します。
定義
バッチレイヤー(コールドパス)の定義
データ活用を行う上で最適なクエリを発行できるようにデータを保持する層。
コンポーネント詳細
番号 | データ基盤におけるレイヤー | コンポーネント名 | 説明 | サービス例 |
---|---|---|---|---|
11 | バッチレイヤー | データレイク | 様々な構造であるデータ、大量のデータ、多頻度で発生するデータを保存できるサービス。Sparkなどのデータ統合サービスやETLツールを含める場合もある。管理がされていないデータや一貫性がないデータを含む場合には、データスワンプと呼ばれることがある。 | HDFS、Amazon S3、Azure Storage |
12 | バッチレイヤー | データ統合サービス | 様々な構造のデータを抽出し、そのデータを変換・標準化の処理を行い、マージを含むロード処理を行うサービス。 | Hadoop、Spark、Databricks、Google Big Query |
要求要件
データレイク
番号 | 要否 | 分類 | 主要要件 | 説明 |
---|---|---|---|---|
1 | 必須 | 拡張性 | データ容量の拡張 | 利用する上で制約とならないような量のデータを蓄積できる機能。 |
2 | 任意 | データ蓄積 | 構造化データのデータ蓄積 | 構造化のデータを蓄積できる機能。 |
3 | 任意 | データ蓄積 | 半構造化データのデータ蓄積 | 半構造化のデータを蓄積できる機能。 |
4 | 任意 | データ蓄積 | 非構造化データのデータ蓄積 | 非構造化のデータを蓄積できる機能。 |
5 | 任意 | データ蓄積 | HDFSと互換性のある接続性 | Hadoop 分散ファイル システム (HDFS) と互換性のあるデータの管理およびアクセスを可能とする機能。 |
6 | 任意 | データ蓄積 | データのバージョニング(タイムトラベル) | 蓄積のデータを過去のバージョンに戻す機能。 |
7 | 必須 | 接続の提供 | APIの利用(GUI Tool) | GUIによる接続方法の提供によりデータ連携を可能とする機能。 |
8 | 任意 | セキュリティ | データへの権限付与 | データへの権限付与を設定する機能 |
9 | 必須 | 可用性 | フォールトトレランス | システムの一部に障害が発生しても正常に動作する機能。 |
データ統合サービス
番号 | 要否 | 分類 | 主要要件 | 説明 |
---|---|---|---|---|
1 | 必須 | 接続の提供 | APIの利用(REST API) | REST APIにより処理を実行する機能。 |
2 | 任意 | 接続の提供 | APIの利用(ODBC) | ODBCにより事前定義したストアードプロシージャ等により処理を実行する機能。 |
3 | 任意 | 接続の提供 | APIの利用(SDK) | SDKにより処理を実行する機能。 |
4 | 必須 | メタデータ定義 | 外部データストアの参照 | データレイクに対して、サービスが保持していないデータに接続する機能。 |
5 | 必須 | データの問い合わせ | 構造化データの処理 | 構造化データを処理する機能 |
6 | 必須 | データの問い合わせ | 半構造化データの処理 | 半構造化データを処理する機能。 |
7 | 任意 | データの問い合わせ | 非構造化データの処理 | 非構造化データを処理する機能。 |
8 | 必須 | データの問い合わせ | データレイク向けデータ形式の処理 | Parquet、Delta Lakeなどのビックデータに対応可能なフォーマットでの処理を行う機能。 |
9 | 必須 | データの問い合わせ | MPPによるデータ処理 | 超並列処理 (MPP) によるデータ処理を行う機能。 |
10 | 任意 | プログラミング | 外部APIによるデータ抽出 | 非構造データから構造化データを抽出するなどの外部APIを利用したデータ抽出を実施すること。 |
11 | 任意 | セキュリティ | データへの権限付与 | データへの権限付与を設定する機能。 |
12 | 必須 | 拡張性 | ノードのスケールアウト | 同一のエンドポイントを利用可能な状態で、CPU、メモリなどのリソースを保持したノードの数を増減する機能。 |
13 | 任意 | 拡張性 | クラスターのスケールアウト | 同一のエンドポイントを利用可能な状態で、クラスターの数を増減する方法。 |
14 | 必須 | 拡張性 | コンピューティングリソースのマルチ化 | 同一のストレージに接続可能な状態で、クラスターの数を増減する機能。 |
15 | 必須 | 可用性 | フォールトトレランス | システムの一部に障害が発生しても正常に動作する機能。 |
参考情報
データレイク
データレイクについては、DMBOk 2ndにて下記のように記載されており、本概念モデルと相違点はあまりない。
データレイクは様々な種類や構造をもった膨大な量のデータをインジェストし保存し評価し分析できる環境である。
データレイクにおいては、データ処理ツールを複雑に構成できるので、Hadoopやその他のデータストレージシステム、クラスタサービス、データ変換、データ統合ツールなどを含めることができる。
データレイク(湖)の危険性は、すぐに乱雑で、汚れていて、一貫性のないデータスワンプ(沼)になってしまうことである。~[一部省略]~データレイクに含まれるデータを台帳化するには、データがインジェストされるときにメタデータを管理しなければならない。
引用元:[DMBOK 2nd]
データ統合サービス
データ統合についてDAMAにて下記のように定義されており、本概念モデルでは大量データ・半構造化データに対するデータ統合処理を行う機能と捉えている。
data integration The planned and controlled
a) merge using some form of reference,
b) transformation using a set of business rules, and
c) flow of data from a source to a target,
for operational and/or analytical use. Data needs to be accessed and extracted, moved, validated and cleansed, standardized, transformed, and loaded.
下記は機械翻訳結果
データ統合計画および管理
a)何らかの形式の参照を使用してマージします。
b)一連のビジネスルールを使用した変換、および
c)ソースからターゲットへのデータの流れ。
運用上および/または分析用。 データへのアクセスと抽出、移動、検証とクレンジング、標準化、変換、およびロードが必要です。
引用元:The DAMA Dictionary of Data Management, 2nd Edition