Cheney Shue

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  77 随笔 :: 0 文章 :: 571 评论 :: 31 引用

公告

博客园  Cheney Shue

来源:http://www.gartner.com/
翻译:Cheney Shue
发表于:博客园

20071010

Donald Feinberg, Mark A. Beyer

Gartner RAS Core Research Note G00151490
 

因为新的厂商参与,数据仓库DBMS市场正发生转变,大型DBMS厂商开始挑战单一的数据仓库厂商,且增长的负荷对数据仓库性能的影响越来越明显。

你所需要知道的

数据仓库DBMS市场的竞争变得越发激烈。有趣的是,在2007年我们看到企业开始接受数据仓库解决方案——许多组织开始部署技术一流的解决方案,且追随着“安装简便,快速投入应用环境,满足80%的需求”的宣传口号。IBMOracleTeradata仍在为争夺龙头老大的位置大打出手。Microsoft带着它更具挑战性的DBMS加入这场冲突中,并且快速的蚕食中型商业市场——更重要的是,在大型公司中的应用也在增加。虽然一些组织将Netezza用于更大型的部署,但它在面对特定的分析和终端用户的需求是仍相对薄弱。数据仓库的竞争仍集中在关键功能上,而且数据仓库需要的满足混合型应用。“深度挖掘”分析和商业分析需要随意的查询数据,同时也是复杂和需要快速反应的查询,所有这些查询都要竞争CPU、内存和磁盘资源。因为并发的不同服务级别资源请求,数据的快速反应需求从间断性变成持续的。不要在乎市场的宣传,你需要通过客户的反馈和厂商宣传的概念在实际环境中成功案例,特别是你自己的环境来决定选用何种产品。虽然这已经是一个成熟的市场,吸引了大型厂商的全力关注,它们都希望能通过创新发起奇袭,不过常常是一些小型厂商能提出更专一、更创新的解决方案(IBMOracleHP都曾吸取过教训)。

魔法四分区

1. 2007数据仓库管理系统魔法四分区


Source: Gartner (September 2007)

市场概括

数据仓库DBMS市场已经由传统的支持商业智能(BI)信息存储,发展到企业的数据分析基础构架储备。且企业将更多的负荷和数据载入从联机事务处理(OLTP)转移到数据仓库。客户对厂商提出更多的需求,这导致魔法四分区中更多厂商靠近右上角。市场的焦点从执行(支持实时应用程序)转移到关键任务,关键任务系统是指支持产生收入和执行成本控制的业务处理的系统,如果这些系统停止超过一小时,就不得不手工处理业务,以免产生损失。因此一些厂商改进它们的vision,使得他们在四分区中相比去年更靠左边。其中的一个例子是提升计算能力到存储级别(比如SandSybase IQVertica这些垂直DBMS支持高效的嵌套查询,减少I/O性能损耗)。而且,数据库的大小已经不再重要。过去,客户认为用于最大数据库的系统就是市场的领导者,但现在5TB20TB的小型数据库已能满足企业的日常分析需求。总之,今天这些问题使IT行业越来越难满足客户对数据仓库的期望,包括客户需要的服务协议(SLAs)。(参看“Mission-Critical Data Warehouses Demand New SLA”)。

我们可以看到不断有新厂商加入这个市场,且成熟的厂商提出新的解决方案。在来年,我们要注意一些新的DBMS引擎厂商——因为评选标准,此报告中只包含EnterpriseDB GridSQLi-lluminateParAccelVerticaThe lessons learned from DATAllegroNetezzaTeradata的预配置、平衡“应用”解决方案(参看“Data Warehouse Appliances Are More Than Just Plug and Play”)已引起一些传统厂商的兴趣,且开始采纳这些优点,比如BullDataWarehouse Parallel Server使用DATAllegro)、HPNeoview)、IBMBalanced Warehouse)、Oracle(为DELLEMC提供的Oracle Optimized Warehouse)和Sunusing the Greenplum DBMS with the Sun Fire X4500 data server),其中后两者是硬件公司与软件公司合作提供数据仓库应用的例子。

数据仓库混合作业

传统数据仓库的工作量已从查询和报表,转变到若干不同的工作:

l   持续(近实时)的数据装载——类似于OLTP作业(因为数据仓库中需更新索引和优化结构)——导致汇总和聚合管理以支持仪表盘和预建的报表。

l   当数据仓库变为成熟后,由于查询任务的加重,数据载入负荷已由批量性的变成了持续性的。市场开始意识到并不是所有数据都需要准时响应,一些不常更新的记录也不需要频繁的动态实时刷新。

