面试题答案
一键面试mongodump/restore
- 优势:
- 灵活性高:可以针对特定的数据库、集合进行备份,不需要对整个数据库进行操作,方便在不同环境中恢复部分数据。
- 跨平台性好:能在不同操作系统间进行备份和恢复,只要相应系统安装了MongoDB工具即可。
- 基于逻辑备份:备份的数据可读性相对较好,对于数据迁移、数据分析等场景较友好。
- 劣势:
- 速度相对慢:由于是逻辑备份,在备份和恢复大量数据时,比基于文件系统快照备份慢,会占用较多CPU和网络资源。
- 资源消耗大:备份和恢复过程对系统资源要求较高,可能影响生产环境的正常运行。
文件系统快照
- 优势:
- 速度快:基于块级别的复制,相比逻辑备份,备份和恢复速度非常快,能在短时间内完成大规模数据的备份恢复。
- 资源占用少:对生产系统的性能影响相对较小,因为是在文件系统层面操作,不涉及MongoDB内部复杂的逻辑操作。
- 劣势:
- 依赖特定环境:需要文件系统支持快照功能,如Linux下的LVM等,不是所有环境都适用。
- 恢复灵活性差:通常是全量备份恢复,很难针对特定数据库或集合进行恢复,且恢复时可能需要停机操作。
- 一致性问题:如果在进行快照时数据库处于活跃写入状态,可能导致数据不一致,需要额外手段保证一致性。