当我通过AWS认证数据分析专业知识考试时的经历

这篇文章的摘要

2022/12/03参加了AWS认证数据分析 – 专业知识(AWS Certified Data Analytics – Specialty(DAS-C01))考试,以下是当时的记录。

作为复习笔记,我会整理它,以便以后回顾,可以在将来的资格考试中作为参考,或在工作中需要时能够回忆起来。

考试概要

スクリーンショット 2022-11-06 18.31.33.png

来自AWS官方表示,在SPECIALTY类别的考试中,该考试将认证使用AWS数据湖和分析服务,以从数据中获取见解所需的专业知识。

◼︎ 考试要点
问题数量:65个问题(其中15个问题不计入评分)
考试时间:180分钟
考试费用:¥30,000(不含税)※尽管官方网站上标明为“300 USD”,但无论汇率如何,费用为不含税¥30,000。
及格线:750分(满分100-1000分,约为72%,需正确回答37/50个计入评分的问题)
考试资格:无
有效期限:3年

◼︎ 题目范围

分野出題割合第 1 分野: 収集18%第 2 分野: ストレージとデータ管理22%第 3 分野: 処理24%第 4 分野: 分析と可視化18%第 5 分野: セキュリティ18%

这是2022年11月时点的最新版本(Ver.2.0)。
由于版本更新,范围等可能会有变化,请在考试时确认官方网站上的“考试指南”。
AWS认证数据分析专业

勉强开始之前的状态

我已经持续大约5年参与运维和开发AWS上的应用程序,并目前仍在进行中。虽然我没有数据分析的经验,但我已经取得了9个AWS认证。

    • AWS認定ソリューションアーキテクトを受験した時の話

 

    • AWS認定デベロッパーアソシエイトを受験した時の話

 

    • AWS認定SysOpsアドミニストレーターアソシエイトを受験した時の話

 

    • AWS認定ソリューションアーキテクトプロフェッショナルを受験した時の話

 

    • AWS認定DevOpsエンジニアプロフェッショナルを受験した時の話

 

    • AWS認定セキュリティ – 専門知識を受験した時の話

 

    • AWS認定データベース – 専門知識を受験した時の話

 

    AWS認定アドバンストネットワーキング – 専門知識を受験した時の話

勉强使用过的东西

1. AWS官方模拟考试(AWS认证数据分析 – 专业版本官方练习题集(DAS-C01 – 日语))
AWS技能构建师提供的免费模拟考试,共有20道问题。可反复进行考试,首次开始考试。

 

2. AWS官方E-learning(考试准备:AWS认证数据分析师-专业(日语))
AWS Skill Builder为免费提供的官方考试准备E-learning课程,通过示例问题教授有关考试范围的知识。由于可以了解考试范围的要点,我认为这值得参加。

 

3. 在线练习册(非官方)
每次参加AWS认证考试时都会购买的”Whizlabs”
该DAS课程提供了最新版本的题目共265题(65题×3种模式+章节题50题+试用题20题)。
从18.95美元使用优惠券享受30%的折扣,只需13.27美元(约2000日元)。
由于汇率的影响,价格相对于过去略有上涨,但由于是买断式内容更新,所以在圣诞节或黑色星期五等优惠力度更大的优惠券出现时购买会更划算。但由于我想在11月份参加考试,所以我选择了30%的折扣。
像往常一样,使用谷歌翻译进行翻译和使用。

 

考试备考的步骤或过程

1. 閱讀考試指南

首先,我会阅读官方网站上的”考试指南”。
主要的是与”分析”相关的服务吧,我相信。

分析:

    • Amazon Athena

 

    • Amazon CloudSearch

 

    • Amazon Elasticsearch Service (Amazon ES)

 

    • Amazon EMR

 

    • AWS Glue

 

    • Amazon Kinesis (Kinesis Video Streams を除く)

 

    • AWS Lake Formation

 

    • Amazon Managed Streaming for Apache Kafka

 

    • Amazon QuickSight

 

    Amazon Redshift

因为还有一些完全没有接触过的服务,所以需要努力学习。

进行样题和模拟考试

然后,我将尝试做官方的示例问题和模拟考试。
由于是免费的,所以可以随意进行。通过这样做,我可以确认问题的难度和我的水平感,并且在二者之间的差距。
当然,在这个过程中,我会记下不理解的部分,之后再进行查找。而对于认为需要记住的部分,我会写在笔记本上。

3. 参加Exam Readiness培训课程

因为公式的在线学习经常是有益的,所以我会进行参加。

解答练习问题

因为已经有了基础知识,所以我会做练习题,集中学习不理解的部分。
若在解答之前先答完所有题目并进行确认,就需要读两次问题陈述,这样效率很低。所以我会在实践模式下立即确认答案,如果回答错误,我会进行记笔记或立即查阅资料。

5. 复习一遍

我会回顾整理的笔记和练习题的答案/解析,边看边复习+学习还不够充分的部分。
这次

    • Amazon EMR

 

    • Amazon Kinesis

 

    • Amazon Redshift

 

    • Amazon QuickSight

 

    • Amazon Elasticsearch Service

 

    AWS Glue

我会看以前的 Black Belt 视频来学习。我会以两倍的速度播放视频,并在我感兴趣的地方暂停下来做笔记。

