Astro HBase 的 Spark SQL 项目简介
华为2015年7月20日在O'Reilly Open Source Convention (OSCON) 上宣布Spark SQL on HBase package正式开源。Spark SQL on HBase package 项目又名 Astro,端到端整合了 Spark,Spark SQL和HBase的能力,有助于推动帮助Spark进入NoSQL的广泛客户群,并提供强大的在线查询和分析以及在垂直企业大规模数据处理能力。Apache HBase 是数据在 HDFS 上的 Key-Value 存储。它用来给 Google 的 Big Table 建模,并提供了 API 用于查询数据。这些数据通过它的“row keys”来组织、区分和发布。在每个分区上,数据被指定的“列”数据集合“列族”物理分区。这些数据模型是宽且零散的,在这些表中列是动态的,零散的。尽管 HBase 是非常有用的大数据存储,但是它的访问机制非常原始,只能通过客户端的 API,Map/Reduce 接口和交互的 shell。SQL 访问 HBase 数据可通过 Map/Reduce 或者接口机制,如 Apache Hive 和 Impala,或者一些“本地的” SQL 技术,如 Apache Phoenix。前者实现和使用起来通常比较便宜,它们的延迟和效率通常不如后者,并且只适用于离线分析。后者,与之相反,通常执行得更好,并且限定多个作为联机引擎。它们通常在特定的执行引擎的顶层。当前的 Astro 1.0 依赖于 Spark 1.4.0,HBase 0.98构建方法(要求 Maven):$ git clone https://github.com/HuaweiBigData/astro
$ cd astro
$ mvn -DskipTests clean install
$ mvn clean install
$mvn -Phbase,hadoop-2.4 test #运行测试
$ cd astro
$ mvn -DskipTests clean install
$ mvn clean install
$mvn -Phbase,hadoop-2.4 test #运行测试