>>分享SPSS,Hadoop等大数据处理技术,以及分布式架构以及集群系统的构建 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 25269 个阅读者 刷新本主题
 * 贴子主题:  spark读取redis数据(交互式,scala单机版,java单机版) 回复文章 点赞(0)  收藏  
作者:Jacky    发表时间:2020-03-21 15:15:42     消息  查看  搜索  好友  邮件  复制  引用

                                                                                                

spark读取redis数据(交互式,scala单机版,java单机版)

  • 交互式
第一步:向redis中添加数据

点击在新窗口中浏览原图
CTRL+鼠标滚轮放大或缩小

第二步:将jedis jar包放入~/lib目录下,开启spark服务

点击在新窗口中浏览原图
CTRL+鼠标滚轮放大或缩小

第三步:通过spark-shell读取redis数据,并做相应处理

点击在新窗口中浏览原图
CTRL+鼠标滚轮放大或缩小    
  • scala单机版
package  com .test

import org .apache .spark .SparkConf
import org .apache .spark .SparkContext

import redis .clients .jedis .Jedis

object RedisClient {
  def main(args: Array[String]) {

    val conf = new SparkConf()
    conf .setAppName( "wow,my first spark app")
    conf .setMaster( "local")
    val sc = new SparkContext(conf)
    var jd = new Jedis( "172.171.51.154",  6379)
    var str = jd .get( "chengshi")
    var strList = str .split( ",")
    val a = sc .parallelize(strList,  3)
    val b = a .keyBy(_ .length)
    b .collect() .foreach(s => println(s._1 +  ":" + s._2))

    sc .stop()
  }

}

     输出结果

点击在新窗口中浏览原图
CTRL+鼠标滚轮放大或缩小    
  • java单机版
package  com .dt .spark .SparkApps .cores ;

import java .io .FileNotFoundException ;
import java .io .IOException ;
import java .util .Arrays ;

import org .apache .spark .SparkConf ;
import org .apache .spark .api .java .JavaPairRDD ;
import org .apache .spark .api .java .JavaRDD ;
import org .apache .spark .api .java .JavaSparkContext ;
import org .apache .spark .api .java .function .PairFunction ;
import org .apache .spark .api .java .function .VoidFunction ;

import redis .clients .jedis .Jedis ;
import scala .Tuple2 ;

public class Redis {

    public static void main(String[] args) throws FileNotFoundException, IOException {

        SparkConf conf = new SparkConf() .setAppName( "Spark Read From Redis written by Java") .setMaster( "local") ;
        JavaSparkContext sc = new JavaSparkContext(conf) ;
        Jedis jedis = new Jedis( "172.171.51.154",  6379) ;

        String s = jedis .get( "chengshi") ;
        String[] strList = s .split( ",") ;

        JavaRDD<String> ch = sc .parallelize(Arrays .asList(strList),  4) ;

        JavaPairRDD<String, Integer> jp = ch .mapToPair(new PairFunction<String, String, Integer>() {

            public Tuple2<String, Integer>  call(String word) throws Exception {
                return new Tuple2<String, Integer>(word, word .length()) ;
            }
        }) ;
        jp .foreach(new VoidFunction<Tuple2<String, Integer>>() {

            public void  call(Tuple2<String, Integer> pairs) throws Exception {
                System .out .println(pairs._1() +  ":" + pairs._2()) ;
            }
        }) ;
        sc .close() ;

    }
}

     输出结果

点击在新窗口中浏览原图
CTRL+鼠标滚轮放大或缩小
                                    
                                                                    
----------------------------
原文链接:https://blog.csdn.net/sundujing/article/details/51480085

程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 flybird 在 2020-03-21 15:15:42 重新编辑]
  Java面向对象编程-->集合(上)
  JavaWeb开发-->Web运作原理(Ⅱ)
  JSP与Hibernate开发-->映射一对多关联关系
  Java网络编程-->RMI框架
  精通Spring-->计算属性和数据监听
  Vue3开发-->Vue CLI脚手架工具
  springboot的缓存技术
  推荐系统的设计
  基于spark-streaming实时推荐系统
  glusterfs 7 分布式存储 目前最新版实战详解
  MapReduce实现自定义排序功能
  Hadoop 之 HDFS
  Spark SQL常见4种数据源(详细)
  Hadoop、Spark、HBase与Redis的适用性讨论(全文)-数据视野
  Spark On YARN 环境搭建
  最常用的四种大数据分析方法
  大数据采集、清洗、处理:使用MapReduce进行离线数据分析完整...
  Hadoop的简单单词统计案例
  用Maven构建Hadoop项目
  数据仓库的两种建模方法
  Hadoop生态系统介绍
  更多...
 IPIP: 已设置保密
楼主      
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。