平时没有一直在写,但是一开始写了这篇文章,然后计算了考试准备所需的任务和时间,进行了排程安排。例如,由于有265道题目,大约每10道题目需要1小时,所以最低需时为26.5小时+1小时模拟考试+6小时在线学习=33.5小时 = 2.5周(平日每天1小时,周末5小时)。此外,为了解决理解上的不足,还会花时间看BlackBelt,这就多了一周,总共为3周左右,会结合日历进行计划。

抽时间

大约45个小时

考試結束之後

结果是以794分的分数通过了。
有很多问题我没有自信回答,使用了150分钟来回答后,再使用30分钟来检查,直到时间快用完时才结束。

スクリーンショット 2022-12-03 21.13.48.png
スクリーンショット 2022-12-03 21.14.06.png
スクリーンショット 2022-12-03 21.14.23.png

AWS認定考试结束后,有时会立即在屏幕上显示通过与否的结果,有时则不会显示。但这次是显示通过的结果。\n最近更新的内容没有显示出来吗?

AWS认定了12种技术,剩下的则是机器学习和AWS上的SAP,机器学习与数据分析领域相似,所以我打算继续学习并计划不久后参加考试。

スクリーンショット 2022-12-04 11.30.02.png

勉强笔记

為了考試而整理的筆記
※這裡所寫的只是我覺得理解不夠、希望能記住的事情,並不包含全部的考試範圍。

数据分析相关术语

用語説明データレイク
(Data Lake)データの構造や大きさ、性質、種類などにかかわらず、あらゆるデータを未加工の生データの形で集めるDB/ストレージ(そのままのデータたちが漂う湖)データウェアハウス
(DWH:Data Ware House)分析しやすいよう変換/構造化されたデータを格納するDB(きれいに箱詰めされて整頓されたデータたちが保管される倉庫)データマート
(Data Mart)用途に応じて分析に必要なデータだけに素早くアクセスできるように分割した小規模なDB(ジャンルごとの商品を並べる市場)BIツール
(ビジネスインテリジェンスツール)さまざまなデータを集約し、分析/視覚化を行いビジネスに活用するためのツール、グラフやテーブルを表示するダッシュボードを提供する。インサイト
(洞察/Insights)データ分析から導き出される本質的需要巡回セールスマン問題ある箇所から複数の地点を巡って戻ってくる際の最短経路を求める問題サイロ化
(silos)データやシステムが部署などで分割され、連携/集約による活用ができていない状態、あるいは意図的に相互に分離された状態。

数据分析工作负载的架构

根据数据源和使用目的的不同,使用AWS进行数据分析工作负载的最优架构也会有所不同。
在这个考试中,也会出现选择根据要求选择最优架构的问题。
这对于设计批处理处理大量数据集成/获取/输出的工作也很有帮助,不仅仅限于数据分析,所以请记住。

データソースの種類(input)
中間処理のリアルタイム性

分析結果の利用方法(output)

关注诸如此类的事物。

首先是“数据源”。

RDB: DMSの「継続的なレプリケーション」または「変更データキャプチャ (CDC)」によりS3へデータの変更を同期する

オンプレ: DataSyncエージェントをインストールし、S3へ変更を同期する

DynamoDB: GlueでS3へ出力、またはDynamoDBストリーム→Lambda→Kinesis Data FirehoseでS3やKinesis Data Analyticsへストリームを出力する

IoTデバイス: Kinesisへストリーミングまたは、IoT Coreを通してDynamoDB,S3,Lambda,OpenSearch等に送信

接下来是”实时性”。

リアルタイム: Kinesis Data Analytics等のストリームで処理する

バッチ処理: Glue、EMR等で大量データを一括で処理する

而“输出目标”

アドホッククエリ: 蓄積したデータに対し必要に応じた(アドホック)クエリをしたい場合、RedshiftやS3に格納し、Redshiftの場合直接、S3の場合Athenaでクエリする

ダッシュボード(視覚化): ダッシュボードを作成し、必要なデータをグラフで視覚化する場合、上記のRedshiftやAthenaをソースにQuickSightでダッシュボードを作成するか、OpenSearchに送信しKibanaでダッシュボードを作成する

Architecture.png

亚马逊弹性MapReduce服务

可以使用Apache Hadoop和Apache Spark等大数据框架来构建和管理处理/分析大量数据的实例集群的服务。

Apache Hadoop生态系统是一组能够进行批处理、实时处理、机器学习和交互式处理等操作的开源软件集合。

スクリーンショット 2022-11-30 1.31.30.png
スクリーンショット 2022-11-30 1.34.51.png
スクリーンショット 2022-11-30 1.38.25.png
Untitled(3).png

 

节点

在EMR集群中,存在着三种节点类型,并在创建集群时设置每种节点类型的规格和数量。

スクリーンショット 2022-11-30 1.35.56.png
ノードタイプ説明マスターノードクラスターを管理するノード。マスターノードが1つの場合単一障害点となる。マルチマスターモードを選択するとマスターノードは3つになり障害時自動的にフェイルオーバーする。コアノードマスターノードによって管理される。実行中のコアノード停止はデータ損失となるるためスポットインスタンスの利用時は注意。タスクノード計算タスクを実行するためのノード。エフェメラルストレージへのデータ保存などを行わないため、スポットインスタンスなどで途中で終了されても問題ない。
スクリーンショット 2022-11-24 20.53.43.png

 

