对象存储还是块存储:数据库和备份不该放在同一层

|作者: QUASA 编辑团队|2 分钟阅读| 1
对象存储还是块存储:数据库和备份不该放在同一层

Cloudflare 的用途对照将数据库列为块存储的典型负载,将系统备份、日志归档和媒体文件列为对象存储的常见用途。运行中的数据通常需要频繁、低延迟地读写;完成的副本则更适合以独立对象保存。采购时先判断应用怎样访问数据,再比较容量和报价。

对象存储和块存储的核心区别是访问单位:块卷允许主机读写数据块,对象库按对象标识符存取内容。数据库文件与它导出的备份因此可以采用不同的存储类型。备份落在对象库是否合适,还取决于现有软件的接口支持,以及副本能否在业务规定的时间内恢复。

访问单位决定应用能否照常读写

块卷向主机提供可寻址的数据块,主机可在卷上建立文件系统,让原本通过文件路径工作的数据库继续读写。AWS 的访问模型说明指出,块存储可直接读取或修改单个数据块;现有应用若要访问对象存储中的文件,通常需要新代码、对象 API 和相应的命名处理。这使接口兼容性成为迁移前必须查清的问题。

对象由数据、标识符和元数据组成,适合把完成的备份文件、封存日志片段或媒体成品分别保存。普通对象接口不能直接充当可写磁盘:下载一个对象,不等于程序能够沿用文件操作,就地覆盖其中一小段。若应用反复改写同一文件,必须先确认它是否原生支持对象读写,或是否存在满足其语义要求的适配层。

延迟也应按请求方式判断。事务处理可能连续发起小范围随机读写,关注单次操作的响应;归档任务往往先生成完整内容,之后按需取回。对象存储便于随着独立副本数量增长而扩展,块卷扩容则须同时考虑容量、随机 I/O 和吞吐量。具体性能仍取决于服务、配置及应用的请求模式,不能仅凭“云存储”标签推断。

五种工作负载:存放位置与接口代价

选择应针对数据当前承担的任务,而不是文件名称。同一份内容在运行、导出和分发阶段的写入方式不同,存储落点也可能随之变化。下面同时列出建议位置和迁移时最容易增加的接口工作。

  • 事务数据库:运行数据优先放在块卷。在线数据文件、索引和事务日志会反复读写;事务数据库的持续更新与低延迟需求适合支持局部改写的块存储,导出的备份副本则可另行保存。若改放对象库,需要数据库或中间层明确支持对象 API 及相应的写入语义;使用托管数据库时,还应以该服务实际开放的存储配置为准。
  • 运行中的虚拟机镜像:优先块存储。客户机运行时会读写虚拟磁盘的不同位置,可写卷符合这种访问方式。关闭后导出的镜像、模板或归档副本可作为对象保存,但取回对象后还须按虚拟化平台要求导入,才能得到可启动、可写的磁盘。迁移成本主要落在镜像格式、导入流程和平台接口上。
  • 完成的备份副本:对象存储通常合适。完整备份或由备份软件管理的一组备份对象可以按保留规则保存。先确认软件是否原生支持对象目标,以及增量链、校验信息和恢复程序能否从该目标正确取回;只支持本地目录的程序,可能需要适配层或重做备份流程。
  • 日志归档:将封存部分放入对象存储。已轮转的日志可按时间段或业务来源组织成对象,用于保留和后续分析。当前仍在持续追加的日志,应先写入应用支持的文件或日志系统,再由归档流程转存。改造通常涉及轮转、上传失败重试和检索路径;若分析任务频繁读取细小片段,还须评估对象组织方式与请求开销。
  • 媒体分发:将成品放入对象存储。制作完成的图片、音频和视频可作为独立资产上传,供分发链路取用。编辑软件若仍需反复改写素材局部内容,可继续使用适合编辑的工作存储,发布时再生成对象副本。迁移时要处理上传接口、对象命名、访问权限,以及原有文件路径在应用中的引用方式。

备份的位置要用恢复时间检验

对象库保存了副本,并不意味着数据库已经恢复服务。恢复可能依次涉及定位版本、取回数据、重建可写卷、回放事务日志、启动数据库和验证查询;备份格式、数据量、传输能力与重组方式都会影响耗时。恢复时间目标应以服务重新可用为终点,而不是以下载完成为终点。

Amazon EBS 的卷初始化文档说明,从快照创建的卷在初始化期间可能出现更高的 I/O 延迟和较低性能,并列出预置初始化速率、快速快照恢复等处理方式。这是 EBS 的具体行为;评估这类恢复方案时,除了记录卷创建时间,还应测量数据库重新投入使用后的读写表现。

如果备份由多个对象组成,恢复程序必须按正确关系取回并重组它们;如果副本是大型归档文件,则还要计入传输、解压和校验时间。恢复窗口较短时,方案可能需要更快接管的副本、合适的快照恢复能力或足够的取回带宽。决定备份落点的依据应是恢复目标与演练结果,而不只是副本占用的空间。

接口改造与采购成本一起核算

通过文件路径访问数据库或虚拟磁盘的程序,换用适配的块卷通常可以保留原有读写模型,但仍需处理挂载、文件系统、容量调整与故障切换。改用对象库时,应逐项确认程序是否支持对象 API、如何命名对象、上传失败后怎样重试,以及凭证、权限和覆盖规则由谁管理。将对象库映射成目录,也不能默认获得原文件系统的锁定和局部写入行为。

备份软件若原生支持对象目标,改造重点通常在连接配置、保留规则和恢复验证;只会写本地路径的程序,改造范围可能扩大到中间层或应用代码。多台主机若需要同时访问同一目录,还应单独评估共享文件存储。可挂载的块卷、按文件协议共享的服务与对象 API,满足的是不同的访问要求。

比较采购方案时,应将容量费用与请求、取回和传输费用一并估算,同时计入接口改造与运维工作。块卷侧核对随机 I/O、吞吐量及扩容方式;对象库侧核对对象组织、访问频率和取回路径。先满足在线读写和恢复时间要求,再比较总成本,才能避免把性质不同的工作负载按同一种容量单价采购。

相关阅读:

分享:

订阅我们的新闻通讯

将最新 Web3、AI 和加密货币新闻直接发送到您的邮箱。

0