mysql sql读取txt文件内容_Spark Sql读取txt文件和Mysql

本文展示了如何使用Spark SQL从MySQL数据库中读取数据,并且演示了读取本地TXT文件的方法。首先创建了一个SparkSession实例,然后通过配置连接MySQL的参数,加载了数据库中的people表。接着,读取了一个本地TXT文件并计算了行数。最后,提供了相关的POM文件配置,包含了所需的Spark和MySQL依赖。
摘要由CSDN通过智能技术生成

package spark

import org.apache.spark.SparkConf

import org.apache.spark.SparkContext

import org.apache.log4j.Logger

import org.apache.spark.sql.SparkSession

object MainSpark {

val LOG = Logger.getLogger(MainSpark.getClass.getName);

def main(args: Array[String]): Unit = {

val spark = SparkSession

.builder()

.appName("Spark SQL basic example")

.master("local")

//.config("spark.some.config.option", "some-value")

.getOrCreate()

val conf = Map("url" -> "jdbc:mysql://127.0.0.1:3306/test", "driver" -> "com.mysql.jdbc.Driver", "dbtable" -> "people", "user" -> "root", "password" -> "123456")

val peopleDF = spark.read.format("jdbc").options(conf).load()

peopleDF.show

// read text file

var file = "file:///C:\\github\\data\\spark.java"

var fileRdd = spark.sparkContext.textFile(file, 1)

var count = fileRdd.count()

LOG.info(s"#len is {$count}")

}

}

pom文件配置(加上spark-core和spark-sql):

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

houyijun.github.io

spark

0.0.1-SNAPSHOT

1.8

UTF-8

3.8.1

1.6.4

3.1

2.11.8

2.3.2

org.apache.spark

spark-core_2.11

2.2.0

provided

org.apache.spark

spark-sql_2.11

2.2.0

provided

mysql

mysql-connector-java

5.1.27

org.scala-lang

scala-library

${scala.version}

org.slf4j

slf4j-api

${slf4j-api.version}

org.slf4j

slf4j-log4j12

1.7.25

org.apache.maven.plugins

maven-compiler-plugin

3.6.1

1.7

1.7

net.alchim31.maven

scala-maven-plugin

3.2.2

org.apache.maven.plugins

maven-jar-plugin

3.0.2

true

lib/

spark.example.Main

org.apache.maven.plugins

maven-dependency-plugin

3.0.0

package

copy-dependencies

${project.build.directory}/lib

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值