> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinetica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# restoreBackup

<div className="kinetica-doxygen">
  <div id="ab84fbe6421108eedd42326a8fa9b3555" />

  <h2 className="memtitle"><span className="permalink"><a href="#ab84fbe6421108eedd42326a8fa9b3555">◆ </a></span>restoreBackup() <span className="overload">\[1/4]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="memname">
        <tr>
          <td className="memname"><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">RestoreBackupResponse</a> gpudb::GPUdb::restoreBackup </td>
          <td>(</td>
          <td className="paramtype">const <a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupRequest">RestoreBackupRequest</a> &</td>
          <td className="paramname"><span className="paramname"><span className="em">request\_</span></span></td>
          <td>)</td>
          <td> const</td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Restores database objects from a <a href="/content/admin/backup_restore/#database-backup" target="_top">backup</a> accessible via the <a href="/content/concepts/data_sources/" target="_top">data source</a> specified by <a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupRequest#a0be8cf0e9ceb5b55867028aea9500254">datasourceName</a>. </p>

      <div className="dl params">
        <div className="dt">Parameters</div>

        <div className="dd">
          <table className="params">
            <tr>
              <td className="paramdir">\[in]</td>
              <td className="paramname">request\_</td>
              <td><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupRequest">Request</a> object containing the parameters for the operation.</td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd"><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">Response</a> object containing the result of the operation. </div>
      </div>
    </div>
  </div>

  <div id="a8beb2661d0dbc7ac6f449c13531673ab" />

  <h2 className="memtitle"><span className="permalink"><a href="#a8beb2661d0dbc7ac6f449c13531673ab">◆ </a></span>restoreBackup() <span className="overload">\[2/4]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="memname">
        <tr>
          <td className="memname"><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">RestoreBackupResponse</a> & gpudb::GPUdb::restoreBackup </td>
          <td>(</td>
          <td className="paramtype">const <a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupRequest">RestoreBackupRequest</a> &</td>
          <td className="paramname"><span className="paramname"><span className="em">request\_</span></span>, </td>
        </tr>

        <tr>
          <td className="paramkey" />

          <td />

          <td className="paramtype"><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">RestoreBackupResponse</a> &</td>
          <td className="paramname"><span className="paramname"><span className="em">response\_</span></span> ) const</td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Restores database objects from a <a href="/content/admin/backup_restore/#database-backup" target="_top">backup</a> accessible via the <a href="/content/concepts/data_sources/" target="_top">data source</a> specified by <a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupRequest#a0be8cf0e9ceb5b55867028aea9500254">datasourceName</a>. </p>

      <div className="dl params">
        <div className="dt">Parameters</div>

        <div className="dd">
          <table className="params">
            <tr>
              <td className="paramdir">\[in]</td>
              <td className="paramname">request\_</td>
              <td><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupRequest">Request</a> object containing the parameters for the operation. </td>
            </tr>

            <tr>
              <td className="paramdir">\[out]</td>
              <td className="paramname">response\_</td>
              <td><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">Response</a> object containing the results of the operation.</td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd"><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">Response</a> object containing the result of the operation (initially passed in by reference). </div>
      </div>
    </div>
  </div>

  <div id="af9ffdf8b1766b6d85e3c436e616efc39" />

  <h2 className="memtitle"><span className="permalink"><a href="#af9ffdf8b1766b6d85e3c436e616efc39">◆ </a></span>restoreBackup() <span className="overload">\[3/4]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="memname">
        <tr>
          <td className="memname"><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">RestoreBackupResponse</a> gpudb::GPUdb::restoreBackup </td>
          <td>(</td>
          <td className="paramtype">const std::string &</td>
          <td className="paramname"><span className="paramname"><span className="em">backupName</span></span>, </td>
        </tr>

        <tr>
          <td className="paramkey" />

          <td />

          <td className="paramtype">const std::map\< std::string, std::string > &</td>
          <td className="paramname"><span className="paramname"><span className="em">restoreObjectsMap</span></span>, </td>
        </tr>

        <tr>
          <td className="paramkey" />

          <td />

          <td className="paramtype">const std::string &</td>
          <td className="paramname"><span className="paramname"><span className="em">datasourceName</span></span>, </td>
        </tr>

        <tr>
          <td className="paramkey" />

          <td />

          <td className="paramtype">const std::map\< std::string, std::string > &</td>
          <td className="paramname"><span className="paramname"><span className="em">options</span></span> ) const</td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Restores database objects from a <a href="/content/admin/backup_restore/#database-backup" target="_top">backup</a> accessible via the <a href="/content/concepts/data_sources/" target="_top">data source</a> specified by <span className="em arg">datasourceName</span>. </p>

      <div className="dl params">
        <div className="dt">Parameters</div>

        <div className="dd">
          <table className="params">
            <tr>
              <td className="paramdir">\[in]</td>
              <td className="paramname">backupName</td>
              <td>Name of the backup to restore from, which must refer to an existing backup. The default value is ''. </td>
            </tr>

            <tr>
              <td className="paramdir">\[in]</td>
              <td className="paramname">restoreObjectsMap</td>

              <td>
                Map of database objects to be restored from the backup.

                <ul>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a761f0694dd53485350641870e7503978">restore\_backup\_all</a>: All object types and data contained in the given <a href="/content/concepts/schemas/" target="_top">schema(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a3e4922e1cde5e814ab38d2ce3c05c56c">restore\_backup\_catalog</a>: Data Lake catalog that is external to the database. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aeb94f10c081503f1a11efc235c1c09fe">restore\_backup\_context</a>: <a href="/content/sql-gpt/concepts/#sql-gpt-context" target="_top">Context(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a440dc021250541eabeaa434b07ac5f39">restore\_backup\_credential</a>: <a href="/content/concepts/credentials/" target="_top">Credential(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a2ab2fe375fad40885ece68113fe05f95">restore\_backup\_datasink</a>: <a href="/content/concepts/data_sinks/" target="_top">Data sink(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a1e551df5a9ea62c41617dced89cf77f3">restore\_backup\_datasource</a>: <a href="/content/concepts/data_sources/" target="_top">Data source(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aab964cd2cc2cc3233691d145004ba68f">restore\_backup\_directory</a>: KiFS <a href="/content/tools/kifs/" target="_top">File directory(ies)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aa082f3a571fa3d18412185fccec05f4c">restore\_backup\_function\_environment</a>: <a href="/content/udf/python/writing/#udf-python-func-env" target="_top">Python UDF function environment(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a5e8133694bab8ce04524e3bac3d9d31f">restore\_backup\_graph</a>: <a href="/content/graph_solver/network_graph_solver/" target="_top">Graph</a> definition(s). Source table(s), if applicable, are required in order to restore graph objects. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#af95bcae7e864c27e87f0171045dcd1af">restore\_backup\_monitor</a>: <a href="/content/concepts/table_monitors/" target="_top">Table monitor(s)</a> / <a href="/content/sql/ddl/create-stream" target="_top">SQL stream(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#ad06fd060701b87dcc84353298a9a5252">restore\_backup\_resource\_group</a>: <a href="/content/rm/concepts/#resource-groups" target="_top">Resource group(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#af52b0f8e4634925705a7c01660bddcb9">restore\_backup\_role</a>: <a href="/content/security/sec_concepts/#roles" target="_top">Role(s)</a>, role members (roles or users, recursively), and associated permissions. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#af7a14671d5a092a7409aeb4941b702d8">restore\_backup\_stored\_procedure</a>: <a href="/content/sql/procedure/" target="_top">SQL procedure(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a856f4364db2f935158ffa05c0c65ecd9">restore\_backup\_table</a>: <a href="/content/concepts/tables/" target="_top">Table(s)</a> and <a href="/content/sql/ddl/create-view" target="_top">SQL view(s)</a>. Tables with subscriptions will by default be restored in the state they were in at the time of the snapshot. See <a className="el" href="/content/api/cpp/namespacegpudb#aba16dee35440b6cf5ea142ff4b34b5fa">restore\_subscriptions</a> for options to override the default behavior. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#ab1ac25ebb11e7f13ee4cc43a645e4df8">restore\_backup\_user</a>: <a href="/content/security/sec_concepts/#security-concepts-users" target="_top">User(s)</a> (internal and external) and associated permissions. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aeb85a55c026b70e6edc509205394393d">restore\_backup\_user\_defined\_function</a>: <a href="/content/udf_overview" target="_top">UDF(s)</a>. </li>
                </ul>
              </td>
            </tr>

            <tr>
              <td className="paramdir">\[in]</td>
              <td className="paramname">datasourceName</td>
              <td>Data source through which the backup will be restored. </td>
            </tr>

            <tr>
              <td className="paramdir">\[in]</td>
              <td className="paramname">options</td>

              <td>
                Optional parameters.

                <ul>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a9cd9d752c0fe2f4ad0335a6702ad1804">restore\_backup\_backup\_id</a>: ID of the snapshot to restore. Leave empty to restore the most recent snapshot in the backup. The default value is ''. </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#ad5a4723458018b9c754044482562ea81">restore\_backup\_checksum</a>: Whether or not to verify checksums for backup files when restoring. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a> </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a> </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#ab918c03618f79e5ddb0708615157eae0">restore\_backup\_create\_schema\_if\_not\_exist</a>: Behavior to apply when the schema containing any database object to restore does not already exist. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a>: If the schema containing any restored object does not exist, create it automatically. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>: If the schema containing any restored object does not exist, return an error. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a4e590e0c73ea4f5a96854fdfeafc0f83">restore\_backup\_ddl\_only</a>: Behavior to apply when restoring tables. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a>: Restore table DDL, but do not restore data. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>: Restore tables and their data. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#aefb3eb8f28a1573ed52d8a20c8c14ae7">restore\_backup\_dry\_run</a>: Whether or not to perform a dry run of the restoration operation. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a> </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a> </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#aba16dee35440b6cf5ea142ff4b34b5fa">restore\_backup\_restore\_subscriptions</a>: Behavior to apply when restoring datasource subscriptions on tables. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a0b5aaed3f6031df7cdee3bdc1549283d">restore\_backup\_resume</a>: Resume subscriptions that were active when the backup was made. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a88eb1bdd219967f23ee15b7cf923a15a">restore\_backup\_pause</a>: Pause subscriptions that were active when the backup was made. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a7f4f3d6b0850a28620b31ebfdf82f354">restore\_backup\_cancel</a>: Cancel active subscriptions. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a0b5aaed3f6031df7cdee3bdc1549283d">restore\_backup\_resume</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a927c43060046d9d01d72f42d35f2448b">restore\_backup\_reingest</a>: Behavior to apply when restoring table data. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a>: Restore table data by re-ingesting it. This is the default behavior if the cluster topology differs from that of the contained backup. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>: Restore the persisted data files directly. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>.
                  </li>

                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a9bc0c34e8902369ebc9833c7bc8abaa9">restore\_backup\_renamed\_objects\_schema</a>: If the <a className="el" href="/content/api/cpp/namespacegpudb#a49117f7f997cda7471884205dfe804c3">restore\_policy</a> is <a className="el" href="/content/api/cpp/namespacegpudb#a933b478d719f63dab82a9c70d18d62fa">rename</a>, use this schema for relocated existing objects instead of the default generated one. The default value is ''. </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a6f77ce067b10e7a1a813a94d62a9cec6">restore\_backup\_restore\_all\_permissions</a>: Whether or not all permissions of restored principals should be restored or scoped to the restored objects. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a>: Restore all permissions. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>: Restore only permissions on restored objects. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a49117f7f997cda7471884205dfe804c3">restore\_backup\_restore\_policy</a>: Behavior to apply when any database object to restore already exists. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a36a66147f2c0be703afc00e394895063">restore\_backup\_none</a>: If an object to be restored already exists with the same name, abort and return error. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a085b2e580493109501e601724c7435cb">restore\_backup\_replace</a>: If an object to be restored already exists with the same name, replace it with the backup version. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a933b478d719f63dab82a9c70d18d62fa">restore\_backup\_rename</a>: If an object to be restored already exists with the same name, move that existing one to the schema specified by <a className="el" href="/content/api/cpp/namespacegpudb#a9bc0c34e8902369ebc9833c7bc8abaa9">renamed\_objects\_schema</a>. This policy does not apply to non-schema objects. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a36a66147f2c0be703afc00e394895063">restore\_backup\_none</a>.
                  </li>

                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#afbd644d9d1e344060b7c1bba31c9ca3f">restore\_backup\_target\_schema\_map</a>: Restore schema-based objects to alternate schema. Value is a comma delimitted list of key:value pairs mapping the original (source) schema name as it exists in the backup to a target (destination) schema namespace: "src: dst \[, src: dst \[, ...]]". Note that schema names are case sensitive and must adhere to the database schema <a href="/content/concepts/schemas/" target="_top">naming criteria</a>. The default value is ''. </li>
                </ul>

                The default value is an empty map.
              </td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd"><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">Response</a> object containing the result of the operation. </div>
      </div>
    </div>
  </div>

  <div id="a621e2c752c1a5a1efdd550ac44bb159d" />

  <h2 className="memtitle"><span className="permalink"><a href="#a621e2c752c1a5a1efdd550ac44bb159d">◆ </a></span>restoreBackup() <span className="overload">\[4/4]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="memname">
        <tr>
          <td className="memname"><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">RestoreBackupResponse</a> & gpudb::GPUdb::restoreBackup </td>
          <td>(</td>
          <td className="paramtype">const std::string &</td>
          <td className="paramname"><span className="paramname"><span className="em">backupName</span></span>, </td>
        </tr>

        <tr>
          <td className="paramkey" />

          <td />

          <td className="paramtype">const std::map\< std::string, std::string > &</td>
          <td className="paramname"><span className="paramname"><span className="em">restoreObjectsMap</span></span>, </td>
        </tr>

        <tr>
          <td className="paramkey" />

          <td />

          <td className="paramtype">const std::string &</td>
          <td className="paramname"><span className="paramname"><span className="em">datasourceName</span></span>, </td>
        </tr>

        <tr>
          <td className="paramkey" />

          <td />

          <td className="paramtype">const std::map\< std::string, std::string > &</td>
          <td className="paramname"><span className="paramname"><span className="em">options</span></span>, </td>
        </tr>

        <tr>
          <td className="paramkey" />

          <td />

          <td className="paramtype"><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">RestoreBackupResponse</a> &</td>
          <td className="paramname"><span className="paramname"><span className="em">response\_</span></span> ) const</td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Restores database objects from a <a href="/content/admin/backup_restore/#database-backup" target="_top">backup</a> accessible via the <a href="/content/concepts/data_sources/" target="_top">data source</a> specified by <span className="em arg">datasourceName</span>. </p>

      <div className="dl params">
        <div className="dt">Parameters</div>

        <div className="dd">
          <table className="params">
            <tr>
              <td className="paramdir">\[in]</td>
              <td className="paramname">backupName</td>
              <td>Name of the backup to restore from, which must refer to an existing backup. The default value is ''. </td>
            </tr>

            <tr>
              <td className="paramdir">\[in]</td>
              <td className="paramname">restoreObjectsMap</td>

              <td>
                Map of database objects to be restored from the backup.

                <ul>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a761f0694dd53485350641870e7503978">restore\_backup\_all</a>: All object types and data contained in the given <a href="/content/concepts/schemas/" target="_top">schema(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a3e4922e1cde5e814ab38d2ce3c05c56c">restore\_backup\_catalog</a>: Data Lake catalog that is external to the database. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aeb94f10c081503f1a11efc235c1c09fe">restore\_backup\_context</a>: <a href="/content/sql-gpt/concepts/#sql-gpt-context" target="_top">Context(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a440dc021250541eabeaa434b07ac5f39">restore\_backup\_credential</a>: <a href="/content/concepts/credentials/" target="_top">Credential(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a2ab2fe375fad40885ece68113fe05f95">restore\_backup\_datasink</a>: <a href="/content/concepts/data_sinks/" target="_top">Data sink(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a1e551df5a9ea62c41617dced89cf77f3">restore\_backup\_datasource</a>: <a href="/content/concepts/data_sources/" target="_top">Data source(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aab964cd2cc2cc3233691d145004ba68f">restore\_backup\_directory</a>: KiFS <a href="/content/tools/kifs/" target="_top">File directory(ies)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aa082f3a571fa3d18412185fccec05f4c">restore\_backup\_function\_environment</a>: <a href="/content/udf/python/writing/#udf-python-func-env" target="_top">Python UDF function environment(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a5e8133694bab8ce04524e3bac3d9d31f">restore\_backup\_graph</a>: <a href="/content/graph_solver/network_graph_solver/" target="_top">Graph</a> definition(s). Source table(s), if applicable, are required in order to restore graph objects. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#af95bcae7e864c27e87f0171045dcd1af">restore\_backup\_monitor</a>: <a href="/content/concepts/table_monitors/" target="_top">Table monitor(s)</a> / <a href="/content/sql/ddl/create-stream" target="_top">SQL stream(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#ad06fd060701b87dcc84353298a9a5252">restore\_backup\_resource\_group</a>: <a href="/content/rm/concepts/#resource-groups" target="_top">Resource group(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#af52b0f8e4634925705a7c01660bddcb9">restore\_backup\_role</a>: <a href="/content/security/sec_concepts/#roles" target="_top">Role(s)</a>, role members (roles or users, recursively), and associated permissions. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#af7a14671d5a092a7409aeb4941b702d8">restore\_backup\_stored\_procedure</a>: <a href="/content/sql/procedure/" target="_top">SQL procedure(s)</a>. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a856f4364db2f935158ffa05c0c65ecd9">restore\_backup\_table</a>: <a href="/content/concepts/tables/" target="_top">Table(s)</a> and <a href="/content/sql/ddl/create-view" target="_top">SQL view(s)</a>. Tables with subscriptions will by default be restored in the state they were in at the time of the snapshot. See <a className="el" href="/content/api/cpp/namespacegpudb#aba16dee35440b6cf5ea142ff4b34b5fa">restore\_subscriptions</a> for options to override the default behavior. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#ab1ac25ebb11e7f13ee4cc43a645e4df8">restore\_backup\_user</a>: <a href="/content/security/sec_concepts/#security-concepts-users" target="_top">User(s)</a> (internal and external) and associated permissions. </li>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#aeb85a55c026b70e6edc509205394393d">restore\_backup\_user\_defined\_function</a>: <a href="/content/udf_overview" target="_top">UDF(s)</a>. </li>
                </ul>
              </td>
            </tr>

            <tr>
              <td className="paramdir">\[in]</td>
              <td className="paramname">datasourceName</td>
              <td>Data source through which the backup will be restored. </td>
            </tr>

            <tr>
              <td className="paramdir">\[in]</td>
              <td className="paramname">options</td>

              <td>
                Optional parameters.

                <ul>
                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a9cd9d752c0fe2f4ad0335a6702ad1804">restore\_backup\_backup\_id</a>: ID of the snapshot to restore. Leave empty to restore the most recent snapshot in the backup. The default value is ''. </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#ad5a4723458018b9c754044482562ea81">restore\_backup\_checksum</a>: Whether or not to verify checksums for backup files when restoring. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a> </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a> </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#ab918c03618f79e5ddb0708615157eae0">restore\_backup\_create\_schema\_if\_not\_exist</a>: Behavior to apply when the schema containing any database object to restore does not already exist. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a>: If the schema containing any restored object does not exist, create it automatically. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>: If the schema containing any restored object does not exist, return an error. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a4e590e0c73ea4f5a96854fdfeafc0f83">restore\_backup\_ddl\_only</a>: Behavior to apply when restoring tables. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a>: Restore table DDL, but do not restore data. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>: Restore tables and their data. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#aefb3eb8f28a1573ed52d8a20c8c14ae7">restore\_backup\_dry\_run</a>: Whether or not to perform a dry run of the restoration operation. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a> </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a> </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#aba16dee35440b6cf5ea142ff4b34b5fa">restore\_backup\_restore\_subscriptions</a>: Behavior to apply when restoring datasource subscriptions on tables. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a0b5aaed3f6031df7cdee3bdc1549283d">restore\_backup\_resume</a>: Resume subscriptions that were active when the backup was made. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a88eb1bdd219967f23ee15b7cf923a15a">restore\_backup\_pause</a>: Pause subscriptions that were active when the backup was made. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a7f4f3d6b0850a28620b31ebfdf82f354">restore\_backup\_cancel</a>: Cancel active subscriptions. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a0b5aaed3f6031df7cdee3bdc1549283d">restore\_backup\_resume</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a927c43060046d9d01d72f42d35f2448b">restore\_backup\_reingest</a>: Behavior to apply when restoring table data. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a>: Restore table data by re-ingesting it. This is the default behavior if the cluster topology differs from that of the contained backup. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>: Restore the persisted data files directly. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>.
                  </li>

                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#a9bc0c34e8902369ebc9833c7bc8abaa9">restore\_backup\_renamed\_objects\_schema</a>: If the <a className="el" href="/content/api/cpp/namespacegpudb#a49117f7f997cda7471884205dfe804c3">restore\_policy</a> is <a className="el" href="/content/api/cpp/namespacegpudb#a933b478d719f63dab82a9c70d18d62fa">rename</a>, use this schema for relocated existing objects instead of the default generated one. The default value is ''. </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a6f77ce067b10e7a1a813a94d62a9cec6">restore\_backup\_restore\_all\_permissions</a>: Whether or not all permissions of restored principals should be restored or scoped to the restored objects. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a850b8e689559a5b5a94a4f3cd66c511f">restore\_backup\_true</a>: Restore all permissions. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>: Restore only permissions on restored objects. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a73d3b04d3a3fd88ddaaa7f951c8df47a">restore\_backup\_false</a>.
                  </li>

                  <li>
                    <a className="el" href="/content/api/cpp/namespacegpudb#a49117f7f997cda7471884205dfe804c3">restore\_backup\_restore\_policy</a>: Behavior to apply when any database object to restore already exists. Supported values:

                    <ul>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a36a66147f2c0be703afc00e394895063">restore\_backup\_none</a>: If an object to be restored already exists with the same name, abort and return error. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a085b2e580493109501e601724c7435cb">restore\_backup\_replace</a>: If an object to be restored already exists with the same name, replace it with the backup version. </li>
                      <li> <a className="el" href="/content/api/cpp/namespacegpudb#a933b478d719f63dab82a9c70d18d62fa">restore\_backup\_rename</a>: If an object to be restored already exists with the same name, move that existing one to the schema specified by <a className="el" href="/content/api/cpp/namespacegpudb#a9bc0c34e8902369ebc9833c7bc8abaa9">renamed\_objects\_schema</a>. This policy does not apply to non-schema objects. </li>
                    </ul>

                    The default value is <a className="el" href="/content/api/cpp/namespacegpudb#a36a66147f2c0be703afc00e394895063">restore\_backup\_none</a>.
                  </li>

                  <li> <a className="el" href="/content/api/cpp/namespacegpudb#afbd644d9d1e344060b7c1bba31c9ca3f">restore\_backup\_target\_schema\_map</a>: Restore schema-based objects to alternate schema. Value is a comma delimitted list of key:value pairs mapping the original (source) schema name as it exists in the backup to a target (destination) schema namespace: "src: dst \[, src: dst \[, ...]]". Note that schema names are case sensitive and must adhere to the database schema <a href="/content/concepts/schemas/" target="_top">naming criteria</a>. The default value is ''. </li>
                </ul>

                The default value is an empty map.
              </td>
            </tr>

            <tr>
              <td className="paramdir">\[out]</td>
              <td className="paramname">response\_</td>
              <td><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">Response</a> object containing the results of the operation.</td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd"><a className="el" href="/content/api/cpp/structgpudb_1_1RestoreBackupResponse">Response</a> object containing the result of the operation (initially passed in by reference). </div>
      </div>
    </div>
  </div>
</div>
