Spark SQL 操作数据源

        Spark SQL能够通过DataFrame 和Dataset操作多种数据源执行SQL查询,并且提供了多中数据源之间的转换方式。

读取MySQL数据库:

在master节点使用MySQL客户端创建数据库、数据表以及插入数据,具体命令如下:

mysql -uroot -pPassword123$

 

 数据库和数据表创建后,如果想通过Spark SQL API方式访问MySQL数据库,需要在pom.xml配置文件中添加如下依赖:

<dependency>

            <groupId>org.apache.spark</groupId>

            <artifactId>spark-sql_2.11</artifactId>

            <version>2.3.2</version>

        </dependency

依赖添加完后,就可以编写以下代码:

package cn.itcast

import java.util.Properties

import org.apache.spark.sql.{DataFrame, SparkSession}

object DataFromMysql {
  def main(args: Array[String]): Unit = {
    //创建sparkSession对象
    val spark :SparkSession = SparkSession.builder()
      .appName("DataFromMysql")
      .master("local[2]")
      .getOrCreate()
    //创建Properties对象,设置连接MYSQL的用户名和密码
    val properties : Properties = new Properties()
    properties.setProperty("user","root")
    properties.setProperty("password","Password123$")

    //读取mysql中的数据
    val mysqlDF : DataFrame = spark.read.jdbc("jdbc:mysql://192.168.196.101:3306/spark","person",properties)

    //显示MySQL中表的数据
    mysqlDF.show()
    spark.stop()
  }
}

运行结果:

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: Spark SQL可以操作多种外部数据源,包括Hive、JDBC、JSON、Parquet、ORC等。通过Spark SQL,我们可以使用SQL语句来查询和操作这些数据源。 具体来说,我们可以通过以下步骤来操作外部数据源: 1. 创建SparkSession对象,并指定数据源类型和连接信息。 2. 使用SparkSession对象创建DataFrame或Dataset对象,这些对象可以直接使用SQL语句进行查询和操作。 3. 使用DataFrameWriter或DatasetWriter对象将数据写入外部数据源。 需要注意的是,不同的外部数据源可能需要不同的连接信息和配置参数,具体可以参考Spark官方文档或相关的第三方文档。 ### 回答2: Spark SQLSpark提供的一个模块,它提供了一种处理结构化数据的方式,类似于传统的SQL操作Spark SQL支持从多种外部数据源读取和写入数据。 Spark SQL可以通过读取外部数据源中的数据来创建DataFrame或者Dataset。外部数据源可以是各种不同的数据库,例如MySQL、PostgreSQL、Oracle等,也可以是HDFS上的文件,如CSV文件、Parquet文件、JSON文件等。Spark SQL提供了相应的API和语法来读取和解析这些数据。 读取外部数据源的方法类似于在传统的SQL中使用SELECT语句查询数据。我们可以使用Spark SQL提供的API或者直接执行SQL查询语句来读取数据。读取的结果可以转换为DataFrame或者Dataset,方便后续的处理和分析。 除了读取外部数据源Spark SQL还支持将DataFrame或者Dataset中的数据写入外部数据源。写入的方法类似于在SQL中使用INSERT语句插入数据。可以使用Spark SQL提供的API或者执行SQL语句来写入数据。Spark SQL支持将数据写入到各种数据库中,也可以将数据以不同的文件格式写入到HDFS中。 总的来说,Spark SQL提供了强大的功能来操作外部数据源。它支持多种外部数据源,可以读取和写入各种结构化数据。通过使用Spark SQL,我们可以方便地对外部数据源进行查询、分析和处理。同时,Spark SQL具有良好的性能和扩展性,可以处理大规模的数据集。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一杯彬美式

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值