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、备份策略选择
下表给出了各种备份策略的比较。
|
Parallel |
Yes |
Yes, Dynamic |
No |
No |
|
|
Incremental Backup |
No |
Yes |
No |
Yes |
|
|
Backup Location |
Local FS |
Hdfs FS |
Local FS |
Local FS, HDFS |
|
|
Format |
Text, CSV |
Text, CSV |
Text, Tar, Custom |
Depends on format of row data |
|
|
Compression |
No |
No |
Yes |
Only support custom format |
|
|
Scalability |
Good |
Very Good |
— |
Good |
|
|
Performance |
Fast loading, Fast unloading |
Fast loading, Fast unloading |
Fast (Just file copy) |




