Day 19 资料宝石:RDS是什麽?RDS vs EC2 (+db) 方案比较

https://ithelp.ithome.com.tw/upload/images/20210924/20100951ED1oBVei3M.jpg

今天开箱第四颗宝石,我们将比较 RDS 与 EC2 方案的不同处,用来切入为何 AWS RDS 成为实务上必学服务之一。

什麽是 EC2 & DB & EBS 方案?

EC2 & DB & EBS 的意思是建造一台 EC2,并在这上面安装 DB software,以及配上一点 EBS 来储存资料 (下图#1),而下列 Hardware 到 DB backup 皆是建造资料库所要做的事情 (下图#2)。

以 EC2 方案创建资料库 —「AWS」负责部分

在 EC2 方案下建造资料库所需作业之中,给 AWS 处理的只有 2 个部分,分别为硬体 (Hardware) 以及作业系统安装 (OS install)(下图#3)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951WVtYrqHvNn.png

以 EC2 方案创建资料库 —「使用者自己」须负责部分

而以 EC2 方案建造资料库所需作业中,需要使用者自己处理的有下列项目:

DB backup (下图#1)
EC2 的 DB 资料备份要自己规划。

DB patching (下图#2)
DB 软件有定期更新的需求,所以 EC2 的使用者得自己去定期更新。

DB install (下图#3)
DB 软件也要 EC2 的使用者自己安装,看是要安装 MySQL 或是 Oracle Golden。

OS patching (下图#4)
patching 指的是定期更新。在 EC2 方案下,作业系统的定期更新只能靠自己来做,并且这是一件非常麻烦的事情,会这麽说是因为 — — 可能没过几个月就得做一次更新,才能跟上最新的安全规范。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951KUB18uNHQE.png

以 EC2 方案创建第 2 个资料库 ——「使用者自己」须负责部分

假设现在需要 Scale 资料库(下图#1),把资料库从一台变两台,很有可能需要自己去创造另外一台 EC2 Instance,并且把上面这些步骤都做一遍(下图#2)。

再来看到 DB failover (下图#3),假设现在有两台资料库,其中一台坏掉了,就需要把所有流量导到现在正常的那一台,这整个机制也要自己来规划。

最後看到 HA (High availability)(下图#4),如果是想让资料库在两个不同的 AZ 之中的话,也要自己去配置,而这个会搭配 DB Failover (下图#3),达到更好的 HA 效果。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951GNYg21gBlN.png

以 RDS 方案创建资料库 —「AWS」负责部分

RDS 几乎把所有的事情都做掉了(下图#1)。首先,可以看到硬体跟作业系统安装的部分,与左边的 EC2 方案一样都会交由 AWS 来做(下图#2)。
https://ithelp.ithome.com.tw/upload/images/20210905/201009510fk7wyCLfc.png

而 AWS 对应到 DB backup 的功能叫做 transaction log(S3) 跟 EBS snapshot (下图#1);DB scale 的功能叫 Read Replica(下图#2);DB failover 的功能叫Primary/Standby (下图#3);HA 同样用 Primary/Standby (下图#4)。

我们将会在之後的章节细部说明这些功能。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951lAL4dF5yCI.png

结语

可以看到自己建一个 EC2 并自行在上面建一个 DB software 的方案,交由 AWS 帮忙做的,只有硬体跟作业系统安装而已(下图#1),其他的都得自己做掉。

而 RDS 提供了许多功能,几乎把使用者所有的事情都做掉了(下图#2),我们将会在之後的章节细部说明这些功能。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951xZTEcwRJJf.png

以上,是透过 RDS 与 EC2 方案的比较来介绍 RDS 的部分。

What's Next?

在对 RDS 有了基本认识之後,明天我们将接着看到「资料宝石:RDS架构」!


<<:  DynamoDB汇出至S3

>>:  Day24 ( 高级 ) 骇客任务背景特效

Day 15 读 Go Concurrency Patterns - Rob Pike II

续上篇 Day 14 读 Go Concurrency Patterns - Rob Pike I ...

NNI安装在本机(Windows版)

说了好几天的概念,再不动手真的会睡着。让我们先来本机炸一炸,加深我们的学习动机。 安装前,先注意两大...

IT 铁人赛 k8s 入门30天 -- day17 Run automated tasks with cron jobs

前言 今天要来实作 Run automated tasks with cron jobs 这个 Ta...

Day 1 - 简介与文章预计撰写方向

嗨,大家好,我叫Harvey 其实当我决定参加铁人赛时,我把铁人赛误解成马拉松,以为是一个礼拜发一篇...

Electron/Nginx/NodeJS/MongoDB开发HIS之架构概述

前言 今年已经2021相信不少人都已经听说过electron了 小弟技术不才,希望可以给台湾医疗资讯...