软件

创建集群时,可选择启用Hadoop生态系统中的软件,如Hadoop、Hive、Jupyter和Spark等。

スクリーンショット 2022-11-24 20.52.46.png
スクリーンショット 2022-11-30 1.42.56.png

■每个软件的概要

ソフトウェア概要Hadoop大規模データの蓄積・分析を分散処理技術によって実現するオープンソースのミドルウェア。JupyterHubシングルユーザーモードのJupyterノートブックサーバーの複数のインスタンスをホストできる。GangliaHadoopのメトリクスを監視する。HiveHDFSで大規模なデータセットのクエリを実行するのに役立つSQLライクなデータウェアハウジングシステムJupyterEnterpriseGateway遠隔地にあるノートブックに代わってカーネルを起動することができるWebサーバー。MahoutHadoopの機械学習ライブラリの1つOozieHadoopのジョブスケジュールに使用される、JavaのWebアプリケーション。TensorFlowGoogleが開発した機械学習ライブラリ、TonY(TensorFlow on YARN)によりHadoop上での分散処理ができる。Zeppelinインタラクティブなデータ検索用のノートブック。TezYARNをベースにした、高パフォーマンスのバッチおよびインタラクティブなデータ処理アプリケーションのためのフレームワーク。HBaseHDFSの最上位に位置する列指向の非リレーショナルデータベース。Presto複数のソースからの大量のデータセットの対話型分析クエリ用に設計された高速のSQLクエリエンジン。MXNetニューラルネットワークやその他のディープラーニングアプリケーションを構築するために設計されたアクセラレーションライブラリ。Hue(Hadoop User Experience)クラスターで異実行されるアプリケーションのフロントエンドとして動作し、複数の異なるHadoopエコシステムプロジェクトをWebベースの1つのGUIにまとめる。Spark機械学習、ストリーム処理、グラフ分析に役立つビッグデータの分散処理システム。データをインメモリにアクティブにキャッシュするため、特定のアルゴリズムやインタラクティブクエリの場合にパフォーマンスが向上する。
Scala、Java、およびPythonをネイティブでサポートしている。
またSQL(Spark SQL)、機械学習(MLlib)、ストリーム処理(Spark Streaming)、グラフ処理(GraphX)用のライブラリが含まれている。LivySparkを実行するEMRクラスターを、RESTインターフェイスによって操作できるようにする。Flink高スループットのデータソースでリアルタイムのストリーム処理ができるストリーミングデータフローエンジン。PigPigは複雑な結合やクエリを簡単に実行できるようにする。SQLに近い「Pig Latin」という言語でクエリを行う。Zookeeper分散システムを調整するサービス。設定情報を集中管理する。SqoopRDBとの間のデータのエクスポートとインポートに使用する。PhoenixOLTPと業務分析に使用され、Apache HBaseバッキングストアと連携して標準SQLクエリおよびJDBC APIが使用できるようにする。HCatalogPig、Spark SQL、MapReduceアプリケーション内のHiveメタストアテーブルにRESTまたはCLIでアクセスできるようにするツール。

 

Hive元数据存储库

Hive的元存储信息默认为主节点的MySQL(临时存储)。因此,如果需要持久化,需要设置外部元存储。可选择的外部元存储有以下两种选项。

    • AWS Glue Data Catalog

 

    Amazon RDS または Amazon Aurora
スクリーンショット 2022-11-30 1.46.24.png

 

文件系统

根据要求选择文件系统。

ファイルシステム概要HDFSHadoop用ファイルシステム、処理が高速、ストレージはエフェメラル(揮発性)EMRFSS3にファイルを読み書きする、データを永続化できるがHDFSより遅い。ローカルファイルシステムインスタンスストアにデータを保存する。S3BFS(ブロックファイルシステム)現在は非推奨のレガシーな設定

 

S3DistCp: S3分布式复制

可以使用EMR集群上默认安装的S3DistCp将数据从S3复制到EMR集群。
可以通过管理控制台或CLI向EMR集群添加S3DistCp步骤来执行此操作。

aws emr add-steps --cluster-id j-3GYXXXXXX9IOK --steps file://./myStep.json
[
    {
        "Name":"S3DistCp step",
        "Args":["s3-dist-cp","--s3Endpoint=s3.amazonaws.com","--src=s3://mybucket/logs/j-3GYXXXXXX9IOJ/node/","--dest=hdfs:///output","--srcPattern=.*[a-zA-Z,]+"],
        "ActionOnFailure":"CONTINUE",
        "Type":"CUSTOM_JAR",
        "Jar":"command-runner.jar"
    }
]

 

在有时间限制的工作负载中利用即时实例。

通过在EC2实例群中定义“预配超时”,如果集群中没有足够的可用的竞价实例来满足目标容量,将切换到按需实例以满足SLA。
如果有足够的竞价实例,则可以通过使用竞价实例来降低成本。

スクリーンショット 2022-11-30 1.49.18.png

如果没有足够的弹性云服务器实例,可以在设置中切换到按需实例或放弃启动。

スクリーンショット 2022-11-30 1.50.21.png

