全国咨询/投诉热线:400-618-9090

首页技术文章正文

AWS是什么?AWS介绍[大数据培训]

更新时间:2019-10-16 来源:黑马程序员 浏览量:


目前云平台逐渐火热起来,国内如:阿里云、腾讯云、华为云等平台,国外如:AWS、Azure、Google GCP等平台,都有不少用户,并在持续的增加中。

特别是在大数据领域,主流的云平台均提供了相应的解决方案,从分布式存储到分布式计算,从批处理框架到流式计算,从ETL到数据管道,从BI分析到数据挖掘等等方面均有对应的产品来解决企业的需求。

我们有必要对云平台增加一定的了解,并最好能上手尝试一番,对我们提升眼界思维有很大帮助。

本篇文章就给大家带来主流云平台中的AWS平台的相关介绍。


一、 什么是AWS

官方介绍:

AWS 全称Amazon web service(亚马逊网络服务),是亚马逊公司旗下云计算服务平台,为全世界各个国家和地区的客户提供一整套基础设施和云解决方案。

AWS面向用户提供包括弹性计算、存储、数据库、物联网在内的一整套云计算服务,帮助企业降低IT投入和维护成本,轻松上云

从概念是来看,AWS提供了一系列的托管产品,帮助我们在没有物理服务器的情况下,照样可以正常完成软件开发中的各种需求,也就是我们常说的云服务。

比如,从存储来说,AWS提供了S3 作为对象存储工具,可以帮助我们存储大量的数据,并且S3可以被AWS的其他服务所访问。

从服务器资源来说,AWS提供了EC2作为虚拟化的云服务器,提供各种类型的主机,如计算型、通用型、内存计算型、GPU计算型,等等来满足业务对服务器的需要。

在数据库方面,AWS提供了如RDS(包含Mysql、MariaDB、Postgresql)作为关系型存储以及分布式大型关系型数据库Aurora,同时提供了多种Nosql数据库,如DynamoDB等,以及数仓如RedShift。

AWS在各个方面的业务需求上,都有对应的产品或者整体的解决方案存在,并且这些产品或者方案都有一个特点,就是全部不需要使用者有任何物理资源,所有的业务统统在AWS上运行,使用者只需要有一天电脑去登录AWS去进行管理操作即可,同时也简化了许多运维的工作量,比如监控、报警等方面,AWS自身就已经集成了很丰富的监控报警功能。


二、AWS上提供的主要功能模块

1571206422810_aws1.jpg


1571206431694_aws2.jpg

1571206440337_aws3.jpg


如上三个图,我们可以看出,AWS提供了许许多多的功能模块以对应各种不同的业务需求

就以计算来举例:

在AWS的计算模块中,除了最常见的EC2(Elastic Compute Cloud),也就是云上的虚拟机,除了EC2外,AWS提供了诸如:

LAMBDA: 用于提供开发ServerLess Application,支持Java、Python、Go等主流语言

ECR:Amazon Elastic Container Registry,用于管理容器镜像的服务,类似容器仓库的概念

ECS:Amazon Elastic Container Service,AWS自身提供的容器编排服务

EKS:Elastic Kubernetes Service,运行在云上的,AWS提供的Kubernetes技术

Lambda:云上运行代码,无需顾虑服务器。只需要关系业务逻辑编写代码即可,编写好之后提交给Lambda代码可以直接运行,不需要服务器,也不需要安装环境。

还有一些其他的计算模块中的服务,就不一一列举了(国内用不了)。

可以看出,AWS在每一个模块下,都提供了很丰富的产品来供用户选择使用。

使用AWS可以做到,不依赖任何任何一台物理服务器就能支撑起全公司所有的业务。

AWS是十分强大的,目前在全球云平台的占有率也是处于No.1的序列,其相当于引领着云平台的定义。

我们主要挑选一些最常使用的服务来给大家介绍一下。【推荐了解大数据培训课程


三、AWS中一些常用服务介绍

计算-EC2:

1571206481339_aws4.jpg



EC2可以说是AWS平台上最核心、最基础的服务了,其全称Elastic Compute Cloud: 弹性云计算。

EC2简单来说,就是提供了云上的虚拟服务器,用户可以按照需求选择如:

1. 内存计算型(强调内存性价比)

2. 通用型(均衡性价比)

3. 计算型(强调CPU性价比)

4. GPU计算型(提供高性能GPU)

5. 存储优化型(强调存储性价比)

1571206499121_aws5.jpg


除了大类型上可以选择,也可以选择小类型(CPU、内存配置),如下图:

1571206514890_aws6.jpg


提供了多种类型的CPU和内存的组合供我们选择,最高可以选择到128vCPU核心,4TB内存的级别。除了性能配置外,EC2同时支持选择多种操作系统来部署,如:

1571206559085_aws7.jpg


同时,EC2也可以搭配如VPC(虚拟网络),AMI(镜像),快照,安全组(防火墙),负载均衡器等各种服务搭配使用

总的来说,EC2 就相当于一个云上的虚拟机软件,可以帮我们创建服务器,部署操作系统,管理网络,拍摄快照,配置防火墙等等工作。


存储-S3

S3:Amazon Simple Storage Service,是一种云上的简单存储,是一种基于对象的存储。我们可以把我们的数据作为一个个对象存储在S3中。

并且,S3可以被AWS中其他的服务所访问,甚至我们部署的Hadoop、Spark等程序都可以正常的访问S3的数据。

S3作为存储,和服务器进行了隔离,原本我们做分布式存储如HDFS,都是依赖具体的服务器硬件的,但是使用S3,就不再需要了,它就相当于AWS提供的一款分布式、超大容量的网盘程序

