iT邦幫忙

2023 iThome 鐵人賽

DAY 13
0
AI & Data

夥伴們!一起航向AWS Certified Machine Learning Specialty的偉大航道吧!系列 第 13

Day 13 第二站 Exploratory Data Analysis - EMR

  • 分享至 

  • xImage
  •  

EMR全名Elatic MapReduce,是AWS針對MapReduce提供的彈性服務,讓我們可以更方便去調動雲端資源來去執行MapReduce的運算。介紹EMR之前,先一起來複習一下Hadoop與Spark。

1. Hadoop
Hadoop是一種分散式資料處理的服務,可以針對HDFS這種已分割過的資料,利用MapReduce去作分散式資源的配置,讓分割過的資料都可以得到對應的運算資源,以此加速資料的處理效率。

2. Spark
Spark一樣是一種大數據處理框架,透過內存技術的方式去做資料的處理,效率上更優於MapReduce。

EMR整合了Hadoop與Spark的大數據框架,並提供底層的運算服務建置,讓我們不需要花太多心力在infra的建置上。

EMR運算

  • Master Node: 透過單一機器(在AWS上稱做EC2)去管理整個Cluster(聯合多台機器去進行運算)的節點。
  • Core Node: 儲存資料(HDFS)的運算節點。
  • Task Node: 不夾帶資料的運算節點。適合採用EC2的Spot Instance。Spot Instance是用議價的方式去租用機器,如果我們開出的價格高於其他出價人,就可以一直用這一台機器,反之,則會需要釋放出機器的使用權。因為Task Node上不存放HDFS的資料,所以一旦機器被收回,也不用擔心資料遺失的問題。

EMR雲端生態整合
EMR與AWS生態的各種雲端服務可以高度無縫的整合,讓我們可以考慮到多個面向來確保EMR運行的穩定。

  • Computing: 啟用EC2來執行運算
  • Security: 可設定IAM來管控EMR使用權限、CloudTrail可用來審查誰request EMR的服務
  • Reliability: 以CloudWatch來監控服務穩定度,一旦有問題,可以發出alarm信件
  • Data Storage: EMR的input與output可以跟S3連通
  • Scheduling: 透過AWS Data Pipeline來排程

/images/emoticon/emoticon31.gifChatGPT出題時間:

问题1:EMR的用途

问题: AWS EMR最适合用于哪种类型的数据处理工作?

A) 图像处理
B) 实时流数据处理
C) 批量和分布式数据处理
D) 关系型数据库管理

答案:C) 批量和分布式数据处理

解释: AWS EMR是用于批量和分布式数据处理的托管Hadoop框架,可用于大规模数据处理、分析和转换。

问题2:EMR的应用程序

问题: 在EMR中运行的应用程序通常使用什么类型的编程语言?

A) Java
B) JavaScript
C) Python
D) Ruby

答案:A) Java

解释: 虽然EMR支持多种编程语言,但Hadoop和大多数EMR应用程序通常使用Java编写。

问题3:EMR的数据分析场景

问题: 一个电子商务公司想要分析其网站访问日志,以了解用户行为和购买趋势。他们应该如何使用AWS EMR来实现这个分析场景?

A) 创建一个EMR集群,使用Hadoop处理访问日志文件,然后将结果存储在Amazon DynamoDB中。
B) 将访问日志文件上传到Amazon S3,然后使用EMR集群运行Spark作业来分析数据,最后将结果存储在Amazon Redshift中。
C) 创建一个EMR集群,将访问日志文件直接加载到Amazon QuickSight中进行分析。
D) 将访问日志文件上传到Amazon RDS,然后使用EMR集群运行Hive作业来分析数据。

答案:B) 将访问日志文件上传到Amazon S3,然后使用EMR集群运行Spark作业来分析数据,最后将结果存储在Amazon Redshift中。

解释: 在这种情况下,最佳做法是将访问日志文件存储在Amazon S3中,然后使用EMR集群运行Spark作业进行分析。分析结果可以存储在Amazon Redshift中,以便进行更深入的数据挖掘和可视化。

问题4:EMR的数据转换场景

问题: 一家制造公司想要处理其生产线上的传感器数据,以检测设备故障和优化生产效率。他们应该如何使用AWS EMR来实现数据转换和分析?

A) 将传感器数据上传到Amazon S3,然后使用EMR集群运行Presto作业来分析数据。
B) 创建一个EMR集群,将传感器数据直接加载到Amazon QuickSight中进行实时监控和分析。
C) 将传感器数据上传到Amazon RDS,然后使用EMR集群运行Spark Streaming作业来分析数据。
D) 将传感器数据上传到Amazon S3,然后使用EMR集群运行Apache Flink作业来进行实时数据处理和分析。

答案:D) 将传感器数据上传到Amazon S3,然后使用EMR集群运行Apache Flink作业来进行实时数据处理和分析。

解释: 在这种情况下,最佳做法是将传感器数据存储在Amazon S3中,并使用EMR集群运行Apache Flink作业,以实时处理和分析数据,以便检测设备故障和优化生产效率。

问题5:EMR的机器学习场景

问题: 一家电信公司想要使用机器学习来预测网络故障并进行维护计划。他们应该如何使用AWS EMR来实现这个机器学习场景?

A) 创建一个EMR集群,将网络数据加载到Amazon SageMaker中进行机器学习建模。
B) 将网络数据上传到Amazon S3,然后使用EMR集群运行Spark MLlib作业来构建机器学习模型。
C) 创建一个EMR集群,将网络数据直接加载到Amazon Machine Learning中进行预测。
D) 将网络数据上传到Amazon RDS,然后使用EMR集群运行TensorFlow作业来训练模型。

答案:B) 将网络数据上传到Amazon S3,然后使用EMR集群运行Spark MLlib作业来构建机器学习模型。


上一篇
Day 12 第二站 Exploratory Data Analysis - QuickSight
下一篇
Day 14 第二站 Exploratory Data Analysis - 資料前處理
系列文
夥伴們!一起航向AWS Certified Machine Learning Specialty的偉大航道吧!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言