Issue,迭代交叉KV(NoSql/Redis)Target

我也想在 MLRun 中迭代交叉 KV(NoSql,Redis)目标而不指定主键,但我看到只能根据特定键获取特定 KV 项。我必须只使用独特的物品,而不是重复的物品。

我选择 NoSql/Redis Target 是因为内存中的键操作对于快速响应(基于特定键)至关重要,但有时我必须遍历整个键集合(这就是这个问题的情况)。

你可以看到我根据键获取值的部分代码:

import mlrun 
    import mlrun.feature_store     as fs
...

svc=fs.get_online_feature_service(fs.FeatureVector("myVector", ["client.*"]))
resp = svc.    get([{"cuid": 1926, "key1": 100023}])

你知道吗,如何在 MLRun(版本 1.2.1)中迭代 KV(NoSql、Redis)目标中的交叉项?

python
redis
2023-04-24 14:45:14
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
花鸟吹雪

我正在使用这些解决方案进行迭代交叉 KV:

1。 NoSqlTarget

通过 v3io 进行迭代(它不是 MLRun API 的纯粹部分,而是 MLRun 分发包的一部分)。有关 v3io python SDK 的更多信息 ​​see​​ 和迭代交叉 KV 项(游标用法)​​see sample​

import v3io.dataplane

v3io_client = v3io.dataplane.Client(endpoint='https://v3io-webapi:8081', access_key='some_access_key')

# create a query, and use an items cursor to iterate the results
items_cursor = v3io_client.kv.new_cursor(container='users',
                                         table_path='/user-profile',
                                         attribute_names=['income'],
                                         filter_expression='income > 150')

# print the output    for item     in items_cursor.all():
    print(item)

2。 RedisTarget

您可以使用简单的迭代交叉 KV 项,它是 Redis API 的一部分

import redis

r = redis.StrictRedis(host='localhost', port=6379, db=0)
    for key in r.keys('*'):
    r.delete(key)

顺便说一句:也可以通过

redis-cli

使用命令行

分享
微博
QQ
微信
回复
2023-04-24 16:54:07
相关问题
NoSQL的MongoDB有哪些优点?
2254浏览 • 1回复 待解决
Host AOT和Target AOT是指什么
124浏览 • 1回复 待解决
docker 创建 redis 容器
758浏览 • 1回复 待解决
Redis INCR 原子性问题
1856浏览 • 1回复 待解决
Docker 怎么安装Redis啊?
1452浏览 • 1回复 待解决
Linux如何启动Redis Server?
1423浏览 • 1回复 待解决
python 如何安装 redis 模块?
1762浏览 • 1回复 待解决
redis 内存满了怎么办?
1928浏览 • 2回复 待解决
Redis多久通过slave进行复制?
543浏览 • 1回复 待解决
redis单线程怎么理解?
587浏览 • 1回复 待解决
redis中Hash操作是什么?
1118浏览 • 1回复 待解决
超时键上的 Redis 命令
909浏览 • 1回复 待解决
redis config 持久化怎么设置?
1913浏览 • 1回复 待解决