はじめに
DEA-001試験に合格するためにの勉強方法や学んだことを整理。
自分用にAWSサービスについての概要や要点をまとめたものなので、間違っている可能性あります。
- 「🔰」は噛み砕いて要約したもの
- 「📚」は技術的な用語や一般的な名称を使って説明したもの
各種AWSサービス
Amazon AppFlow
概要
- AppFlowはSaas(Salesforce、SAP、GoolgeAnalyticsなど)とAWS間のデータ転送を円滑にするためのフルマネージドサービス
- データのカタログ化や機械学習分析サービスのための変換や集約機能を持つ
特徴
- フルマネージドサービスなので、リソースのプロビジョニング、スケーリング管理が不要
- データ転送時、保管時の暗号化、IAMによる権限管理に対応している
- 初期費用は不要で、実行するフロー数と処理されるデータ量に対して課金される
Amazon Aurora
アーキテクチャ
- インスタンスとストレージが分離
- データボリュームは3AZに2個ずつ計6個
- Auroraレプリカ
- リードレプリカ。最大15個作成が可能
可用性とフェイルオーバー
- プライマリインスタンスに障害が発生した場合、レプリががプライマリに昇格する
- レプリカが複数ある場合、優先度を割り当てることができる
- 優先度が設定されていない(もしくは優先度がおなじ)場合、よりサイズが大きいレプリカが昇格する
グローバルデータベース
- 1つのプライマリリージョンと最大5つのセカンダリリージョン
- リージョン単位の障害に対応可能
バックアップ
- S3に連続的にバックアップ(RDSでは日次でバックアップする)
- スナップショットでは、5分以内の任意の時刻にリカバリ可能
- バックトラックという巻き戻し機能がある(RDSには存在しない)
バックトラック
- 既存のデータベースを特定の時点に巻き戻す機能
- バックアップ、スナップショット、ポイントインタイムリカバリはいずれも特定の時点にデータを復元するが、バックトラックは既存のデータベースに巻き戻しを行う
- データベースを最大72時間巻き戻すことができる
- データベースを再作成する必要はなく、復旧時間はバックアップよりも短い
AWS Data Exchange
概要
- 3,500以上のサードパーティが提供するデータセットを検索、サブスクライブ、使用できるマーケットプレイスサービス
- データをAPIなどでサブスクライブし、S3に保存したり、分析ツールと接続
- コンソール画面からカタログを洗濯して、APIを経由して必要なデータを取得出来る
- 取得したデータはCLIなどからデータ活用が出来る
- 利用料金はデータ提供者とサブスクライバーで異なり、サブスクリプション料金とデータ転送量に対して課金される
AWS Database Migration Service(DMS)
概要
- データベースを移行するサービス
- AWS環境だけなく、オンプレミスや他のクラウドサービスからAWSサービスへ移行出来る
- 一括移行もしくは継続的な差分移行に対応している
- 既存データの移行や、既存データを移行して継続的な変更をレプリケート、データ変更のみレプリケートが行える
- 移行状況をモニタリングできる
簡易的な移行手順
- 1.レプリケーションインスタンスの作成
- インスタンスタイプ、VPC/Subnetグループ、ストレージは移行するタスクのボリュームによって調整する
- 2.エンドポイントの作成
- ソースデータベースとターゲットデータベースの両方に対してエンドポイントを作成する
- 3.データベース移行タスクの作成
- 4.移行後の評価
- CDC(変更データキャプチャ)による差分移行
AWS DataSync
概要
- オンプレミスおよび他クラウドとAWSストレージサービス間のデータを同期的に移行
- DataSyncは動機的なデータ移行が可能のためデータソースに負荷をかけずにダウンタイムなしで移行ができる
- NFS、SMBなどのプロトコルやHDFSに対応
Amazon EBS
概要
- コンピューティングリソースで使用するためのブロックレベルのストレージサービス
特徴
- EC2インスタンスが停止または終了した後もデータが保持される
- 必要に応じて容量を増減できる(S3のように自動的に拡張されるわけではなく明示的に変更する必要がある)
- ボリュームのスナップショットを作成しS3に保存できる
- KMSを使用した暗号化サポート
暗号化
- EBSは新規で作成する際には、AWS KMSによる暗号化が選択可能
- 既存のEBSを暗号化するには、下記ステップが必要
- 1.EBSボリュームからスナップショットを作成
- 2.スナップショットを暗号化
- 3.暗号化したスナップショットから作成したEBSボリュームをEC2インスタンスにアタッチし直す
Amazon EFS
概要
- NFS(ネットワークファイルシステムプロトコル)ベースのファイルストレージサービス
- EC2インスタンスやオンプレミスのサーバーからアクセスが可能
- 複数AZの複数のインスタンスにアタッチができる
- フルマネージドでソフトウェアの更新などが不要
- 自動的に容量を拡張する
ストレージクラス
- EFS Standard
- 頻繁にアクセスされるデータ向けのストレージクラス
- EFS Infrequent Access(IA)
- 頻繁にアクセスされないデータ向けで、コスト効率の高いストレージクラス。長期保存のデータやあまりアクセスされないデータ向け
- ライフサイクルポリシーを設定でき、自動的に移行できる
暗号化
- EFSは新規で作成する際には、AWS KMSによる暗号化が選択可能
- 既存のEFSを暗号化するには、下記ステップが必要
- 1.新たに暗号化を有効にしたEFSファイルシステムを作成
- 2.既存のEFSファイルシステムからデータを新しいEFSファイルシステムにコピーする
Amazon EMR
概要
- 🔰
- 膨大なデータを複数のコンピュータで分散処理をして素早く分析できるAWSのサービス
- 複雑な設定なしで、大規模なデータ化分析環境を使い始められる
- 📚
- 「Amazon Elastic MapReduce」の略で、AWSが提供するビッグデータ処理プラットフォーム
- Apache Hadoop、Spark、Hiveなどのオープンソースのビッグデータフレームワークを簡単に実行できるマネージドサービス
- 大量のデータを分散処理して、高速に分析できる
用途
- ログ解析
- データウェアハウジング
- 機械学習
- ETL(データの抽出・変換・読み込み)処理
- リアルタイムデータストリーミング
メリット
- クラスターの構築や管理が簡単
- 必要に応じてリソースを拡張・縮小できる(弾力性)
- 使った分だけの従量課金
- AWSの他のサービス(S3、DynamoDBなど)と連携しやすい
Amazon Managed Service for Apache Flink
概要
- Apache Flinkを使用してリアルタイムでストリーミングデータを変換・分析するAWSの完全マネージド型サービス
- サーバーやクラスターの管理が不要で、計算リソースの提供、AZ間フェイルオーバー、並列計算、自動スケーリング、アプリケーションバックアップを自動処理する
Amazon Managed Streaming for Apache Kafka(MSK)
概要
- AWS環境でApache Kafkaを構築および実行するフルマネージドサービス
- 大規模ストリーミングデータを高速に処理するための分散処理基盤
- ストリーミングプラットフォーム
- リアルタイムでデータを収集、処理、保存および配信
- データストリーミングやメッセージシステムとして利用
Amazon Managed Workflows for Apache Airflow(Amazon MWAA)
概要
- 🔰Apache AirflowのサービスをAmazonが面倒見てくれる
- 普通にAirflowを使おうとするとサーバー用意、セキュリティ設定、といった管理が大変なので、様々なことを実施してくれるので、どのような自動化をするかを検討するだけで良い
- 📚Apache Airflowのフルマネージドサービス
- プロビジョニング、パッチ適用、バックアップなどをAWSが自動管理
- 複数のAZに跨って自動的に冗長構成
- VPC内で実行され、IAMによるアクセス制御、データ暗号化にも対応
AWS Glue
- AWS Glue クローラーはS3バケットおよびAmazonRDSをスキャンし、データカタログを自動的に作成および更新する機能を提供する
- さらに、AWS Glueクローラーの分類子を使用することで、ストレージ内のデータ形式を自動的に認識する
ELTジョブ
- 🔰ELTジョブはデータの引っ越し作業を自動で実施してくれるAmazonのサービス
- 📚AWSが提供するサーバーレスのデータ統合サービス。ELT(抽出、ロード、変換)処理を実行するためのジョブ
分類子
- データファイルの形式やスキーマを自動判定するためのルール
- このファイルは何のデータで、どんな構造になっているか判断する仕組みのこと
- 例えば、クローラーがスキャンする際に以下のようなことをする
- 1.ファイル形式を判定する(JSON、CSVなど)
- 2.スキーマを推定する(列名、データの型を抽出)
- 例えば、クローラーがスキャンする際に以下のようなことをする
DataBrew
概要
- データ準備サービスで、データをクリーンアップ、変換、分析用に準備するためのビジュアルインターフェースを提供する
- ノーコード・ローコードでデータの前処理ができるAWSのサービス
注意点
- 複雑なビジネスロジックには限界がある
- 大規模データ処理ではGlue ETLの方が効率的な場合も
- カスタム変換が必要な場合はプログラミングが必要
まとめ
- AWS Glue DataBrewは専門的な技術知識がなくても、直感的な操作でデータを良い感じに加工して分析に使えるきれいな状態に仕上げることができるサービス
Data Quality変換
- データ品質定義言語(DQDL)ルールを使って、データの品質を自動的にチェックし、評価するAWS Glueの機能
- これをETLパイプラインの変換ステップとして組み込むことができる
- つまり、データの「健康診断」を自動で行ってくれる機能
- データが正常かどうかを事前にチェックして、問題があれば教えてくれる優秀なアシスタントのような存在
ステージングテーブル
概要
- 一時的にデータを保管・処理する中間テーブル
- AWS GlueでETL処理を行う際の作業領域
- 本番テーブルを直接更新せず、段階的にデータを処理
- S3やRDSから取得したデータを一旦格納してから本番環境に反映
メリット
- 🛡️ 安全性
- 本番データへの直接的な影響を回避
- データ処理中のエラーが本番システムに波及しない
- ⚡ パフォーマンス
- 本番テーブルのロック時間を最小化
- 大量データ処理時のシステム負荷分散
- 🔍 データ品質管理
- データ検証・クレンジング作業を事前実施
- 重複除去、形式統一、欠損値チェックが可能
- 🔄 柔軟な処理
- 複雑な変換ロジックを段階的に適用
- 処理の途中結果を確認・調整可能
補足
- データ保持期間: 処理完了後は通常削除(コスト最適化)
- AWS Redshiftとの組み合わせが特に効果的
- UPSERT操作(更新+挿入)の実現に最適
- ETL処理の標準パターンとして広く採用されている手法
Pythonシェルジョブ
- Pandasは、Pythonで最も人気のあるデータ分析・操作ライブラリ
- AWS Glue Python環境でも使用可能で、DynamicFrameと組み合わせて使える
- 100MB未満のデータサイズでは高速で効率的に処理が可能
ジョブのブックマーク
- 栞のような機能
- 前回のジョブでどこまでデータを処理したかを記録し、次回実行時は続きから処理する機能。これにより同じデータを重複処理することを防ぐ
- ジョブの最後に、job.commit() を記述することが必要
- このステートメントが欠如していると、以前処理されたデータが再度処理されることがある
AWS Lake Formation
概要
- S3やリレーショナルデータベースに対応
- 構造化データと非構造化データの両方に対応
- Lake FormationはAWS Glueが組み込まれており、クローラーでデータソースのスキーマを取得してデータカタログを保存する。必要に応じて重複排除や変換を行うことができる
- データレイクの実体はS3のため、AthenaやRedshiftでクエリを実行できる
- 行、列、セルレベルでのアクセス許可を設定できる
Amazon MQ
概要
- 異なるシステム間でのメッセージを仲介するキューイングサービス
- Apache MQ および Rabbit MQ といった一般的なメッセージキューイングサービスをベースに開発
- SQSとMQは両者ともに、にメッセージキューイングサービス
SQSとMQの違い
- SQSはAWSが独自に開発したサービスで、AWS上でサービスを開発する場合は、通常SQSを使用する
- リクエストごとに課金される
- 実質的に無制限のスケーリングが可能
- 現行の環境でプロトコルに依存したキューイングサービスを使用している場合は、MQを使用する
- MQは利用時間および通過したデータ量に応じて課金される
- インスタンスタイプに応じたスループットが保証される
Amazon Neptune
言語
- Gremlin
- グラフの操作には、ApacheTinkerPopフレームワークのGremlinを使用することが標準的
- グラフデータベースに対する問い合わせやデータ操作を行うための言語
- SPARQL
- RDF(Resource Description Framework) モデルをサポートしており、RDFデータを操作するための標準クエリ言語としてSPARQLを使用できる
- RDFグラフからデータを検索・取得するための言語
AWS RDS
1.RDSのインスタンスタイプ表記例
「db.m6g.large」を例に。
| db | m | 6 | g | large |
|---|---|---|---|---|
| Database固定 | インスタンスファミリー | 世代 | 機能 | サイズ |
2.RDS Proxy
- AWS RDS用のプロキシサービス
- アプリケーションとデータベースの間に配置される
- アプリケーションから接続要求を受けると、接続プールから利用可能な接続を再利用する
- これによって新しい接続確立に伴う遅延を軽減する
- RDS Proxyを使わない場合では、都度接続を行うので接続の確立に時間を要する
- アプリケーションからの多数の接続を、少数の接続でデータベースに多重化して接続の効率を上げる
- アプリケーションが一時的に利用できない場合でも、アプリケーションからの接続を維持することにより耐障害性が向上
- IAMとVPCSecurityGroupをサポートしておりセキュリティを向上する
- クエリ結果をキャッシュすることで読み取りパフォーマンスを向上させる
3.リードレプリカ
概要
- プライマリインスタンスから複製された読み込み専用インスタンス
- プライマリインスタンスを非同期に複製する
- 最大5個まで作成可能
Tips
- 別リージョンに作成可能
- そのため別リージョンへの移行やリージョン跨いだ障害復旧に使うこともできる
- 接続エンドポイントはリードレプリカ毎に存在する
- マルチAZのレプリケーションと違い、性能は落ちない
4.バックアップ
| 種類 | 説明 |
|---|---|
| 自動バックアップ | ・1日1回自動バックアップ、最大35日間保持。5分に1回トランザクションログを保存 ・デフォルトでは7日間 ・保存先はS3 |
| 手動スナップショット | ・任意のタイミング、最大100個まで保持出来る ・別リージョン、別アカウントへコピーが可能 |
| ポイントインタイムリカバリ(PITR) | ・35日前までの任意の時点からデータを復元 ・PITRからの復元では新規のインスタンスが作成される |
5.モニタリング
- 標準メトリクスで取得できない場合には、拡張モニタリングを使用する
- OSレベルでの詳細なメトリクスを提供する
- Peformance Insights
- データベースのパフォーマンスに関する指標を取得したい場合に使用する
- SQLクエリレベルのパフォーマンスを可視化することができる
- 7日間のパフォーマンスを維持、最大2年間保持することができる
AWS Redshift
概要
- フルマネージド型のデータウェアハウス(DWH)サービス
- ペタバイト規模のデータを保存、分析
- スケーラブルで、数テラバイトからペタバイトまで柔軟にスケーリングしてデータを保存分析できる
アーキテクチャ
- クラスターと呼ばれるノードの集まりで構成される
- クラスターの中にはリーダーノードとコンピュートノードという2種類のノードがある
- リーダーノード
- クエリの調整を管理したり、クエリを適切なコンピュートノードに誘導する役割を持つ
- クエリがRedshiftに発行されるとリーダーノードはクエリを実行するための計画を作成する
- コンピュートノード間のデータ分析も管理する
- コンピュートノード
- リーダーノード
ノード
- DC(Dense Compute:高密度コンピューティング)
- SSDベースのストレージで、計算集約的なワークロード
- DS(Dense Storage:高密度ストレージ)
- HDDベースのストレージで、大量のデータを保存するためのオプション
- RA3
- SSDを活用して高速なパフォーマンスを実現する一方で、同時にS3にデータを保存する
セキュリティ
- Redshiftでは、暗号化されていない既存のリソースを直接暗号化することはできない
- サービス毎の比較
- Redshift
- 暗号化されていないクラスタを暗号化するには、新しく暗号化されたクラスタを作成し、データをマイグレードする
- EBS
- 暗号化されていないEBSボリュームを暗号化したい場合は、ボリュームのスナップショットを作成し、暗号化を有効にしてスナップショットをコピー、コピーしたスナップショットから新しい暗号化されたボリュームを作成する
- EFS
- 暗号化されていないEFSファイルシステムを暗号化したい場合は、新しく暗号化されたEFSファイルシステムを作成し、データをコピーする
- Redshift
Redshift Spectrum
- Redshiftから外部データにアクセスする機能
- S3に保存されたデータに対してローディングやELT(Extract & Load -> Transform:抽出&ロードして変換)を行うことなく、SQLクエリを直接実行する
- 実行したクエリに対して課金される
- AWS Glueと統合されているため、データスキーマの探索とカタログ化が可能
分散スタイル
- テーブルを作成する場合は、AUTO、EVEN、KEY、ALLという分散スタイルのいずれかを指定する
- 分散スタイルを指定しない場合は、AUTO分散を使用する
AUTO
- Amazon Redshiftテーブルデータのサイズに基づいて最適な分散スタイルを割り当てる
- テーブルのデータをクラスタ内のノードにどう配置するかを、Redshiftが自動的に最適化する機能
EVEN
- テーブルのデータを均等にクラスタ内の全ノードに配置する方法
KEY
- 指定した列(キー)の値に基づいてデータを各ノードに振り分ける方法
ALL
- テーブル全体のコピーが全てのノードに分散される
- ノード間でのやり取りが減るためネットワーク通信の削減になる
- データ結合時に高速化も見込まれれう
フェデレーテッドクエリ
概要
- Redshiftから他のデータソースに直接SQLクエリを実行できる機能
- Redshiftのデータウェアハウスにデータを移動・コピーすることなく、外部のデータベースに対してクエリを実行できる
- 同じデータベース内にあるように、複数のデータソースを結合して分析できる
対応するデータソース
- Amazon RDS(PostgreSQL、MySQL)
- Amazon Aurora(PostgreSQL、MySQL)
- Amazon S3(RedsiftSpectrumを通じて)
利点
- データ移動が不要
- ELT処理なしでリアルタイムデータにアクセス
- 結合分析
- Redshift内のデータと外部DBのデータを一つのクエリで結合できる
- コスト削減
- データを複製する必要がないため、ストレージコストを削減
- リアルタイム性
- 常に最新のデータを参照できる
AWS S3
アクセス制御
S3のアクセス制御には主に3つ存在する。
| 種類 | 説明 |
|---|---|
| IAMポリシー | ・アカウントやロールに対して詳細にアクセス制御 |
| バケットポリシー | ・バケットに対して詳細にアクセス制御 ・バケット所有者が設定 ・オブジェクト単位のアクセス制御が可能 |
| ACL(Access Control List) | (現在は細かい粒度での設定が出来ないためACLを使用する必要はなし) |
データの暗号化
S3ではデータ保存時の暗号化をサポートしている。
暗号化の方式にはサーバーサイドの暗号化とクライアントサイドの暗号化がある。
サーバーサイドの暗号化は、データをS3にアップロードしてからAWS側で暗号化を行う。
一方で、クライアントサイドの暗号化は、事前にクライアント側で暗号化したデータをS3にアップロードして保存する。
| サーバー/クライアント | 暗号化方式 | キーの種類 | キーの保管場所 | キーの管理者 |
|---|---|---|---|---|
| サーバーサイド | SSE-S3 | S3が自動的に生成するキー | Amazon S3 | AWS |
| サーバーサイド | SSE-KMS(AWS管理キー) | KMSが自動的に生成するキー | AWS KMS | AWS |
| クライアントサイド | SSE-KMS(カスタマー管理キー) | クライアントが提供するキー | AWS KMS | クライアント |
| サーバーサイド | SSE-C | クライアントが提供するキー | クライアント(S3はキーを保存しない) | クライアント |
オブジェクトロック
- S3上のオブジェクトが削除または上書きされるのを防ぐ。読み取り専用のようなイメージ
- 保持期間を設定できる。保持期間を過ぎるとロックが解除される
- ロック機能はバージョニング機能と併用する
- リテンションモード
- ガバナンスモード
- 特権ユーザーのみが削除、上書き、ロック設定が可能
- コンプライアンスモード
- rootユーザ含むすべてのユーザーが上書き削除不可能
- 監査などに使われるログファイルに適している
- ガバナンスモード
リーガルホールド
- 法的理由からオブジェクトを保護する機能がある
- リーガルホールドは、オブジェクトロックの保持期間としては独立して機能する
- つまり、オブジェクトロックの保持期間が過ぎても、リーガルホールドが有効化されている場合は、オブジェクトは保護されたままとなる
- 同じく、リーガルホールドを無効化しても、オブジェクトロックが設定されていればオブジェクトは保護される
オブジェクトロックとリーガルホールドの両方を無効化した時に、オブジェクトの削除や上書きが可能になる
バージョニング
- バージョニングを有効にすることで以前のバージョンのオブジェクトを取り出すことができる
- 削除すると、オブジェクトの削除マーカーができる。削除マーカーを削除すると、以前のバージョンが最新バージョンとして再び表示されるようになる
- 完全に削除するには、バージョンIDを指定して削除操作を実行する必要がある
- バージョニングはバケット単位で設定できる
S3マルチパートアップロード
- 容量の大きなオブジェクトを効率的なアップロード
- オブジェクトを複数のパートに分割して並行アップロード
S3 Transfer Acceleration
- リージョン間でのファイルアップロード、ファイル転送を加速させる
- AWSのエッジロケーションを経由してアップロードを実行
AWS Schema Conversion Tool(SCT)
概要
- 異なるデータベースエンジン間のスキーマやビューなどを変換する(同種の、DBMS間ではAWS DMSや各DBMSのソフトウェアを使用する)
- SCTはクライアントOSにインストールして使用する
- スキーマだけでなく、コードオブジェクト(ビュー、ストアドプロシージャ、関数など)などをデータベースから読み取り変換もサポートする
AWS Snow Family
概要
- 物理デバイスを用いて大規模データをAWSデータセンター転送するサービスのため、ネットワークプロトコルは不要
- 注文、配送、転送には1週間〜10日間程度かかる
- 耐久性の高い物理デバイスを用い、データもKMSによって暗号化されるためセキュアな転送が可能
AWS Transfer Family
概要
- SFTP、FTPS、FTPプロトコルを使ってS3やEFSにデータを転送するサービス
- パブリックなエンドポイント、VPCエンドポイントをサポート
AWS QuickSight
概要
- 容易に分析環境を作ることができるBI(ビジネス・インテリジェンス)サービス
- BI:企業内のさまざまなデータを収集・分析し、グラフやダッシュボードなどの形式で視覚化することで、経営や業務の意思決定を支援するソフトウェア
SPICE
- SPICE(Super-fast, Parallel, In-memory Calculation Engine)の略
- QuickSightのインメモリ分析エンジン。データを高速メモリに読み込んで、超高速でグラフや分析結果を表示する
参考
Apache Airflow
概要
- 🔰複数の作業を順番通りに実行してくれるツール
- 📚データパイプラインのワークフローを管理・スケジューリングするためのオープンソースプラットフォーム
Apache Parquet
概要
- 列指向(Column-oriented)のデータ保存形式
- 大量のデータを効率的に保存・処理するために設計されたファイルフォーマット
行指向 vs 列指向の違い
行指向(CSV、JSONなど)
顧客ID | 名前 | 年齢 | 都市
001 | 田中太郎 | 25 | 東京
002 | 佐藤花子 | 30 | 大阪
003 | 山田次郎 | 28 | 福岡
保存方法:
行1: 001,田中太郎,25,東京
行2: 002,佐藤花子,30,大阪
行3: 003,山田次郎,28,福岡
列指向(Parquet)
同じデータを列ごとにまとめて保存:
顧客ID列: [001, 002, 003]
名前列: [田中太郎, 佐藤花子, 山田次郎]
年齢列: [25, 30, 28]
都市列: [東京, 大阪, 福岡]
Parquetの特徴
1. 高い圧縮率
例:同じデータで比較
CSV: 100MB
Parquet: 20MB (約80%削減)
理由:同じ列の似たようなデータをまとめて圧縮
2. 高速なクエリ処理
「年齢が30歳以上の人を検索」の場合:
CSV: 全データを読み込んで検索
Parquet: 年齢列だけを読み込んで検索
→ 処理速度が大幅向上
その他
- 「Kinesis Data Firehose」 を使用して CSV ファイルを JSON に変換するためには、「AWS Lambda 関数」が必要
- 「Kinesis Data Firehose」 は CSV ファイルを直接 JSON に変換する機能がないため、「AWS Lambda 関数」を用いた変換のステップが必要
Computing Serviceにおけるストレージサービス
- EC2インスタンスなどのコンピューティングサービスにアタッチするストレージとして、EFS、EBSがある
- EC2インスタンスストアは揮発性がある。つまりEC2インスタンスを停止すると、内部ストアのデータは消失するため、データに永続性を持たせたい場合は、EFS、EBSを使うことになる
- いずれも外部記憶としてEC2インスタンスから切り離すことができる
- EFSは複数AZの複数インスタンスにアタッチできる。EBSは通常単一のインスタンスにアタッチする
HDFS
概要
- Hadoop Distributed File System (Hadoop分散ファイルシステム)の頭文字を取った略語で、コモディティハードウェア上で実行するように設計された分散ファイルシステム
データウェアハウス
データウェアハウスの特徴
1.統合されている
- 販売データ、顧客データ、商品データなど、バラバラだった情報を一箇所に集約
- 形式を統一(例:日付形式、商品コード体系)
2.時系列データ
- 過去のデータを削除せずに保管
- 「2年前の同じ時期と比較」などが可能
3.読み取り専用
- データを頻繁に更新するのではなく、分析のために読み取ることが中心
- 大量データの集計・分析に最適化
4.テーマ別整理
- 売上分析用、顧客分析用など、用途別に整理
まとめ
- データウェアハウスは企業の「データ図書館」のような存在で、過去から現在までのすべてのデータを体系的に整理して、経営判断や戦略立案のための分析に活用する仕組み
データオーケストレーション
概要
- 🔰複数のデータ作業を、指揮者のように上手に取りまとめて実行すること
- 複数の作業の順番や同時実行を管理する
- 📚複数のデータ処理タスクやワークフローを調整、管理、自動化するプロセス