SQLシェルの起動

SQL問合せおよびDDL文は、SQLシェルから直接実行できます。次に、シェルを起動するための一般的な方法を示します。
java -jar KVHOME/lib/sql.jar
       -helper-hosts <host:port[,host:port]*> 
       -store <storeName>
       [-username <user>] 
       [-security <security-file-path>]
       [-timeout <timeout ms>]
       [-consistency <NONE_REQUIRED(default) | ABSOLUTE | NONE_REQUIRED_NO_MASTER>]
       [-durability <COMMIT_SYNC(default) | COMMIT_NO_SYNC | COMMIT_WRITE_NO_SYNC>]
       [single command and arguments] 

必須パラメータは次のとおりです。

-helper-hosts:は、ホストおよびポートのカンマ区切りリストを指定します。

-store:は、ストアの名前を指定します。

-security: ストアのセキュア・デプロイメントでのセキュリティ・ファイルへのパスを指定します。

例: $KVROOT/security/user.security

ストアでは、次のオプション・パラメータがサポートされています。

-consistency: このセッションで使用される読取り一貫性を構成します。読取り操作は、構成されている値に応じて、マスターまたはレプリカ・ノードのとちらかで処理されます。一貫性の詳細は、一貫性保証を参照してください。次のポリシーがサポートされています。これらは、Java APIのConsistencyクラスで定義します。

この値を指定しなかった場合は、このセッションにデフォルト値ABSOLUTEが適用されます。
  • ABSOLUTE - 読取り操作はマスター・ノードで処理されます。一貫性としてABSOLUTEを指定した場合は、更新された最新データの取得が保証されます。
  • NONE-REQUIRED - 読取り操作をレプリカ・ノードで処理できます。これは、データをレプリカ・ノードから読み取った場合はそれがマスター上のデータと一致しない可能性があるということです。しかしながら、最終的には、それはマスターと一致することになります。

これらのポリシーの詳細は、Javaダイレクト・ドライバAPIリファレンス・ガイドで一貫性を参照してください。

-durability: このセッションで使用される書込み永続性設定を構成します。この値により、マスター・コミット同期の実現のために適用する永続性ポリシー(つまり、書込み操作から正常ステータスで戻るためにマスター・ノードによって実行されるアクション)を定義します。永続性の詳細は、永続性保証を参照してください。

この値を指定しなかった場合は、このセッションにデフォルト値COMMIT_SYNCが適用されます。
  • COMMIT_NO_SYNC - データはホストのメモリー内キャッシュに書き込まれますが、マスター・ノードは、そのデータがファイル・システムのデータ・バッファまたは後続の物理ストレージに書き込まれるまで待ちません。
  • COMMIT_SYNC - データがメモリー内キャッシュに書き込まれ、ファイル・システムのデータ・バッファに転送され、永続的ストレージに同期されてから、書込み操作が正常に完了します。
  • COMMIT_WRITE_NO_SYNC - データはメモリー内キャッシュに書き込まれ、ファイル・システムのデータ・バッファに転送されますが、必ずしも物理ストレージには転送されません。

これらのポリシーの詳細は、Javaダイレクト・ドライバAPIリファレンス・ガイドで永続性を参照してください。

-timeout:は、このセッションで使用されるリクエスト・タイムアウトを構成します。デフォルト値は5000ミリ秒です。

-username: ログインに使用するユーザー名を指定します。

たとえば、次のようにしてシェルを起動できます。
java -jar KVHOME/lib/sql.jar -helper-hosts node01:5000 -store kvstore
sql->

このコマンドでは、ストアkvstoreがポート5000で実行されていることを前提としています。SQLが正常に起動したら、問合せを実行します。

sql-> command [arguments]

-single command and arguments: SQLシェルからアクセス可能なユーティリティ・コマンドを指定します。それらは前述の構文で使用できます。

サポートされているシェル・ユーティリティ・コマンドの詳細は、SQLビギナーズ・ガイドシェル・ユーティリティ・コマンドを参照してください。