01 一个键值数据库应该包括什么?

下面我们展示设计一个小型的键值数据库 SimpleKV 需要考虑的范围。

一、关系型数据库存储数据转存入键值数据库

在某些应用场景中我们可以将关系型数据库存储的数据转存入键值数据库中,键值数据库其中内部的存储结构采用的是 Key-Value 的结构,而关系型数据库中则是存储类似于,人员(姓名,年龄,地址,电话,职务)这样类似的数据,就可以以人员的 ID 值作为 Key,而该人员的用户信息全部存储到一个集合中,将该集合作为 Value。这样就完成了一个存储需求。

但是键值数据库仅仅提供一些简单的操作接口,如果我们需要对全部人员的年龄计算其平均值这样的复杂的聚合函数,键值数据库是无法做到的。

二、数据模型&操作接口

(1)数据模型

通过上面的例子,我们就需要弄明白键值数据库能做什么不能做什么,这句需要我们弄清楚其键值数据库的数据模型和操作接口。
虽然键值数据库中存储的是简单的 Key-Value 的数据模型,但是其 Value 的类型则可以是多元化的,可以是整型类型,String,集合,数组,列表等。这样一来就增大了该数据库的是应用范围。一般的键值数据库支持的 Key 的类型的差异并不大,但是其支持的 Value 的类型会比较大,因此对于不同的键值数据库适用于不同的应用场景。而 Redis 键值数据库其适用范围比较广得益于其支持的 Value 的类型比较多元化。

(2)操作接口

对键值对可以做什么样的操作?

函数
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值