こんにちは。motoKNです。
よろしくお願いします!
前回は、生産管理システムで使ったネットワーク技術をご紹介しました。
今回は、生産管理システムで収集したデータの検索性維持と長期間保存するために行っている、
データベースのバックアップ方法についてご紹介したいと思います。
概要
弊社生産管理システムで行っているデータベースのバックアップは以下3点です。
- データベースクラッシュ時の早期復旧を実現するためのデータベースバックアップ
- データベースの応答速度維持とデータ検索性を実現したバックアップ
- データの長期保存を実現した磁気テープへのバックアップ
用語 | 意味 |
---|---|
サーバA | 直近数ヶ月のデータを格納したデータベースを持つサーバ 。 生産時はデータベースの応答速度が重要となるため、データの保存期間を制限しレコード数を抑えています。 |
サーバB | サーバAのデータベース格納期間終了~数年分のデータを格納するデータベースを持つサーバ。 過去数年分のデータをデータベースに保持しています。 このサーバは生産ラインとデータのやり取りを行わないため、応答速度はそれほど重視していません。 |
バックアップ用サーバ | バックアップを実行/管理するサーバ。 |
データベースクラッシュ時の早期復旧を実現するためのデータベースバックアップ
データベースがクラッシュした場合に復旧時間を出来る限り短くするため、データベース自体のバックアップを実施しています。
毎日決まった時間にサーバAのデータベースをフルバックアップして磁気テープに格納しています。
また、データベースのバックアップ中でも応答速度を維持するため、複製ボリュームを作成し複製ボリュームからバックアップを実施しています。

下記の操作を毎日1回決まった時間に行います。
① サーバAのデータベースを業務ボリューム(MV)と複製ボリューム(RV)に分離する
② 複製ボリュームを、バックアップ用サーバにマウントする
③ 複製ボリュームを、バックアップ用サーバを介して磁気テープに保存する
④ ③完了後、業務ボリュームを複製ボリュームに複写(レプリケート)する
⑤ バックアップ用サーバにて、サーバAの複製ボリュームをアンマウントする
データベースの応答速度維持とデータ検索性を実現したバックアップ
サーバAのデータベース応答遅延は生産ラインを停止させるような大きな影響を与えるため、データ格納期間を短くしデータ容量を抑えています。
ただし業務上、過去数年分検索したいため、サーバBに過去数年分のデータを保存します。
サーバAのデータは保存期間によってサーバBへコピー または データ削除しています。
毎日サーバAのデータベースの保存期間が切れる1か月前のデータ1日分をサーバBのデータベースへコピーし、
保存期間が切れたデータ1日分を削除しています。
(データの冗長化のため、1か月分のデータをサーバAとサーバBのデータベースで保存しています。)

下記の操作を毎日1回決まった時間に行います。
① サーバAのデータベースにて移行対象のデータをSQLで抽出する
② サーバAのデータベースの移行対象のデータをサーバBへDBリンクを使用してデータを移行する
③ サーバAのデータベースの保存期間が切れたデータ1日分をSQLで削除する
データの長期保存を実現した磁気テープへのバックアップ
製品が市場に出た後に不具合が見つかった場合に、不良ロットの生産データが見れるように
データの長期保管が必要になります。
長期保管に優れた磁気テープにデータをバックアップしています。

下記の操作を月1回行います。
① サーバBのデータベースより、1か月分のデータをファイルにエクスポートする(データベースのエクスポート機能)
② エクスポートしたファイルを、バックアップサーバを介して磁気テープに保存する
以上が生産管理システムで行っているデータベースのバックアップでした。
心の安定を保つためにもバックアップはしっかりと行っておきましょう。
次回
次回は生産管理システムのトレーサビリティについてご紹介したいと思います。
引き続きよろしくお願いします!

ヘッドスパと自転車で子供と出掛けるのが大好き。
疲れない体が欲しい40代。
関連記事
-
第1回 ラズパイを使用したBLE通信 ~ ディスプレイ、キーボード、マウスを接続しないで設定 前編 ~
こんにちは、GTです。よろしくお願いします。 最近業務でラズパイのBluetooth機能を使...
公開日:2021.12.24 更新日:2021.12.24
tag : Raspberry Pi Bluetooth
-
WindowsにおけるPyCharm+GITの開発環境のセットアップ方法
こんにちは!ソラです。 Python、ラズパイのお仕事が増えてきています。 ありがたいことで...
公開日:2021.06.30 更新日:2021.08.03
tag : Raspberry Pi IoT
-
第3回 顔認識デバイス Android編 〜 LiveDataとDataBindingを実装する 〜
前回に引き続き、MVVMの実装をしていきます。 ViewModelの実装では、UIの状態管理...
公開日:2021.08.19 更新日:2021.09.08
-
第4回 顔認識デバイス Android編 〜 ラズパイとの通信 〜
こんにちは! 本記事を担当します KNSK と申します。 よろしくお願いします! 今回はAn...
公開日:2021.09.09 更新日:2021.09.09
-
第2回 顔認識デバイス Android編 〜 JetPackを使ってViewModelを実装する 〜
最近のAndroidアプリはJetPackライブラリが浸透してきたこともあり、MVVMを使う...
公開日:2021.07.19 更新日:2021.07.19
-
こんにちは、TMIHです。 今回から組み込み系のソフトウェア設計標準規格である、MISRA-...
公開日:2022.02.25 更新日:2022.02.25