我正在尝试使用 pyspark 从 Redis 读取特定密钥。根据文档,我没有找到任何特定的命令来读取特定的密钥。使用下面的代码,我可以从 Redis 读取所有数据:
testid = spark.read.format("org.apache.spark.sql.redis")\
.option("table",'testing123')\
.option("key.column","id")\
.load()
请建议
我正在尝试使用 pyspark 从 Redis 读取特定密钥。根据文档,我没有找到任何特定的命令来读取特定的密钥。使用下面的代码,我可以从 Redis 读取所有数据:
testid = spark.read.format("org.apache.spark.sql.redis")\
.option("table",'testing123')\
.option("key.column","id")\
.load()
请建议
你可以试试keys.pattern
。从文档:
要阅读 Redis 哈希,您必须提供带有
.option("keys.pattern", keysPattern)
选项的键模式。DataFrame 模式应该明确指定,或者可以从随机行中推断出来。[...] Spark-Redis 尝试根据密钥模式提取密钥:
- 如果模式以它结尾
*
并且它是唯一的通配符,则将提取尾随子字符串- 否则没有提取 - 密钥保持原样。
testid = spark.read.format("org.apache.spark.sql.redis") \
.option("keys.pattern", "keyPattern:*") \
.option("key.column","id") \
.option("infer.schema", "true") \
.load()