GoogleDrivePut - GoogleDriveへの出力

GoogleDriveのテーブルに対して更新を行います。

GoogleDriveへのアクセスはCData Software Inc.社の提供する技術を利用してRDBのようにSQLでアクセスする手段を提供します。利用できるSQLなどの詳細についてはこちらも参考にしてください。

その他CDataアダプターをご利用する際の注意事項に関してはこちらをご覧ください。

ストリーム情報

入力フォーマットRecord
接続数1
説明 入力ストリームのフィールド定義を専用の設定画面で行います。
このフィールド定義は直前に連結したマッパーの出力ストリームのフィールド定義にコピーされ、そこに対して値のマッピングを行います。そのため、このコンポーネントに連結できるコンポーネントはマッパーのみとなっています。
出力フォーマットRecord
説明

入力ストリームは出力ストリームにコピーされます。

コンポーネントプロパティ

名前データ型マッピング説明
コネクション名connection- 接続先のGoogleDriveを指定します。 コネクションペインまたは管理コンソールにて作成されたGoogleDrive接続名を選択します。
実行する処理choice- 実行する更新操作を指定します。
各モードごとの動作については、下記トピック「実行する処理ごとの動作」を参照してください。
テーブル名stringIn & Out 更新対象のテーブル名を指定します。
値フィールドをクリックすると、テーブル名とフィールドの設定画面が表示されます。ここでフィールド定義を行うことによってテーブル名が自動で設定されます。設定画面については、下記トピック「テーブル名とフィールドの設定」を参照してください。
処理件数intOut 実際に更新されたレコード件数が取得できます。

バッチ処理件数が2以上の場合はバッチ処理になるため、使用するドライバーまたは対象の データベースに依存して正しい件数がとれない場合があります。
件数が不明の場合は-1の値を設定します。
※バッチ処理件数プロパティが表示されないプロパティでは、バッチ処理は対応していません。
タイムアウト(秒)intIn & Out GoogleDriveへ更新文を発行してから結果が返ってくるまでの待ち時間を秒単位で指定します。
指定時間を経過しても実行が終わらない場合は汎用となります。
0の場合はタイムアウトすることはありません。
入力category- 入力ストリームのフィールド定義を行います。実行する処理が「Insert」以外の場合、テーブルのキーとなるカラムの「キーにする」項目で「はい」を指定します。

エラー処理

タイプパラメータエラー処理フローへのストリームエラー
コード
説明
汎用 なし コンポーネントの入力ストリーム なし コネクション名に指定したコネクションが見つからない場合
例外コードテーブルまたはフィールドが見つからない場合
例外コードSQLの実行に失敗した場合
接続エラー なし コンポーネントの入力ストリーム なし GoogleDriveとの接続に失敗した場合

フローの強制終了

フローを強制終了すると、通常は実行中のコンポーネントの処理が終了してから次のコンポーネントに制御が遷移する時点でフローがアボートしますが、本コンポーネントでは実行中の処理を強制的に終了してフローがアボートします。

実行する処理ごとの動作

Insert

フィールド定義にあるすべてのフィールドをテーブルにレコードとして挿入します。

Update

「キーにする」項目で「はい」を指定したフィールドにマッチするレコードを、キー以外のフィールドを用いて更新します。
キーにするフィールドを更新することはできません。

Delete

「キーにする」項目で「はい」を指定したフィールドにマッチするレコードを削除します。
キーにするフィールド以外は使用しません。

テーブルとフィールドの設定

GoogleDriveのテーブルに対して処理するテーブルとフィールドの選択は、専用のダイアログボックスから行います。 ダイアログボックスから選択すると、インスペクタの入力タブに処理対象フィールドとして表示されます。
キーを指定するには、専用のダイアログボックスでフィールドを選択してから、インスペクタの入力タブでキーとなるフィールドの「キーにする」項目を「はい」にします。
表示名に値を設定することでテーブル上の実際のカラム名とストリーム定義で使用するフィールド名を別にすることができます。

●定義画面を表示する

定義画面を表示するには、以下のいずれかの操作を行います。

●読み込むテーブルを指定する

定義画面を表示すると(1)にテーブルの一覧が表示されます。テーブルを指定すると、(3)(5)に情報が表示されます。

●処理対象フィールドを指定する

テーブルを指定すると、(5)にテーブルのフィールド一覧が表示されます。初期状態では、すべてのフィールドが処理対象になるように(4)のチェックボックスがオンになっています。

フィールドを選択して「OK」をクリックすると、インスペクタの入力タブにフィールド一覧が表示されます。
キーを指定するには、キーとなるフィールドの「キーにする」項目を「はい」にします。
表示名に値を設定することでテーブル上の実際のカラム名とストリーム定義で使用するフィールド名を別にすることができます。

●GoogleDrive コネクション設定

認証スキーム[AuthScheme]

  • Auto:設定した他の接続プロパティに基づいて、ドライバーが自動的に決定。
  • OAuth:標準のユーザーアカウントを使用してOAuth 認証を実行する場合に設定。
  • OAuthJWT:OAuth サービスアカウントを使用してOAuth 認証を実行する場合に設定。
  • GCPInstanceAccount:Google Cloud Platform インスタンスからアクセストークンを取得する場合に設定。


Default Value: Auto
Possible Values:
Auto0
OAuth1
OAuthJWT2
GCPInstanceAccount3
Auto Cache[AutoCache]

AutoCache がtrue に設定されていると、本製品 はテーブルデータのキャッシュを選択したデータベースに自動的に保存します。

キャッシュデータベースの設定

AutoCache がtrue の場合、本製品 はシンプルなファイルベースストアにキャッシュします。次のプロパティを使って、場所またはキャッシュを別のデータベースに構成できます。