Apache Livy is a software tool developed by the Apache Software Foundation.

在安装Apache Livy到EMR集群后,可以通过REST接口来执行EMR集群上的Spark作业。

 

通过以下的URI向Livy发送请求。

http://:8998/master-public-dns-name

 

其他备忘录

    • 暗号化オーバーライド機能を使うと保存先のS3ごとに異なる暗号化方法を利用できる

 

    • https://docs.aws.amazon.com/ja_jp/emr/latest/ManagementGuide/emr-data-encryption-options.html

クラスターを利用時以外停止することでコスト削減でしたい場合、CloudWatchのIsIdleメトリクスで終了を検知する
EMRFSではSSE-Cは使用できない
EMRの同時実行数は2~256
YARN(Yet Another Resource Negotiator): リソースの管理とスケジュールを担い、各データノードで何が起こるべきかを決定する。

亚马逊云数据仓库

针对数据仓库(DWH)进行了优化的基于PostgreSQL的全托管列指向数据库。该数据库分为领导节点、计算节点和存储节点三层,并且可以根据需要进行计算节点和存储节点的扩展。

redshift.png
スクリーンショット 2022-11-30 0.29.17.png
スクリーンショット 2022-11-30 0.31.47.png

 

节点类型 (Moduletype)

世代タイプ特徴第2世代DC2・各コンピューティングノードが個別のSSDストレージを持つ
速度が速い(C=computeで覚える)第2世代DS2・各コンピューティングノードが個別のHDDストレージを持つ
大容量(S=storageで覚える)第3世代RA3・データ処理とストレージを独立させる方式
・各ノードは個別のストレージを持たない代わりに、RMS(Redshift Managed Storage)と呼ばれるSSDを共有利用する
・SSDに入り切らないデータはS3に自動でオフロードされる
・RA3でしか使えない機能もあり、今後構築する場合はRA3推奨

RA3的规格和价格

サイズvCPUメモリーストレージ上限I/O価格(東京リージョン)ra3.xlplus432 GiB32TB RMS0.65GB/秒1.278USD/hra3.4xlarge1296 GiB64TB RMS2GB/秒3.836USD/hra3.16xlarge48384 GiB64TB RMS8GB/秒15.347USD/h

 

加载数据

可以使用COPY命令从支持S3、DynamoDB、EMR以及SSH连接的服务器加载数据。
在此过程中,可以指定要使用的IAM角色,分隔符和格式等。
还可以指定要使用的Parquet或ORC等格式。

COPY table_name
FROM 's3://mybucket/data/parquet/'
IAM_ROLE 'arn:aws:iam::0123456789012:role/MyRedshiftRole'
DELIMITER ','
FORMAT AS PARQUET
REGION 'ap-northeast-1';
スクリーンショット 2022-11-30 0.30.59.png

 

可以使用INSERT命令来插入数据。
在大量数据的情况下,比起COPY命令,时间会更长。
如果想从现有表复制数据到尚未创建的表,也可以使用CREATE TABLE AS。

INSERT INTO dst_table_name
(SELECT * FROM src_table_name);
INSERT INTO category_stage VALUES
(13, 'Concerts', 'Other', default);

 

从应用程序发送的查询

使用Data API进行对Redshift的查询。
没有进行持久连接,通过SDK进行异步请求到HTTP端点。
可以使用保存在Secrets Manager中的认证信息或临时的数据库认证信息进行身份验证。

 

抗击DR

可以启用自动快照作为Redshift的灾难恢复措施,并将其自动复制到不同的一个区域。

分散式风格 shì

在创建表时,可以指定四种分布样式中的任意一种。如果没有指定,则默认为AUTO分布。

スタイル特徴AUTO分散テーブルデータのサイズに基づいて最適な分散スタイルを割り当てる。EVEN分散テーブルが結合に参加しない場合に適している。キー分散テーブル間で結合を行う場合に適している。ALL分散マスターなどの更新の少ない大きなテーブルに適している。
スクリーンショット 2022-11-30 0.36.04.png

 

压缩成列表

通过在数据保存时进行压缩,可以减少磁盘I/O,提高查询性能。
默认情况下是ENCODE AUTO,压缩编码会自动管理。

在创建表时,可以为列指定压缩类型或编码。

CREATE TABLE product(
  product_id INT ENCODE RAW,
  product_name CHAR(20) ENCODE BYTEDICT
);

 

如果在COPY命令中指定COMPUPDATE为ON,可以启用自动压缩,但无法将自动压缩应用于包含数据的表。

COPY biglist FROM 's3://mybucket/biglist.txt' 
IAM_ROLE 'arn:aws:iam::0123456789012:role/MyRedshiftRole'
DELIMITER '|' COMPUPDATE ON;

自动快照

在Redshift中设置自动快照,默认情况下每8小时会创建一个快照。
还可以使用cron表达式设置计划。

cron(分 時間 曜日)

進行指定。

# 平日の16:00から22:00まで1時間おき
cron(0 16-22/1 MON-FRI)

# 毎日12:30から4時間おき
cron(30 12/4 *)

# 毎週土曜日の21:00
cron(0 21 土)

使用CLI创建快照计划的定义,需要执行create-snapshot-schedule命令。