l   每天要处理上千的标准报表,需要结构查询语言(SQL)调效、创建索引、新类型的存储分区和其他数据仓库结构优化手段。

l   业务人员需要战术性业务分析,但他们不熟悉查询语言,只能使用预先建好的带有聚合数据(pre-joins)和给定维度下钻(summary)的数据分析对象。他们依赖BI构架开发通用的cube和表。

l   由于ad-hoc查询用户的增加,他们使用即兴地、无法预料的数据查询,意味着没法为这些查询做特定的优化。

l   OLTP应用程序中的分析和BI功能,为数据仓库作为OLTP的信息源提供高度战术性应用,这些OLTP程序需要高性能查询。这是一种驱动数据仓库向高可用性发展的力量。

数据库的容量的增长已经是一个棘手的问题,但上述的6种作业需求为厂商带来更多的问题,甚至是小于1TB的数据库也是如此。除了服务级别的需求之外(参看“Mission-Critical Data Warehouses Demand New SLAs”),每种环境“有用”数据的容量和延迟通常是大不相同的,这样就需要考虑数据仓库环境所涉及的各个方面——从磁盘管理到内存的I/O平衡和处理器分配。直到2010年,混合作业需求都将是数据仓库性能最大的问题。持续数据载入和由OLTP系统分析功能的转移,混合作业需求的直接影响是,事务型DBMS可能侵蚀数据仓库的性能。

优化和性能

复杂性和容量的增长带来的另一个影响是,组织对企业数据仓库和数据仓库支持的数据集市所需要的资源有不同的评估。这种差异一定程度上归因于,支持物理模型(如存储管理、数据库重组、资源平衡)的资源需求与支持逻辑模型、业务理解、性能优化的资源需求之间的矛盾。不过,所有的数据仓库都需要优化技术。在某些情况下,综合考虑的逻辑设计决定物理模型,例如自动汇总类型表和不同类型的物理视图。

在其他情况下,优化需要设计和部署物理表,使用bulk-load每天批量从源抽取、转换、装载(ETL)数据,甚至是每小时进行ETL过程。以前被归为“通用型”的DBMS(例如DB2OracleSQL Server)曾需要人工维护,但因厂商加入了更多自动物理维护功能,现在只需要少量的管理工作,可由少数几个DBA维护。同时,专门的数据仓库DBMS开始需要更多的自动化系统管理。当从源系统中抽取的数据量超过5TB10TB级别时,数据仓库设计的行业标准就变得极其重要。要提升信息的价值就不应该吝啬投入更多的人力和存储空间(用于数据仓库设计调效)。事实上,优化技术和获取层可以看作语义层,这可以增强数据的可用性。多种应用程序都需从数据仓库获取数据,不应把针对应用程序的优化看成增加了数据仓库的成本。这些应用程序比终端用户产生更多连续的查询。例如,相比起使用低级别汇总表的应用程序,需要为高级别的汇总表开发不同的应用程序。

一个变得更为重要的问题是数据仓库中需要优化的数据量。必须注意到因为优化技术可以应用到所有的DBMS,所有的数据仓库都比初始装载的数据量大。数据仓库中优化容量相对源系统抽取数据量的比率在整个生命周期中一直在改变。在初期,数据仓库优化数据容量相对源系统抽取数据的比率很大,因为多种应用程序需要不同的优化策略。初期时数据仓库容量很小,相对比率自然很高,当数据仓库年龄增长,比率开始下降,因为大量细节数据不需要而外的优化空间,而且索引的存储容量变得平稳,也使得比率的下降。所有这些情况下,DBA的工作可以有效控制容量增长。DBA可以通过与业务部门的密切沟通决定数据仓库中细节数据和汇总数据的需求。许多客户报告说数据仓库中存储了超过10年的数据,可事实上,只需要5年,甚至更少。而且,随着越来越多企业部署数据仓库,数据仓库的容量会因个体的技术存在很大变数——最好的数据仓库平台也可能被糟糕的数据构架毁掉。

发展方向和最佳方案

在最近(从20062007)开始流行“分布式数据仓库”。这是在多个物理位置应用全局逻辑模型。数据被逻辑的分成多个域(例如,一个区的数据与下一个区在同一个模型中;或者是所有的客户数据在一个地方,而所有产品在另一地方),但不同位置不会有重复的数据。这种分布式方法的理由可以是为不同的物理数据创建安全区域,或为全球不同时区的用户提供全天候的服务。不应该把分布式部署与联合设计搞混,联合部署使用翻译表,包含离散的逻辑模型,且还应用着最糟糕的数据仓库方案。

