skillup

技術ブログ

Database

アンチパターン 連鎖倒産+エラー監視+データのバックアップ

投稿日:

本日は主にインフラの設計的なことに関して。

連鎖倒産

いい言い方が思いつかなかったんでこんな感じにしました(汗)要はあるサーバーのレスポンスが悪いことが原因で他の業務が遅延し、影響を受けることです。

デメリット

  • 重要でないちょっとしたサービスの停止で他のシステムが止まる、などということが起こる
  • あるシステムがハングし、適切なエラーを返さないため、いつまでも応答を待ってしまう

対策

  • エラー時の対策、障害テスト。基本正常系を前提としないこと
  • 受け取るだけ受け取って、そのトランザクションは一旦終わりにし、その後の処理は別のトランザクションで行う(キューイング)
  • 同期と非同期を分けること
  • 基本マイナス思考(どこかしらでシステムが落ちる、失敗する)で考えること(汗)
  • 他のAPIなどを使っている場合も要注意。

エラー監視

正常に稼働しているかどうかの確認。

デメリット

  • 異常時の検知(サーバーの死活だけでなく、ユーザー権限なども注意)が遅れる
  • バッチ時の処理などすぐにはわからないもの

対策

  • 人間の注意力を過信しすぎないこと
  • 監視ツールでのテンプレートを参考にする
  • DB構築の中のプロセスの1つに入れる

データのバックアップ体制

バックアップをしていない。障害への対策が弱い

デメリット

  • いざというときに欲しいときにデータが得られない

対策

  • リカバリについてフルバックアップ(いわゆる全データのバックアップ)以外にも差分バックアップなどの方法に熟知しておく
  • DB構築時の手順書の中などにバックアップの考えを入れておく
  • やや別件だが障害対策時はてんぱっていることが多いので、処理をその場で考えずフローを書いておき頭から実行するのが良い

-Database
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

正規化のデメリット

Contents1 正規化のデメリット2 本日のSQL 正規化のデメリット 正規化についていろいろ書いてきましたが、メリットもあればデメリットもあります。 メリットとしては データの不整合が起きにくい …

no image

SQLのチューニングに関して

ここ2か月ぐらいはSQLの本でがりがり勉強してきましたね。当然復習も必要かと思いますが、だいぶいろんなことを覚えたなあという気がします。 一番勉強になった本はもちろん「達人に学ぶ SQL徹底指南書」と …

no image

第二、第三の正規化&ER図&Check制約

前回第一正規化を話したので、第二、第三に進んでいきます。 Contents1 第二正規化とは?2 第三正規化とは?3 正規化のメリット4 ER図5 本日のSQLネタ Check制約 第二正規化とは? …

no image

MYSQL group_concat,cast等

実務でいろいろとトラブルがあり、データベースから在庫データを見てくれ~なんて依頼がありましたんでSQLをごりごり書いていたんですが、普段使わないようなSQLの構文を使ったのでここでちょっと紹介します。 …

no image

SQL基礎 結合に関して

SQL実践入門を読んで勉強しておりますが、本日は結合に関して。 Contents1 クロス結合2 内部結合3 外部結合4 結合のアルゴリズムとパフォーマンス4.1 NestedLoops4.2 Has …