DB/PostgreSQL/Backup
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
-backupを極める
-実行はpostgresユーザー前提なので、そうじゃない場合は-U p...
*DBサイズ確認 [#ucad605a]
SELECT datname, pg_size_pretty(pg_database_size(datname)...
*実行中の負荷 [#g2afd4e7]
-どの形式でもPostgresのCPU使用率は100%程度まで上がる。
*テキスト形式 [#f9a89d27]
pg_dump -d DB_NAME | gzip > dump.sql.gz
*Custom形式 [#vd2e8d18]
-並列実行は不可能。アーカイブしてくれる
-テキスト形式の1/10以下のサイズ。テキスト+gzipと同等。時...
-ただしバイナリ
-リストアはpg_restoreが必要
pg_dump -Fc DB_NAME > /var/tmp/custom.dmp
*ディレクトリ形式 [#ufa6c857]
-jオプションで並列実行可能
pg_dump -j 1 -Fd /data/pgtest/ DB_NAME
*時間計測 [#t128b22f]
4G程度で2分半あれば終わる。サイズは圧縮で200MBほど。
下の1億レコード追加18Gで9分。並列度をあげた場合は
*大量データ作成 [#l2ee97b8]
CREATE TABLE tasks (
id SERIAL NOT NULL,
name VARCHAR(255) NOT NULL,
created_at TIMESTAMP,
updated_at TIMESTAMP,
PRIMARY KEY (id)
);
-10億レコードは数十ギガ消費し、1時間でも終わらなかったの...
INSERT
INTO tasks (
id
,name
,created_at
,updated_at
)
SELECT
i
,format('%s連番とても長いデータを造るためにがんばります...
,now()
,now()
FROM
generate_series(1, 100000000) as i;
終了行:
-backupを極める
-実行はpostgresユーザー前提なので、そうじゃない場合は-U p...
*DBサイズ確認 [#ucad605a]
SELECT datname, pg_size_pretty(pg_database_size(datname)...
*実行中の負荷 [#g2afd4e7]
-どの形式でもPostgresのCPU使用率は100%程度まで上がる。
*テキスト形式 [#f9a89d27]
pg_dump -d DB_NAME | gzip > dump.sql.gz
*Custom形式 [#vd2e8d18]
-並列実行は不可能。アーカイブしてくれる
-テキスト形式の1/10以下のサイズ。テキスト+gzipと同等。時...
-ただしバイナリ
-リストアはpg_restoreが必要
pg_dump -Fc DB_NAME > /var/tmp/custom.dmp
*ディレクトリ形式 [#ufa6c857]
-jオプションで並列実行可能
pg_dump -j 1 -Fd /data/pgtest/ DB_NAME
*時間計測 [#t128b22f]
4G程度で2分半あれば終わる。サイズは圧縮で200MBほど。
下の1億レコード追加18Gで9分。並列度をあげた場合は
*大量データ作成 [#l2ee97b8]
CREATE TABLE tasks (
id SERIAL NOT NULL,
name VARCHAR(255) NOT NULL,
created_at TIMESTAMP,
updated_at TIMESTAMP,
PRIMARY KEY (id)
);
-10億レコードは数十ギガ消費し、1時間でも終わらなかったの...
INSERT
INTO tasks (
id
,name
,created_at
,updated_at
)
SELECT
i
,format('%s連番とても長いデータを造るためにがんばります...
,now()
,now()
FROM
generate_series(1, 100000000) as i;
ページ名: