经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 数据库/运维 » Spark » 查看文章
数据源
来源:cnblogs  作者:BBBone  时间:2019/4/26 8:33:30  对本文有异议

数据源之json

  1. val jsonPath = ""
  2. spark.read.json(jsonPath) //方式一
  3. spark.read.format("json").load(jsonPath) //方式二

数据源之parquet

  1. val parqPath = ""
  2. spark.read.parquet(parqPath) //方式一
  3. spark.read.format("parquet").load(parqPath) //方式二

数据源之Mysql

准备工作:

pom.xml

  1. <dependency>
  2. <groupId>mysql</groupId>
  3. <artifactId>mysql-connector-java</artifactId>
  4. <version>5.1.38</version>
  5. </dependency>

测试代码: TestMysql.scala

  1. // 提前 pom.xml中导入Mysql Driver(驱动)依赖
  2. // 设置url,table,properties
  3. val url = "jdbc:mysql://localhost:3306/interview"
  4. val table = "items"
  5. val properties = new Properties()
  6. properties.setProperty("user","root")
  7. properties.setProperty("password","root")
  8. // 直接使用SparkSession中的jdbc方法
  9. val df = spark.read.jdbc(url,table,properties)
  10. df.createOrReplaceTempView("items")
  11. spark.sql("select * from items").show()
  12. }

数据源之Hive

准备工作

(1)pom.xml

  1. <dependency>
  2. <groupId>mysql</groupId>
  3. <artifactId>mysql-connector-java</artifactId>
  4. <version>5.1.38</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>org.apache.spark</groupId>
  8. <artifactId>spark-hive_2.11</artifactId>
  9. <version>${spark.version}</version>
  10. </dependency>

(2) 开发环境则把resource文件夹下添加hive-site.xml文件,集群环境把hive的配置文件要发到$SPARK_HOME/conf目录下

屏幕快照 2019-04-18 01.29.03?

hive-site.xml

  1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
  3. <configuration>
  4. <property>
  5. <name>javax.jdo.option.ConnectionURL</name>
  6. <value>jdbc:mysql://Master:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false</value>
  7. <description>JDBC connect string for a JDBC metastore</description>
  8. </property>
  9. <property>
  10. <name>javax.jdo.option.ConnectionDriverName</name>
  11. <value>com.mysql.jdbc.Driver</value>
  12. <description>Driver class name for a JDBC metastore</description>
  13. </property>
  14. <property>
  15. <name>javax.jdo.option.ConnectionUserName</name>
  16. <value>root</value>
  17. <description>username to use against metastore database</description>
  18. </property>
  19. <property>
  20. <name>javax.jdo.option.ConnectionPassword</name>
  21. <value>root</value>
  22. <description>password to use against metastore database</description>
  23. </property>
  24. <property>
  25. <name>hive.metastore.warehouse.dir</name>
  26. <value>/hive/warehouse</value>
  27. <description>hive default warehouse, if nessecory, change it</description>
  28. </property>
  29. </configuration>

测试代码: TestHive.scala

  1. package com.bky.TestHive
  2. import org.apache.spark.sql.SparkSession
  3. object TestHive extends App {
  4. val spark = SparkSession
  5. .builder()
  6. .appName(this.getClass.getSimpleName)
  7. .master("local[2]")
  8. .getOrCreate()
  9. spark.sql("select * from student_ext").show()
  10. }

原文链接:http://www.cnblogs.com/suixingc/p/shu-ju-yuan.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号