create-snapshot-schedule --schedule-identifier "my-test" --schedule-definition "cron(0 17 SAT,SUN)" "cron(0 9,17 MON-FRI)"

 

真空处理

当执行VACUUM命令时,可以重新排序行并重新利用空间。这有可能改善性能。
由于执行VACUUM时会对CPU和磁盘造成负担,建议在使用率较低的时间,比如夜间执行。
另外,通过执行ANALYZE可以更新查询执行计划所需的元数据。因此,建议在每天执行VACUUM后一同执行ANALYZE,大约一天执行一次。

 

亚马逊红移光谱

使用Redshift Spectrum可以直接从S3文件中获取数据,而无需将数据加载到Redshift表中。Redshift Spectrum查询采用超并行处理,能够快速处理大型数据集。

スクリーンショット 2022-11-30 0.43.50.png

要使用Redshift Spectrum,您需要:

    1. IAM角色与集群的关联

 

    1. 创建外部模式

 

    创建外部表

创建外部模式和外部表需要使用CREATE查询。

CREATE EXTERNAL SCHEMA myspectrum_schema 
FROM DATA CATALOG
DATABASE 'myspectrum_db'
IAM_ROLE 'arn:aws:iam::123456789012:role/myspectrum_role'
CREATE EXTERNAL DATABASE IF NOT EXISTS;
CREATE EXTERNAL TABLE myspectrum_schema.sales(
  salesid INTEGER,
  listid INTEGER,
  sellerid INTEGER,
  buyerid INTEGER,
  eventid INTEGER,
  dateid SMALLINT,
  qtysold SMALLINT,
  pricepaid DECIMAL(8,2),
  commission DECIMAL(8,2),
  saletime TIMESTAMP
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
STORED AS TEXTFILE
LOCATION 's3://redshift-downloads/tickit/spectrum/sales/'
TABLE PROPERTIES ('numRows'='172000');

工作负载管理(WLM: Work Load Management)

在多个工作负载使用同一个集群时,有自动控制功能以确保它们之间不会发生竞争。

スクリーンショット 2022-11-30 0.38.46.png
スクリーンショット 2022-11-30 0.39.37.png

短查询加速(SQA)

启用SQA将使用机器学习算法预测查询的执行时间,并优先执行执行时间较短的一部分查询而非执行时间较长的查询。
在默认参数组和新参数组中,默认情况下已启用SQA。

 

スクリーンショット 2022-11-30 0.40.01.png

其他备注

    • 最大同時実行レベルは50

 

    キューは最大8

亚马逊云服务(AWS)的Glue

数据集成服务是一种无服务器的服务,可用于分析、机器学习和应用程序开发,具有从ETL和数据自动生成模式,数据清洗等功能,可以用于数据的检测、准备和合并。它包括了多个功能,如Glue作业、Glue DataBrew和Glue数据目录。

 

ETL作业的类型

種類概要Apache Spark最低2DPU必要、最小請求単位1分Sparkストリーミング1または0.0625DPUを使用、 最小請求単位1分Pythonシェル小規模から中規模の一般的なタスクに最適、Sparkより安価、最低2DPU必要、最小請求単位10分

工人型

タイプ概要Standardこのタイプを選択する場合は最大キャパシティー(実行時に割り当てることができるDPUの数)を指定する。50GBのディスクと2個のエグゼキュターがある。G.1Xこのタイプを選択する場合はワーカー数を指定する。各ワーカーには1DPUが割り当てられ、ワーカーごとに1個のエグゼキューターがある。メモリを大量に消費するジョブに推奨。AWS Glue2.0以降のデフォルト。G.2Xこのタイプを選択する場合はワーカー数を指定する。各ワーカーには2DPUが割り当てられ、ワーカーごとに1個のエグゼキューターがある。機械学習変換を実行するジョブに推奨。G.025Xこのタイプを選択する場合はワーカー数を指定する。各ワーカーには0.25DPUが割り当てられ、ワーカーごとに1個のエグゼキューターがある。少量のストリーミングジョブに推奨。AWS Glue3.0のストリーミングジョブでのみ使用可能。

※一个DPU = 4个vCPU,16GB的内存,64GB的磁盘

 

AWS Glue DataBrew 亚马逊云数据预处理平台

提供的服务可以自动化地准备和快速处理用于分析的数据,包括数据清洗和规范化等操作。
您可以在管理控制台上与数据进行交互式转换,也可以将创建的转换任务嵌入到Step Functions的步骤中。

スクリーンショット 2022-12-03 1.17.37.png
スクリーンショット 2022-12-03 1.20.32.png

 

黏合机器学习转换

可以使用机器学习任务执行和数据清洗,如检测潜在的重复(增量匹配)。

 

其他备注

    • AWS Glue Schema Registryは、データストリームスキーマを一元的に検出、制御し、発展させることができる。

 

    • https://docs.aws.amazon.com/ja_jp/glue/latest/dg/schema-registry.html

ワークフローを利用すると依存関係のある複数のジョブを管理できる
https://docs.aws.amazon.com/ja_jp/glue/latest/dg/orchestrate-using-workflows.html

Amazon Kinesis 亚马逊金鳞响水

处理来自移动应用程序和物联网设备的流媒体数据的服务集合

スクリーンショット 2022-11-30 2.12.15.png
kinesis.png

 

亚马逊数据流

使用简单流的服务,将其与其他服务(生产者和消费者)以及流一起结合使用。

スクリーンショット 2022-11-30 2.24.26.png
スクリーンショット 2022-11-30 2.22.00.png
流媒体的标签化

在Kinesis数据流中,可以为其附加自定义的元数据作为”标签”。
标签是以键值对的形式定义在流中。

 

扩展的粉丝外扩

在Kinesis数据流中,有一种称为扩展Fan-Out的功能。使用此功能,消费者可以每秒接收每个分片最多2MB的记录。这样可以提高可扩展性和性能。

 

KPL/KCL –> 王者荣耀职业联赛/王者荣耀大师赛
    • Kinesis Producer Library(KPL): Kinesisストリームへデータを出力するアプリケーションの開発用ライブラリ

 

    Kinesis Client Library(KCL): Kinesisストリームからデータを取得し処理するアプリケーションの開発用ライブラリ

 

一般的的KPL/KCL是为Java设计的库,但也存在专为Lambda+Python设计的「Kinesis Producer LibraryAWS Lambda」。

 

KPL的配置

在KPL中,有一些可以在使用时设置的值。
通过更改这些值,可以调整其功能。
例如,将RecordMaxBufferedTime设置为较高的值,可以增加批量大小并提高吞吐量。如果要更改设置值,则需要重新启动KPL应用程序。

KinesisProducerConfiguration config = new KinesisProducerConfiguration()
        .setRecordMaxBufferedTime(3000)
        .setMaxConnections(1)
        .setRequestTimeout(60000)
        .setRegion("us-west-1");
        
final KinesisProducer kinesisProducer = new KinesisProducer(config);
KinesisProducerConfiguration config = KinesisProducerConfiguration.fromPropertiesFile("default_config.properties");
RecordMaxBufferedTime = 100
MaxConnections = 4
RequestTimeout = 6000
Region = us-west-1

KPL(Kinesis 生产者库)的 PutRecords 操作会自动将写入失败的记录添加到 KPL 缓冲区中,以便可以进行重试。

 

KCL的租赁表

几乎与英语中的原文一模一样的中文表达如下:
KCL会为每个Kinesis Data Streams应用程序创建唯一的DynamoDB表。
通过利用此表,KCL Consumer应用可以追踪处理过的分片。
如果在读取过程中发生故障,新的Worker可以从故障记录处重新启动。

スクリーンショット 2022-11-30 2.26.16.png

 

保证顺序不变

如果使用PutRecords发送多条记录,即使有一条记录失败,后续的处理也不会停止,因此无法保证顺序。如果要保证流的写入和读取顺序,请使用PutRecord。

 

来自物联网设备的数据流

将来自IoT设备的输出发送到Kinesis流中,使用AWS IoT服务。

 

スクリーンショット 2022-11-19 18.25.26.png
スクリーンショット 2022-11-19 18.25.14.png

 

亚马逊 Kinesis 数据传输管道

Kinesis流媒体是

    • S3

 

    • Redshift(S3経由)

 

    • Amazon ES

 

    • HTTPエンドポイント

 

    その他サードパーティのSaaS

需要通过使用Kinesis Data Firehose来接收流并进行转换,才能将其直接输出到诸如…等。

スクリーンショット 2022-11-30 2.28.25.png
スクリーンショット 2022-11-30 2.28.39.png

 

在Kinesis Data Firehose中,可以设置通过Lambda函数对数据进行转换。
Lambda函数将转换后的数据返回给Kinesis Data Firehose,并由Kinesis Data Firehose将返回的数据输出到目标位置。同时,还可以设置输出转换前的数据。

Kinesis Data Firehose已经在多个可用区进行了冗余备份。

亚马逊 Kinesis 数据分析

定义针对流执行的SQL,并输出经过SQL分析和转换的流。实时分析服务。输入源和输出源均为Kinesis数据流或Kinesis数据落地。在流与流之间进行中间处理。

スクリーンショット 2022-11-30 2.31.12.png
スクリーンショット 2022-11-30 3.10.48.png
使用Lambda进行预处理

在Kinesis Data Analytics中,可以设置Lambda进行转换和数据补充等操作,以便在执行SQL之前进行。

スクリーンショット 2022-11-30 3.12.33.png
窗口查询

在Kinesis Data Analytics中,用户可以通过时间和行的条件来指定从持续流中获取数据的范围,这就是所谓的“窗口查询”或“窗口SQL”。
AWS支持三种窗口类型。

ウィンドウタイプ概要Stagger(ずらし)ウィンドウ一貫性のない時間に届くデータに対して、時間ベースの集計をするタンブリング(重複しない)ウィンドウ範囲が重複しない固定の周期で集計するスライディングウィンドウ固定サイズのウィンドウを時間とともにスライドする
スクリーンショット 2022-11-30 3.15.13.png

 

模式编辑器

Amazon Kinesis Data Analytics 应用程序的输入流模式可以通过控制台进行定义。可指定的格式有以下3种类型。

    • JSON入力ストリームのJSONPath式

 

    • カンマ区切り値 (CSV) 形式の入力ストリームの列番号

 

    アプリケーション内データストリームの列名とSQLデータ型

 

物联网核心

为了将IoT设备和AWS服务进行整合,提供了一个完全托管的服务。

亚马逊物联网规则

对于从物联网设备接收到的数据,可以将数据进行PUT或执行到以下的AWS服务中。

    • DynamoDB

 

    • S3

 

    • SNS

 

    • SQS

 

    • Lambda

 

    • Kinesis Data Stream

 

    • Kinesis Data Firehose

 

    • OpenSearch Service

 

    • CloudWatchメトリクス

 

    • CloudWatchアラーム

 

    • Step Functions

 

    • Timestream

 

    • AWS IoT Analytics

 

    • AWS IoT Events

 

    AWS IoT SiteWise

还可以通过AWS IoT进行筛选并发送请求到HTTP终端等其他操作。

 

亚马逊云搜索

通过上传CSV/JSON/XML等数据集合到HTTP/HTTPS的终端节点,并进行请求,即可执行搜索的完全托管搜索引擎服务。它会根据数据量和请求流量自动进行扩展。

要素- 要素 sù)

