打开网易新闻 查看精彩图片

1、备份空间估计

在备份你的数据库之前,需要保证你有足够的磁盘空间来存储备份文件。可以通过如下命令得到数据库大小:

mydb=# SELECT sodddatsize FROM hawq_toolkit.hawq_size_of_database WHERE sodddatname=’mydb’;

如果待备份表是压缩的,这个查询给出的大小是压缩后的大小,如果你的备份是没有压缩的,需要乘上一个压缩比来计算所需空间。通常我们使用3做为估计的压缩比。 基于数据库使用空间评估完压缩比的影响后,如果使用hdfs外部表备份,则获得的数据库大小需要乘hdfs存储副本个数评估总大小,通常该副本个数为3,即所需空间为databasesize * 3 * 3;如果使用gpfdist,gpfdist使用的机器个数是N,则每个机器上需要的空间是databasesize * 3 / N。

2、备份策略选择

下表给出了各种备份策略的比较。

打开网易新闻 查看精彩图片