Subversion 用の LS 最適化

このセクションの内容は、Git を使用している場合には該当しません。Subversion にのみ該当します。

前のセクションで説明した一意性検出機能では、チェックインまたはチェックアウトの実行前に、リモートリポジトリ内の現在のデータベースの内容を調べる必要があります。そのために、サーバーは LS 操作を何回か実行する必要があります。http または https プロトコルでアクセスされる Subversion リポジトリとの VCS 統合を使用する場合は、Subversion 向けの LS 最適化を有効にすることをお勧めします。これらのプロトコルを使用した場合のリモートリポジトリの調査にはコストがかかってしまう可能性があるためです。

svn プロトコルまたは file プロトコルを通じて Microsoft Team Foundation Server (TFS) または Subversion を使用する場合は、この最適化を有効にする必要はありません。そうした場合には、リモートリポジトリの内容の調査が効果的です。

デフォルトでは、Subversion 用の LS 最適化は、Virtual DataPort を Windows で実行している場合は有効になりますが、Linux で実行している場合は無効になります。ただし、Linux でもこの最適化を有効にすることをお勧めします。LS 操作は、Virtual DataPort の VCS コマンドにより、さまざまなポイントで実行されるからです。この最適化は VCS 統合のパフォーマンス全体に効果をもたらします。

LS 最適化の有効化

この最適化を有効にするには、以下の手順に従います。

  1. [VQL Shell] を開きます ([Tools] メニュー)。

  2. 以下のコマンドを実行します。

    SET 'com.denodo.vdb.vdbinterface.server.vcs.VCSConfigurationManager.lsopt'
        = '3'
    
  1. Virtual DataPort サーバーを再起動します。

com.denodo.vdb.vdbinterface.server.vcs.VCSConfigurationManager.lsopt プロパティの値には、以下のいずれかを指定できます。

  • 0: LS 最適化を無効にします。

  • 1: Virtual DataPort を Windows で実行している場合に、LS 最適化を有効にします。

  • 2: Virtual DataPort を Linux で実行している場合に、LS 最適化を有効にします。

  • 3: オペレーティングシステムに関係なく、LS 最適化を有効にします。


この最適化が有効になっていることを確認するには、以下の手順に従います。

  1. バージョン管理対象のデータベースに接続します。

  2. VQL シェルを開き、以下のコマンドを実行します。

    CALL LOGCONTROLLER('com.denodo.vdb.interpreter.execution.vcs.svn.SvnPlugin',
        'DEBUG');
    
    VCSCONTENTS '/databases/<database_name>' FILES;
    
    CALL LOGCONTROLLER('com.denodo.vdb.interpreter.execution.vcs.svn.SvnPlugin',
        'ERROR');
    
  1. <DENODO_HOME>/logs/vdp/vdp.log を開き、ファイルの最後に次のような記述があることを確認します。

com.denodo.vdb.interpreter.execution.vcs.svn.SvnPlugin - Executing
<DENODO_HOME>/dll/vdp/svn-fastls/linux/denodo-fastsvnls
  1. 操作の実行時間も次のように記録されています。

Total execution time = <time_in_milliseconds>

動作確認済みの環境

この機能は、Windows および以下の Linux ディストリビューションで動作確認済みです。

  • Red Hat Enterprise Linux 6.5 x86_64

  • Red Hat Enterprise Linux 6.6 x86

  • Red Hat Enterprise Linux 7 x86_64

  • Ubuntu 13.10 x86

  • Ubuntu 13.10 x86_64

  • Ubuntu 14.04 LTS x86

  • Ubuntu 14.04 LTS x86_64

上記以外の環境でもこの拡張機能を利用できますが、最適化を実装するネイティブな実行可能ファイルを構築する必要があります。そのためには、 <DENODO_HOME>/dll/vdp/svn-fastls/linux/build/README に詳述されている手順に従ってください。