返回 登录
0

Apache Spark在SnappyData支持即时SQL分析

2016年5月13日-15日,由CSDN重磅打造的2016中国云计算技术大会(CCTC 2016)将于5月13日-15日在北京举办,今年大会特设“中国Spark技术峰会”、“Container技术峰会”、“OpenStack技术峰会”、“大数据核心技术与应用实战峰会”四大技术主题峰会,以及“云计算核心技术架构”、“云计算平台构建与实践”等专场技术论坛。大会讲师阵容囊括Intel、微软、IBM、AWS、Hortonworks、Databricks、Elastic、百度、阿里、腾讯、华为、乐视、京东、小米、微博、迅雷、国家电网、中国移动、长安汽车、广发证券、民生银行、国家超级计算广州中心等60+顶级技术讲师,CCTC必将是中国云计算技术开发者的顶级盛会。详情访问CCTC 2016官网。

Pivotal’s GemFire的基于内存数据存储团队最近发布了一种新的数据库解决方案,叫做SnappyData,基于GemFire 和 Apache Spark。

SnappyData是最近又出现的一个使用Spark作为组件的数据库解决方案。这种使用Spark的方案中,有一些使用了Apache Hadoop的技术。SnappyData的查询可以使用传统的SQL语句,或者使用Spark的查询,这样原来的工作可以兼容SnappyData,也可以使用两种方式同时工作。

Snap和Spark

SnappyData是这个新数据库的名字,同时也是这个组织的名字,跨越了两个领域。它使用了Apache Spark的内存数据分析引擎,所以可以在静态数据和流数据中实时分析SQL。

在存储和取回数据方面,SnappyData使用了一个分布式的数据存储,叫做Snappy-Store,起源于GemFire的技术。它要么使用自己的数据存储,要么使用一种异步的回写式高速缓冲存储器连接另一个数据库,比如Hadoop或者HDFS。这意味着,原来的数据可以直接使用SnappyData,而不需要一些正式的数据迁移操作。

SnappyData也尝试对流数据的问题提供一些新奇的解决方案。比如,如果有个查询返回的结果太多,可能导致不能及时地反回结果。SnappyData使用近似查询结果(approximate query processing,AQP)或者从结果中抽样的方式来生成结果。

这种方式返回的结果,相比与在所有数据上操作并不准确,而且AQP并不能适用于所有查询。但是,AQP查询对CPU和内存的要求更低,速度更快。

这并不是Spark第一次在数据分析方面同时覆盖OLTP和OLAP了。基于内存的数据库系统Splice Machine使用了Hadoop的组件,就同时支持OLTP和OLAP。2.0版本加入了Spark作为一个OLAP的处理引擎。

SnappyData和Splice Machine背道而驰的地方,就是使用Spark的不同。SnappyData称,他们在很多方式对Spark的流进行的扩展,比如允许流可以像表一样被查询和操作,包括连接这样的操作。

SnappyData的环境也比较适合尝试使用Apache Spark新特性。比如Spark 2.0将在今年发布,届时将重构内存管理和流系统,拉取流数据将更加简单。

原文: Apache Spark powers live SQL analytics in SnappyData
翻译:赖信涛
责编:孙思

评论