T1:使用S3,我们可以将存储的计算资源进行分离,比如我们可以在需要计算的时候,临时创建几个EC2,去加载S3数据,运行程序计算结果,得到结果后,就可以删除EC2了,最大程度提供资源利用率,不需要计算的时候,让计算资源不再闲置,或者说,需要计算资源的时候再去创建即可。


数据库

RDS

RDS全称:Amazon Relational Database Service,也就是亚马逊关系型数据库服务。是一种托管的云数据库,可以为我们提供云上的Mysql、Postgresql、MariaDB、Aurora(分布式关系型数据库)等多种关系型数据库。使用RDS,用户只需要关系去使用它即可,而无需关心如:安装、部署、维护、监控、报警等一系列操作。这些操作AWS全部帮我们自动化完成,我们只需要关心业务逻辑去操作数据库即可。

1571206617918_aws8.jpg


DyanmoDB

DynamoDB是一款托管的NoSQL数据库,是Key-Value型的列式数据库,由AWS自行研发,类似HBase。

其提供了多种语言的API帮助客户开发程序,同时将性能划分为一个个容量单位,由预算来决定性能,最大限度节省预算。

同RDS一样,使用托管的DynamoDB,客户同样只需要关心使用即可,而无需关心如维护、安装、报警、监控、部署等一系列操作。

1571206650769_aws9.jpg


RedShift

RedShift是AWS提供的一款云上的托管的数据仓库产品。其底层基于Postgresql开发,兼容Postgresql的一些标准,可以使用JDBC连接。

1571206684676_aws10.jpg


计算-LAMBDA

Lambda是一款神器,目前微服务十分流行,Lambda可以构建复杂的微服务系统架构,同时也可以用来构建ServerLess 类型的Application

Lambda简单来说就是,编写好代码,提交给Lambda即可运行,无需顾虑服务器。

1571206703846_aws11.jpg


联网和内容分发-API Gateway

Amazon API Gateway 可帮助开发人员创建和管理在 Amazon EC2、AWS Lambda 或任何可公开寻址的 Web 服务上运行的后端系统的 API。利用 Amazon API Gateway,您可以为您的 API 生成自定义客户端 SDK,以便将后端系统连接到移动、Web 和服务器应用程序或服务

通俗来说,我们可以认为API Gateway就是一款托管在云上的Nignx、Tomcat等中间件。

API Gateway 可以配合上面提到的Lambda,来提供RESTful形式的接口。

1571206752106_aws12.jpg


分析-EMR

EMR也是一款重磅产品,对我们大数据开发人员意义重大,其可以帮助我们快速的构建起一个大数据集群,只需要鼠标点击几下即可创建。

1571206789996_aws13.jpg


EMR提供两种类型的集群:

1. 步骤运行集群

2. 长久运行集群

对于步骤运行集群,我们可以创建一个特定的集群,分配特定EC2来运行集群,给定一个集群创建成功后的运行步骤。那么在集群创建好之后,EMR会自动运行我们提供的步骤,运行结束后,会自动关闭此集群,删除对应的EC2资源。

比如:我们可以写一个Spark任务,从S3读取数据,并将结果存放到S3中,那么可以将这个任务提交给EMR步骤运行集群,那么其流程就是:

1. 预配置:比如勾选需要多少个EC2,EC2是什么类型,Spark任务在哪里

2. 预配置完成后,EMR就会创建对应的EC2,然后在对应EC2上部署集群

3. 集群部署完成后,运行我们提交的Spark任务

4. Spark任务运行完成后,EMR关闭集群,删除EC2

那么假设我们的任务运行了2个小时,提供了10个4核心8GB内存的EC2,那么我们消耗的成本就只有这10台EC2 运行2小时的金额。

而对于以前的机房集群来说,在不运行任务的时候,其也在持续的消耗成本(房租、电、网、运维等)

同时对于这样的集群我们还可以动态拓展其性能,我们勾选了10个EC2 运行了2小时完成,

那么一般来说我们可以勾选20个EC2,来让任务在1小时完成,那么成本和10个EC2 2小时完成是差不多的

这样对于企业来说可以最大限度的节省资金同时提高性能,

对于机房集群来说,扩容是一个大事情,但是对于EMR来说,就非常轻松。

对于长久运行集群

EMR在创建好集群后,就让集群一直运行下去,除非我们手动关闭,EMR不会自动关闭集群删除EC2

适合我们部署长期运行的服务,如HBase等

EMR支持如下的大数据组件:

1571206830581_aws14.jpg


分析-Kinesis

Kinesis是AWS提供的一款流分析工具,可以基于Kinesis来完成相关流计算业务,同时Kinesis也可以作为一款消息队列来存在,用于削峰、解耦等。

1571206859568_aws15.jpg

1571206867903_aws16.jpg


四、总结

AWS为我们提供了许许多多实用的产品和解决方案,可以让业务不依赖任何一台云服务器。

目前,上云是一句流行语,也是一个大势,大家可以多了解了解云产品,开拓眼界。

javaee

python

web

ui

cloud

test

c

netmarket

pm

Linux

movies

robot

http://www.itcast.cn/subject/uizly/index.shtml?seozxuids

14天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

20天免费试学

基础班入门课程限时免费

申请试学名额

8天免费试学

基础班入门课程限时免费

申请试学名额

20天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

0天免费试学

基础班入门课程限时免费

申请试学名额

12天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

10天免费试学

基础班入门课程限时免费

申请试学名额
在线咨询 我要报名