restore

restoreコマンドは既存のバックアップTARファイルからクラスタをリストアします。

これにより、次のものがバックアップから完全にリストアされます。
  • Studioのデータとメタデータ(Studioデータベースを含む)
  • Dgraphのデータとメタデータ(Dgraphデータベースを含む)
  • HDFSのサンプル・ファイル

一部の構成設定を復元することもできますが、すべてを復元できるわけではありません。詳細は、次を参照してください。

注意: スクリプトは現在のDgraphデータベース・ディレクトリのコピーをDGRAPH_INDEX_DIR/.snapshot/old_copyに作成します。リストアされたバージョンを保持する場合、これを削除する必要があります。
restoreを実行する前に、次の事項を確認してください。
  • BDD_STUDIO_JDBC_USERNAMEおよびBDD_STUDIO_JDBC_PASSWORD環境変数が設定されている。設定されていない場合、実行時にスクリプトでこの情報が要求されます。
  • データベース・クライアントは、管理サーバーにインストールされています。MySQLデータベースの場合、これはMySQLクライアントになります。Oracle Databaseの場合、これはOracle Database Clientであり、管理者タイプでインストールする必要があります。インスタント・クライアントはサポートされません。
  • Oracleデータベースの場合、ORACLE_HOME環境変数は、sqlplus実行可能ファイルがある/binディレクトリより1つ上のディレクトリに設定されます。たとえば、sqlplus実行可能ファイルが/u01/app/oracle/product/11/2/0/dbhome/binにある場合、ORACLE_HOME/u01/app/oracle/product/11/2/0/dbhome/binに設定されます。
  • リストア操作時に使用される一時ディレクトリは十分な空き容量を含みます。詳細は、次を参照してください。
  • 両方のクラスタのデータベースのタイプが同じである(OracleまたはMySQL)。restoreは、Hypersonicをサポートしていません。
  • 両方の環境がKerberos環境か、非Kerberos環境である。Kerberos環境は非Kerberos環境にリストアできず、その反対もできません。
  • 両方の環境でTLS/SSLが有効または無効になっているか、あるいは、Hadoopで無効になっている。セキュアな環境を非セキュアな環境にリストアすることはできず、その反対もできません。
注意: startstoprestartまたはbackupが現在実行中の場合、restoreは実行できません。
クラスタをリストアするには、次を管理サーバーから実行します。
./bdd-admin.sh restore [option] <file>
<file>は、リストア元となるバックアップTARファイルへの絶対パスです。これは、backupコマンドによって作成されたTARファイルである必要があります。このファイルにバックアップされたクラスタと現在のクラスタは、BDDのメジャー・バージョンが同じであり、データベースのタイプ(OracleまたはMySQL、restoreはHypersonicデータベースをサポートしていません)が同じである必要があります。それらは異なるトポロジを持つことができます。

restoreでは次のオプションがサポートされています。

オプション 説明
-l, --local-tmp リストア操作時に使用される、管理サーバー上の一時ファイルの絶対パス。このオプションを指定しなかった場合、bdd.confBACKUP_LOCAL_TEMP_FOLDER_PATHで定義された場所が使用されます。
-d, --hdfs-tmp リストア操作時に使用される、HDFSの一時ファイルの絶対パス。このオプションを指定しなかった場合、bdd.confBACKUP_HDFS_TEMP_FOLDER_PATHで定義された場所が使用されます。
-v, --verbose デバッグ・メッセージを有効にします。

クラスタのリストアの詳細は、「BDDのリストア」を参照してください。

記憶域の要件

スクリプトの実行時に、使用する一時ディレクトリに十分な空き容量があることが検証されます。こうした要件が満たされる必要があるのは、リストア操作の間だけです。
  • 管理サーバーのlocal-tmpディレクトリには、Dgraphデータベース、HDFSサンドボックスおよびedpDataDir (edp.propertiesで定義)を同時に格納するのに十分な容量が必要です。
  • これらの項目のうち同時に格納するのは1つだけのため、HDFS上のhdfs-tmpディレクトリは、最も大きな項目と同等の空き容量が含まれる必要があります。

これらの要件が満たされない場合、スクリプトは失敗します。

構成の復元

現在のクラスタはバックアップ・クラスタとは異なるトポロジを持つ可能性があるため、restoreは構成ファイルを完全には復元できません。かわりに、構成ファイルの一部を現在のクラスタのものとマージし、その他は変更しません。

次の表では、スクリプトが各構成ファイルに対して行う変更について説明します。

ファイル 変更
bdd.conf スクリプトにより、次のプロパティがバックアップからリストアされます。
  • MAX_RECORDS
  • ENABLE_ENRICHMENTS
  • LANGUAGE
  • SPARK_DRIVER_MEMORY
  • SPARK_DRIVER_CORES
  • SPARK_DYNAMIC_ALLOCATION
  • SPARK_EXECUTOR_MEMORY
  • SPARK_EXECUTOR_CORES
  • SPARK_EXECUTORS
  • YARN_QUEUE

これ以外のプロパティは変更されません。

portal-ext.properties スクリプトにより、次のプロパティがバックアップからリストアされます。
  • dp.spark.dynamic.allocation
  • sp.spark.driver.cores
  • dp.spark.driver.memory
  • dp.spark.executors
  • dp.spark.executor.cores
  • dp.spark.executor.memory
  • dp.yarn.queue
  • dp.settings.language

これ以外のプロパティは変更されません。

esconfig.properties スクリプトは、現在のバージョンではないこれらのファイルのバックアップ・バージョンからプロパティを追加します。他の設定は変更しません。
edp.properties スクリプトは、クラスタ・トポロジに影響を与えないすべての設定を復元します。他のすべてのデータ処理構成ファイルは完全に復元されます。

次のコマンドは、デバッグ・メッセージなしで/tmp/bdd_backup1.tarファイルからクラスタを復元します。
./bdd-admin.sh restore /tmp/bdd_backup1.tar