spark通过maven操作redis

一、maven环境下添加操作redis的jar包及源码包

1、下载jar包 redis的jar包下载地址(需要翻墙)

2、手动把jar包添加到maven库中,参考方法如下:

maven手动把本地jar安装到本地仓库(windows\ mac)

是自己编写的一个jar文件,每次添加单个jar到maven本地仓库的操作如下:

1)建立一个新的文件夹,将jar文件存放在该文件夹下。注意文件夹路径为英文名且最好只存放该文件。

2)在该文件夹下建立一个pom.xml文件,在pom文件中定义其maven坐标。

3)在windows cmd窗口中执行以下命令: 

mvn install:install-file -Dfile= -DgroupId= -DartifactId= -Dversion= -Dpackaging=

例如:

mvn install:install-file  -Dfile=D:/jar/xxx.jar  -DgroupId=xxx.xxx  -DartifactId=xxx -Dversion=x.x -Dpackaging=jar

4)举个mac os环境下的例子,后面的参数具体根据情况需要进行添加

示例:mvn install:install-file -Dfile=/Users/softwareAndRoad/softwaredata/data/myself/jar/spark-redis-2.3.0.jar -DgroupId=RedisLabs -DartifactId=spark-redis -Dversion=2.3.0 -Dpackaging=jar

5)idea中添加spark-redis源码

下载redis的源码包zip包,按如下步骤进行添加

步骤一:在idea的项目中选中左上角的File--->Project Structure

步骤二、选择spark-redis-2.3.0-source.zip源码包

步骤三:点击ok

3、maven库中添加依赖

      RedisLabs

      spark-redis

      2.3.0

   

二、spark读取redis操作示例

4、操作redis

1)读取

import com.redislabs.provider.redis._

import org.apache.spark.{SparkConf, SparkContext}

import org.apache.spark.rdd.RDD

object RedisRead {

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

    var conf: SparkConf = new SparkConf().setAppName("RedisRead")

    conf.set("redis.host","redis地址")

    conf.set("redis.port","redis端口号")//端口好,默认为6379

    conf.set("redis.auth","redis密码")  //用户权限配置

    val sc = new SparkContext(conf)

    val redisKeys: RDD[(String, String)] = sc.fromRedisKV("TEST_K_V")//TEST_K_V为redis中已存在的String类型的key

    println("总个数:"+redisKeys.count())

    redisKeys.foreach(map=>{

      println(map.toString())

    })

    sc.stop()

  }

}

三、打成jar包

5、打包需要的jar包

commons-pool2-2.4.2.jar/

jedis-2.9.0.jar/

spark-core_2.11-2.3.1.jar/

spark-redis-2.3.0.jar/

项目名称的jar包

四、提交到集群并查看结果

6、提交到集群

spark-submit --master yarn --driver-memory 2g --executor-memory 4g  --executor-cores 4 --num-executors 3  --conf spark.sqluffle.partitions=40 --class com.test.opRedis.RedisRead  Redis.jar

7、查看结果

你可能感兴趣的:(spark通过maven操作redis)