Wednesday 18 June 2014

Apache Spark vs SAP的一点看法


Apache Spark和SAP都位于应用层。前者更多应用于分析,适合OLAP的引擎。传统上后者的应用服务器面对企业业务交易,更多面向OLTP。

前者目前的功能和后者的HANA更相似。HANA的XS 扩展模块试图在新的应用平台上重新打造其传统的应用服务器。

前者和Hive的结合将来有可能和HANA加上XS扩展模块在功能定位上重合。即Spark也成为一个支持高并发的OLTP引擎。但目前Hive还不支持数据库原子操作等关键特性。

前者的SQL操作并非是操作存储层面的数据库,而是内存数据结构,这和HANA的内存数据库观念非常类似。

前者的RDD和SAP的数据字典很相像。这是并行操作的关键数据结构,能够确保不同服务器之间的数据一致性,服务器和存储层面的数据一致性。

SAP的传统应用服务器的所谓集群并无使用统一寻址多并发服务器内存空间的能力,也不能将大型数据结构分布到多并发服务器,只能在数据库或协议层访问共享数据。

考虑到SAP的悠久历史,其数据字典定义和传统服务器的集群已经是了不起的成就。不过还是对Apache Spark的构架表示佩服,尤其是其RDD数据结构的设计和采用。

我从事SAP咨询工作多年,也有点担心自己的饭碗。也许,如果国内如火如荼的去OIE一样,开源软件未来也会替换SAP?历史的脚步会是怎么样的呢?

No comments: