IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

Amazon SimpleDB

风轻扬 2011-11-21 00:18:34 累计浏览 2,832 次
本机暂存
4年前SimpleDB刚推出的时候我写了一篇日志《一条腿的Amazon SimpleDB路难行》,是说SimpleDB当时还不支持排序,功能严重残缺。现在SimpleDB早已支持排序了,而且从那之后也加了很多功能。这几天在看AWS,顺便把SimpleDB再记录一下。

    一、数据模型

    数据分为多个domain,domain包含多个item,每个item包含多个属性/值对,值可以是一个集合,每个单值都是字符串类型。domain类似于表,item类似于行。无固定模式。没有Version的概念。

    不需要显式建索引,自动索引。据推测相当于每个属性上都建了索引,无法实现多属性联合索引:猜测where a = xxx and b = xxx的执行过程是做列表的intersect。

    二、操作

    操作分以下几类:

    1、创建/删除/枚举domain

    2、PutAttributes/BatchPutAttributes/DeleteAttributes/BatchDeleteAttributes/GetAttributes。支持有条件的UPDATE/DELETE,实现CAS语义。通过NextToken可以一小批一小批的遍历大量数据,类似于翻页。

    3、SELECT:类似于数据库单表SELECT,聚集函数只支持count(*)。WHERE条件可以有:简单比较,AND,OR,NOT,intersection,is null/is not null。支持排序,排序的属性必需指定的搜索条件,不能是NOT条件或UNION,由此猜测排序是只能是利用索引实现自然有序。

    操作只针对一个domain,不能跨domain。

    三、一致性

    支持一致读和最终一致性两档一致性保证。

    四、限制

    属性值最大1024字节,domain最大10G,最多包含2.5亿属性/值对,查询用时不超过5秒,查询返回数据不超过2500个item,最大结果集大小1MB。

同分类推荐文章

  1. 使用deepseek进行Oracle恢复,引起重大故障 (2026-06-22 10:56:00)
  2. 接手一个只差临门一脚的数据库恢复 (2026-06-18 00:13:09)
  3. 我做了一个 AI 版的 StarRocks 升级风险扫描工具,直接帮我定位到一个风险 (2026-06-15 01:00:00)

查看更多 数据库 文章 →

建议继续学习

  1. HFile存储格式 (累计阅读 15,971)
  2. hbase运维 (累计阅读 14,922)
  3. hbase介绍 (累计阅读 12,366)
  4. HBase技术介绍 (累计阅读 8,072)
  5. SQL vs NoSQL:数据库并发写入性能比拼 (累计阅读 7,999)
  6. 个人开公司的流程,以后用得着 (累计阅读 7,922)
  7. Redis作者谈Redis应用场景 (累计阅读 7,670)
  8. HBase随机写以及随机读性能测试 (累计阅读 7,545)
  9. Web应用的缓存设计模式 (累计阅读 7,440)
  10. Using MySQL as a NoSQL (累计阅读 7,105)