【软件工程应用与实践】(11)JDchain RocksDB

【软件工程应用与实践】(11)JDchain RocksDB,第1张

【软件工程应用与实践】(11)JDchain RocksDB

2021SC@SDUSC

1.简介

KVDB是一个简单的NoSQL数据库,支持简单的“键值”读写 *** 作

KVDB包装了RocksDB作为数据库引擎,实现了单机部署和集群部署。

KVDB的集群是一个分布式的分片服务集群,每个分片节点是一个KVDB的数据库服务实例,采用对等模式部署,没有主节点。

2.分析 2.1 创建客户端连接
// `host`、`port`为服务器地址和端口,`database`为数据库名称
KVDBClient client = new KVDBClient("kvdb://:/");
# KVDBClient client = new KVDBClient(new KVDBURI("kvdb://:/"));
# KVDBClient client = new KVDBClient(new ClientConfig(host, port, db));

对于集群的连接,客户端将开启WAL,在WAL写入成功,部分服务器失败的情况下,客户端在执行后续所有 *** 作前都将根据WAL日志执行重试 *** 作,直至成功。

2.2 *** 作
boolean exists(Bytes key) throws KVDBException;
boolean[] exists(Bytes... keys) throws KVDBException;
Bytes get(Bytes key) throws KVDBException;
Bytes[] get(Bytes... keys) throws KVDBException;
boolean put(Bytes key, Bytes value) throws KVDBException;
boolean put(Bytes key, Bytes value, boolean aSync) throws KVDBException;
boolean batchBegin() throws KVDBException;
boolean batchAbort() throws KVDBException;
boolean batchCommit() throws KVDBException;
boolean batchCommit(long size) throws KVDBException;
void close();

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5684413.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存