在为数据仓库构架选型时,对候选厂商进行POC测试是最佳方案,特别是需要考虑新加入市场的厂商时。我们推荐尽量从源系统抽取真实的数据以应用POC测试;同时用尽可能多的用户实施POC测试,以模拟生产环境中数据仓库的负载。而且,我们推荐不要在实际的POC测试前,将所有的测试查询交给厂商。保留一些复杂的查询在POC时使用,以确保厂商没有将DBMS经过特殊调校来应对你提出的查询。最后,我们推荐在POC中进行数据载入测试,就算系统将来不需要工作在高负荷载入的环境;如果系统在应用中需要持续的数据载入,POC中当然应该包含查询和报表数据载入测试。如果需要间断性的数据载入,理解厂商的要求或限制是很重要的,特别当数据仓库变成全天候服务时,大部分企业需要载入峰值数据量的在减少。

2006年,由Kognitio发起一种数据仓库托管服务概念(参看“Magic Quadrant for Data Warehouse Database Management Systems, 2006”),既DBMS厂商为客户开发和运行数据仓库。这种最初出现在业务部门开始,业务部门购买托管服务,而不是使用企业内IT部门提供的数据仓库。通常我们接触到的案例报告说由于IT部门的人员和数据仓库系统都在超负荷工作,已经没有足够的资源满足特定的需求了,因而求助于托管服务。在2007年,我们看到更多的组织使用这种方式,甚至在调查中碰到一个案例是整个企业的数据仓库的是托管的。我们也碰到几个企业使用Greenplum的托管服务,客户可以在Greenplum的网页管理数据仓库。我们期待看到在未来几年内有更多组织使用这种服务,特别是那些只有一个业务部门的小公司或是需要满足特定需求的组织。未来,我们相信这种方法将发展成软件既服务(SaaS)的模式,那些缺乏专业技术和资金支持自有数据仓库的中小型企业将依赖于这种服务。

数据集市

由于数据仓库驱动的应用更为多样,作业需求差异很大,数据集市被广泛采纳,其急速扩张变成首要的关注点。数据集市是用来满足特定分析应用的知识储备,通常提供给特定的小部分用户(参看“Of Data Warehouses, Operational Data Stores, Data Marts and Data 'Outhouses'”)。应用程序可以是传统的应用集合(比如SAP),或者特定作业需求的应用(例如在商业分析中使用数据子集来进行数据挖掘)。通过将部分作业需求转移到数据集市,可以用来优化企业数据仓库(EDW)性能。

而且,在过去的几年中,我们看到了数据集市在分析方面的应用大大增加了。这不仅是因为更多分析需要数据仓库的支持,而且因为数据仓库DBMS引擎在分析应用方面表现优秀。特别是,列导向的DBMS引擎,如ParAccelSand/DNA AnalyticsSybase IQ analytics serverVertica在分析应用方面表现出来的杰出性能已超过了传统的基于行的DBMS。若干个相关报道说使用这些DBMS后性能成倍的提升,但是当使用复杂的查询作业需求时——例如在SELECT语句中返回很多列(包含所有的列),且使用复杂的联接(至少10个表联接)——相比起基于行的DBMS,基于列的DBMS不算太好,也不算太糟。对企业级数据仓库来说,列向导的DBMS通常不是一种好的选择。

市场定义/描述

数据仓库DBMS市场由提供包含数据仓库基础构架的DBMS产品厂商构成。

DBMS是一个完整的软件系统,支持和管理里逻辑数据库存储。企业数据仓库DBMS是那些除了支持关系数据模型(扩展地支持新的数据结构和类型,如物化视图和XML),也提供的对独立前端应用程序可用性,还要包括分离作业需求和控制各种终端的参数查询机制。要注意DBMS不能“是”数据仓库,DBMS是数据仓库部署的平台。

企业数据仓库是整合多种异构数据源,随时间变化的知识储备。它的逻辑设计特点包含引入额外的异构数据而不必对已有的实体结构做大的修改。企业数据仓库可以是任何大小的,虽然Gartner定义小于5TB的是小型数据仓库,5TB20TB是中型数据仓库,大于20TB是大型数据仓库。出于衡量数据仓库大小的目的,我们定义数据是源抽取数据,不包括所有数据仓库设计细节结构(例如索引、立方体、星型和汇总表)。

厂商的强项和不足

IBM

强项