在CloudSearch中出现的元素

要素概要検索ドメインデータを管理/保管する場所(RDBでいうところのDBサーバ) コーパス検索対象のデータのコレクション(集まり)インデックスひとかたまりのデータスキーマ(RDBでいうところのテーブル)ドキュメントから自動生成できる ドキュメントページや投稿などの1項目(RDBでいうところのレコード)ファセット絞り込みとフィルタ処理のためのカテゴリを表すインデックスフィールド

分析方案 (Fenxi fangan)

可以根据个别要求设定分析方案,并添加以下搜索选项。

オプション概要アルゴリズムによるステミングアルゴリズムによるステミング実行レベルを指定
※ステミング=異なる語形でも意味が同じワードを語幹でマッチングさせる(swims, swimmingどちらで検索しても双方にヒットさせるなど)ステミングディクショナリアルゴリズムによるステミングの結果を辞書でオーバーライドするストップワードインデックス作成時及び検索中に無視する単語 シノニム異なるワードで同じ意味の単語を指定して同じ検索結果を得られるようにする

AWS湖泊构建

通过从S3、RDB和NoSQL读取数据并构建/管理数据湖,可以创建受访问控制的中央数据存储。Lake Formation利用了Glue的多个功能,可以说是Glue的扩展性功能之一。

 

