数据摄取与AWS云服务

在当今这个信息爆炸的时代,数据量的激增和复杂性不断上升,数据摄取成为了一个日益重要的议题。本文旨在阐明如何利用基于云的ETL工具来处理数据摄取过程。如果是AWS的新手,或者想要探索数据摄取的高级工作流程,那么请继续阅读。

为什么选择AWS

AWS是一个按需提供的云计算平台,它在全球范围内提供超过200种服务,能够快速加载多样化的数据,并为企业生成成本效益高、可扩展的解决方案。

AWS的关键服务

考虑到AWS提供的广泛服务,学习和积累所有服务的经验需要大量的努力和时间。因此,让讨论一些对于数据工程师来说,应对当今数据挑战和完成日常任务(包括数据库、存储、分析等)至关重要的服务。

数据源

现代应用程序使用和存储的数据量达到了拍字节级别。这些应用程序需要能够处理大量请求,并具备低延迟和高可用性等特点。AWS通过其数据库服务(DBaaS)满足上述应用程序的需求。它提供了两种不同的数据源:“关系型数据库服务”和“非关系型数据库服务”,可以根据应用程序的需求进行定制。

数据摄取

如今,许多应用程序生成了大量数据,在数字世界中的每一个行动都会留下痕迹。考虑到不同类型的源数据,可以构建两种主要类型的数据摄取管道来完成摄取活动,即“批量数据管道”和“流数据管道”。

批量数据管道

可以使用EMR集群、AWS Glue和Lambda函数来编排、摄取和构建批量数据管道。

流数据管道

可以使用AWS Kinesis来捕获和存储连续(实时)生成的数据,并构建流数据管道。

Amazon EMR用于批量数据

Amazon EMR运行在动态可扩展的EC2集群上,并提供托管的Hadoop生态系统。EMR可以将数据在Amazon数据库和数据存储(如Amazon S3和Dynamo DB)之间移动。

AWS Kinesis用于流数据

实时分析数据并产生洞察,通过了解用户行为和趋势,为用户提供更好的服务。这些数据非常庞大,每小时生成的数据量可达TB级别,需要被处理、存储和分析。

数据湖

随着数据湖概念的出现,使用名为Amazon S3的存储服务来对数据湖中的数据进行分类和维护。

Amazon Simple Storage Service (Amazon S3)

Amazon S3可以被描述为一个对象存储服务(每个加载到S3的文件都被视为一个对象),它能够从网络上的任何地方存储和检索任意数量的数据。

步骤1 - 首先,数据以“原始”形式存储在一个单独的桶中。原始桶包含未准备好进行分析的原始数据。可以将这个区域称为原始层。

// 示例代码:创建S3桶 aws s3 mb s3://my-raw-bucket // 示例代码:使用AWS Glue进行数据清理 aws glue start-job-run --job-name "my-data-cleaning-job" // 示例代码:将处理后的数据写入已处理桶 aws s3 cp s3://my-raw-bucket/ s3://my-processed-bucket/ --recursive
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485