apache-spark - 使用 pyspark 从 redis 读取特定密钥
问题描述
我正在尝试使用 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()
推荐阅读
- mysql - 如何在表中具有数组字段的列上应用 mysql 连接?
- javascript - 接受连续点的电子邮件的正则表达式
- django - 如何在 django 中自定义视图?
- parquet - 如何使用 pyarrow 从镶木地板文件中获取元数据
- angular - NullInjectorError:没有 InjectionToken DEFAULT_LOCALE 的提供者
- swift - 如何通过指定 Codable 类型的子集来编码 Codable 类型?
- spring - 密钥库被篡改或密码不正确
- mysql - SQL 连接 - 限制为基表
- javascript - 相对排序数组 Javascript
- javascript - 有没有办法从网页中检索信息并使用该信息预填充另一个页面?