常用数据库对比目前,常用于OLAP分析的数据库软件有Oracle、DB2、Teradata、Greenplum、Netezza、Exdata几种。1、Oracle提起数据库,第一个想到的公司,一般都会是Oracle(甲骨文)。该公司成立于1977年,最初是一家专门开发数据库的公司。Oracle在数据库领域一直处于领先地位。1984年,首先将关系数据库转到了桌面计算机上。然后,Oracle5率先推出了分布式数据库、客户/服务器结构等崭新的概念。Oracle6首创行锁定模式以及对称多处理计算机的支持……最新的Oracle8主要增加了对象技术,成为关系—对象数据库系统。目前,Oracle产品覆盖了大、中、小型机等几十种机型,Oracle数据库成为世界上使用最广泛的关系数据系统之一。Oracle数据库的特点如下:特点使用场景或者益处说明OLTP和OLAP的支持数据库在此项目中作为数据中心使用,其特性既有OLAP作用,已批量数据加载、查询为主,也有OLTP特性,以高速少量数据的增删改查为主Oracle数据库既支持OLTP也支持OLAP,在TPC-C和TPC-H测试中,都有使用数据库集群或者不使用数据库集群的测试结果。Oracle数据库更适合于OLTP系统和数据量较小的OLAP系统。分区是提高大量数据下性能的好方法,其实质是将达数据量分割为小数据量,通过并行、减少数据量等手段提高性能Oracle数据库提供Range、List、Hash、Range+Hash、List+Hash、Range+List等多种分区方式;Oracle的分区技术从8i就开始,是非常成熟的特性数据库事故恢复Oracle数据库可以在数据库运行和磁盘写入的同时分割镜像。如果存档日志损坏,Oracle数据库能够通过LogMiner工具翻阅损坏的日志文件,恢复日志文件中记录的交易。采用Oracle数据库的块级介质恢复功能,当只有一个块损坏时,只是这个块需要恢复,文件的其余部分,即含有这个块的表仍然可以在线访问,从而提高了数据的可用性。分析函数Oracle数据库提供很多分析函数如回归、假设分析、统计函数等,函数十分的丰富。海量数据查询能力对与数据量巨大的表进行查询的效率Oracle在海量数据的存储和查询,需要丰富经验的架构师对数据库进行合理的设计,才会有很好的查询效率,对数据库使用要求较高。集群扩展能力通过增加服务器数量的方式,等到大幅的性能提升Oracle的设计架构与Teradata和Greenplum是不同的,在集群扩展时对系统架构设计和DBA要求较高,使用不当反而会影响数据库的性能。性价比Oracle是数据库产品中价格较高的一种2、DB2DB2是IBM公司的产品,起源于SystemR和SystemR*。他支持从PC到UNIX,从中小型机到大型机;从IBM到非IBM(HP及SUNUNIX系统等)各种操作平台。他既可以在主机上以主/从方式独立运行,也可以在客户/服务器环境中运行。其中服务平台可以是OS/400,AIX,OS/2,HP-UNIX,SUN-Solaris等操作系统,客户机平台可以是OS/2或Windows,Dos,AIX,HP-UX,SUNSolaris等操作系统。DB2数据库的特点如下:特点使用场景或者益处说明OLTP和OLAP的支持数据库在此项目中作为数据中心使用,其特性既有OLAP作用,已批量数据加载、查询为主,也有OLTP特性,以高速少量数据的增删改查为主DB2UDB对于OLTP的支持方式是不采用数据库分区(集群),如在OLTP标准测试TPC-C中,从未使用集群方式;对于大数据量的OLAP应用,采用数据库分区(集群),如在OLAP标准测试TPC-H中,全部采用集群方式。DB2数据库更适合于OLTP系统和数据量较小的OLAP系统,常用于银行、券商的核心交易系统。分区是提高大量数据下性能的好方法,其实质是将达数据量分割为小数据量,通过并行、减少数据量等手段提高性能DB2UDB只支持Range、Hash分区,而且Range分区技术从V9才开始支持,V9.7支持了二级分区数据库事故恢复DB2必须在挂起数据库I/O时才能进行分割镜像备份功能;对于DB2来说,存档日志文件损坏意味着不仅特定日志文件中的交易全部丢失,而且损坏日志文件之后创建的存档日志文件也会丢失;DB2不能以块为单位恢复数据,因此需要将整个文件脱机、重建、恢复。分析函数函数较丰富,比Oracle要少一些海量数据查询能力对与数据量巨大的表进行查询的效率DB2在海量数据的存储和查询,需要丰富经验的架构师对数据库进行合理的设计,才会有很好的查询效率,对数据库使用要求较高,分区功能较差也是影响DB2查询性能的一个因素。集群扩展能力通过增加服务器数量的方式,等到大幅的性能提升DB2的设计架构与Teradata和Greenplum是不同的,在集群扩展时对系统架构设计和DBA要求较高,使用不当反而会影响数据库的性能。性价比DB2价格比Oracle有优势,其良好的查询性能,也是它成为目前性价比十分高的一款数据库。3、GreenplumGreenplum的架构采用了MPP(大规模并行处理),公司专注于OLAP系统数据引擎开发,有世界级的研发团队进行高性能计算和数据库系统的前沿开发工作,宗旨是向客户提供高性能的超级数据引擎,并将强大的并行计算能力融入到大规模数据仓库分析领域中。公司具有发展趋势超前的视野和洞察力,为全球很多最大规模的数据仓库提供推动力;公司最先将SQL和MapReduce的功能整合到统一的数据处理框架中。DB2数据库的特点如下:特点使用场景或者益处说明OLTP和OLAP的支持数据库在此项目中作为数据中心使用,其特性既有OLAP作用,已批量数据加载、查询为主,也有OLTP特性,以高速少量数据的增删改查为主Greenplum数据库专注于OLAP系统的,以其优秀的海量数据存储和处理能力为数据仓库提供强有力的支持,Greenplum支持50PB(1PB=1000TB)级海量数据的存储和处理,Greenplum将来自不同源系统的、不同部门、不同平台的数据集成到数据库中集中存放,并且存放详尽历史的数据轨迹,业务用户不用再面对一个又一个信息孤岛,也不再困惑于不同版本数据导致的偏差,同时对于IT人员也降低管理维护工作的复杂度。分区是提高大量数据下性能的好方法,其实质是将达数据量分割为小数据量,通过并行、减少数据量等手段提高性能支持自动和手动的数据分区,分区可以由数据库自动完成数据库事故恢复Greenplum是高可用的系统,在已有案例中最多使用了96台机器的集群MPP环境。除了硬件级的Raid技术外,Greenplum还提供数据库层Mirror机制保护,即每个节点数据在另外的节点中同步镜像,单个节点的错误不影响整个系统的使用。对于主节点,Greenplum提供Master/Standby机制进行主节点容错,当主节点发生错误时,可以切换到Standby节点继续服务。分析函数函数较丰富,比Oracle要少一些海量数据查询能力对与数据量巨大的表进行查询的效率Greenplum的设计架构十分适合于进行海量数据的存储和查询,某些场景下性能超过Oracle和DB2数十倍。集群扩展能力通过增加服务器数量的方式,等到大幅的性能提升Greenplum采用MPP并行处理架构,在MPP架构中增加节点就可以线性提高系统的存储容量和处理能力。Greenplum在扩展节点时操作简单,在很短时间内就能完成数据的重新分布。Greenplum线性扩展支持为数据分析系统将来的拓展给予了技术上的保障,用户可根据实施需要进行容量和性能的扩展。性价比Greenplum数据库软件系统节点基于业界各种开放式硬件平台,如SUN/HP/DELL等厂商的PCServer等,在普通的x86Server上就能达到很高的性能,因此性价比很高,相比于其他封闭式数据仓库专用系统,Greenplum每TB的投资是前者的1/5甚至更低。同样,Greenplum产品的维护成本相比同类厂商也低许多。Greenplum的优点:性价比很高,是目前数据仓库软件中性价比最高的数据处理性能优秀集群扩展性能线性提升集群扩展与数据库管理很简单目前国内有很多成功案例,如北京银行、阿里巴巴等,并且都是在POC过程中获得客户的认可Greenplum的缺点:对现有的ETL工具、BI工具支持的不好产品成熟度不够,还存在一些BUG即时查询支持的不太好,需要与oracle数据库配套使用系统集成相比一体机来说需要更多的时间4、TeradataTeradata是用于世界上最大的商用数据库的关系数据库管理系统。目前的技术允许数据库有数百Terabyte字节的容量,这就使Teradata成为一个大型数据仓库应用的正确选择。而Teradata数据库系统也可以只有10G字节那么小。由于并行性能和可扩展能力,Teradata可以使一个系统通过线性扩展从一个单一的节点开始扩展为多个节点的系统。Teradata数据库的特点如下:特点使用场景或者益处说明OLTP和OLAP的支持数据库在此项目中作为数据中心使用,其特性既有OLAP作用,已批量数据加载、查询为主,也有OLTP特性,以高速少量数据的增删改查为主Teradata,具有Ebay、Walmart等超大规模数据仓库建设案例,是目前世界上最成熟的数据仓库产品。分区是提高大量数据下性能的好方法,其实质是将达数据量分割为小数据量,通过并行、减少数据量等手段提高性能支持自动和手动的数据分区,分区可以由数据库自动完成数据库事故恢复Teradata是高可用的系统,可以实现集群服务器间的互备份,保证数据的安全。分析函数函数较丰富海量数据查询能力对与数据量巨大的表进行查询的效率Teradata的设计架构十分适合于进行海量数据的存储和查询,某些场景下性能超过Oracle和DB2数十倍。集群扩展能力通过增加服务器数量的方式,等到大幅的性能提升Teradata集群具有线性增长的特性。性价比Teradata是目前最优秀的数据仓库软件,但是它高昂的软件硬件投资费用,大大的降低了它的性价比。Teradata的优点:数据处理性能优秀产品成熟、稳定性高集群扩展性能线性提升集群扩展与数据库管理很简单对ETL工具和BI工具支持的很好拥有众多的PB级数据仓库案例,如沃尔玛、ebay等Teradata的缺点:价格昂贵5、NetezzaNetezza的开发团队是Teradata分离出来的,所以Netezza的设计理念与Teradata十分相似。Netezza在2010年被IBM收购,用于拟补DB2在OLAP上的劣势,IBM希望通过收购Netezza与Teradata进行竞争。Netezza数据库的特点如下:特点使用场景或者益处说明OLTP和OLAP的支持数据库在此项目中作为数据中心使用,其特性既有OLAP作用,已批量数据加载、查询为主,也有OLTP特性,以高速少量数据的增删改查为主目前案例很少,在中国地区只有银联和HTC的案例分区是提高大量数据下性能的好方法,其实质是将达数据量分割为小数据量,通过并行、减少数据量等手段提高性能支持自动和手动的数据分区,分区可以由数据库自动完成数据库事故恢复Netezza是高可用的系统,可以实现集群服务器间的互备份,保证数据的安全。分析函数函数较丰富海量数据查询能力对与数据量巨大的表进行查询的效率Netezza的设计架构十分适合于进行海量数据的存储和查询,某些场景下性能超过Oracle和DB2数十倍。集群扩展能力通过增加服务器数量的方式,等到大幅的性能提升Netezza集群具有线性增长的特性。性价比与Netezza相比具有价格优势。Netezza的优点:数据处理性能优秀集群扩展性能线性提升集群扩展与数据库管理很简单能够支持IBM的ETL工具和BI工具,如Datastage、Cognos等Netezza的缺点:价格偏高,介于Greenplum与Teradata之间刚刚开始开拓中国市场,成功案例很少IBM正在进行该产品整合6、OracleExdataOracle在2009年收购sun