怎样实现更节能的数据存储和分析?
面对当前这样的商业环境:在每一条现有的渠道上全天候不间断地开展业务,公司需要收集、存储、跟踪和分析海量数据——从点击流数据和事件日志到手机通话记录的各种数据。
而这一切都是需要企业和环境付出成本的:数据仓库和存放数据仓库的庞大数据中心耗用大量电能,运行大批服务器和冷却服务器都需要耗电。那么,这方面的耗电量有多大呢?据估计,每年的耗电量多达惊人的610亿千瓦时,据估计成本高达45亿美元。
IT行业已经开始通过各种方法,应对数据中心能耗巨大的问题,包括使用更高效的冷却系统、虚拟化技术、刀片服务器和存储区域网络。但一个根本的挑战仍然存在——随着数据量急剧增加,注重硬件设备的数据仓库方法只能继续通过部署更多硬件来应对这个问题。这样一来,通过更好的冷却技术或结构更紧凑的服务器在节能方面获得的任何好处很快就荡然无存。
为了尽量缩减硬件足迹(hardware footprint),许多企业还通过首先搞清楚信息分析需要多少服务器空间和资源,以减小“数据足迹”(data footprint)。如果企业能将明显旨在分析海量数据的新型数据库技术和成本合理、高效利用资源的开源软件结合起来,就有助于节省资金、提高节能效果。
企业可以从以下三个主要方面来开展这项工作:缩减数据足迹、减少部署资源以及减少日常管理和维护。下面更深入地分析每个方面:
一、缩减数据足迹
近年来,面向列的数据库已被许多人认为是分析海量数据的首选架构。面向列的数据库是以逐列的方式,而不是逐行的方式来存储数据。这有许多优点。大多数分析查询只涉及表中的一小部分列,所以面向列的数据库只要关注检索需要的那部分数据。这加快了查询速度,又减少了磁盘的输入/输出和计算资源。
此外,这种数据库能够高效地压缩数据,因为每一列只存储了一种数据类型,而不是每一行通常含有几种数据类型。可以针对每一种数据类型来优化压缩,这减小了数据库所需的存储量。面向列的数据库还大大加快了查询处理速度,因而大幅增加了服务器能够处理的并发查询数量。
如今市面上有一系列面向列的解决方案。有些重复数据所需要的硬件足迹与基于行的传统系统一样大。另一些解决方案将列技术与其他技术相结合,因而不需要重复数据。这就意味着用户不需要一样多的服务器或一样大的存储器来分析同样多的数据。
比如说,一些面向列的数据库能够达到的压缩效果从10:1(一个10TB的数据库变成1TB的数据库)到40:1以上,具体取决于数据。借助这样的压缩级别,分布式服务器环境就可以缩小20倍至50倍,可缩减至单单一个设备——大幅减少了散热量、耗电量和碳排放量。
虚拟数据集市也闪亮登场,充分利用企业信息集成(EII)技术,让用户能够以精准的视角了解数据集,又不需要物理存储器。这种方法的缺点是,复杂查询速度可能很慢,分析要求需要以近实时的方式查询数据时,这会是个问题。
开源码软件则进一步提高了资源的利用效率,因为它通常不需要专有硬件或专业设备。
二、减少部署资源
新的数据库技术结合开源技术,还能带来更简单的、“自己动手”的测试和部署模式。这大大减少了让分析解决方案投入运行起来所需的资源数量。
考虑一下采购和部署传统的专有解决方案可能需要的资源:漫长的产品评估过程之后,很可能需要厂商派人到客户现场,安装和配置硬件和设备。从自然环境和公司利润的角度来看,成本包括差旅费(乘飞机旅行、租车和酒店住宿)以及硬件(多台服务器、冷却设备和连接线材),还有人员(对解决方案进行定制可能需要整整一队专家。)
借助新的开源技术,软件可以从网上下载。另外,软件设计成了易于安装,那样一个人就能负责安装和部署。支持需求也减少了,这意味着问题可以通过电话会议来解决,而不是通过人员当面赶到现场来解决,后者不但成本更高,还存在碳排放问题。
三、减少日常管理和维护
由于传统的数据仓库解决方案通常用来处理特定类型的查询任务,所以它们不是特别适合这种环境:数据管理要求不断变化,而实时分析又至关重要。(事实上,实时动态的需求在网络主导的世界几乎很普遍。)如果改动这类解决方案,以便能处理特定查询,就需要工作量繁重的手动微调,因而会大量耗用IT资源。
比如说,试图运行一组复杂的分析查询,此外还要针对旨在存储海量IT日志数据的数据仓库,不断改变模式(schema),这就好比试图用字典来查找驾驶方向。这需要全面地重新配置底层数据结构,要求数据库设计人员创建索引和数据分区。索引和分区还会增加数据大小;在某些情况下,会将数据大小增加两倍或更多。
相比之下,一些新的分析数据库产品消除了这些手动工作和日常工作,可以提供一种更“类似谷歌”的体验,那样用户就可以轻松地利用软件,答复多种类型的问题。这种级别的灵活性有望将日常维护和操作支持最多减少90%。公司只要开发一款可以由许多人使用的解决方案,就能优化人员的使用,还能优化时间和资金方面的投入。此外,数据分析方面更高的工作效率意味着,可以在不牺牲性能的情况下,减少所用的硬件。
眼下一些公司甚至在改用外包的操作管理,进一步减少公司内部所需的资源数量。易于使用和维护的分析、集成和智能解决方案非常适合这种办法,因为它们很容易由外包提供商来进行管理。 (编辑:ASP站长网) |