cqlshrcファイルの構成

cqlshrcファイルには、CQLシェルの起動時に使用するCQLシェル・セッション設定が含まれています。

cassandra.yaml

cassandra.yamlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール /etc/dse/cassandra/cassandra.yaml
tarボール・インストール installation_location/resources/cassandra/conf/cassandra.yaml

cqlshrcファイルには、CQLシェルの起動時に使用するCQLシェル・セッション設定が含まれています。cqlshrcファイルをローカル コンピューターの~/.cassandraディレクトリーに配置すると、そのファイルがデフォルトで使用されます。また、--cqlshrcオプションを使用して、cqlshrcファイルがあるディレクトリーを指定することもできます。ディレクトリーにはcqlshrcファイルを1つだけ配置します。

cqlshrcファイルと--cqlshrcオプションを混同しないでください。1つ目はCQLセッション設定を含むファイルで、2つ目はcqlshrcファイルが配置されているディレクトリーを指定するオプションです。

注: コマンドライン・オプションは、常にcqlshrcファイルにある設定をオーバーライドします。

これらの設定はcqlshrcファイルで構成できます。

構文

cqlsh CQLSHRC="~/directory_name"
注: チルダ(~)を使用すると、ユーザーのホーム・ディレクトリーに展開します。/Users/jdoe/cqlshprofiles/westのように絶対パスを指定することもできます。
1. 凡例
構文規則 説明
大文字 リテラル・キーワード。
小文字 リテラル以外。
イタリック体 変数値。ユーザー定義値と置き換えます。
[] 任意。角かっこ( [] )で任意指定のコマンド引数を囲みます。角かっこは入力しないでください。
( ) グループ。丸かっこ(( ))は、選択肢を含むグループを示します。丸かっこは入力しないでください。
| または。縦棒( | )で代替要素を区切ります。要素のいずれかを入力してください。縦棒は入力しないでください。
... 繰り返し可能。省略記号(...)は、構文要素を必要な回数だけ繰り返すことができることを示します。
'Literal string' 単一引用符( ' )でCQL文内のリテラル文字を囲みます。大文字を維持するには、単一引用符を使用します。
{ key : value } マップ・コレクション。中かっこ( { } )でマップ・コレクションまたはキーと値のペアを囲みます。コロンでキーと値を区切ります。
<datatype1,datatype2> セット、リスト、マップ、またはタプル。山かっこ(< >)で、セット、リスト、マップまたはタプル内のデータ型を囲みます。データ型はコンマで区切ります。
cql_statement; CQL文の終了。セミコロン( ; )ですべてのCQL文を終了します。
[--] コマンドライン・オプションとコマンド引数は、2つのハイフン(--)。この構文は、引数がコマンドライン・オプションと間違われる可能性がある場合に役立ちます。
' <schema> ... </schema> ' 検索CQLのみ:単一引用符( ' )でXMLスキーマ宣言全体を囲みます。
@xml_entity='xml_entity_type' 検索CQLのみ:スキーマ・ファイルおよびsolrConfigファイル内のXML要素を上書きするための実体とリテラル値を示します。

サンプルcqlshrcファイルの使用

サンプル・ファイルがDataStax Enterpriseのcqlshrcサンプル・ファイルとともにインストールされます。これらのファイルには、使用可能な設定がすべて含まれています。一部の設定は、単一のセミコロンを使用してコメントアウトされています。

DataStax Enterpriseには、以下に示すcqlshrcのサンプル・ファイルがあります。
  • cqlshrc.sample:使用可能なすべての設定を含んでいます。
  • cqlshrc.sample.kerberos:CQLシェル接続のKerberos認証に関する設定を含んでいます。
  • cqlshrc.sample.ssl:CQLシェル接続のSSLの使用に関する設定を含んでいます。
  • cqlshrc.sample.kerberos_ssl:CQLシェル接続のSSLおよびKerberos認証の使用に関する設定を含んでいます。
これらのファイルの場所は、インストールのタイプによって異なります。
  • パッケージ・インストール: /etc/dse/cassandra
  • tarボール・インストール: install_location/resources/cassandra/conf

環境に合わせて変更を行ってください。

サンプル・ファイルを使用するには:
  1. cqlshrc.sampleファイルを~/.cassandra/ディレクトリーにコピーします。
  2. ファイルの名前をcqlshrcに変更します。通常、ファイルは~/.cassandra/cqlshrcにあります。
    注: ホーム・ディレクトリーに.cqlshrcファイルがある場合、cqlshは次回の起動時にそのファイルを~/.cassandra/cqlshrcに移動し、ファイルが移動したことを示すメッセージを表示します。
  3. セミコロンを削除して、オプション(オプションは角かっこで囲まれています)および対応する設定のコメントを解除します。この例では、ヘッダー行なしですべてのCSVをインポートするために、[copy]およびheader = falseのコメントを解除します。
    ;; Options that are common to both COPY TO and COPY FROM
    [copy]
    
    ;; The string placeholder for null values
    ; nullval = null
    
    ;; For COPY TO, controls whether the first line in the CSV output file will
    ;; contain the column names.  For COPY FROM, specifies whether the first
    ;; line in the CSV file contains column names.
    header = false
  4. CQLシェルを再起動します。

自動ログインとキースペースの選択

CQLシェルを起動するときに、自動的にログインしてオプションのキースペースを選択するように認証情報を設定します。

注: 内部認証を使用するホストに対してのみユーザー名とパスワードを設定します。「SSLを使用した暗号化」を参照してください。
[authentication]
username
アカウント名。
password
パスワード。
keyspace
任意。指定されたキースペースを使用します。cqlshの起動直後にUSE keyspaceコマンドを発行することと同じです。内部認証は必要ありません。

CQLシェル表示の変更

以下のオプションは、cqlshコンソールの表示設定とCOPY TO日付解析の設定に適用されます。

[ui]
color
クエリー結果を色付きで示します。
on:色あり
off:色なし
datetimeformat
タイムスタンプの形式をPython strftime構文を使用して構成します。
timezone
タイムスタンプをEtc/UTC形式で表示します。
float_precision、double_precision
単精度および倍精度数の小数点の後に表示される桁数を設定します。
注: これらのオプションの値を大きくして桁数を増やすと、値が正常に表示されないことがあります。
completekey
cqlshシェル・エントリーの自動補完のキーを設定します。デフォルト:タブ・キー。
encoding
文字のエンコーディング。デフォルト:UTF8。

CQLバージョンの強制

指定したCQLバージョンのみを使用します。

[cql]
version
指定したCQLバージョンのみを使用します。

CQLホストへの接続

CQLシェル・セッションのホストと接続の詳細を指定します。

[connection]
hostname
cqlsh接続のホスト。
port
接続ポート。デフォルト:9042(ネイティブ・プロトコル)。
ssl
常にSSLを使用して接続します。デフォルト:false
timeout
新しい接続を確立する際の秒単位タイムアウト。
request_timeout
クエリーを実行する際の秒単位の要求タイムアウト。非アクティブである秒数を設定します。
factory
SSLの場合は、cqlshlib.ssl.ssl_transport_factoryに設定します。

フィールド・サイズの制限

[csv]
field_size_limit
特定のフィールド・サイズを設定します(例:field_size_limit = 1000000000)。

DSEおよびネイティブ・プロトコル

[protocol]
version
デフォルトのネイティブ・プロトコル・バージョンを指定します。これはdse_versionと相互に排他です。

デフォルト:4

dse_version
デフォルトのDataStax Enterpriseプロトコル・バージョンを指定します。

デフォルト:2

トレース・タイムアウトの設定

トレースの待機時間を指定します。

[tracing]
max_trace_wait
トレースが完了するまで待機する最大秒数。

SSLの構成

接続SSL設定を指定します。

注: 詳細については、「CQLシェル(cqlsh)でSSLを使用する」を参照してください。
[ssl]
certfile
DataStax Enterprise証明書のパス。「CQLシェル(cqlsh)でSSLを使用する」を参照してください。
validate
オプションの検証。デフォルト:true
userkey
cassandra.yamlrequire_client_auth=trueの場合は、ユーザー・キーを指定する必要があります。
usercert
cassandra.yamlrequire_client_auth=trueの場合は、ユーザーの資格情報を指定する必要があります。

SSLローカル設定のオーバーライド

[ssl]セクションにあるデフォルトのcertfilesをオーバーライドします。各リモート・ホストのエントリーを作成します。

[certfiles]
remote_host=path_to_cert
ローカル・コンピューターのIPアドレスまたはリモート・ホスト名と証明書ファイルのパスを指定します。

COPY TOおよびCOPY FROMの共通のオプションの設定

COPY TOおよびCOPY FROMコマンドの両方に共通する設定。
[copy]
          option_name = value
table_name
コピー操作用のテーブル。
column_list
テーブルのカラムのリスト。カラム名が指定されない場合、すべてのフィールドが含まれます。カラムを省略するには、含めるカラムと共にカラム・リストを指定します。
file_name, file2_name
CSVファイル名。
BOOLSTYLE
TrueとFalseのブーリアン標識。値の大文字と小文字は区別されません。たとえば、yes,noYES,NOは同じです。

デフォルト:True,False

CONFIGFILE
cqlshrc構成ファイルを含むディレクトリー。
注: コマンドライン・オプションは、常にcqlshrcファイルをオーバーライドします。
DATETIMEFORMAT
CSV時間データの読み取りまたは書き込みの時間形式。タイムスタンプはstrftime形式を使用します。設定されていない場合、デフォルト値はcqlshrcファイルのdatetimeformat値に設定されます。

デフォルト:%Y-%m-%d %H:%M:%S%z

DECIMALSEP
10進数の小数点。

デフォルト:.(ピリオド)

DELIMITER
フィールド区切り文字。

デフォルト:,(コンマ)

ESCAPE
QUOTE文字のリテラル使用をエスケープする単一の文字。

デフォルト:\(バックスラッシュ)

HEADER
  • true - 最初の行にヘッダー(カラム名)が含まれます。
  • false - 最初の行にヘッダーが含まれません。

デフォルト:false

MAXATTEMPTS
エラー時の最大試行回数。

デフォルト:5

NULL
フィールド内に値が存在しない場合に使用される値。

デフォルト:<空>

NUMPROCESSES
ワーカー・プロセスの数。最大値は16です。

デフォルト:-1

QUOTE
フィールド値を囲みます。

デフォルト:"(二重引用符)

REPORTFREQUENCY
ステータスが表示される頻度(秒単位)。

デフォルト:0.25

RATEFILE
出力統計をこのファイルに出力します。
SKIPCOLS
スキップするカラムの名前。
SKIPROWS
スキップするデータの最初の行から開始する行の数。
THOUSANDSSEP
千桁の区切り文字。

デフォルト:なし

COPY TOに固有のオプションの設定

BEGINTOKEN
データのエクスポート用の最小トークン文字列。
DOUBLEPRECISION
CQL倍精度値の小数点の後に表示される桁数を設定します。

デフォルト:12

ENCODING
出力文字列型。

デフォルト:UTF8

ENDTOKEN
データのエクスポート用の最大トークン文字列。
ERRFILE
インポートされていないすべての行を格納するファイル。値が設定されていない場合、情報はimport_ks_table.errに格納されます。ここで、ksはキースペース、tableはテーブル名です。
FLOATPRECISION
CQL float(単精度)値の小数点の後に表示される桁数を設定します。

デフォルト:5

MAXOUTPUTSIZE
行数で測定される、出力ファイルの最大サイズ。設定されている場合、出力ファイルのサイズがその値を超えるとセグメントに分割されます。最大サイズが指定されていない場合は「-1」を使用します。

デフォルト:-1

MAXREQUESTS
各ワーカーが並列処理できる要求の最大数。

デフォルト:6

PAGESIZE
結果のフェッチ用のページ・サイズ。

デフォルト:1000

PAGETIMEOUT
結果のフェッチ用のページ・タイムアウト。

デフォルト:10

TTL
秒単位のTime To Live。デフォルトでは、データは期限切れになりません。

デフォルト:3600

COPY FROMに固有のオプションの設定

CHUNKSIZE
ワーカー・プロセスに渡されるチャンク・サイズ。

デフォルト:1000

INGESTRATE
おおよその1秒あたりの行内の取り込み速度。チャンク・サイズよりも大きい必要があります。

デフォルト:100000

MAXBATCHSIZE
インポートバッチの最大サイズ。

デフォルト:20

MAXINSERTERRORS
挿入エラーの最大グローバル数。最大サイズが指定されていない場合は「-1」を使用します。

デフォルト:-1

MAXPARSEERRORS
解析エラーの最大サイズ。最大サイズが指定されていない場合は「-1」を使用します。

デフォルト:-1

MAXROWS
行の最大数。最大サイズが指定されていない場合は「-1」を使用します。

デフォルト:-1

MINBATCHSIZE
インポート・バッチの最小サイズ。

デフォルト:2

テーブルに固有のCOPY TOおよびCOPY FROMオプションの設定

これらのオプションを使用して、テーブル固有の設定を構成します。テーブルごとに新しいエントリーを作成します。たとえば、サイクリストの名前とランクのチャンク・サイズを設定する場合は次のようになります。
[copy:cycling.cyclist_names]
chunksize = 1000
[copy:cycling.rank_by_year_and_name]
chunksize = 10000
[copy:keyspace_name.table_name]
chunksize
ワーカー・プロセスに渡されるチャンク・サイズ。 デフォルト値:1000
[copy-from:keyspace_name.table_name]
ingestrate
おおよその1秒あたりの行内の取り込み速度。チャンク・サイズよりも大きい必要があります。
[copy-to:keyspace_name.table_name]
pagetimeout
結果のフェッチ用のページ・タイムアウト。