1703952410
1703952412
9.2.1 大数据平台架构设计
1703952413
1703952414
上一节,我们学习了最接地气的应用架构设计,在学习过程中你已经发现了,里面用到了许多基础架构框架,如服务治理平台、分布式文件存储、大数据平台等。本节我们一起来探讨这些最接地气、最实用的基础架构,首先介绍的是大数据平台的架构设计。
1703952415
1703952416
近年来,大家对大数据的关注度和使用频率越来越高,软件产品中的各类数据都被记录下来,以便更好地研究和分析。在电商企业中,每天系统记录下来的运营数据,达到几百GB增量的规模,为了保证所有数据能集中存储并且可随时访问,越来越多的企业把离线数据体系从商用的Exadata等解决方案,全面转向开放的Hadoop体系当中,以谋求成本与扩展性的平衡。
1703952417
1703952418
有一定技术实力的互联网公司,纷纷搭建自己的大数据平台,如图9-9所示是一个典型的大数据平台的技术架构,下面我们一起来学习。从图9-9可以看到,大数据平台是由数据存储、数据同步分发、监控、离线计算、平台安全、资源申请等部分构成的。
1703952419
1703952420
1703952421
1703952422
1703952423
图9-9 大数据平台技术架构
1703952424
1703952425
数据存储,是整个大数据平台的基础,包含如:HDFS、HBase、Hive、MapReduce、Storm等等。下面,我们对其中的主要框架做些介绍,详细资料大家可以到搜索引擎中获取。
1703952426
1703952427
HDFS,分布式文件系统,Hadoop的核心组成部分。
1703952428
1703952429
MapReduce,分布式数据处理,Hadoop核心之一。
1703952430
1703952431
HBase,一个分布式的,列存储数据库,使用HDFS作为底层存储,同时支持MapReduce的批量式计算和点查询。
1703952432
1703952433
Zookeeper,一个分布式的,高可用的协调服务。提供分布式锁之类的基本服务,用于构建分布式应用。
1703952434
1703952435
Hive,分布式数据仓库,Hive管理HDFS中存储的数据,并提供基于SQL的查询语言用以查询数据。
1703952436
1703952437
Hama,建立在Hadoop上的分布式并行计算框架,基于Map/Reduce和Bulk Synchronous的实现框架,运行环境需要关联Zookeeper、HBase、HDFS组件。
1703952438
1703952439
Mahout,一个基于MapReduce的机器学习算法库,运行在Hadoop集群上。
1703952440
1703952441
Cassandra,一种混合的非关系型数据库,类似于Google的BigTable。
1703952442
1703952443
以上就是数据存储层中,用到的一些开源数据框架,我们继续看大数据平台的其他组成部分。
1703952444
1703952445
数据同步分发,这个组件对数据同步和分发做统一管理,可实现异步、分布式的数据同步和分发。
1703952446
1703952447
监控,指的是对大数据平台的服务和资源,进行监控和预警,包括数据存储的可用性、性能、系统负载、资源请求的响应时效等。
1703952448
1703952449
离线计算,处理离线计算任务的模块,包括任务容器、任务调度定时器、异常捕获等模块,确保离线计算任务能够在资源容许的情况下,按计划运行。
1703952450
1703952451
平台安全,主要包括对数据访问权限的管理,把数据划分成不同的安全等级进行管理,当访问某些安全级别高的数据时,会触发一个审批流程,经过主管审批后才能访问。
1703952452
1703952453
资源申请,指的是对大数据平台的计算或存储资源发起一个使用请求,这里会记录每一个数据操作访问,以供日后审计。
1703952454
1703952456
9.2.2 云平台架构设计
1703952457
1703952458
云平台是个非常宽泛的领域,本节侧重介绍企业私有云平台的架构,大家知道云平台可以分成:IaaS基础设施即服务、PaaS平台即服务、SaaS软件即服务。如图9-10所示,这是一个完整的企业级应用平台,从底层的存储资源、计算资源、网络资源,到中间层的容器服务、缓存服务、健康检查服务等,再到最上层的业务应用、接口应用等,这是用云的架构思想,构建的企业级应用。
1703952459
[
上一页 ]
[ :1.70395241e+09 ]
[
下一页 ]