通过Spark简单的操作Hive表

1.进入Spark的客户端

sh spark-shell --master "spark://master:7077"

2.数据源的连接

spark提供了操作hive\jdbc\json\hbase的接口sqlContext可以直接使用

>1.连接hive   

sqlContext.sql("use database")  // 操作hive数据仓库时直接用sqlContext跟SQL操作一样

》2.连接jdbc

val jdbcSql = sqlContext.jdbc("jdbc:mysql://localhost/comments", "user")

》3.加载json数据

sqlContext.load("s3n://path/to/data.json", "json")

》4.直接加载hdfs中的数据

sqlContext.load("hdfs://path/to/data.parquet", "parquet")

3.数据的操作及数据的存储

》1.hive库中数据的操作和内部表数据的存储

sqlContext.sql("use database");

val tables = sqlContex.sql("shwo tables")

//保存数据  >>1.write.mode(org.apache.spark.sql.SaveMode.Append)指定存储的方式

 》》》1.Append 表存在直接存储数据,不存在创建

》》》2.Overwrite 将数据清空重新加载数据

》》》3.Ignore 直接跳过数据进行数据存储,创建表

tables.write.mode(org.apache.spark.sql.SaveMode.Append).saveAsTable(tableName="tableName")

》2.hdfs数据的保存

tables.write.mode(org.apache.spark.sql.SaveMode.Append).save(path="hdfs://path/to/data.parquet",source="parquet")

》3.json数据格式的存储

tables.write.mode(org.apache.spark.sql.SaveMode.Append).save(path="s3n://path/to/data.json", source="json")








你可能感兴趣的:(spark)