Spark九 读取和保存数据之Spark SQL的结构化数据,数据库和键值对存储

Spark SQL操作结构化和半结构化数据

读取数据 对数据源执行SQL查询,返回Row对象组成的RDD,每个Row对象是一条记录,记录访问基于下标,每个Row都有一个get()方法

1 Apache Hive 

    > Hadoop的结构化数据源

    > Spark中复制hive-site.xml,创建HiveContext对象,使用HiveQL查询表

2 JSON

    > 半结构化数据

    > 不需要hive-site.xml,先创建HiveContext对象,调用HiveContext.jsonFile方法从整个文件中获取由Row对象组成的RDD



数据库

1 JDBC

    > org.apache.spark.rdd.JdbcRDD

2 Cassandra

    > 未支持Spark SQL

    > 使用DataStax的Cassandra连接器

3 HBase

    > org.apache.hadoop.hbase.io.ImmutableBytesWritable

    > org.apache.hadoop.hbase.client.Result

4 Elasticsearch

    > Elasticsearch是开源的,基于Lucene的搜索系统

    > 使用Elasticsearch-Hadoop读写数据

    > 依赖SparkContext的配置项

猜你喜欢

转载自blog.csdn.net/weixin_42129080/article/details/80920082