Skip to main content

ArcGIS から SAP HANA への接続

SAP HANA データベースのデータを参照する ArcGIS Server の Web サービスを公開するには、ArcGIS Server サイトのすべてのコンピューターに SAP HANA クライアントの ODBC ドライバーをインストールして構成します。

注意:

既存の SAP ユーザーは、SAP HANA クライアントを SAP Support Portal の Software Downloads から入手できます。

すべての ArcGIS クライアント コンピューターで ODBC ドライバーが構成されたら、データベース コネクション ファイルを作成して、ArcGIS Server サイトに登録します。

SAP HANA クライアントのインストールと構成

SAP Support PortalSoftware Downloads から、サポートされている 64 ビット SAP HANA クライアントをダウンロードして、すべての ArcGIS Pro コンピューター、および SAP HANA データベースへの接続を登録する ArcGIS Server サイトのコンピューターにインストールします。

SAP HANA に付属の指示に従って、ODBC クライアントをインストールおよび構成します。

ArcGIS Server コンピューターへの SAP HANA のインストール

SAP HANA クライアント ODBC ドライバーをダウンロードします。 ArcGIS Server サイトの各コンピューターにクライアントを配置してインストールし、各 ArcGIS Server Linux コンピューターで ArcGIS Server の init_user_param.sh スクリプトを編集します。

  1. SAP Support Portal からサポートされている 64 ビット SAP HANA クライアントをダウンロードして、ArcGIS Server サイトの各コンピューターにインストールします。

  2. 各 ArcGIS Server コンピューターに Linux ODBC ドライバー マネージャーがインストールされていない場合は、インストールします。

    データベース クライアント ファイルをインストールしたら、クライアント ファイルを参照するように、ArcGIS Server とともにインストールされた init_user_param.sh スクリプトを変更します。 このスクリプトにアクセスするには、<ArcGIS Server installation directory>/arcgis/server/usr ディレクトリーを参照します。

    ArcGIS Server サイト内のすべてのコンピューターで init_user_param.sh を更新する必要があります。

  3. 各コンピューターの ArcGIS Server インストールの所有者が、データベース クライアント ライブラリーに対する読み取りおよび実行以上の権限を持っていることを確認します。

  4. テキスト エディターで init_user_param.sh スクリプトを開きます。

  5. export で始まる行からコメント記号 (#) を削除して、<SAPHANA_InstallDir> の情報を SAP HANA クライアントのインストール ディレクトリーへのパスに置き換えます:

    # -----------------------------------------------------------------------
    # Modify this section to configure a connection to SAP HANA.
    #
    # To make a connection, name the SAP HANA ODBC configuration files as .odbcinst.ini
    # and .odbc.ini and store them in the ArcGIS Server user $HOME directory.
    #
    # -----------------------------------------------------------------------
    export SAPHANADIR=<SAPHANA_InstallDir>/sap/hdbclient
    export LD_LIBRARY_PATH=$SAPHANADIR:$LD_LIBRARY_PATH
    
  6. スクリプトを保存して閉じます。

  7. init_user_param.sh ファイルの変更を有効にするには、ArcGIS Server を再起動する必要があります。

    そのためには、ArcGIS Server サイトの各コンピューターで stopserver.sh スクリプトを実行してから startserver.sh スクリプトを実行します。

    ./stopserver.sh

    ./startserver.sh

SAP HANA クライアントの ODBC ドライバーをインストールしたら、データベース コネクションを作成して ArcGIS Server サイトに登録できます。 ただし、下記の条件が該当する場合は、データベース コネクションを作成および登録する前に、ODBC ドライバー用にデータ ソース名を構成する必要があります:

  • SAP HANA 1.0 (サポートされている任意のサービス パック リリース) を使用している。

  • SAP HANA Cloud に接続している。

  • ArcGIS Server 10.6 またはそれ以前からデータベースに接続している。

  • SAP HANA サーバーの SAP HANA サーバー名と SQL ポート番号の文字数が 31 文字を超えている。

Linux での ODBC データ ソース名の構成 (必要な場合)

データ ソース名が必要な場合は、次の手順に従って、各 ArcGIS Server Linux コンピューター上で SAP HANA クライアント ODBC ドライバー用にシステムのデータ ソース名を構成します。

注意:

この同じデータベースに接続する SAP HANA ODBC クライアントを構成するときには、すべて同じ ODBC データ ソース名を使用します。 たとえば、ArcGIS Pro コンピューター上のデータ ソース名が、ArcGIS Server サイトのコンピューター上の SAP HANA クライアント ODBC ドライバーのデータ ソース名と同じになるように構成します。 同じ名前を使用しない場合、公開時に問題が発生します。これは、ArcGIS が、公開対象のデータの接続文字列と、登録されるデータベースとを比較するためです。

  1. ODBC データ ソース名を構成するには、SAP HANA ODBC 接続ファイルである .odbc.ini.odbcinst.ini を編集します。

    これらのファイルの名前は .odbc.ini.odbcinst.ini にする必要があります。

  2. .odbc.ini ファイルをテキスト エディターで開き、データベースに接続するために必要な情報を入力します。

    .odbc.ini ファイルで等号 (=) の前後にスペースがないことを確認します。

    たとえば、次のエントリーでは等号の前後にスペースがありません。 SPATIALTYPES=1 エントリーが含まれています。 このエントリーは、SAP HANA 2.0 以降のサポートされているバージョンに接続する場合には不要です。

    [<HANA_DNS>]
    Driver=/<usr>/sap/hdbclient/libodbcHDB.so
    Description=SAP Hana ODBC
    ServerNode=<HANA_Server_IP>:<SAP_HANA_port>
    UID=<user_name>
    Password=<user_password>
    SPATIALTYPES=1
    
    [ODBC]
    IANAAppCodePage=4
    InstallDir=/<usr>/sap/hdbclient
    Trace=0
    TraceDll=/opt/odbc64v51/lib/odbctrac.so
    TraceFile=/tmp/odbctrace.out
    UseCursorLib=0
    
  3. SAP HANA クラウドに接続するには、暗号化された接続を使用しますが、このためには、ArcGIS Server サイト内のすべてのコンピューターが、SAP HANA クラウドの証明書に署名する認証機関 (CA) を確認するために、DigiCertGlobalRootCA.crt.pem ファイルを参照できる必要があります。 SAP ヘルプ ポータルからこのファイルをダウンロードし、サイト内の各コンピューター上のディレクトリに配置します。 Encrypt=Yes を設定し、sslTrustStore パラメーターを次のいずれかに設定します:

    • 次のエントリーに示されているように、ローカル コンピューター上の DigiCertGlobalRootCA.crt.pem ファイルの場所を指定します:

      [<HANA_DNS>]
      Driver=/<usr>/sap/hdbclient/libodbcHDB.so
      Description=SAP Hana ODBC
      ServerNode=<HANA_Server_IP>:<SAP_HANA_port>
      UID=<user_name>
      Password=<user_password>
      ENCRYPT=Yes
      sslTrustStore=<path to DigiCertGlobalRootCA.crt.pem>
      [ODBC]
      IANAAppCodePage=4
      InstallDir=/<usr>/sap/hdbclient
      Trace=0
      TraceDll=/opt/odbc64v51/lib/odbctrac.so
      TraceFile=/tmp/odbctrace.out
      UseCursorLib=0
      
    • DigiCertGlobalRootCA.crt.pem ファイルからの証明書の文字列を指定します。 DigiCertGlobalRootCA.crt.pem ファイルを開いて内容をコピーし、以下に示されているように、.odbc.ini ファイル内の BEGIN CERTIFCATEEND CERTIFCATE 表記の間に貼り付けます:

      [<HANA_DNS>]
      Driver=/<usr>/sap/hdbclient/libodbcHDB.so
      Description=SAP Hana ODBC
      ServerNode=<HANA_Server_IP>:<SAP_HANA_port>
      UID=<user_name>
      Password=<user_password>
      ENCRYPT=Yes
      sslTrustStore=-----BEGIN CERTIFICATE-----<contents of the DigiCertGlobalRootCA.crt.pem file>-----END CERTIFICATE-----
      [ODBC]
      IANAAppCodePage=4
      InstallDir=/<usr>/sap/hdbclient
      Trace=0
      TraceDll=/opt/odbc64v51/lib/odbctrac.so
      TraceFile=/tmp/odbctrace.out
      UseCursorLib=0
      
  4. .odbc.ini ファイルを保存して閉じます。

  5. .odbcinst.ini ファイルを開き、ODBC ドライバー パスが含まれるように編集します。

    .odbcinst.ini ファイルでは、次の例に示すように、同じ種類のスペースは不要です:

    Description  =SAP HANA ODBC
    Driver64         = /<usr>/sap/hdbclient/libodbcHDB.so
    
  6. .odbcinst.ini ファイルを保存して閉じます。

ArcGIS Server コンピューターへの SAP HANA のインストール

SAP HANA クライアント ODBC ドライバーをダウンロードし、ArcGIS Server サイトの各コンピューターにインストールします。

各 ArcGIS Server の Windows コンピューターに、SAP HANA クライアントの ODBC ドライバーをインストールします:

  1. SAP Support Portal からサポートされている 64 ビット SAP HANA クライアントをダウンロードして、ArcGIS Server サイトの各コンピューターにインストールします。

  2. Windows システムの PATH 環境変数に、SAP HANA クライアントのインストール ディレクトリーを追加します。

    たとえば、SAP HANA クライアントの ODBC ドライバーを C:\Program Files\sap\hdbclient にインストールした場合は、それを PATH 環境変数に追加します。

SAP HANA クライアント ODBC ドライバーをインストールしたら、ArcGIS Server サイトへのデータベース コネクションの登録を開始できます。 ただし、下記の条件が該当する場合は、データベース コネクションを登録する前に、ODBC ドライバー用にデータ ソース名を構成する必要があります:

  • SAP HANA 1.0 (サポートされている任意のサービス パック リリース) を使用している。

  • SAP HANA Cloud に接続している。

  • ArcGIS Server 10.6 またはそれ以前からデータベースに接続している。

  • SAP HANA サーバーの SAP HANA サーバー名と SQL ポート番号の文字数が 31 文字を超えている。

Windows での ODBC データ ソース名の構成 (必要な場合)

データ ソース名が必要な場合は、次の手順に従って、各 ArcGIS Server Windows コンピューター上で SAP HANA クライアントの ODBC ドライバー用にシステムのデータ ソース名 (DSN) を構成します:

注意:

ArcGIS からデータベースに接続するときに、データ ソース名を使用します。 この同じデータベースに接続する SAP HANA ODBC クライアントを構成するときには、すべて同じ名前を使用します。 たとえば、ArcGIS Pro コンピューター上で SAP HANA クライアントの ODBC ドライバーを構成するときには、ArcGIS Server コンピューター上で ODBC ドライバーに対するデータ ソース名を構成するときに使用するのと同じデータ ソース名を使用します。 同じ名前を使用しない場合、公開時に問題が発生します。これは、ArcGIS が、公開対象のデータの接続文字列と、登録されるデータベースとを比較するためです。

  1. ODBC Data Source Administrator (64 ビット) を開きます。

  2. ODBC Data データ ソース アドミニストレーター (64 ビット) の システム DSN タブをクリックし、追加 をクリックします。

    データ ソースの新規作成 ダイアログ ボックスが表示されます。

  3. SAP HANA ODBC クライアントを選択して、完了 をクリックします。

  4. データベースの Data Source NameDescriptionServer:Port 情報を入力します。

  5. TLS/SSL セクションで、Connect to the database using TLS/SSL および Validate the TLS/SSL certificate をオンにします。

  6. ODBC Advanced Setup ダイアログ ボックスを開き、Special property settings セクションに SPATIALTYPES=1 というキー値を追加します。 OK をクリックして変更内容を適用し、ODBC Advanced Setup ダイアログ ボックスを閉じます。

    注意:

    ArcGIS Server を、サポートされているバージョンである SAP HANA 2.0 以降を使用している場合、この手順は省略できます。

  7. ODBC クライアント設定および ODBC Data Source Administrator で OK をクリックして閉じます。

データベース コネクションの作成

データベース コネクション (.sde ファイル) がデータベースへの接続を認証する必要があります。

データベースへの接続を必要とする ArcGIS Server サイト内のコンピューターから、ArcPy の CreateDatabaseConnection 関数を呼び出すことができます。 この関数の実行については、ArcGIS Pro ヘルプの「データベース コネクションの作成」をご参照ください。

ArcGIS Server でデータベース コネクション ファイルを使用するには、ユーザー情報を接続ファイルに保存する必要があります。

接続ファイルの登録

ArcGIS Server サイトでデータにアクセスできるようにするには、作成したデータベース コネクション ファイルを使用して、ArcGIS Pro に登録済みデータ ストアを追加するか、ポータルにデータ ストア アイテムを追加します