
こんにちは。プロダクトチームの周です。
CData ODBC ドライバは「AutoCache」や「CacheMetadata」などのキャッシュ機能を提供しており、SQLite をキャッシュデータベースとしてご利用いただけますが、ビルド9278以降のODBC ドライバでは従来と違う設定方法が必要になりますので、本記事ではSQLite ネイティブドライバを利用する設定方法を紹介いたします。
CData ODBC ドライバのキャッシュ機能について
CData ODBC ドライバは様々なデータソースを標準のODBC データベースと同様にアクセスできる機能を提供しております。更に内蔵のキャッシュ機能を利用しますと、特にクラウドサービスなどのデータへのアクセスが速くなったりAPI コール数が減るなど、パフォーマンスが向上するいくつかの利点があります。「データを自動的にキャッシュ」や「メタデータのキャッシュ」などキャッシュ機能の詳細については、ご利用の製品のヘルプページをご参照いただけますと幸いです。
例: CData ODBC Driver for Microsoft Dynamics 365 - データのキャッシュ
SQLite ネイティブドライバを設定する
CData ODBC ドライバのキャッシュ機能を有効にするには、通常ODBC データソースアドミニストレーターのDSN 構成画面で必要な接続プロパティを設定しますが、SQLite をキャッシュデータベースとして利用する場合、ビルド9278以降のCData ODBC ドライバではSQLite ネイティブドライバを設定していただく必要があります。以下はステップバイステップの設定手順です。
1..NET Frameworkのグローバルアセンブリキャッシュツール(gacutil.exe)を使用するため、ご利用のPCでインストールされているかご確認ください。
例:C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\gacutil.exe
gacutil.exeが見つからない場合は、.NET Framework 4.8.1 Developer Packを下記リンクからダウンロードしてインストールします。
https://dotnet.microsoft.com/en-us/download/dotnet-framework/thank-you/net481-developer-pack-offline-installer
2.64-bit System.Data.Sqliteパッケージを下記リンクからダウンロードして、例えば「C:\Test」に保存します。
https://system.data.sqlite.org/downloads/1.0.119.0/sqlite-netFx46-setup-bundle-x64-2015-1.0.119.0.exe
3.Windowsスタートメニューから「コマンドプロンプト」を「管理者として実行」で開きます。

4.「C:\Test」に移動して「sqlite-netFx46-setup-bundle-x64-2015-1.0.119.0.exe」を起動して画面の指示に従ってインストールを完了させます。

5.「C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools」に移動して下記コマンドをドライバをGACにインストールします。
gacutil.exe /i "c:\Program Files\System.Data.SQLite\2015\bin\System.Data.SQLite.dll"

6.下記コマンドで「machine.config」ファイルをメモ帳で開きます。
notepad.exe c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config

7.「machine.config」ファイルの下記XMLタグを見つけます。
......
以下のSQLite アセンブリ情報を追加して保存します。

8.PCを再起動して、上記変更を有効にします。
ODBC のDSN 構成画面でキャッシュ機能を有効にする
キャッシュ機能を有効にするためにODBC データソースアドミニストレーターのDSN 構成画面の「詳細」タブで必要な接続プロパティを設定します。例として今回は、CData ODBC Driver for Microsoft Dynamics 365 でメタデータのキャッシュを有効にする以下の接続プロパティを設定します。
Cache Metadata | True |
Cache Provider | System.Data.Sqlite |
Cache Connection | DataSource=C:\\Test\\Dynamics365cache.db |

設定完了後は、「データモデル」タブを開きますと、メタデータのキャッシュが「DataSource」に指定されたSQLite のデータベースファイル(例:C:\Test\Dynamics365cache.db)に書き込まれますので、ご確認ください。また、2回目以降はメタデータがキャッシュデータベースから取得できるため、速くなります。
おわりに
本記事ではSQLite をCData ODBC ドライバのキャッシュデータベースとして利用する設定方法を紹介いたしました。CData ODBC ドライバは 30 日間のトライアル利用が可能ですので、是非お試しください!
https://jp.cdata.com/odbc/