l   IBM可以吸引那些想要预先安装并配置好了的,不需要企业自己部署硬件环境建立数据仓库的企业。IBMDB2 Warehouse仅仅是软件,而它的数据仓库方案Balanced Warehouse是由服务器和存储硬件组成的解决方案(使用带有AIXSystem p服务器,或带有LinuxSystem x服务器),在客户购买了Balanced Configuration UnitsBCU)解决方案后,能获得DB2 Warehouse(使用IBM DB2 9 DBMS)的服务和技术支持。

l   IBM在全世界提供专业的服务,支持大部分的数据仓库DBMS平台,其中当然包括了对IBM数据仓库DBMS的技术支持和培训。

l   DB2 Warehouse包括workload管理软件,数据转换,整合SASSPSS数据挖掘及数据可视化功能,OLAP支持数据仓库建模,逻辑和物理数据分区。

l   IBM拥有上百用户在中等源数据抽取规模运行数据仓库,这些客户主要使用System zSystem pIBM也有客户使用DB2 Warehouse在大型源数据抽取规模运行数据仓库。

不足

l   IBM DB2 Warehouse的数据仓库总容量一般是1.35倍的源系统抽取数据量,具体的比率取决于数据仓库系统和相关人员的专业技能。由于系统的复杂程度,产生的糟糕设计使得这个比率更大。

l   Gartner用户的咨询来看,如果不是客户端已使用了DB2系统,企业通常不会采纳IBM的产品。Gartner也会收到DB2客户的咨询,询问除DB2在外使用其它的DBMS作为数据仓库的另一选择。

l   IBM软件部门面对着内部的“竞争合作”。因为IBM硬件部门不仅为其它的DBMS平台出售硬件,而且也开始开放为其它DBMS提供支持(参看”MySQL Will Open IBM System i to New Applications and Customers“),甚至与其它DBMS厂商合作提供有竞争力的产品组合。

Microsoft

强项

l   SQL Server 2005已经面世两年,在数据仓库领域的应用已经开始加速。开始,大部分的老版本用户在OLTP领域采用微软的数据库。现在,我们更多的客户向我们咨询SQL Server在数据仓库方面的应用,特别是5TB6TB的数据库。

l   Microsoft的产品性价比非常高。购买一套SQL Server 2005 Enterprise Edition就包括了SQL Server Analysis Server (SSAS)SQL Server Reporting Services (SSRS)SQL Server Integration Services (SSIS),意味着付出很低的价格就可同时拥有OLAP、报表和数据整合功能。

l   SQL Server 2005很轻松地蚕食中小型数据仓库市场。在增长中的中型企业,数据仓库的应用已变得非常耀眼,SQL Server应用规模将随着其数据仓库业务的增长而增长。

l   微软在全球提供广泛的技术支持(包括合作伙伴、增值销售商、第三方的软件和工具、大量的SQL Server技术人才),随着最近购买了ProClarity之类的公司,它已将BI看作是企业核心应用程序,并在这块领域加大了筹码。

l   SQL Server 2008将在2008年的上半年推出(beta版本已经在测试中),随着在数据仓库方面的增强,表明微软试图在此市场成为重要的厂商之一。

不足

l   微软在大型数据仓库应用中的时间不长。不过在我们的调查中,已经有将SQL Server作为大型企业数据仓库的案例,这需要很好的服务器配置和数据库管理才能成功。这使得SQL Server在小型数据仓库中是最佳的方案,但在大型的应用中需要很好的技术基础。需要两到三年企业才能普遍接受SQL Server作为具有竞争力的关键任务数据仓库。

l   当包括SQL Server Analysis Server立方体存储空间时,SQL Server数据仓库总容量与源系统抽取数据量的比率从最低的2倍到最高的56倍。如果正确的使用SQL Server Analysis Server立方体,这个比率可以接近最低点(2倍)。不过客户常常不能很好的使用SQL Server Analysis Server,人为的增加了存储空间。

l   SQL Server仅仅能在Windows Server上运行,因此相对其他竞争者,它缺乏可移植性。许多企业的IT部门因为不愿将Windows Server作为数据中心运行,而不会考虑SQL Server

Oracle

强项

l   世界范围的技术支持和客户成功经历,使得企业在寻求数据仓库解决方案时将Oracle作为必备的选择之一。

l   Oracle包含自动存储管理(ASM)的真应用集群(RAC)开始被企业级DBMS接受,并且应用到了大型数据仓库中(市场的定义是超过20TB的数据仓库)。支持scale-out外向扩展配置(无中断地增加服务器和存储设备),提供新的数据仓库服务等级协议要求的高可用性。