関連項目

  • CacheMetadata:このプロパティは、Google Drive メタデータから取得したテーブルスキーマを永続化することによって、ネットワークを横断するメタデータの量を減らします。メタデータは、すべての接続で取得する必要はなく、一度取得するだけです。
  • 明示的なデータのキャッシュ:このセクションでは、AutoCacheOffline で使用する例をさらに示します。
  • CACHE ステートメント:CACHE ステートメントを使って、SELECT クエリを永続化し、キャッシュを管理(例えば、スキーマのリフレッシュ)ができます。


Default Value: false
Browsable Schemas[BrowsableSchemas]

スキーマをデータベースからリストすると、負荷がかかる可能性があります。接続文字列でスキーマのリストを提供すると、 パフォーマンスが向上します。

Cache Connection[CacheConnection]

キャッシュデータベースは、CacheDriver およびCacheConnection プロパティに基づいて決定されます。キャッシュデータベースを使用するには、両方のプロパティが必須です。以下に、一般的なキャッシュデータベースの設定例を示します。キャッシュデータベースのドライバーの設定方法についての詳細は、CacheDriver を参照してください。

CacheConnection プロパティで指定された接続文字列は、基底のCacheDriver に直接渡されます。使用可能なプロパティについての詳細は、JDBC driver 固有のドキュメントを参照してください。アプリケーションのクラスパスにJDBC driver を含めてください。

Derby およびJava DB

本製品 はDerby へのキャッシュを簡略化します。CacheLocation プロパティを設定するだけで基本的な接続を確立できます。

あるいは、CacheDriverCacheConnection を使用してDerby への接続を手動で設定することもできます。次はDerby JDBC URL シンタックスです。

jdbc:derby:[subsubprotocol:][databaseName][;attribute=value[;attribute=value] ... ]
例えば、インメモリデータベースにキャッシュするには、次を使用します。
jdbc:derby:memory

SQLite

SQLite へキャッシュするにはSQLite JDBC ドライバーを使用できます。次はJDBC URL の構文です。

jdbc:sqlite:dataSource
  • Data Source:SQLite データベースファイルへのパス。または、:memoryの値を使ってインメモリにキャッシュします。

MySQL

インストールにはCData JDBC Driver for MySQL が含まれています。次にJDBC URL の例を示します。

jdbc:mysql:User=root;Password=root;Server=localhost;Port=3306;Database=cache
次は一般的な接続プロパティです。

  • Server:接続しようとするサーバーのIP アドレス、もしくはドメイン名。
  • Port:サーバーが起動しているポート名。
  • User:データベースへの認証のためのユーザー名。
  • Password:データベースへの認証のためのパスワード。
  • Database:データベース名。

SQL Server

Microsoft JDBC Driver for SQL Server のJDBC URL の構文は次のとおりです。

jdbc:sqlserver://[serverName[\instance][:port]][;database=databaseName][;property=value[;property=value] ... ]
次に例を示します。
jdbc:sqlserver://localhost\sqlexpress:1433;integratedSecurity=true
次は一般的なSQL Server 接続プロパティです。
  • Server:SQL Server を起動しているコンピューターのネットワークアドレス名。デフォルトインスタンスの代わりに名前付きインスタンスに接続する場合は、このプロパティを使ってホスト名およびインスタンスをバックスラッシュで区切って指定できます。
  • Port:SQL Server が起動しているポート。
  • Database:SQL Server データベース名。
  • Integrated Security:現在のWindows アカウントを認証に使用する場合は、このオプションをtrue に設定します。接続でUser とPassword を設定する場合は、このオプションをfalse に設定します。

    統合セキュリティを使用するには、Windows システムパス上のフォルダにsqljdbc_auth.dll も追加する必要があります。このファイルは、Microsoft JDBC Driver for SQL Server インストールのauth サブフォルダにあります。アセンブリのビット数はJVM のビット数と一致する必要があります。

  • User ID:SQL Server との認証に使われるユーザー名。このプロパティは、統合セキュリティを使用していない場合にのみ必要です。
  • Password:SQL Server との認証に使われるパスワード。このプロパティは、統合セキュリティを使用していない場合にのみ必要です。

Oracle

次はOracle JDBC Thin ドライバーの従来のJDBC URL シンタックスです。

