JAVA、Spark、Python连接Redis

前面已经详细的和大家说过Redis,接下来就和大家说下Redis和其它得集成,以及如何操作Redis:
首先说下Java时如何操作redis:

JAVA连接Redis

我们还是使用IDEA来执行下,先创建maven就不必多说,先导redis的依赖包到pom.xml中

<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>2.9.0</version>
</dependency>
import redis.clients.jedis.Jedis;

Jedis jedis = new Jedis("192.168.5.150");
#如果 Redis 服务设置来密码,需要下面这行,没有就不需要
// jedis.auth("1234"); 
//查看服务是否运行
System.out.println("服务正在运行: "+jedis.ping());

#设置键值对
jedis.set("lyx","sleep");
#通过键获取 值
System.out.println(jedis.get("lyx"));
#添加值
jedis.lpush("xxx","zhangsan","lisi","xixi","jaha");

// 获取数据并输出
Set<String> keys = jedis.keys("*"); 
Iterator<String> it=keys.iterator() ;   
while(it.hasNext()){
	String key = it.next(); 
	System.out.println(key);
	
}

使用其它命令直接jedis.方法就可以了。

Sparkl连接Redis

一样先导依赖

<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-core_2.11</artifactId>
    <version>2.3.4</version>
</dependency>

<dependency>
    <groupId>com.redislabs</groupId>
    <artifactId>spark-redis</artifactId>
    <version>2.3.1</version>
</dependency>

<dependency>
     <groupId>org.apache.spark</groupId>
     <artifactId>spark-sql_2.11</artifactId>
     <version>2.3.4</version>
</dependency>

<dependency>
     <groupId>org.apache.spark</groupId>
     <artifactId>spark-streaming_2.11</artifactId>
     <version>2.3.4</version>
</dependency>
import com.redislabs.provider.redis._

 val conf = new SparkConf().setAppName("redis1").setMaster("local[2]")
      .set("spark.redis.host","192.168.5.150") #自己主机ip
 val sc = new SparkContext(conf)
 val res= sc.fromRedisList("xxx")  #键名称
 res.foreach(x=>println(x))

#或者
val spark = SparkSession.builder().appName("ttt").master("local").getOrCreate()
val jedis = new Jedis("192.168.56.100")
val dd = jedis.lrange("xxx",0,10)
val rdd = spark.sparkContext.parallelize(dd.toArray.toSeq)
rdd.foreach(x=>println(x))

Python 连接Redis

我们使用Pycharm来执行操作:
先下载redis包 ,如何下载包在这里就不过多赘述了!

import redis

if __name__ == '__main__':
	handler = redis.Redis(host='192.168.5.150',port=6379,decode_responses=True)
	print(handler.get("xxx"))
	#或者
	print(handler.lrange('xxx',0,10))

猜你喜欢

转载自blog.csdn.net/zp17834994071/article/details/108310036
今日推荐