CassandraByteStore
这将帮助您开始使用 Cassandra 键值存储。有关所有 CassandraByteStore
功能和配置的详细文档,请参阅API 参考。
概述
Cassandra 是一个 NoSQL、面向行的、高度可伸缩且高可用的数据库。
集成详情
类别 | 包 | 本地 | JS 支持 | 包下载量 | 最新包版本 |
---|---|---|---|---|---|
CassandraByteStore | langchain_community | ✅ | ✅ |
设置
CassandraByteStore
是 ByteStore
的一个实现,它将数据存储在您的 Cassandra 实例中。存储键必须是字符串,并将映射到 Cassandra 表的 row_id
列。存储的 bytes
值映射到 Cassandra 表的 body_blob
列。
安装
LangChain 的 CassandraByteStore
集成位于 langchain_community
包中。根据您使用的初始化方法,您还需要安装 cassio
包或 cassandra-driver
包作为对等依赖项
%pip install -qU langchain_community
%pip install -qU cassandra-driver
%pip install -qU cassio
您还需要创建一个 cassandra.cluster.Session
对象,如 Cassandra 驱动程序文档 中所述。具体细节(例如网络设置和身份验证)可能有所不同,但可能类似于:
实例化
您首先需要创建一个 cassandra.cluster.Session
对象,如 Cassandra 驱动程序文档 中所述。具体细节(例如网络设置和身份验证)可能有所不同,但可能类似于:
from cassandra.cluster import Cluster
cluster = Cluster()
session = cluster.connect()
然后您可以创建您的存储!您还需要提供 Cassandra 实例中现有 keyspace 的名称
from langchain_community.storage import CassandraByteStore
kv_store = CassandraByteStore(
table="my_store",
session=session,
keyspace="<YOUR KEYSPACE>",
)
使用
您可以使用 mset
方法像这样设置键下的数据
kv_store.mset(
[
["key1", b"value1"],
["key2", b"value2"],
]
)
kv_store.mget(
[
"key1",
"key2",
]
)
您可以使用 mdelete
方法删除数据
kv_store.mdelete(
[
"key1",
"key2",
]
)
kv_store.mget(
[
"key1",
"key2",
]
)
使用 cassio
初始化
也可以使用 cassio
来配置会话和 keyspace。
import cassio
cassio.init(contact_points="127.0.0.1", keyspace="<YOUR KEYSPACE>")
store = CassandraByteStore(
table="my_store",
)
store.mset([("k1", b"v1"), ("k2", b"v2")])
print(store.mget(["k1", "k2"]))
API 参考
有关所有 CassandraByteStore
功能和配置的详细文档,请参阅 API 参考: https://python.langchain.ac.cn/api_reference/community/storage/langchain_community.storage.cassandra.CassandraByteStore.html
相关
- 键值存储 概念指南