Day 21 需要高效的NoSQL资料库-DynamoDB看过来

完成了阶段性的实作後,我们今天一起来看看什麽是Dynamo DB。

1. Dynamo DB的应用价值

如果我们有非结构资料的储存需求,且要求千分之一秒的高速读写和完善的备份机制,那Dynamo DB就可以派上用场。

2. Dynamo DB的组成与运作方式

DynamoDB是分散式NoSQL及key-value为基础的资料库,资料会按照分区(partition)来做存放。DynamoDB由table组成,每一个table会有多个纪录,称作item。每一个item由一组key-attribute组成,每一个attribute会有一到多个value

  • table
    • item
      • key-attribute
        • values per attribute

2.1 资料的分区与排序-Partition Key与Sort Key

我们可以选择item当中的某一个key当作Partition Key,用来定义资料的分区。以足球选手的资料为例,可以定义选手所效力的队伍,当作partition key,资料就会按照队伍来分区。Sort Key的话,从字面上即可以理解,是针对各个分区,提供资料排序的Key,例如在名为曼城队的分区下,按照足球选手在职年数进行排序。

2.2 资料分取与排序的调整-Local Secondary Index and Gloabl Secondary Index

如果想要重新去调整分区与排序的设定,该怎麽做呢?
如果要调整排序设定的话,可以在一开始建立Table时,纳入Local Secondary Index设定,简称LSI;如果一开始建立Table时,没有纳入这LSI,就只能抱歉,排序的调整就无法透过LSI来动了。如果要同时调整分区与排序的设定的话,Global Secondary Index或称作GSI,就能做到。

2.3 资料备份机制

资料备份有两种方式: 随需备份(On-Demand Backup and Restore)以及时间点复原(Point-in-Time Recovery)。随需备份让我们自行定义资料备份的时间点,因此,备份可还原的时间,就是根据我们曾经备份过的时间点,来做还原。时间点复原是AWS提供的自动化备份的服务,只要是近期35天内的资料,我们都可以在这个时间范围内,做资料的还原。

2.4 收费机制

Dyanmo DB如何跟我们收钱呢?相信这是一个大家相当关注的议题。
Dynamo DB会根据Read-Write Units,也就是读写单位来计价。根据不同的方案,每一个单位(Unit)会有不同的读写能力。主要方案有三种如下:

方案 Eventually Consistent Read Request Strongly Consistent Transactional Request
读取请求单位 8KB/Unit 4KB/Unit 4KB/Two Unit
写入请求单位 1KB/Unit 1KB/Unit 1KB/Two Unit

表格参考: 大话AWS云端架构


<<:  Day 19 Docker Compose 操作指令

>>:  D26 - 与MySQL相异的部分

[Day15] Storybook - Publish Storybook (Static web application & Chromatic)

我们透过前几天介绍的所有内容 Storybook - 基本介绍 & 安装 Storybook...

从零开始学3D游戏设计:基础粒子效果

这是 Roblox 从零开始系列,在效果章节的单元,今天你将学会如何透过粒子发射器来做出基本的粒子特...

DAY14 - 第三个小范例 : 虚拟货币爬虫

前言 今天是铁人赛的第十四天,这次要来写一下虚拟货币的爬虫 对象是meme虚拟货币界的霸主:狗狗币 ...

第35天~PK 及 FK~

这篇的上一篇:https://ithelp.ithome.com.tw/articles/10283...

DAY24 搞样式--用CSS Gird来搞个万年历吧(上)

前言 今天开始实作的部分,尝试用完全没碰过的CSS Grid要搞出一个万年历,不停的研究不停地开发新...