l   随着Oracle Database 11g的推出,增强的物化视图和cube管理(特别是透明SQL获取和增量更新)提升了Oracle部署终端用户优化层的能力,且这些特征是其他DBMS所没有的。同时Oracle的分区功能也得到了增强,包括Partition Advisor可以根据数据库构架提供分区建议。虽然此新版本的DBMS还没有在市场上有太多的成功案例(它是在20078月才发行的),不过我们企盼着看到新的特性能在更好的节约资源和性能(参看“Oracle Database 11g Could See Early Adoption”)。

l   Oracle为多个服务器厂商提供数据仓库参考配置,这种配置如同“物料单”(BOM)为特点的需求建立平衡数据仓库平台,包括服务器、存储设备和DBMS软件。最近,Oracle宣布为DellEMC提供优化数据仓库——一种数据仓库组合应用方案(参看“Data Warehouse Appliances Are More Than Just Plug-And-Play”),组合了Dell的服务器、EMC的存储设备、OracleDBMS软件,并且为这种组合进行了平衡调校和组合配置,这一应用方案由Dell出售并负责技术支持。

l   Oracle是此市场中最大的可移植数据仓库平台(可以在大部分安装LinuxUnixWindows的硬件平台运行),并包括可免费的附加数据质量组件的ETL工具(Oracle Warehouse Builder)。

不足

l   Oracle需要人工的优化和存储需求管理。Oracle有很多的应用案例,在调查中我们发现这些案例的源系统抽取数据量,既有大型的企业数据仓库,也有中小型的。如之前提到,数据仓库相对源系统抽取数据量比率主要取决于优化,Oracle的这一比率从5倍到1.5倍。

l   Oracle的定价和合同方案困扰着客户。Oracle的维护续约成本很高,相比原始的合同,Oracle在更高的基础上收取22%的维护费。另一个问题是,客户必须搞清楚哪些功能或模块是随DBMS附送的,哪些是需要付费的。我们建议客户要注意哪些附加项目是合法授权,哪些是需要单独购买。最好跟Oracle代理讨论支持和进行合同商讨。

Teradata

强项

l   Teradata在数据仓库市场已经有27年历史了,并始终专注于数据仓库领域。现在,它被客户看作是专业的应用方案,且Teradata将会受益于它的老资历和历史沿革。多年来,Teradata在功能方面一直处在领先地位,并适用于大型、复杂、混合作业环境。Teradata有充分的时间开发产品与所有厂商竞争。

l   Teradata有大约1,000个客户,年收入大约1亿6千万美元,所有收入来自于它的数据仓库产品。在垂直式的市场,如零售、金融、银行等,Teradata拥有特殊的强项(例如,强大的市场穿透、数据模型和专业服务)。Teradata表现出了稳定的增长,特别在数据仓库市场的收入已超过15个季度持续增长。

l   因为Teradata的构架,它的Active Data WarehouseDual-Active Data Warehouse已经证明了能很好的工作在新的现代混合作业环境下。同时,它完整的解决方案包括Teradata Data Warehouse——专注数据仓库的数据模型和专业服务。最后,它拥有SUSE Linux和新的双核5500型号的产品,这一产品利用了Linux的价格优势——目前大部分的销售都是基于Linux平台,并且客户报告说Linux下的性能比MP-RASTeradata自己的Unix系统 system)要好。

l   管理软件是Teradata又一强项,它可以管理整个数据仓库环境,包括从操作系统到作业需求。并带有工具管理混合作业环境,包括进度优先权管理。

不足

l   Teradata主要的关注,是如何应对未来三年内来自成熟DBMSIBM DB2MicrosoftOracle)的竞争,这些DBMS厂商开始变得更强大,已可以支持次于10TB级别的混合作业需求。我们收到小型Teradata客户的咨询,他们在重新考虑数据仓库方面的投资策略,并计划将他们的OLTP DBMS用于数据仓库。这种情况将迫使Teradata为小型数据仓库提供新的产品,以避免这块市场被蚕食,同时可以吸引到新的次10TB数据仓库的客户。

l   Teradata同时还需面对来自新入行厂商(DATAllegroGreenplumNetezza)的二级竞争,这些新加入的厂商表明他们可以在多种规模的数据库与其它厂商竞争,包括上百万亿的数据库,而且价格低于Teradata。这使Teradata扩展它的产品线到底端用户,包括低预算和小规模数据库的用户。不过在调整价格的一段时期内,Teradata的利润可能会减少。

l   TeradataNCR分离后,它需要创建自己的公司业务和对外形象。当调低产品价格以应对竞争时,Tearadata需要改变以前提供高端产品销售方式。这种转变必须尽快完成才能保持在市场上的竞争力。

posted on 2007-10-20 15:18 Cheney Shue 阅读(...) 评论(...) 编辑 收藏