使用的词汇

湖泊形成术语

用語概要データレイクLake Formationによって管理される永続データ データアクセスIAMポリシーによりアクセスは制御されるブループリントデータレイクにデータを簡単に取り込めるようにするデータ管理テンプレートワークフロー一連の関連するAWS Glueのジョブ、クローラ、およびトリガーのためのコンテナData Catalog永続的なメタデータストア基盤となるデータ(Underlying Data)Data Catalog テーブルがポイントするソースデータまたはデータレイク内のデータプリンシパルIAMユーザーもしくはロール、またはADユーザーデータレイク管理者あらゆるData Catalogリソースまたはデータロケーションに対する許可を任意のプリンシパル(自分自身を含む)に付与できるプリンシパル

蓝图

工作流可以通过Glue或蓝图创建
蓝图的类型如下

タイプ概要Database snapshot(データベーススナップショット)すべてのテーブルからのデータを、JDBC ソースからデータレイクにロードまたは再ロードします。除外パターンに基づいて、一部のデータをソースから除外することもできるIncremental database(増分データベース)以前に設定されたブックマークに基づいて、新しいデータだけを JDBC ソースからデータレイクにロードするLog file(ログファイル)AWS CloudTrail、Elastic Load Balancing ログ、Application Load Balancer ログなどのログファイルソースからのデータを一括でロードする

亚马逊预测

通过使用统计算法和机器学习算法,我们提供了一种完全托管的服务,可以实现非常准确的时间序列预测。

 

亚马逊 Athena

可以对S3中的JSON、CSV、Parquet等文件执行SQL查询。
此外,可以创建数据源连接器并使用联合查询直接查询CloudWatch日志、DynamoDB、RDS、DocumentDB、OpenSearch等。还可以合并多个数据源的数据。

办公小组

工作组是用于将用户、团队、应用程序或工作负载分开的功能。
每个工作组可以单独设置查询结果的输出位置、加密设置、成本以及数据量的上限等。

 

其他注意事项

    • Parquetは列ごとの圧縮が可能なため、S3から読み取られるバイト数を減らしクエリのパフォーマンス改善が期待できる。データの分割もできる。

 

    • Glacierにはクエリできない。

 

    • S3のSSEが有効な場合、異なるリージョンのAthenaからクエリはできない(複合権限がないため)

 

    • バケットのバージョニングが有効な場合、最新バージョンにしかクエリできない。

 

    列形式でビューを作成した場合、出力フォーマットはParquetまたはORCとなる。

亚马逊QuickSight

完全托管的商业智能(BI)服务。可以将AWS内外多个数据源的信息可视化为单一的仪表板(图形和表格)。

スクリーンショット 2022-11-30 1.03.56.png
スクリーンショット 2022-11-30 1.04.59.png

 

