Spark Streaming实现词频计算将结果保存到Mysql数据库(scala)实例。
1)建立Mysql连接池(MysqlPool.scala)
package com.fyy.spark.streaming
import java.sql.{Connection, DriverManager}
import java.util
/**
* @Title: MysqlPool
* @ProjectName SparkStreamingProject
* @Description: 创建MySQL连接池
* @author fanyanyan
*/
object MysqlPool {
private val max = 8 //连接池的连接总数
private val connectionNum = 10 //每次产生的连接数
private var conNum = 0 //当前连接池已经产生的连接数
private val pool = new util.LinkedList[Connection]() //连接池
{
Class.forName("com.mysql.jdbc.Driver")
}
/**
* 释放连接
* @param conn
*/
def closeConnect(conn: Connection) = {
pool.push(conn)
}
/**
* 获取连接
*/
def getConnect(): Connection = {
//同步代码块
AnyRef.synchronized({
if(pool.isEmpty){
for(i <- 1 to connectionNum){
val conn = DriverManager.getConnection("jdbc:mysql://01.server.bd:3306/streaming","root","123456")
pool.push(con

本文介绍如何使用Scala和Spark Streaming进行词频计算,并将结果存储到Mysql数据库。首先创建Mysql连接池,然后在ForeachRDDApp中实现具体的统计和保存操作。
&spm=1001.2101.3001.5002&articleId=88420285&d=1&t=3&u=68ab9033e8d64283890e141107ea4a07)
339

被折叠的 条评论
为什么被折叠?



