(Google+)159159件のシェア(すこし話題の記事)この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。データベースといえば、一般的に避けては通れないのがバックアップ運用です。AWSで提供されているサービスで「データベースサービス」にカテゴライズされるもののうち、RDS、Redshift、ElastiCache(※Redisのみ)については自動バックアップ(自動スナップショット)の機能が提供されています。この機能を使えば基本的にはバックアップ運用をAWSにお任せできるのですが、バックアップサイクル等の設定についてはサービス毎に差異があります。運用をAWSにお任せできるとはいえ、その仕様を把握しておかないといざリカバリをしようとした際に意図したリカバリポイントまで復元ができない、などという事態が発生する可能性があります。いうことで、今回は各データベースサービスの自動バックアップの設定について、バックアップサイクル、バックアップ開始時刻、バックアップ保持期間の3つの観点でまとめてみました。0日〜35日バックアップサイクルバックアップサイクルは「1回/日」で固定ですが、RDSでは自動バックアップ(自動スナップショット)に加えて、5分毎にデータベース変更ログのアーカイブが自動で行われます。これにより、ポイントインタイムリカバリが可能となっています。Serviceバックアップ開始時刻バックアップ開始時間は「開始時刻」と「期間」を指定します。開始時間を「20時00分」、期間を「0.5時間」と指定した場合は、「20時00分〜20時30分」の間にバックアップ処理が開始されます(ピンポイントに何時から開始、という指定はできません。指定できる期間は0.5時間〜3時間まで(0.5時間刻み)となっています。デフォルトのバックアップ開始時刻は、リージョンごとに以下の時間ブロックからランダムに選択されます。UTCバックアップ保持期間バックアップ保持期間は最大で35日まで指定可能です。この値を「0日」に設定すると自動バックアップが無効化されます。DBインスタンスを削除した場合や自動バックアップを無効にした場合には、自動バックアップで作成されたスナップショットも同時に削除されます。手動でスナップショットを作成しておく自動スナップショットのコピーを作成しておくのいずれかの対応をDBインスタンスの削除前/自動バックアップの無効化前に実施しておく必要があります。(この点を考慮して、RDSのマネージメントコンソールからDBインスタンスを削除する場合は、「最終スナップショットを作成」がデフォルトで「はい」に設定されています。)手動スナップショットの最大数はデフォルトでは「50」の制限があります。これ以上の手動スナップショットの作成が必要な場合は予め上限緩和申請をしておきましょう。0日〜35日Redshiftではバックアップサイクルと開始時刻を指定できません。RDSのようなポイントインタイプリカバリの機能は提供されていません。Redshiftは定期的にそのクラスターのスナップショットが作成されますと記載があるのみでバックアップサイクルと開始時刻ついての詳細には触れられていませんが、手元の環境で確認する限り、クラスターの初回作成時にスナップショットが作成され、以降おおよそ8時間毎に自動スナップショットが作成されるようです。具体的なしきい値までは確認できませんでしたが、データベースの使用量の増加もスナップショットのトリガーとなっているようです。いずれにしろ自動スナップショットはその作成タイミングをユーザーサイドでコントロールできないので、特定の時間にスナップショットを作成したい、という要件がある場合は、定期的に手動スナップショットを作成するといった仕組みを導入する必要があります。DBインスタンスを削除した場合/自動バックアップを無効にした場合は自動スナップショットも同時に削除される、という仕様はRDSと同様です。手動スナップショットのデフォルトの最大数は「20」です。0日〜35日ElastiCache(Redis)はRDSと同様に1回/日のサイクルで、バックアップ開始時刻を指定することができます。指定できる期間は1時間〜3時間まで(0.5時間刻み)と、最小値がRDSとは若干異なっています。ElastiCache(Redis)のスナップショットは内部的にはBGSAVEが実行されます。スナップショット作成中のRedisの性能劣化をさけるため、可能であればリードレプリカノードからスナップショットを作成するのがベストプラクティスとなっています。DBインスタンスを削除した場合/自動バックアップを無効にした場合は自動スナップショットも同時に削除される、という仕様はRDSと同様です。手動スナップショットについては連続する24時間の間に、クラスターごとに20を超える手動スナップショットを作成することはできないという制限があるので注意しましょう。「cache.t1.micro」と「cache.t2.*」ノードについてはスナップショットの機能自体がサポートされていないため、こちらも注意が必要です。実装のベストプラクティスまとめマネージドサービスならではの便利機能である自動バックアップですが、サービス毎に微妙に仕様が異なっているので、これらの仕様を正しく理解した上でバックアップ/リカバリ設計を行いましょう。自動および手動スナップショットの保存領域(バックアップストレージ)はAWSの課金対象となっていますが、無料枠が存在します。バックアップ保持期間を決める際にはこの無料枠も1つの判断材料になるかと思います。528,576Rust始めました。リモート】クラスメソッドの会社説明会を開催しますクラスメソッドでは、AWS・AI・ビッグデータ・モバイルなどの技術職や営業のメンバーとして一緒にお仕事をする仲間を大募集しています。#cmdevio新型コロナウイルスの感染拡大を受け、本イベントを延期させていただくことになりました(開催時期未定)。お申し込みいただいた皆様には大変申し訳ございませんが、何卒ご理解いただけますようよろしくお願いいたします。AWSについてライトに色んな情報交換をしましょう。カフェ店長のオカノです。今日はオフィスに用があるので、通勤ラッシュを避けて出社しました。この子は新メンバーのさめくんです。在宅勤務が推奨されているのでオフィスが閑散としており、すこしさみしそうです。使いたいときの注意点を書きました。本が出ていたので読んでみたところよかったので紹介させていただきます。