开源Astro(SparkSQL On HBase)
华为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的广泛客户群,并提供强大的在线查询和分析以及在垂直企业大规模数据处理能力。 Astro的新特性使得数据修改,智能扫描系统具有强大的可操作性,类似于自定义过滤器和协处理器下推式,并让更多的传统RDBS能力可用,其查询优化算法适用于一般组织的数据集,并可以通过分布式SQL引擎进行查询。为了充分利用Spark最新的功能,包括Dataframe和外部数据源API ,华为全球团队一直持续更新项目代码并符合最新发布的Spark1.4版本。此项目吸引了众多社区贡献者参与到开发和验证中来。此外,华为团队还对Spark SQL,机器学习和Spark R贡献了很多新特性,丰富了Spark的标准库。
转载参考:http://lxw1234.com/archives/2015/07/430.htm 的文章,mark一下,下一步学习研究的参考。 Astro是继Phoenix后,SQL On HBase的又一利器。至于实际用起来怎么样,有待验证。
开源项目地址:https://github.com/Huawei-Spark/Spark-SQL-on-HBase
- 下载源码,解压
- cd Spark-SQL-on-HBase-master/
- 使用命令 mvn -DskipTests clean install 编译
- 运行需要Spark1.4.0和HBase0.98
HBase相关配置
- 每台HBase节点上配置,包括客户端,编辑hbase-site.xml
<property>
<name>hbase.coprocessor.user.region.classes</name>
<value>org.apache.spark.sql.hbase.CheckDirEndPointImpl</value>
</property>
- 将spark-sql-on-hbase的jar包添加到hbase的环境变量重启HBase集群
cp spark-sql-on-hbase-1.0.0.jar $HBASE_HOME/lib
vi hbase-env.sh
export HBASE_CLASSPATH=$HBASE_HOME/lib/spark-sql-on-hbase-1.0.0.jar:$HBASE_CLASSPATH
Spark相关配置
- 每台Spark节点上配置,包括客户端拷贝hbase-site.xml到$SPARK_HOME/conf目录
cp spark-sql-on-hbase-1.0.0.jar $SPARK_HOME/lib/
vi spark-env.sh
export SPARK_CLASSPATH=$SPARK_HOME/lib/spark-sql-on-hbase-1.0.0.jar:${SPARK_CLASSPATH}
- spark-default中配置参数:
- spark.sql.hbase.scanner.fetchsize 5000 ##该参数用于设置hbase中扫描器缓存
- spark.master spark://nn.uniclick.cloud:7077
- spark.executor.memory 2g
- spark.executor.cores 8
- 重启Spark集群
使用hbase-sql
- 进入 Spark-SQL-on-HBase-master/bin/ 目录,运行 ./hbase-sql 进入hbase-sql命令行
- hbase-sql默认读取 $SPARK_HOME/conf/spark-defaults.conf 中关于Spark的配置参数
- 先在HBase中建表:
- 在hbase-sql中使用如下语句建表:
- PRIMARY KEY指定HBase RowKey对应哪个字段
- MAPPED BY指定HBase表名,以及其他字段和HBase列的对应;
- 在hbase-sql中可以使用show tables;命令查看有哪些表
- hbase-sql会在HBase中创建一张元数据表,名为”metadata”,记录了在hbase-sql中创建的表及其元数据。
- 在hbase-sql中使用SQL查询HBase中的表:
- 其它SQL操作参见: https://github.com/Huawei-Spark/Spark-SQL-on-HBase/blob/master/doc/SparkSQLOnHBase_v2.2.docx
开源Astro(SparkSQL On HBase)的更多相关文章
- Spark(四): Spark-sql 读hbase
SparkSQL是指整合了Hive的spark-sql cli, 本质上就是通过Hive访问HBase表,具体就是通过hive-hbase-handler, 具体配置参见:Hive(五):hive与h ...
- SparkSQL读取HBase数据
这里的SparkSQL是指整合了Hive的spark-sql cli(关于SparkSQL和Hive的整合,见文章后面的参考阅读). 本质上就是通过Hive访问HBase表,具体就是通过hive-hb ...
- sparksql读写hbase
//写入hbase(hfile方式) org.apache.hadoop.hbase.client.Connection conn = null; try { SparkLog.debug(" ...
- Spark-2.3.2 Java SparkSQL的自定义HBase数据源
由于SparkSQL不支持HBase的数据源(HBase-1.1.2),网上有很多是采用Hortonworks的SHC,而SparkSQL操作HBase自定义数据源大多数都是基于Scala实现,我就自 ...
- Hbase系列文章
Hbase系列文章 HBase(一): c#访问hbase组件开发 HBase(二): c#访问HBase之股票行情Demo HBase(三): Azure HDInsigt HBase表数据导入本地 ...
- BAT等大厂已开源的70个实用工具盘点(附下载地址)
前面的一篇文章<微软.谷歌.亚马逊.Facebook等硅谷大厂91个开源软件盘点(附下载地址)>列举了国外8个互联网公司(包括微软.Google.亚马逊.IBM.Facebook.Twit ...
- Hadoop学习笔记—15.HBase框架学习(基础知识篇)
HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase是一个开源的,分布式的,多版本的,面向列的存储模型,它存储的是 ...
- HBase使用场景和成功案例 (转)
HBase 使用场景和成功案例 有时候了解软件产品的最好方法是看看它是怎么用的.它可以解决什么问题和这些解决方案如何适用于大型应用架构,能够告诉你很多.因为HBase有许多公开的产品部署,我们正好可以 ...
- HBase 使用场景和成功案例
有时候了解软件产品的最好方法是看看它是怎么用的.它可以解决什么问题和这些解决方案如何适用于大型应用架构,能够告诉你很多.因为HBase有许多公开的产品部署,我们正好可以这么做.本章节将详细介绍一些人们 ...
随机推荐
- ftell
ftell:当前位置rewind:不管文件指向哪,它都会还原指向首部 缓存区的作用:大多数情况下是好事,合并系统调用行缓冲:换行.满了.强制(标准输出)刷新全缓冲:满了.强制(默认,只要不是终端)刷新 ...
- 2--Jmeter 4.0--Excel 数据驱动 接口测试
Excel 模板 通过jmeter的csv data set config 读取 Jmeter注意事项 (1)数据驱动 1..JDBC :SQL 存储在excel中,无法将where条件对应的jmet ...
- swift3.0 自定义键盘
...绕了一大圈,又绕回原生来了,今天,学习一下swift3.0语法下的自定义键盘.效果图如下: 其实,很简单,只需要把UITextView(或者UITextField)的inputView属性设置为 ...
- 解决Python2.7的UnicodeEncodeError: ‘ascii’ codec can’t encode异常错误
更改 sys.defaultencoding 为文件的编码方式 #! /usr/bin/env python # -*- coding: utf-8 -*- import sys reload ...
- [LeetCode&Python] Problem 762. Prime Number of Set Bits in Binary Representation
Given two integers L and R, find the count of numbers in the range [L, R](inclusive) having a prime ...
- 测试那些事儿—BUG
一.作为测试人员,你应该这样报BUG: 不要对程序员说,你的代码有BUG. 他的第一反应是:1.你的环境有问题吧:2.你踏马到底会不会用? 如果你委婉的说:你这个程序和预期的不一样,你看看是不是我的方 ...
- 给电脑换源 npm 国内镜像 cnpm
(1)通过 config 配置指向国内镜像源 npm config set registry http://registry.cnpmjs.org //配置指向源 npm info express ...
- 【HDOJ1598】【枚举+最小生成树】
http://acm.hdu.edu.cn/showproblem.php?pid=1598 find the most comfortable road Time Limit: 1000/1000 ...
- ELFhash
字符串哈希算法(以ELFHash详解) 更多字符串哈希算法请参考:http://blog.csdn.net/AlburtHoffman/article/details/19641123 先来了解一 ...
- IntelliJ快捷键笔记
1.查找文件:Ctrl+Shift+N 2.大小写转换:Ctrl+Shift+U 3.get/set方法快捷键:Alt+Insert 4. 查看类继承关系:Ctrl+H或者Ctrl+Shift+Alt ...