数据来源 (shù jù

在QuickSight中可指定的主要数据源如下

    • Amazon RDS

 

    • Amazon Athena

 

    • Amazon OpenSearch Service

 

    • Amazon Redshift

 

    • Amazon S3

 

    • AWS IoT Analytics

 

    Timestream

无法将DynamoDB作为数据源。

 

香料

将数据源中的大量读取数据导入到内存数据库中,以提高响应速度。

スクリーンショット 2022-11-30 1.06.53.png

导入文件数据

可以将S3或本地文件作为数据源进行导入。
在这种情况下,不仅可以读取JSON、CSV/TSV格式的文件,还可以直接读取Excel文件(.xlsx)以及被压缩为zip/gzip格式的文件。

 

机器学习洞察

QuickSight利用机器学习的功能,将数据中隐藏的洞见和趋势反映在仪表板上。
机器学习洞见具有以下三个主要功能。

    • MLを使用した異常検出: データを継続的に分析し異常 (外れ値) を検出

 

    • MLを使用した予測: 内蔵の機械学習Random Cut Forestアルゴリズムにより、外れ値を除く季節性や傾向の検出、欠損値の入力など、複雑な現実のシナリオを自動的に処理し変化を予測する。

自動ナラティブ(説明文): ダッシュボードに自動的に生成した説明文を追加してくれる。

スクリーンショット 2022-11-30 1.12.32.png
スクリーンショット 2022-11-30 1.13.10.png
スクリーンショット 2022-11-30 1.15.23.png

 

视觉类型

在视觉上,可以展示各种类型的图形等。

スクリーンショット 2022-11-30 1.17.19.png

速度飞快

这是一个既支持RDB/NoSQL,又能执行快速分析查询的开源分布式SQL查询引擎。可以对EMR、S3、RDS、Redshift等进行查询。

 

通过使用EMR和Presto,可以实现大数据的可视化。

 

亚马逊数据同步

可以执行以下三个数据传输

    • オンプレとAWS間

 

    • AWSストレージサービス間

 

    クラウドストレージとAWS間

以下是可以指定为从本地转移到的主要服务的三个选项。

    • S3

 

    • EFS

 

    Amazon FSx

请参考以下页面以获取其他支持的发件人和收件人列表。

 

应用流程

在第三方SaaS应用程序和AWS服务之间传输数据。

    • Salesforce

 

    • Slack

 

    • Datadog

 

    Google Analytics

各种SaaS及其等等

    • S3

 

    Redshift

适用于哪些AWS服务。

AppFlow

 

其他注释

    • 複数バケットへの転送も可能

 

    データ移行時にS3 Transfer Accelerationはサポートしていない

亚马逊Opensearch服务(Elaticsearch服务)

OpenSearch(旧名Elasticsearch)是一款用于分析日志和点击流等的开源分布式全文搜索引擎。
Amazon OpenSearch服务是由AWS提供的一种托管服务,可以用于构建和管理OpenSearch环境。
在Amazon OpenSearch上创建域时,还会自动启动与OpenSearch配合使用的BI工具Kibana。

スクリーンショット 2022-11-30 0.51.23.png

在Opensearch中,推荐采用分布式设计理念,并准备三个主节点。

スクリーンショット 2022-11-30 0.50.32.png

 

优化碎片数量

根据索引大小除以30GB来计算碎片数量。例如,如果索引大小为5GB,则结果为1以下,所以向上取整为1。如果索引大小为70GB,则向上取整为3。

 

集群间搜索

利用集群间搜索功能,可以在多个域中执行查询和聚合。
需要设置从源域到目标域的连接来执行搜索。
如果要进行双向搜索,则需要设置两个连接。

undefined
スクリーンショット 2022-11-30 0.55.29.png

 

UltraWarm节点

在创建域时启用UltraWarm可以以高性价比的方式存储大量的只读数据。UltraWarm节点使用S3作为存储。

スクリーンショット 2022-11-30 0.53.51.png

 

亚马逊 MSK

亚马逊托管的Apache Kafka流处理应用程序(Amazon MSK)是一种完全托管的服务,可实现使用Apache Kafka构建和运行流数据应用程序。

AWS物联网分析

为了简单地执行物联网数据分析的完全托管服务,可以将数据存储为JSON和Parquet格式的文件。

DWH的基础架构

    • ファクトテーブル: DWHに1つ以上存在し集計したい値を持つ、複数のディメンションテーブルと1対多の関係になる

 

    ディメンションテーブル: ファクトテーブルに対し一対他の関係で結びつき、分析の観点を与えるテーブル

 

AWS Elemental MediaStore (AWS元素媒体存储)

实现直播所需的高性能和即时一致性的视频传输和存储服务。

 

其他

    • DAXは変更前後両方の項目を出力する

 

    • 各サービスのデータ整合性

Apache Kafka/Amazon MSK: 順序保証あり/少なくとも1回
SQS(FIFO): 順序保証あり/正確に1回
SQS(スタンダード): 順序保証なし/少なくとも1回
Kinesis Data Streams: 順序保証あり/少なくとも1回
Kinesis Data Firehose: 順序保証なし/少なくとも1回
DynamoDBストリーム: 順序保証あり/正確に1回

Athenaはクエリのたびに料金が発生するため、アクセス頻度の高いレポートはAthenaよりRedshiftのほうが費用対効果が高い

广告
将在 10 秒后关闭
bannerAds