【spark】连接habse数据库

本文档介绍了如何启动Hadoop和HBase,创建HBase测试库,以及配置Spark进行连接。在Spark中,需要将HBase的相关jar包拷贝到Spark的lib目录下,并特别指出在Spark 2.0版本上需要额外下载转换HBase数据为Python可读的jar包。

1.启动hadoop,hbase

start-all.sh
start-hbase.sh
# 确认启动成功
jps

应该会看到下面这些进程

2375 SecondaryNameNode
2169 DataNode
2667 NodeManager
2972 Jps
2045 NameNode
2541 ResourceManager

2.创建hbase测试库

hbase shell
create 'student','info'
//首先录入student表的第一个学生记录
put 'student','1','info:name','Xueqian'
put 'student','1','info:gender','
Spark连接MySQL数据库有多种方法,以下为具体介绍: ### 方式一:使用`SparkSession`和`jdbc`方法 在Scala代码中可通过`SparkSession`和`jdbc`方法连接MySQL数据库。示例代码如下: ```scala def main(args: Array[String]): Unit = { val spark: SparkSession = SparkSession.builder().master("local").appName("createdataframefrommysql") .config("spark.sql.shuffle.partitions", 1).getOrCreate() val properties = new Properties() properties.setProperty("user","root") properties.setProperty("password","123") val person: DataFrame = spark.read.jdbc("jdbc:mysql://192.168.126.111:3306/spark","person",properties) person.show() spark.read.jdbc("jdbc:mysql://192.168.126.111:3306/spark","(select person.id,person.name,person.age,score.score from person,score where person.id = score.id) T",properties).show() } ``` 此代码创建了一个`SparkSession`,设置了数据库连接的用户名和密码,然后使用`jdbc`方法读取MySQL数据库中的和自定义查询结果,并展示数据[^1]。 ### 方式二:配置依赖包 在使用Spark连接MySQL前,需要将MySQL的依赖包添加到Spark的运行环境中。可在Hive的`lib`目录下拷贝MySQL依赖包到Spark的`jars`目录下,命令如下: ```bash cp /opt/soft/hive110/lib/mysql-connector-java-5.1.38.jar /opt/soft/spark240/jars/ ``` 或者直接把驱动包复制到`jars`目录下,以确保Spark能找到所需的驱动程序[^2]。 ### 方式三:在`spark-shell`中指定依赖 在使用`spark-shell`时,可以通过`--jars`和`--driver-class-path`参数指定MySQL驱动包的路径,命令如下: ```bash ./bin/spark-shell \ --jars /usr/local/spark/jars/mysql-connector-java-8.0.20.jar \ --driver-class-path /usr/local/spark/jars/mysql-connector-java-8.0.20.jar ``` 这样在`spark-shell`中就可以使用Spark连接MySQL数据库了[^3]。 ### 方式四:配置数据库连接信息 可以在配置文件中设置数据库连接信息,示例如下: ```properties db.url="jdbc:mysql://hdp-01:3306/test?characterEncoding=utf-8" db.driver="com.mysql.jdbc.Driver" db.user="root" db.password="123456" ``` 将这些配置信息加载到程序中,用于建立与MySQL数据库连接[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值