SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

直近開催のイベントはこちら!

EnterpriseZine編集部ではイベントを随時開催しております

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けの講座「EnterpriseZine Academy」や、すべてのITパーソンに向けた「新エバンジェリスト養成講座」などの講座を企画しています。EnterpriseZine編集部ならではの切り口・企画・講師セレクトで、明日を担うIT人材の育成をミッションに展開しております。

お申し込み受付中!

現場からお届けするSQL Server 2019最新情報コラム

高速データベース復旧(ADR: Accelerated Database Recovery)前編

 今回は、その内容は地味ながらSQL Server 2019での最も大きな変更点のうちのひとつではないかと(個人的に)考えている、「高速データベース復旧(ADR: Accelerated Database Recovery)」 について紹介します。

データベース復旧時間の問題

 SQL Serverが意図せず停止してしまった際に(サーバーダウンなどによって)、大量の更新操作(バッチ処理でのデータ投入処理など)が行われていた場合、SQL Serverを再起動してもデータベースの状態が「復旧中」となり長時間使用できなくなることがあります。これはデータベースをSQL Serverが停止する直前の状態に戻すための復旧処理が行われていることに起因しています。

 データベースに対して実行された更新操作が、個々のトランザクションの観点から整合性のとれた状態にもどるまで、ユーザーがデータベースを使用することを許可しません。

 SQL Serverや他の多くのデータベース管理システム(IBM Db2 など)は、ARIES(Algorithms for Recovery and Isolation Exploiting Semantics)と呼ばれるデータベース復旧アルゴリズムをもとに設計されています。

 ARIESは、トランザクションログの先行書き込み(WAL: Write Ahead Logging)や、データベース復旧時に実行される再実行(Redo)/ロールバック(Undo)などによって構成される、データベース復旧時の整合性確保のためのアルゴリズムです。

 ARIESにおける再実行やロールバックはトランザクションログをもとに実行されます。それはトランザクションログに記録された更新情報を元に、データベースに対して再実行やロールバックの処理が逐次的に実行されることを意味します。つまり、適用しなければならないトランザクションログの数が多ければ多いほど、対処に必要な時間が増えてしまいます。

 例えば、数十億件のデータ投入を一つのトランザクションで実行中にSQL Serverがダウンしてしまった場合を考えてみましょう。SQL Serverが再起動されると、未完了でとなってしまったデータ投入処理を、記録されたトランザクションログを辿りながら取り消す膨大な量のロールバック処理が行われることになります。

 その復旧に必要となる時間は、データベースのデータやトランザクションログを配置しているディスクのIO速度や帯域に大きく依存します。実際に発生した類似する状況では、12時間もの長期間にわたってデータベースの復旧が行われ続け、その間ユーザーはデータベースへのアクセスができませんでした。

次のページ
クラウド上で提供されるデータベースサービスの品質の問題

この記事は参考になりましたか?

  • Facebook
  • Twitter
  • Pocket
  • note
現場からお届けするSQL Server 2019最新情報コラム連載記事一覧

もっと読む

この記事の著者

平山理(ヒラヤマオサム)

日本マイクロソフト株式会社
プレミアフィールドエンジニアリング
プレミアフィールドエンジニア日本マイクロソフトの Premier Field Engineering 部で、お客様に SQL Server をスムーズにお使いいただくための様々なお手伝いをしています。Sybase (現 SAP) 勤務時代の 5 年間とマイクロソフトでの 12 年間、データベース道を極めるために精進する毎日です。
二人の娘の父親で...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

EnterpriseZine(エンタープライズジン)
https://enterprisezine.jp/article/detail/12665 2020/01/14 14:00

Job Board

AD

おすすめ

アクセスランキング

アクセスランキング

イベント

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング