バックアップのスケジュール化

Spectrum™ Technology Platform サーバーをバックアップするには、サーバーの構成データベースのバックアップ コピーを作成する必要があります。構成データベースには、セキュリティ設定、データフロー、サービス オプション、データ リソース定義、その他の構成情報が含まれています。サーバーのシステム障害やその他の災害でサーバーが稼働できなくなった場合、構成データベースのバックアップを使用してサーバー構成を別の Spectrum™ Technology Platform サーバーに復元できます。

この手順では、Spectrum™ Technology Platform を構成してバックアップを定期的に作成する方法を説明します。

重要: スケジュールに基づくバックアップは、Spectrum™ Technology Platform サーバーのアクティビティが非常に少ないかまったくない時間帯に実行されます。バックアップの実行中は、サービスの呼び出しがタイムアウトになったり、ジョブが正常に実行できなかったりする場合があります。
  1. Spectrum™ Technology Platform サーバーを停止します。
    注: Spectrum™ Technology Platform をクラスタ環境で実行している場合は、スケジュールに基づくバックアップを構成するノードを選択し、そのノードで実行しているサーバーを停止します。このノードでは、スケジュールに基づくバックアップを構成してから、この構成を他のノードに適用します。
  2. 次のファイルをテキスト エディタで開きます。

    SpectrumLocation\server\app\conf\spectrum-container.properties

  3. 次のパラメータを指定します。
    spectrum.backup.enabled=true
    spectrum.backup.cron=Interval
    spectrum.backup.directory=Destination

    説明:

    Interval
    バックアップ データベースを作成する間隔を指定する cron 式。cron 式は、スペースで区切られた 6 つの値で構成されます。オプションとして、第 7 の値を指定できます。
    フィールド 有効な値 有効な特殊文字
    0 ~ 59 , - * /
    0 ~ 59 , - * /
    時間 0 ~ 23 , - * /
    月の日数 1 ~ 31 , - * ? / L W
    1 ~ 12 または JAN ~ DEC , - * /
    曜日 1 ~ 7 または SUN ~ SAT , - * ? / L #
    年 (オプション) 1970 ~ 2099 , - * /

    例えば、この式は構成データベースを毎日午前 10 時にバックアップします。

    spectrum.backup.cron=0 0 10 * * ?

    この式は構成データベースを毎月 1 日の午前 2 時にバックアップします。

    spectrum.backup.cron=0 0 2 1 * ?

    特殊文字の使い方は次のとおりです。

    *
    すべての値を指定します。例えば、月の日数フィールドで * を使用した場合は、その月の毎日を意味します。
    ?
    特定の値を指定しません。この文字は他のフィールドと組み合わせて使います。例えば、月の初日にバックアップを実行し、その日が何曜日でもかまわない場合は、曜日フィールドに ? を指定し、月の日数フィールドに 1 を指定します。
    -
    値の範囲を指定します。例えば、SAT-SUN は土曜日から日曜日を意味します。
    ,
    複数の値を区切ります。例えば、月の日数フィールドの 15,30 は、その月の 15 日と 30 日を意味します。
    /
    間隔を指定します。例えば、時間フィールドの 0/3 は、バックアップを午前 0 時に実行し、それ以降 3 時間おきに実行することを意味します。
    L
    "最後 (last)" を指定します。これは使うフィールドによって意味が異なります。月の日数フィールドで使用した場合は、その月の最終日を意味します。曜日フィールドで単体で使用すると、土曜日を意味します。ただし、曜日フィールドで曜日と組み合わせて使用した場合は、その月の最後の曜日を意味します。例えば、6L はその月の最後の金曜日を意味します。
    W
    この値は月の日数フィールドで使用して、特定の日付に最も近い平日を指定します。例えば、15W はその月の 15 日に最も近い平日を意味します。

    cron 式の詳細と使用例については、quartz-scheduler.org を参照してください。

    Destination
    バックアップ データベースの保存先とするディレクトリ。次に例を示します。
    spectrum.orientdb.backup.directory\\\\exampleserver1\\Shared\\Backup

    パスでバックスラッシュを指定するときは、エスケープ文字 \ を使用する必要があります。

    注: Spectrum™ Technology Platform をクラスタ環境で使用している場合は、一元化された場所をバックアップの保存先として指定する必要があります。クラスタ環境では、スケジュールに基づくバックアップがクラスタ内の不特定のノードで実行されるからです。一元化された場所を指定すると、クラスタから最新のバックアップを取得するのが容易になります。
  4. 構成データベースを Spectrum™ Technology Platform サーバーと異なるサーバーで実行している場合は、次のパラメータを構成します。そうではない場合は、これらをデフォルト値のまま使用します。
    spectrum.backup.databaseURL=Host
    spectrum.backup.http.port=Port
    

    説明:

    Host
    構成データベースの 1 つのホスト名または IP アドレス。通常、構成データベースはクラスタで実行します。クラスタ内の任意のノードをバックアップ用ソースとして使用できます。
    Port
    データベース用に構成された HTTP データベース バックアップ ポート。
  5. プロパティ ファイルを保存して閉じます。
  6. Spectrum™ Technology Platform サーバーを開始します。
  7. オプション: Spectrum™ Technology Platform をクラスタ環境で使用している場合は、クラスタ内の各ノードに対してこの手順を繰り返します。
    注: クラスタ内のすべてのノード上で、spectrum.backup.cronspectrum.backup.directory に同一の値を指定する必要があります。
  8. モジュールの中には、Spectrum™ Technology Platform のスケジュールされたバックアップ処理ではバックアップされない追加データを保存するものがあります。このデータを手動でバックアップするか、このデータをバックアップする別のプロセスを作成する必要があります。
    モジュール バックアップ項目
    Advanced Matching モジュール、Data Normalization モジュールおよび Universal Name モジュール SpectrumLocation/server/modules の下にある以下のサブフォルダの内容をバックアップします。
    • cdqdb
    • lucene
    • matcher
    • parser
    • searchindex
    • tables
    Data Hub モジュール Relationship Analysis Client を起動し、[管理] をクリックします。バックアップするモデルを選択し、[バックアップ] をクリックします。
    モデルのほかに、以下の 2 つのプロパティ ファイルもバックアップします。
    • server\modules\hub\hub.properties
    • server\modules\db\neo4j.properties
    Location Intelligence モジュール 名前付きリソース、データおよび構成ファイルをバックアップします。