jdbc:oracle:thin:[userId/password]@[//]host[[:port][:sid]]
次に例を示します。
jdbc:oracle:thin:scott/tiger@myhost:1521:orcl
次は一般的な接続プロパティです。
  • Data Source:Oracle データベースを識別する接続記述子。これは、TSN 接続記述子、接続記述子を決定するOracle Net Services 名、またはバージョン11g以降ではEasy Connect ネーミング(任意のポート名およびサービス名を持つOracle サーバーのホスト名)になります。

  • Password:Oracle データベースへの認証のためのパスワード。
  • User Id:Oracle データベースへの認証のためのユーザーID。

PostgreSQL

次は公式のPostgreSQL JDBC ドライバーのJDBC URL 構文です。

jdbc:postgresql:[//[host[:port]]/]database[[?option=value][[&option=value][&option=value] ... ]]
例えば、次の接続文字列はデフォルトホスト(localhost)およびポート(5432)上のデータベースに接続します。
jdbc:postgresql:postgres
一般的な接続プロパティは次のとおりです:
  • Host:PostgreSQL データベースをホストしているサーバーのアドレス。
  • Port:PostgreSQL データベースをホスティングしているサーバーに接続する際のポート。
  • Database:データベース名。
  • User Name:PostgreSQL データベースの認証用に提供されたユーザーId。"user" パラメータを使ってJDBC URL に指定できます。
  • Password:PostgreSQL データベースへの認証のためのパスワード。

Cache Driver[CacheDriver]

CData JDBC drivers を含むJDBC ドライバーが用意されている任意のデータベースにキャッシュできます。

キャッシュデータベースは、CacheDriver およびCacheConnection プロパティに基づいて決定されます。CacheDriver は、データのキャッシュに使用するJDBC ドライバークラスの名前です。

CacheDriver JAR ファイルをクラスパスに追加する必要があります。

次の例は、いくつかの主要なデータベースにキャッシュする方法を示しています。JDBC URL 構文および一般的な接続プロパティの詳細については、CacheConnection を参照してください。

Derby およびJava DB

本製品 はDerby 設定を簡略化します。Java DB は、Derby のOracle ディストリビューションです。JAR ファイルはJDK に同梱されています。JAR ファイル、derby.jar は、JDK インストールフォルダのdb サブフォルダに格納されています。ほどんどのキャッシュシナリオでは、derby.jar をクラスパスに追加した後、次のものだけを指定する必要があります。

jdbc:googledrive:CacheLocation='c:/Temp/cachedir';InitiateOAuth=GETANDREFRESH;
Derby JDBC URL をカスタマイズするには、CacheDriver およびCacheConnection を使用します。例えば、インメモリデータベースにキャッシュするには、次のようにJDBC URL を使用します。
jdbc:googledrive:CacheDriver=org.apache.derby.jdbc.EmbeddedDriver;CacheConnection='jdbc:derby:memory';InitiateOAuth=GETANDREFRESH;

SQLite

次はSQLite JDBC ドライバーのJDBC URL です。

jdbc:googledrive:CacheDriver=org.sqlite.JDBC;CacheConnection='jdbc:sqlite:C:/Temp/sqlite.db';InitiateOAuth=GETANDREFRESH;

MySQL

次はCData JDBC Driver for MySQL のJDBC URL です。

  jdbc:googledrive:Cache Driver=cdata.jdbc.mysql.MySQLDriver;Cache Connection='jdbc:mysql:Server=localhost;Port=3306;Database=cache;User=root;Password=123456';InitiateOAuth=GETANDREFRESH;
  
CData JDBC Driver for MySQL は、CData JDBC Driver for Google Drive 2021J インストールディレクトリの[lib]サブフォルダに配置されています。

SQL Server

次のJDBC URL はMicrosoft JDBC Driver for SQL Server を使用しています。

jdbc:googledrive:Cache Driver=com.microsoft.sqlserver.jdbc.SQLServerDriver;Cache Connection='jdbc:sqlserver://localhost\sqlexpress:7437;user=sa;password=123456;databaseName=Cache';InitiateOAuth=GETANDREFRESH;

Oracle

次はOracle Thin Client のJDBC URL です。

jdbc:googledrive:Cache Driver=oracle.jdbc.OracleDriver;CacheConnection='jdbc:oracle:thin:scott/tiger@localhost:1521:orcldb';InitiateOAuth=GETANDREFRESH;
NOTE:9i より前のバージョンのOracle を使用している場合は、キャッシュドライバーは代わりにoracle.jdbc.driver.OracleDriver になります。

PostgreSQL

次のJDBC URL は公式のPostgreSQL JDBC ドライバーを使用しています。

jdbc:googledrive:CacheDriver=org.postgresql.Driver;CacheConnection='jdbc:postgresql://localhost:5433/postgres?user=postgres&password=admin';InitiateOAuth=GETANDREFRESH;

Cache Location[CacheLocation]

CacheLocation は単純なファイルベースキャッシュです。本製品 はJava DB、Oracle のDerby データベースのディストリビューションを使用しています。Java DB にキャッシュするには、Java DB JAR ファイルをクラスパスに追加する必要があります。JAR ファイル、derby.jar はJDK に同梱され、JDK インストールの[db]サブフォルダに配置されています。

指定しない場合、デフォルトの場所は"%APPDATA%\\CData\\GoogleDrive Data Provider" となり、%APPDATA%はユーザーのコンフィギュレーションディレクトリに設定されます:

Platform %APPDATA%
Windows APPDATA 環境変数の値
Mac ~/Library/Application Support
Linux ~/.config

関連項目

  • AutoCache:後のオフライン使用のために、暗黙的にキャッシュを作成して維持するように設定します。
  • CacheMetadata:Google Drive カタログをCacheLocation に永続化するように設定します。


Default Value: %APPDATA%\\CData\\GoogleDrive Data Provider
Cache Metadata[CacheMetadata]

このプロパティを設定してクエリを実行すると、Google Drive カタログのテーブルメタデータが設定されている場合にはCacheLocation で指定されたファイルストアに、設定されていない場合にはホームディレクトリにキャッシュされます。テーブルのメタデータの取得は、テーブルがはじめてクエリされた際に一度だけ行われます。

CacheMetadata を使用するタイミング

本製品 は、はじめてテーブルやビューを発見したときから2時間の間、メタデータをインメモリに自動的に保管します。そのため、CacheMetadata は一般的には必要ありません。CacheMetadata は、大量のメタデータを扱う場合でメタデータオペレーションのコストが高い場合や、短い接続を大量に行う場合などに役立ちます。

CacheMetadata を使用しないタイミング

  • 変化しやすいメタデータを扱う場合:テーブルのメタデータは、はじめにテーブルへの接続がなされた時に一度しか取得されません。それ以降の、新規、変更、削除されたカラムを取得するには、メタデータキャッシュを削除してリビルドする必要があります。よって、メタデータが頻繁に変更される場合には、インメモリキャッシュを使う方が便利です。
  • データベースにキャッシュする場合CacheMetadataCacheLocation でのみ使用可能です。CacheDriver およびCacheConnection プロパティで他のデータベースへのキャッシュが可能です。黙示的なキャッシュにはAutoCache を使ってください。もしくは、 CACHE ステートメント で明示的なキャッシュが可能です。


Default Value: false
Cache Tolerance[CacheTolerance]

キャッシュ内の失効データに対する許容範囲の秒数。これは、AutoCache が使用されている場合のみ有効です。本製品 は、許容インターバルが過ぎると、新しいレコードがないかデータソースをチェックしに行きます。それ以外は、キャッシュから直接データを返します。


Default Value: 600
Connection Life Time[ConnectionLifeTime]

接続の最大有効期間(秒単位)。その時間が経過すると、接続オブジェクトは削除されます。デフォルトは0で、接続の有効期間に制限がないことを示します。


Default Value: 0
Connect On Open[ConnectOnOpen]

true に設定すると、接続が開かれたときにGoogle Drive への接続が作成されます。このプロパティは、さまざまなデータベースツールで[接続のテスト]機能を利用できるようにします。

この機能はNOOP コマンドとして作用します。Google Drive に接続できることを確認するために使用され、この初期接続からは何も維持されません。

このプロパティをfalse に設定すると、パフォーマンスが向上する場合があります(接続が開かれる回数に依存します)。


Default Value: false
Firewall Password[FirewallPassword]

このプロパティは、FirewallType により指定された認証メソッドに則り、FirewallServer およびFirewallPort で指定されたプロキシに渡されます。

Firewall Port[FirewallPort]

ファイアウォールトラバーサルを許容するために設定するプロキシベースのファイアウォールのTCP ポート。名前もしくはIP アドレスを指定するには、FirewallServer を使います。FirewallType でプロトコルを指定します。


Default Value: 0
Firewall Server[FirewallServer]

ファイアウォールトラバーサルを許容するために設定するIP アドレス、DNS 名、もしくはプロキシホスト名を指定するプロパティです。プロトコルはFirewallType で指定されます。このプロパティとFirewallServer を使って、SOCKS 経由での接続、もしくはトンネリングが可能です。HTTP プロキシへの接続には、ProxyServer を使用します。

本製品 はデフォルトでシステムプロキシを使うので注意してください。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定してください。

Firewall Type[FirewallType]

このプロパティは、本製品 がFirewallServer プロキシ経由でトンネルトラフィックを使うためのプロトコルを指定します。デフォルトでは、本製品 はシステムプロキシに接続します。この動作を無効化し次のプロキシタイプのどれかで接続するには、ProxyAutoDetect をfalse に設定します。

タイプ デフォルトポート 説明
TUNNEL 80 これが設定されている場合、本製品 はGoogle Drive への接続を開き、プロキシを経由して通信が行われます。
SOCKS4 1080 これが設定されている場合、本製品 はデータをFirewallServer およびFirewallPort で指定されたSOCS 4 プロキシ経由で送信し、接続リクエストが許容されるかどうかを決定します。
SOCKS5 1080 これが設定されている場合、本製品 はデータをFirewallServer およびFirewallPort で指定されたSOCS 5 プロキシ経由で送信します。プロキシに認証が必要な場合には、FirewallUser およびFirewallPassword をプロキシが認識する認証情報に設定します。

HTTP プロキシへの接続には、ProxyServer およびProxyPort ポートを使ってください。HTTP プロキシへの認証には、ProxyAuthSchemeProxyUser、およびProxyPassword を使ってください。


Default Value: NONE
Possible Values:
NONE0
TUNNEL1
SOCKS42
SOCKS53
Firewall User[FirewallUser]

FirewallUser およびFirewallPassword プロパティは、FirewallType により指定された認証方式に則り、FirewallServer、およびFirewallPort で指定されたプロキシに対しての認証に使われます。

イニシエートOAuth[InitiateOAuth]

次のオプションが利用可能です。

  1. OFF:OAuth フローが完全にユーザーにより操作されることを示します。認証にはOAuth アクセストークンが必要です。
  2. GETANDREFRESH:OAuth フローが完全に本製品 により操作されることを示します。現在トークンが存在しない場合にはブラウザを通じてユーザーをプロンプトすることで取得されます。トークンが存在する場合には必要に応じてリフレッシュされます。
  3. REFRESH:本製品 がOAuthAccessToken のリフレッシュのみを操作することを示します。ユーザーは本製品 によりブラウザを通じて認証することをプロンプトされることはありません。OAuthAccessToken とOAuthRefreshToken の最初の取得はユーザーが行う必要があります。


Default Value: OFF
Possible Values:
OFF0
GETANDREFRESH1
REFRESH2
Location[Location]

本製品 のスキーマファイル(テーブルとビューの場合は.rsd ファイル、ストアドプロシージャの場合は.rsb ファイル)を含むディレクトリへのパス。このフォルダの場所は、実行ファイルの場所からの相対パスにすることができます。Location プロパティは、定義をカスタマイズしたり(例えば、カラム名を変更する、カラムを無視するなど)、新しいテーブル、ビュー、またはストアドプロシージャでデータモデルを拡張する場合にのみ必要です。

指定しない場合、デフォルトの場所は"%APPDATA%\\CData\\GoogleDrive Data Provider\\Schema" となり、%APPDATA% はユーザーのコンフィギュレーションディレクトリに設定されます:

Platform %APPDATA%
Windows APPDATA 環境変数の値
Mac ~/Library/Application Support
Linux ~/.config


Default Value: %APPDATA%\\CData\\GoogleDrive Data Provider\\Schema
Logfile[Logfile]

このプロパティを設定すると、認証が実行されたときやクエリが実行されたときなど、さまざまなタスクを実行する際に、本製品 がログファイルを生成します。指定したファイルが存在しない場合は作成されます。

接続文字列およびバージョン情報も記録されますが、機密情報を含む接続プロパティは自動的にマスクされます。

相対ファイルパスが指定された場合、ログファイルの場所は、Location 接続プロパティにあるパスに基づいて解決されます。

ログファイルに記録される内容をより細かく制御するには、Verbosity プロパティを調整してください。

ログ内容はいくつかのモジュールに分類されます。LogModules プロパティを使うことで、個々のモジュールを表示または非表示にすることができます。

新しいログファイルの作成前にログファイル1つの最大サイズを変更する方法については、MaxLogFileSize を参照してください。

生成されるログファイル数に上限を設定したい場合は、MaxLogFileCount を使用してください。

Java のログ出力

Java のログ出力もサポートされています。Java のログ出力を有効化するには、Logfile を次のように設定します:

Logfile=JAVALOG://myloggername

上記の例のように、JAVALOG:// がJava のログを使用するための必須プレフィックスで、独自のロガーで代用することになります。

次に、指定されたロガーのgetLogger メソッドが呼び出され、指定された値を使用してLogger インスタンスが作成されます。ログのインスタンスがすでに存在する場合は、既存のインスタンスを参照します。

Java のログ出力が有効になっている場合、Verbosity は特定のログレベルに対応します。

Log Modules[LogModules]

指定された(';' で区切られた)モジュールのみがログファイルに含まれます。デフォルトではすべてのモジュールが含まれます。

概要はログ ページを参照してください。

Max Log File Count[MaxLogFileCount]

サイズリミットを超えると、日付と時刻が末尾に追加された新しいログが同じフォルダ内に作成され、最も古いログファイルが削除されます。

サポートされている最小値は2です。0や負の値は、数に制限がないことを示します。

生成されるログファイルの最大サイズは、MaxLogFileSize で調整できます。


Default Value: -1
Max Log File Size[MaxLogFileSize]

サイズリミットを超えると、日付と時刻が末尾に追加された新しいログが同じフォルダ内に作成されます。リミットのデフォルトは100 MB です。100 kB より小さい値を設定した場合、100 kB がリミットとなります。

生成されるログファイルの最大数は、MaxLogFileCount で調整できます。


Default Value: 100MB
Max Rows[MaxRows]

クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。


Default Value: -1
OAuthアクセストークン[OAuthAccessToken]

OAuth を使用して接続するには、OAuthAccessToken プロパティが使用されます。認証プロセスにおいてOAuth サーバーからOAuthAccessToken が取得されます。このプロパティは、サーバーに依存するタイムアウトがあり、要求の間で再利用することができます。

アクセストークンは、ユーザー名とパスワードの代わりに使用されます。サーバー上で維持することで、認証情報が保護されます。

OAuthクライアントID[OAuthClientId]

OAuth アプリケーションの登録の一環として、コンシューマキーとも呼ばれるOAuthClientId 値、およびクライアントシークレットOAuthClientSecret が提供されます。

OAuthクライアントシークレット[OAuthClientSecret]

OAuth アプリケーションの登録の一環として、コンシューマキーとも呼ばれるOAuthClientId が提供されます。また、コンシューマーシークレットと呼ばれるクライアントシークレットも提供されます。クライアントシークレットをOAuthClientSecret プロパティに設定します。

OAuth Expires In[OAuthExpiresIn]

OAuthTokenTimestamp と併用して、アクセストークンの有効期限を決定します。

OAuth JWT Cert[OAuthJWTCert]

クライアント証明書のための証明書ストア名。

OAuthJWTCertType フィールドは、OAuthJWTCert により指定された証明書ストアの種類を指定します。 ストアがパスワードで保護されている場合は、OAuthJWTCertPassword でパスワードを指定します。

OAuthJWTCert は、OAuthJWTCertSubject フィールドとともにクライアント証明書を指定するために使われます。 OAuthJWTCert に値がある場合で、OAuthJWTCertSubject が設定されている場合は、証明書の検索が始まります。 詳しくは、OAuthJWTCertSubject フィールドを参照してください。

証明書ストアの指定はプラットフォームに依存します。

Windows の共通のユーザとシステム証明書ストアの指定は以下のとおりです。

MY個人証明書と関連付けられた秘密キーを格納している証明書ストア。
CA証明機関の証明書。
ROOTルート証明書。
SPCソフトウェア発行元証明書。

Javaでは、証明書ストアは通常、証明書および任意の秘密キーを含むファイルです。

証明書ストアの種類がPFXFile の場合は、このプロパティにファイル名を設定します。 PFXBlob の場合は、このプロパティをPFX ファイルのバイナリコンテンツ(例えば、PKCS12証明書ストア)に設定する必要があります。

OAuth JWT Cert Password[OAuthJWTCertPassword]

証明書ストアでパスワードが必要である場合、このプロパティを使用してパスワードを指定し、証明書ストアにアクセスできます。

GOOGLEJSON OAuthJWTCertType を使用する場合は必要ありません。Google JSON キーは暗号化されていません。

OAuth JWT Cert Subject[OAuthJWTCertSubject]

証明書の件名は、証明書をロードするときにストア内の証明書を検索するために使用されます。

完全に一致するものが見つからない場合、ストアはプロパティの値を含む件名を検索します。

それでも一致するものが見つからない場合、プロパティは空白で設定され、証明書は選択されません。

"*" に設定すると、証明書ストアの1番目の証明書が選択されます。

証明書の件名は識別の名前フィールドおよび値のカンマ区切りのリストです。 例えば、"CN=www.server.com, OU=test, C=US, E=support@cdata.com"。共通のフィールドとその説明は以下のとおりです。

フィールド説明
CN共通名。一般的には、www.server.com のようなホスト名です。
O法人名
OU法人の部署名
L法人の住所(市町村名)
S法人の住所(都道府県)
C国名
EEメールアドレス

フィールド値にカンマが含まれている場合は、それを引用符で囲む必要があります。


Default Value: *
OAuth JWT Cert Type[OAuthJWTCertType]

このプロパティには次の値の一つを設定できます。

USERWindows の場合、現在のユーザーにより所有された証明書ストアであることを指定します。 Note:この種類はJava では利用できません。
MACHINEWindows の場合、この証明書ストアがシステムストアであることを指定します。 Note:この種類はJava では利用できません。
PFXFILEこの証明書ストアは、証明書を含むPFX(PKCS12)ファイルの名前です。
PFXBLOBこの証明書ストアは、PFX(PKCS12)形式の証明書ストアを表すBase-64でエンコードされた文字列です。
JKSFILEこの証明書ストアは、証明書を含むJava key store(JKS)ファイルの名前です。 Note:この種類はJava のみで利用できます。
JKSBLOBこの証明書ストアは、Java key store(JKS)形式の証明書ストアを表すBase-64でエンコードされた文字列です。 Note:この種類はJava のみで利用できます。
PEMKEY_FILEこの証明書ストアは、秘密キーと任意の証明書を含むPEM でエンコードされたファイルの名前です。
PEMKEY_BLOBこの証明書ストアは、秘密キーと任意の証明書を含むBase-64でエンコードされた文字列です。
PUBLIC_KEY_FILEこの証明書ストアは、PEM またはDER でエンコードされた公開キーの証明書を含むファイルの名前です。
PUBLIC_KEY_BLOBこの証明書ストアは、PEM またはDER でエンコードされた公開キーの証明書を含むBase-64でエンコードされた文字列です。
SSHPUBLIC_KEY_FILEこの証明書ストアは、SSH 公開キーを含むファイルの名前です。
SSHPUBLIC_KEY_BLOBこの証明書ストアは、SSH 公開キーを含むBase-64でエンコードされた文字列です。
P7BFILEこの証明書ストアは、証明書を含むPKCS7 ファイルの名前です。
PPKFILEこの証明書ストアは、PuTTY 秘密キー(PPK)を含むファイルの名前です。
XMLFILEこの証明書ストアは、XML 形式の証明書を含むファイルの名前です。
XMLBLOBこの証明書ストアは、XML 形式の証明書を含む文字列の名前です。
GOOGLEJSONこの証明書ストアは、サービスアカウント情報を含むJSON ファイルの名前です。Google サービスに接続する場合にのみ有効です。
GOOGLEJSONBLOBこの証明書ストアは、サービスアカウントのJSON を含む文字列です。Google サービスに接続する場合にのみ有効です。


Default Value: USER
Possible Values:
USER0
MACHINE1
PFXFILE2
PFXBLOB3
JKSFILE4
JKSBLOB5
PEMKEY_FILE6
PEMKEY_BLOB7
PUBLIC_KEY_FILE8
PUBLIC_KEY_BLOB9
SSHPUBLIC_KEY_FILE10
SSHPUBLIC_KEY_BLOB11
P7BFILE12
PPKFILE13
XMLFILE14
XMLBLOB15
GOOGLEJSON16
GOOGLEJSONBLOB17
OAuth JWT Issuer[OAuthJWTIssuer]

Java Web Token の発行者。通常は、OAuth アプリケーションのクライアントID またはE メールアドレスとなります。

GOOGLEJSON OAuthJWTCertType を使用する場合は必要ありません。Google JSON キーには、発行者アカウントのコピーが含まれています。

OAuth JWT Subject[OAuthJWTSubject]

アプリケーションからデリゲートアクセスの要求対象となるユーザーサブジェクトです。通常は、ユーザーのアカウント名またはE メールアドレスとなります。

OAuth Refresh Token[OAuthRefreshToken]

OAuthRefreshToken プロパティは、OAuth 認証時にOAuthAccessToken のリフレッシュに使われます。

OAuth設定場所[OAuthSettingsLocation]

InitiateOAuth がGETANDREFRESH またはREFRESH に設定されている場合、本製品 がOAuth 値を保存するため、ユーザーが手動でOAuth 接続プロパティを入力する必要がなくなり、接続やプロセス間でクレデンシャルを共有できるようになります。

ファイルパスを指定する代わりに、メモリストレージを使用することもできます。メモリの場所は、'memory://' で始まる値とそのクレデンシャルのセット(例:memory://user1)の一意の識別子を使用して指定します。識別子は何でも構いませんが、ユーザーに固有のものでなければなりません。ファイルベースのストレージとは異なり、プロセスが再開されたときに接続を設定できるように、メモリストレージとの接続を閉じるときは手動でクレデンシャルを格納する必要があります。OAuth プロパティ値は、sys_connection_props システムテーブルへのクエリで取得できます。複数の接続で同じクレデンシャルを使用している場合は、プロパティは最後に閉じられる接続から読み取られます。

指定しない場合、デフォルトの場所は"%APPDATA%\\CData\\GoogleDrive Data Provider\\OAuthSettings.txt" となり、%APPDATA%はユーザーのコンフィギュレーションディレクトリに設定されます:

Platform %APPDATA%
Windows APPDATA 環境変数の値
Mac ~/Library/Application Support
Linux ~/.config


Default Value: %APPDATA%\\CData\\GoogleDrive Data Provider\\OAuthSettings.txt
OAuth Token Timestamp[OAuthTokenTimestamp]

OAuthExpiresIn と併用して、アクセストークンの有効期限を決定します。

OAuth Verifier[OAuthVerifier]

OAuth 認可URL から返された検証コード。これは、ヘッドレスシステムのようにブラウザを起動できないシステム上で使用できます。

ヘッドレスマシンでの認証

OAuthVerifier 値を取得するには、 を参照してください。

OAuthVerifier に加えてOAuthSettingsLocation を設定します。接続すると、本製品 はOAuth 認証トークンのOAuthVerifier を交換し、暗号化して、指定されたファイルに保存します。 交換を自動化するには、InitiateOAuth をGETANDREFRESH に設定します。

OAuth 設定ファイルが生成されたら、接続プロパティからOAuthVerifier を削除してOAuthSettingsLocation セットで接続できます。

OAuth トークン値を自動的にリフレッシュするには、OAuthSettingsLocation を設定し、さらにInitiateOAuth をREFRESH に設定します。

Offline[Offline]

Offline がtrue に設定されている場合、すべてのクエリは、ライブデータソースではなくキャッシュに対して実行されます。このモードでは、INSERT、UPDATE、DELETE、CACHE などのクエリは許可されません。


Default Value: false
Other[Other]

以下にリストされているプロパティは、特定のユースケースで使用可能です。通常のドライバーのユースケースおよび機能では、これらのプロパティは必要ありません。

複数のプロパティをセミコロン区切りリストで指定します。

キャッシュの設定

CachePartial=Trueクエリで指定可能な一部のカラムのみをキャッシュします。
QueryPassthrough=True本製品 のSQL パーサーを使用する代わりに、指定のクエリをキャッシュデータベースに渡します。

統合およびフォーマット

DefaultColumnSizeデータソースがメタデータにカラムの長さを提供しない場合に、文字列フィールドのデフォルトの長さを設定します。デフォルト値は2000です。
ConvertDateTimeToGMT日時の値を、マシンのローカルタイムではなくGMT グリニッジ標準時に変換するかどうかを決定します。
RecordToFile=filename基底のソケットデータ転送を指定のファイルに記録します。

Pool Idle Timeout[PoolIdleTimeout]

接続が閉じられるまで、プール内に残ることができる許容されたアイドル時間。デフォルトは60秒です。


Default Value: 60
Pool Max Size[PoolMaxSize]

プールの最大接続数。デフォルトは100です。このプロパティを無効にするには、プロパティ値を0以下に設定します。


Default Value: 100
Pool Min Size[PoolMinSize]

プール内の最小接続数。デフォルトは1です。


Default Value: 1
Pool Wait Time[PoolWaitTime]

接続が利用可能になるまで待機する最大秒数。新しい接続のリクエストが使用可能な接続を待ちこの時間を超過すると、エラーが返されます。デフォルトでは、新規リクエストは使用可能な接続を永久に待機します。


Default Value: 60
Proxy Auth Scheme[ProxyAuthScheme]

この値は、ProxyServer およびProxyPort で指定されるHTTP プロキシに認証するために使われる認証タイプを指定します。

本製品 は、デフォルトでsystem proxy settings を使い、追加での設定が不要です。他のプロキシへの接続をする場合には、ProxyServer およびProxyPort に加え、ProxyAutoDetect をfalse に設定します。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。

認証タイプは、次のどれかになります。

  • BASIC: 本製品 はHTTP BASIC 認証を行います。
  • DIGEST: 本製品 はHTTP DIGEST 認証を行います。
  • NEGOTIATE: 本製品 は認証において有効なプロトコルに応じて、NTLM もしくはKereros トークンを取得します。
  • PROPRIETARY: 本製品 はNTLM もしくはKerberos トークンを発行しません。このトークンを、HTTP リクエストのAuthorization ヘッダーに含める必要があります。

SOCKS 5 認証のような他の認証タイプを使用するには、FirewallType を参照してください。


Default Value: BASIC
Possible Values:
BASIC0
DIGEST1
NONE2
NEGOTIATE3
NTLM4
PROPRIETARY5
Proxy Auto Detect[ProxyAutoDetect]

これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。

NOTE:このプロパティがTrue に設定されている場合、使用されるプロキシは次のように決定されます。

  • JVM のプロパティ(http.proxy、https.proxy、socksProxy など)から検索が実行されます。
  • JVM のプロパティが存在しない場合は、java.home/lib/net.properties から検索が実行されます。
  • java.net.useSystemProxies がTrue に設定されている場合は、SystemProxy から検索が実行されます。
  • Windows の場合のみ、レジストリインターネットオプションからこれらのプロパティを取得しようとします。

HTTP プロキシへの接続には、ProxyServer を参照してください。SOCKS やトンネリングなどの他のプロキシには、FirewallType を参照してください。


Default Value: false
Proxy Exceptions[ProxyExceptions]

ProxyServer は、このプロパティで定義されたアドレスを除くすべてのアドレスに使用されます。セミコロンを使用してエントリを区切ります。

本製品 は、追加設定なしにデフォルトでシステムのプロキシ設定を使います。この接続のプロキシ例外を明示的に構成するには、ProxyAutoDetect をfalse に設定して、ProxyServer およびProxyPort を設定する必要があります。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。

Proxy Password[ProxyPassword]

このプロパティは、NTLM(Windows)、Kerberos、もしくはHTTP 認証をサポートするHTTP プロキシサーバーに認証するために使われます。HTTP プロキシを指定するためには、ProxyServer およびProxyPort を設定します。認証タイプを指定するためにはProxyAuthScheme を設定します。

HTTP 認証を使う場合、さらにHTTP プロキシにProxyUser およびProxyPassword を設定します。

NTLM 認証を使う場合、Windows パスワードにProxyUser およびProxyPassword を設定します。Kerberos 認証には、これらを入力する必要があります。

SOCKS 5 認証もしくは、トンネリングは、FirewallType を参照してください。

デフォルトで、本製品 はsystem プロキシを使います。他のプロキシに接続する場合には、これをfalse に設定します。

Proxy Port[ProxyPort]

HTTP トラフィックをリダイレクトするHTTP プロキシが実行されているポート。ProxyServer でHTTP プロキシを指定します。その他のプロキシタイプについては、FirewallType を参照してください。


Default Value: 80
Proxy Server[ProxyServer]

HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。HTTP プロキシへの認証には、本製品 はHTTP、Windows(NTLM)、もしくはKerberos 認証タイプを使用することができます。

SOCKS プロキシを経由して接続する、もしくは接続をトンネルするには、FirewallType を参照してください。

デフォルトで、本製品 はsystem プロキシを使います。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定します。

Proxy SSL Type[ProxySSLType]

このプロパティは、ProxyServer で指定されたHTTP プロキシへの接続にSSL を使用するかどうかを決定します。この値は、AUTO、ALWAYS、NEVER、TUNNEL のいずれかです。有効な値は次のとおりです。

AUTOデフォルト設定。URL がHTTPS URL の場合、本製品 は、TUNNEL オプションを使います。URL がHTTP URL の場合、コンポーネントはNEVER オプションを使います。
ALWAYS接続は、常にSSL 有効となります。
NEVER接続は、SSL 有効になりません。
TUNNEL接続は、トンネリングプロキシを経由します。プロキシサーバーがリモートホストへの接続を開き、プロキシを経由して通信が行われます。


Default Value: AUTO
Possible Values:
AUTO0
ALWAYS1
NEVER2
TUNNEL3
Proxy User[ProxyUser]

ProxyUser および ProxyPassword オプションは、ProxyServer で指定されたHTTP プロキシに対して接続および認証するために使用されます。

ProxyAuthScheme で使用可能な認証タイプを選択することができます。HTTP 認証を使う場合、これをHTTP プロキシで識別可能なユーザーのユーザー名に設定します。Windows もしくはKerberos 認証を使用する場合、このプロパティを次の形式のどれかでユーザー名に設定します。

user@domain
domain\user

Pseudo Columns[PseudoColumns]

Entity Framework ではテーブルカラムでない疑似カラムに値を設定できないため、この設定はEntity Framework で特に便利です。この接続設定の値は、"Table1=Column1, Table1=Column2, Table2=Column3" の形式です。"*=*" のように"*" 文字を使用して、すべてのテーブルとすべてのカラムを含めることができます。

Readonly[Readonly]

このプロパティがtrue に設定されている場合、本製品 はSELECT クエリのみ許可します。INSERT、UPDATE、DELETE、およびストアドプロシージャクエリではエラーが返されます。


Default Value: false
RTK[RTK]

RTK プロパティは、ビルドにライセンスを供与するために使用されます。 このプロパティの設定方法については、付属のライセンスファイルを参照してください。このランタイムキーは、OEM ライセンスを購入した場合にのみ使用できます。

SSL Server Cert[SSLServerCert]

TLS/SSL 接続を使用する場合は、このプロパティを使用して、サーバーが受け入れるTLS/SSL 証明書を指定できます。コンピュータによって信頼されていない他の証明書はすべて拒否されます。

このプロパティは、次のフォームを取ります:

説明
フルPEM 証明書(例では省略されています) -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----
証明書を保有するローカルファイルへのパス。 C:\cert.cer
公開鍵(例では省略されています) -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY-----
MD5 Thumbprint (hex 値はスペースおよびコロン区切り) ecadbdda5a1529c58a1e9e09828d70e4
SHA1 Thumbprint (hex 値はスペースおよびコロン区切り) 34a929226ae0819f2ec14b4a3d904f801cbb150d

これを指定しない場合は、マシンが信用するすべての証明書が受け入れられます。

証明書は、システムのトラストストアに基づいてマシンによって信頼されていると検証されています。使用されるトラストストアは、システムに指定された'javax.net.ssl.trustStore' 値になります。このプロパティに値が指定されていない場合は、Java のデフォルトのトラストストア(例えば、JAVA_HOME\lib\security\cacerts)が使用されます。

すべての証明書の受け入れを示すには、'*'を使用します。セキュリティ上の理由から、これはお勧めできません。

Support Enhanced SQL[SupportEnhancedSQL]

SupportEnhancedSQL がtrue に設定されている場合、本製品 はGoogle Drive にできるだけ多くのSELECT 構文処理をオフロードし、残りのクエリをインメモリで処理します。この方法で、本製品 はサポートされていない宣言、JOIN、および集計を実行することができます。

SupportEnhancedSQL がfalse に設定されている場合、本製品 はSQL 実行をGoogle Drive API でサポートされている範囲に制限します。

宣言の実行

本製品 は、どの句がデータソースでサポートされているかを決定し、クエリを充足する最小セットの行を取得するためにソースにクエリを送信します。そして、残りの行をローカルでフィルタリングします。フィルタリング処理がストリームされている場合、本製品 は大きなデータセットに対しても効率よいフィルタリングが可能です。

JOIN 実行

本製品 は、インメモリでのJOIN でさまざまな技術を使用します。本製品 は、メモリ使用量と同じテーブルを複数回読む要求をトレードオフします。

集計の実行

本製品 は、インメモリで集計を処理するために必要なすべての行を取得します。


Default Value: true
Tables[Tables]

テーブルを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でテーブルのリストを提供すると、本製品 のパフォーマンスが向上します。

このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。

カンマ区切りのリストで使用したいテーブルを指定します。各テーブルは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space` です。

複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。

Team Drive Support[TeamDriveSupport]

このプロパティを'true' に設定すると、TeamDriveId をフィルタとして使用して特定のチームドライブからクエリを実行できます。


Default Value: false
タイムアウト(秒)[Timeout]

Timeout が0に設定されている場合は、操作がタイムアウトしません。処理が正常に完了するか、エラー状態になるまで実行されます。

Timeout の有効期限が切れても処理が完了していない場合は、本製品 は例外をスローします。


Default Value: 60
Use Connection Pooling[UseConnectionPooling]

このプロパティは、コネクションプーリングを有効にします。デフォルトはfalse です。 コネクションプールの使用に関する詳細は、 接続プール を参照してください。


Default Value: false
Verbosity[Verbosity]

Verbosity レベルは、本製品 がLogfile にどの程度の詳細さで記載するかを決定します。1 から5 までのVerbosity レベルがサポートされています。より詳しい説明は、ログ ページに記載されています。


Default Value: 1
Views[Views]

ビューを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でビューのリストを提供すると、本製品 のパフォーマンスが向上します。

このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。

カンマ区切りのリストで使用したいビューを指定します。各ビューは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space` です。

複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。


その他詳細タブのオプション名と値は、以下URL の「接続文字列オプション」を参照ください。
こちら