《《极客头条》精选:google曝光了近实时数据仓库系统mesa》由会员分享,可在线阅读,更多相关《《极客头条》精选:google曝光了近实时数据仓库系统mesa(4页珍藏版)》请在金锄头文库上搜索。
1、极客头条精选:Google曝光了近实时数据仓库系统Mesa2014-08-09刘江CSDN9月在杭州举行的数据库学术会议VLDB 2014上,Google的工程副总Shivakumar Venkataraman与正在Google访问的UCSB教授、IEEE与ACM Fellow Divyakant Agrawal将做主题演讲,介绍Google的实时分析数据仓库Mesa。在先期公开的论文“Mesa:Geo-Replicated, NearReal-Time, ScalableData Warehousing”(免梯子版本)中这样描述Mesa的开发初衷和特点:Mesa是一个高度可扩展的分析型数据仓
2、库系统,用于存储Google互联网广告业务相关的关键衡量数据。Mesa的设计目的是满足一系列复杂而有挑战性的用户与系统需求,包括近实时的数据获取和查询、高可用性、可靠性、容错和(大规模数据与查询量的)可扩展性。Mesa可以应对P级数据,每秒处理数百万行更新,每天抓取数万亿行以支持数十亿查询。Mesa是跨多个数据中心异地复制的,即使整个数据中心故障,仍然能够以较低延迟返回一致和可重复的查询结果。针对数分钟更新吞吐量、跨数据中心等等严苛需求,已有的商业数据仓库系统(处理周期往往以天和周来计算)和Google的解决方案包括BigTable、Megastore、Spanner和F1都无法满足要求。Bi
3、gTable无法提供必要的原子性,Megastore、Spanner和F1无法满足峰值更新需求。此外,Google自己开发的Tenzing、Dremel,以及Twitter开发的Scribe、LinkedIn的Avatara、Facebook的Hive以及HadoopDB等Web规模数据仓库处理的都是批量负载。论文中提到比较类似Mega的系统是Stonebreaker等开发、已被HP收购的Vertica,但缺乏跨数据中心的功能。Bill Graham在2012年Hadoop Summit的演讲中提到过,Twitter的数据分析系统在用Vertica:他还比较了Vertica与Hadoop的优劣
4、:从Vertica的用户列表来看,Zynga、Funzio、TinyCo等许多游戏公司,Etsy等互联网新贵也是Vertica用户。之前极客头条推过,Facebook也在用Vertica。其他相关工作中,Thrifty针对的数据量较小,且应用于多租户场景;Shark是内存计算;MaSM利用了闪存。Mesa基于BigTable(元数据存储)和Colossus(数据文件),底层也用到了MapReduce(谁说Google好几年前就不用MR了?),所用的分布式同步协议基于Paxos。controller/worker框架的架构如下:查询处理框架:多数据中心的更新处理架构:GigaOM的报道中提及,Hadoop社区的Doug Cutting等都在密切关注Google的新动向,Mesa如果有高质量的开源版本,也将非常受欢迎。当然,Google也很有可能像BigQuery之于Dremel、Dataflow之于MillWheel那样,在云中提供Mesa类似功能。毕竟,Mesa的论文中也强调了,虽然是为Google数百亿美元的广告业务服务的,但Mesa是一个通用数据仓库解决方案。