banner

云端大规模数据仓库:云管理员和数据库管理员合二为一

作者: 大数据观察来源: 大数据观察时间:2017-04-11 11:23:000

云为管理大数据和部署逐渐增加的更大的数据仓库提供了越来越多的选择,这些选择会直接影响云管理员的角色。

对于那些更喜欢使用基础架构即服务(IaaS)首先进行计算和存储基础架构的企业而言,数据库管理员能继续管理数据仓库组件的安装、配置和监控。而对于更喜欢最小化开支或者利用现有的云管理员的企业而言,托管数据仓库服务可能是更好的选择,比如亚马逊的Redshift。但是使用这些托管的数据仓库,云管理员的角色和职责开始介入典型的数据管理员的任务。

为了说明不同的云管理员的职责,需要考虑云端大规模数据仓库的三个选择:亚马逊Redshift托管的数据仓库服务、亚马逊弹性MapReduce中的Hive以及亚马逊IaaS云中自管理集群之上的Apache Spark。虽然这些并不是数据存储和部署模型唯一可能的组合,但是代表了需要考虑的多个关键问题。

亚马逊Redshift:托管数据仓库服务

亚马逊Redshift力图成为一个完整的数据仓库服务,减少开支。其服务基于PostgreSQL,包括监控和基本管理操作,比如备份。这项数据仓库服务实现了一个分布式数据库,可以垂直(使用更大的服务器)或者水平地(增加服务器)扩展。

使用Redshift,云管理员的角色变得类似于数据库管理员。虽然他们免去了一些设计任务,比如选择物理模型,但是大量的其他任务落到了云管理员身上。比如,云管理员必须根据数据库上的负载在数据仓库中变更结点类型和数量。而且,即便使用了可管理的数据库服务,云管理员还必须执行普通的云管理任务,比如维护身份认证管理和访问控制信息,以及符合合规报告需求。

Redshift的另一个问题在于随着数据仓库中的资源规模、范围以及数量的增长,提取、转换和加载(ETL)会变得更加具有挑战性。亚马逊提供了对于集成亚马逊简单对象存储(S3)、DynamoDB以及外部主机的支持。

开发ETL应用会成为实质性的投资。如果你需要在多种源和目标之间转移数据,或者如果你可以改变你工作所使用的存储数据类型的话,就可以考虑大数据ETL工具,比如Talend。如果你变更或者增加目标数据库的话,这可以帮助最小化代码编写。

亚马逊EMR之上的Hive:Hadoop数据仓库

在亚马逊弹性MapReduce (EMR)中运行Hive提供了管理服务的一些优势,但是给管理员带来了大量的工作。除了设计Hive逻辑数据模型之外,云管理员必须管理数据负载、设计集群配置和监控工作负载,通常这些都是数据库管理员的工作。

Hive是一种构建在Hadoop之上的数据仓库系统,通过EMR支持。Hadoop旨在使用Hadoop分布式分拣系统,因此管理员需要确定其数据仓库如何使用HDFS以及S3存储数据。Hadoop中已经存在或者之外的数据可以使用DistCP设备复制,或者如果数据存在S3中,使用S3DistCP设备。由于HDFS数据在一个集群关闭后并非持久存在的,管理员需要在终止一个集群之前,计划工作流,将数据拷贝到S3或者其他的持久数据存储。

使用EMR的云管理还需要确定其Hadoop集群的配置。包括确定要使用的实例类型以及源程序、日志文件和数据源以及SSH密钥的位置。更重要的在于,管理员需要监控和修复工作流,比如数据加载和连续运转的批量作业。

当多种工作流运行在相同的数据集上时,管理员可以优化工作流调度,从而最小化ETL支出,避免不必要的Hadoop集群的启动和关闭。

Apache Spark:DIY模型

使用云主要用来存储资源和计算的企业要求一个云管理员具备大部分的数据库管理员的技能,但是也提供了使用更加新的平台的大部分灵活性,比如Apache Spark。

数据仓库必须支持交互查询,务必要考虑Hadoop MapReduce的写密集型处理模型。Apache Spark是一种内存分析引擎,针对大数据分析,支持机器学习、图形处理、流和交互查询。但是由于Spark属于Apache的孵化项目,需要比Redshift或者Hive on EMR更多的管理费用。

Spark开发者为在亚马逊弹性计算云上运行Spark提供了脚本,亚马逊在EMR中也有运行Spark和Shark(Hive on Spark)的指导。云管理员承担全方位的管理员任务,从配置集群、设置Spark指针、管理数据加载、设置访问控制、监控工作以及故障排除。

banner
看过还想看
可能还想看
热点推荐

永洪科技
致力于打造全球领先的数据技术厂商

申请试用
Copyright © 2012-2024开发者:北京永洪商智科技有限公司版本:V10.2
京ICP备12050607号-1京公网安备110110802011451号 隐私政策应用权限