HUABASE基于列存储的关系型数据库系统_第1页
HUABASE基于列存储的关系型数据库系统_第2页
HUABASE基于列存储的关系型数据库系统_第3页
HUABASE基于列存储的关系型数据库系统_第4页
HUABASE基于列存储的关系型数据库系统_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文由thulium2000贡献pdf文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。计算机研究与发展JournalofComputerResearchandDevelopmentISSN1000—12391CN11—1777/1rP47(Suppl.):524—528,2010HUABASE:基于列存储的关系型数据库系统曾春1胡劲松2邢春晓1冯建华3100084)1(清华大学信息技术研究院北京2(广东环天电子技术发展有限公司广州北京510130)100084)3(清华大学计算机科学与技术系(zengchun@tsinghua.org.cn)HUABASE:AColumn—OrientedRelationalDatabaseSystemZengChunl,HuJinson92,XingChunxia01,andFengJianhua31(ResearchInstitute2(Guangdong3(DepartmentofInformationTechnology。TsinghuaUniversity,Beijing100084)HuantianElectronicTechnologyDevelopmentCo.,Ltd.,Guangzhou510130)ofComputerScienceandTechnology,TsinghuaUniversity,Beijing100084)AbstractHUABASEiSacolumn-orientedrelationaldatabasesystem.Thethreemainfeaturesbetterqueryefficiency,fewerdiskarchitecturefordatawarehouseaccessesofcolumn—orienteddatabaseorienteddatabaseisanareandlessstorage.Column-implementedidealnatively.HUABASEsparsemultipledatacompressionmechanisms,queryoptimizationandcanindexingtotechnologies.Bysupportingbusinessintelligenceefficiently,HUABASEdecision.Keywordshelpenterprisesmakewisebusinesscolumn—orienteddatabase;businessintelligence;datawarehouse;TPC—H摘要HUABASE是基于列存储的关系型数据库系统.列存储技术的特点是数据查询效率高、读磁盘少、存储空间少,是构建数据仓库的理想架构.HUABASE实现了多种数据压缩机制、查询优化和稀疏索引技术,在支持高效率的商业智能方面具有良好的发展前景,可以帮助企业轻松做出明智的业务经营决策.关整词列数据库;商业智能;数据仓库;TPC—H中图法分类号TP311.132.3随着互联网技术的发展,企业及政府信息化的不断深入,应用的复杂性日益增强.这些需求推动着数据密集型应用向海量和智能的方向发展.同时,数据仓库和在线分析等应用迫切需要实时高效的数据处理技术.传统的基于行存储的数据库技术已经出现了技术瓶颈.如何在快速执行复杂查询的同时,还能缩小存储空间和节约成本是目前数据库技术研究的热点问题.本文介绍一种新型数据库技术及其验证系统——基于列存储的关系型数据库HUABASE.收稿日期:20lO一06~25列存储技术的特点是数据查询效率高、读磁盘少、存储空间少,这是构建数据仓库的理想架构.列数据库的应用价值来自于它对复杂查询的快速响应以及数据压缩所带来的存储优势,使其在商业智能方面具有良好的发展前景.根据Gartner2010年1月关于数据仓库的分析报告【1],列数据库与传统关系型数据库相比,在数据分析方面表现出卓越的性能,因此,列数据库技术的研究和产品开发在学术界和工业界受到广泛关注.基金项目:国家。八六三”高技术研究发展计划基金项目(2009AA012143)万方数据曾春等:HUABASE:基于列存储的关系型数据库系统列数据库的学术价值在于其独特的数据存储理念,以及基于列的存储为企业决策分析、数据仓库、商业智能这些应用领域所带来的效率和空间上的方便和优势.目前开源列数据库有C—Store,rasdaman,MonetDB等,商用列数据库有SybaseIQ,VerticaAnalyticEXASOLDatabase,ParAccelAnalyticDatabase,据,它是由表、记录等组成;另一是物理数据,它代表数据库怎样存储逻辑数据.不同的关系数据库系统或许有相同的逻辑数据,但它们通常有不同的物理数据.实现数据库物理数据的方法有2种:一是基于行存储,另一是基于列存储.对于基于行存储的实现方法,它把逻辑数据的整条记录存储到数据块中,为了提高查询速度,要为某些列建立B+树等类型的索引;对于基于列存储的实现方法,逻辑数据中的记录不直接按条映射到物理数据中,而是把记录按列分开,把所有记录相同列的值存在一起,同时提供连接数据能够把记录相应的列值重新组合起来形成记录.EXASolution等.近5年来在国际一流的数据库会议VLDB,SIGMOD,ICDE上有关这个领域的优秀论文也频频出现心。10J.1HUABASE数据库体系架构HUABASE是基于列存储的关系型数据库系如图1所示,HUABASE将记录进行分段存储,表段内数据按列排序存储,表段中列值的个数有一个上限,连接数据存储记录号与数据块序列号.数据插入时,尽管列值的位置会发生变化,只要它仍然在同一个数据块中,连接数据就不需要更新,除非由于数据块溢出导致列数据被移到新的数据块中,数据块的序列号才发生变化,连接数据可以用来把相应的列值连接起来形成一条记录.1(P001,1)统.系统基于先进的存储模型,可用来解决传统数据库中一些关键的性能问题.HUABASE非常适合于商业智能分析领域,可以辅助BI工具为企业做出有效的业务经营决策.1.1HUABASE简介关系型数据库是一个用以存储及处理结构化数据的软件系统,其数据分为2个层次:一是逻辑数lI(Pen,2)II(1.99,2)Il(P002,2)I值数据块1001(1,l001)(2,1001)I(Radio,1)l值数据块1002l(10.99,1)Il值数据块1003IDP001P002P003P004NameRadioPenTVCallleraPrice10.991.99200.99loo.99(1,l002)(1,1003)ff(2,1002)IIJ(2,1003)II连接数据块Il连接数据块¨连接数据块IIDN姗e表段II(P003,1)(1:'004,2)I值数据块2001}(1,2001)(2,2001)Il(Camera,2)iI(100.99,2)I(TV,1)I|(200.99,1)lI值数据块2002l值数据块2003r—’。—‘’———————’1|I(1,2002)ff11,2003)J(2,2002)(2,2003)lI连接数据块II连接数据块II连接数据块lIDPriCe表段2图1逻辑数据与物理数据示例图2HUABASE概况万方数据526计算机研究与发展2010,47(增刊)HUABASE非常适合于商业智能分析领域,如图2所示,HUABASE用户可以利用ETL工具从多种数据源抽取元数据然后存放到HUABASE数据库中,HUABASE可以存放和管理海量的数据并用于智能分析,比如:一个数据库最大可以支持232个表空间;一个表空间最大可以支持256个数据文件I一个数据文件最大可支持32TB数据.1.2HUABASE体系架构HUABASE数据库管理系统是一个3层架构:核心层、接口层和应用层.核心层完全基于Java实现,包括支持列存储的所有关键组件.接口层支持ODBC和JDBC标准接口.应用层支持各种数据库应用开发,HUABASE本身提供了多种基于JDBC接口的数据库管理工具.如图3所示:数据库管理工具应用层【l应用程序接口层ODBC3弋弋?7一】[数据库管理器]【命令编辑器]【命令行工具]lJDBCHUABASE核心核心层列式存储缓存策略加锁机制查询处理安全管理事务处理口志管理全文搜索图3HUABASE体系架构1.核心层组件1)列式存储.支持记录的按列存储、实现了高效的数据压缩和稀疏索引技术,可以极大地提高存储效率和查询性能.2)缓存策略.支持多种数据块缓冲机制,比如持久缓冲区、时钟缓冲区、FIF0缓冲区、LRU缓冲区.发列数据库应用.2)数据库管理器.基于Web的数据库管理器,可以从web浏览器登录,方便远程管理HUABASE数据库.根据用户角色,可以管理当前数据库的模式、表或用户等.3)命令编辑器.基于图形界面的命令编辑工具,可以方便地提交各种查询和操作命令.4)命令行工具.命令行工具支持交互模式、命令模式和批处理模式.适合管理员做各种管理和维护操作.1.33)加锁机制.数据块锁是为了保持数据块的操作一致性,支持排它锁、共享锁、增量排它锁、增量共享锁.4)查询处理.支持SQL一92和部分SQL-99标准、应用多种查询优化策略,在复杂查询上具有比基于行存储的数据库系统更优越的性能.5)安全管理.支持数据的加密存储和传送,保护用户数据的隐私和安全.6)事务处理.支持事务的原子性、一致性、隔离性和持久性.7)日志管理.支持日志的回滚和重做,确保系统数据的完整性.8)全文搜索.支持对大文本列的全文搜索方式,可以有效提高大文本的查询效率.2.接口层组件1)0DBC.支持ODBC标准接口,应用程序可以通过该接口访问HUABASE数据库.2)JDBC.支持JDBC标准接I:1,Java应用程序可以通过该接口访问HUABASE数据库.3.应用层组件1)应用程序.可以基于ODBC和JDBC接1:3开HUABASE关键技术HUABASE支持关系型数据库的核心功能,在列存储方面的关键技术包含以下3个方面:1.数据压缩技术基于行存储的关系型数据库一般只能做到对数据块的压缩.而基于列存储的HUABASE,采用了多种数据压缩机制,比如同一列中相同的值只存放一份;对于整型数据,只存放相邻列值的差.这些机制可以实现更高的数据压缩效率.列数据库按列存储并在列上进行压缩的技术,在构建大型数据仓库的时候可以表现出突出的优势,节省大量的存储空间.2.查询优化技术基于行存储的关系型数据库查询时,不能只读取部分列,所有列都必须读取到内存中然后再去掉不需要的列,这样就导致很多不必要的硬盘输入输出.而基于列存储的HUABASE,由于它把记录的列分开存储,查询引擎可以按需读取列,从而减少了万方数据曾春等:HUABASE:基于列存储的关系型数据库系统527硬盘输入输出,提高了数据库的查询性能.演示这种效果,我们将准备几个具有数百列的表进行不同的查询并观察响应时间.同时,还与基于行存储的数据库系统进行对比.3.稀疏索引效果3.稀疏索引技术基于行存储的关系型数据库一般都是稠密索引,不仅增加存储空间,也增加了数据更新时的代价.因此,为表的所有列都建立索引就不太现实,如HUABASE给表中所有需要索引的列都建立了索引,为了进行对比演示,我们将在基于行存储的数据库系统中创建相同的表但只索引部分列,然后在没建索引的列上进行查询对比.2.3果对一个未加索引的列进行查询,系统不得不作全表扫描,导致数据库的性能严重恶化.而基于列存储的HUABASE所建立的索引是稀疏索引,列值已被排序存储,索引只建立到数据块级,当查询通过索引定位到数据块后,就可以使用二分法查找,这样索引的存储空间很小,维护代价很低,可以给所有需要索引的列都建立索引,从而显著提高了数据库的查询性能.HUABASE数据库性能演示为了演示HUABASE作为列数据库的性能优势,我们采用了TPC—H(商业智能计算测试)的测试方法.TPC-H是TPC的重要测试标准之一(http:1/tpc.org/tpch),主要用来模拟真实商业应用环境.与科学计算测试不同,商业智能计算测试是对现实中商用计算需求的全面模拟.HUABASE数据库性能演示步骤如图5所示:2HUABASE数据库演示环境与步骤HUABASE数据库完全基于Java实现,所以具有无缝的多平台部署能力.可以支持不同的操作系统环境,比如:Windows或Linux环境等.2.1回答圄答回I---.---------.-.-.....---------------—--------—.........--......—.一,Jl::—---------------------------.-------------------?—-—----?-----/HUABASE数据库演示环境HUABASE数据库服务器运行的基本要求是r—————————————————————————、'●————————————————————————、测试TPc.H查询装载TPc.H数据>>>图5HUABASE数据库性能演示步骤具有Java1.6运行环境,1GB以上内存,以及10GB大小的存储空间.HUABASE安装分为服务器端和客户端部分,可以分开安装.为了演示HUABASE数据库服务器和远程客户端的连接,本文设计如图4所示的演示环境.瓣裳髓藏§{鼍{A嚣A霪嚣赣糕群鬻产瓣}差珏A嚣A霪嚣1.装载TPC~H数据HUABASE提供了多种数据库管理工具,以方便不同特点的用户使用.为了配合TPC—H测试演示,我们开发了一些方便的数据装载和查询工具.装载工具可以根据TPC-H数据模板生成要求的数据并装载到HUABASE数据库中.为了演示HUABASE在大数据量情况下的查询性能,我们准备了400万条数据,装载时间大约11GB大小.h30min,数据文件大约数糕露瓣努瓣图42.2HUABASE数据厍演不环境2.测试TPC-H查询HUABASE数据库关键技术演示TPC—H包括标准的22个查询,查询工具可以根据TPC-H查询模板生成查询语句,可以演示每个查询语句的响应时间.此外,为了与基于行存储的数据库系统进行对比,我们将选择一家行业领先的数据库厂商进行对比测试.为了演示HUABASE列存储的技术特点,我们设计了几个演示步骤来展示数据压缩的效率,查询优化和稀疏索引的效果.1.数据压缩效率HUABASE按列存储并在列上进行压缩,为了演示压缩效率,我们将准备大量具有相同列值的原始数据并装载到数据库中.可以通过对比原始数据和装载后数据文件的大小来观察数据压缩的效率.此外,还可以与基于行存储的数据库系统进行对比.3结束语本文介绍了列存储的技术优势,分析了HU越狐SE数据库的体系架构和关键技术,然后演示了HUABASE列存储的关键技术特点,最后通过对比演示TPC-H测试结果,进一步验证了HUABASE作为列数据库2.查询优化效果’HuABASE能根据当前查询按需读取列,为了万方数据528计算机研究与发展2010,47(增刊)的性能优势.下一步,我们将提高系统的可用性,实现并行查询和分布式的架构.[7-1IvanovaM,KerstenML,NesN.Self-organizing2008strategiesforacolumn—storedatabase//ProcofEDBT.NewYork:ACM.2008:157-168[83VaidyaP,LeeJ.CharacterizationofTPC-HQueriesforColumn-0rienteddatabase2008onaa致谢本论文研究得到李超老师和张勇老师的dual—coreAMDathlon帮助,谨致谢意!参考文献[9]processor/Procof2008:1411-1412ACMCIKM.NewYork:ACM?BonczwallinPA,KerstenML,ManegoldS.BreakingthememorymonetDB.CommunicationsoftheACM。2008,51[13FeinbergD,BeyerMA.Magicquadrantfor(12):77—85datawarehousedatabasemanagementsystems.[2010—06一013.http:/www.Do]BonezPA,GrustT,KeulenMV,eta1.MonetDB/XQuerytaAfastXQueryProcprocessorpoweredbyrelationalgarter.COm/DisplayDocument?id=1290514[2]AbadiDengine//of2006J,MaddenSR,HaehemN.ColumnStoresareACMSlGMoD.NewYork:ACM,2006:479—VS.490RowStores:Howdifferenttheyreally?/[Frocof2008ACMSIGMOD.NewYork:ACM,2008:967-980[3]AbadiDJ,MaddenSR,FerreirainM.曾Integrating春男,1976年生,博士,主要研究方向为数据库、compressionandexecution2006columnorienteddatabase内容管理.systems/]Proeof2006:671—682ACMsIGMOD.NewYork:ACM,胡劲松D男,1970年生,硕士,主要研究方向为列数[4]AbadiDJ,MyersaS,DewittDJ.Materialization2007ICDE.据库.strategiesincolumn-orientedDBMS//ProeofPiscataway,NJ:IEEE,2007:466—475邢春晓男,1967年生,博士,教授,主要研究方向为数据库、数字图书馆.York:[5]StonebrakerM,Abadicolumn—orientedDJ,BatkinA,eta1.C-store:A2005VLDB.NewDBMS][ProcofACM,2005:553—564冯建华男,1967年生,博士,教授,主要研究方向为数forindexingICDE.tsinghua.edu.cn).[63GeTingjian,ZdonikinaSFast.Secureeneryption据库、数据仓储和www环境下的信息处理(fengjh@column-orientedDBMS//Proeof2007Piscataway,NJ:IEEE,2007:676—685万方数据HUABASE:基于列存储的关系型数据库系统作者:作者单位:刊名:英文刊名:年,卷(期):被引用次数:曾春,胡劲松,邢春晓,冯建华曾春,邢春晓(清华大学信息技术研究院,北京,100084),胡劲松(广东环天电子技术发展有限公司,广州,510130),冯建华(清华大学计算机科学与技术系,北京,100084)计算机研究与发展JOURNALOFCOMPUTERRESEARCHANDDEVELOPMENT2010,47(z1)0次参考文献(10条)1.FeinbergD,BeyerMA.Magicquadrantfordatawarehousedatabasemanagementsystems.[2010-0601]./DisplayDocument?id=12905142.AbadiDJ,MaddenSR,HachemN.ColumnStoresvs.RowStores:Howdifferentaretheyreally?//Procof2008ACMSIGMOD.NewYork:ACM,2008:967-9803.AbadiDJ,MaddenSR,FerreiraM.Integratingcompressionandexecutionincolumnorienteddatabasesystems//Procof2006ACMSIGMOD.NewYork:ACM,2006:671-6824.AbadiDJ,MyersDS,DeWittDJ.Materializationstrategiesinacolumn-orientedDBMS//Procof2007ICDE.Piscataway,NJ:IEEE,2007:466-4755.StonebrakerM,AbadiDJ,BatkinA,etal.C-store:Acolumn-orientedDBMS//Procof2005VLDB.NewYork:ACM,2005:553-5646.GeTingjian,ZdonikSFast.Secureencryptionforindexinginacolumn-orientedDBMS//Procof2007ICDE.Piscataway,NJ:IEEE,2007:676-6857.IvanovaM,KerstenML,NesN.Self-organizingstrategiesforacolumn-storedatabase//Procof2008EDBT.NewYork:ACM,2008:157-1688.VaidyaP,LeeJ.CharacterizationofTPC-HQueriesforaColumn-Orienteddatabaseonadual-coreAMDathlonprocessor//Procof2008ACMCIKM.NewYork:ACM,2008:1411-14129.BonczPA,KerstenML,ManegoldS.BreakingthememorywallinmonetDB.Communicationsofthe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论