本指南介绍如何使用 Cassandra 键值存储。关于 CassandraByteStore 的完整功能与配置,请参阅 API 参考

Overview

Cassandra 是一款行式 NoSQL 数据库,具有高可扩展性与高可用性。

Integration details

ClassPackageLocalJS supportDownloadsVersion
CassandraByteStorelangchain-communityPyPI - DownloadsPyPI - Version

设置

CassandraByteStore 将数据存储在 Cassandra 实例中,键必须为字符串并映射到表的 row_id 列,值(字节串)映射到 body_blob 列。

安装

该集成位于 langchain-community 包。根据初始化方式,还需安装 cassiocassandra-driver
pip install -qU langchain-community
pip install -qU cassandra-driver
pip install -qU cassio
此外需创建 cassandra.cluster.Session 对象,详见 Cassandra 驱动文档,大致如下:

实例化

创建好 Session 后即可实例化存储,同时提供现有 keyspace 名称:
from cassandra.cluster import Cluster

cluster = Cluster()
session = cluster.connect()
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 配置 Session 与 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 参考
Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.