cqlshrcファイルの構成

CQLシェルの構成を起動時にプロパティ・ファイルからカスタマイズします。

cqlshrcファイルはユーティリティの起動時にcqlshセッションを構成します。ファイルをローカル・コンピューターの~/.cassandraディレクトリーに保存するか(デフォルト)、ファイルを含むディレクトリーを--cqlshrcオプションを使用して指定します。ディレクトリーごとにcqlshrcを1つのみ使用します。

次のオプションをあらかじめ構成します。

構文

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.sample:使用可能な設定をすべて含んでいます。
  • cqlshrc.sample.kerberos:CQLシェル接続のKerberos認証の使用に関する設定を含んでいます。
  • cqlshrc.sample.ssl:CQLシェル接続のSSLの使用に関する設定を含んでいます。
  • cqlshrc.sample.kerberos_ssl:CQLシェル接続のSSLおよびKerberos認証の使用に関する設定を含んでいます。
これらのファイルの場所は、インストールのタイプによって異なります。
  • パッケージおよびInstaller-Servicesのインストール: /etc/dse/cassandra
  • tarボールおよびInstaller-No Servicesのインストール: install_location/resources/cassandra/conf

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

このファイルを使用するには、次のようにします。
  1. ファイルをhomeディレクトリーにコピーします。
  2. ファイル名を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シェル・エントリーの自動補完のキーを設定します。デフォルトはTabキーです。
encoding
文字に使用されるエンコーディング。デフォルトはUTF8です。

CQLバージョンの強制

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

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

CQLホストへの接続

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

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

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

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

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

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

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

SSLの構成

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

注: 詳細については、使用しているバージョンの「SSL暗号化を用いたcqlshの使用」を参照してください。
[ssl]
certfile
DataStax Enterprise証明書のパス。「SSL暗号化を用いたcqlshの使用」を参照してください。
validate
任意。デフォルト:true
userkey
require_client_auth=truecassandra.yamlに指定されている場合、指定する必要があります。
usercert
require_client_auth=truecassandra.yamlに指定されている場合、指定する必要があります。

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

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

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

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

COPY TOおよびCOPY FROMの両方に共通する設定。

COPYテーブルも参照してください。

[copy]
nullval
null値の文字列プレースホルダー。
header
COPY TOでは、CSV出力ファイルの最初の行にカラム名が含まれているかどうかを制御します。
COPY FROMでは、CSVファイルの最初の行にカラム名が含まれているかどうかを指定します。
decimalsep
10進数の小数点。デフォルト値:ピリオド(.)。
thousandssep
千桁の区切り文字。デフォルト値:None デフォルト:空の文字列。
boolstyle
TrueとFalseのブーリアン標識。値の大文字と小文字は区別されません。たとえば、yes,noとYES,NOは同じです。デフォルト値:True、False
numprocesses
子のワーカー・プロセスの数を設定します。
maxattempts
エラー時の最大試行回数。デフォルト値:5
reportfrequency
ステータスが表示される頻度(秒単位)。デフォルト値:0.25
ratefile
出力統計をこのファイルに出力します。

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

[copy-to]
maxrequests
各ワーカーが並列処理できる要求の最大数。
pagesize
結果のフェッチ用のページ・サイズ。
pagetimeout
結果のフェッチ用のページ・タイムアウト。
begintoken
データのエクスポート用の最小トークン文字列。
endtoken
データのエクスポート用の最大トークン文字列。
maxoutputsize
行数で測定される、出力ファイルの最大サイズ。設定されている場合、出力ファイルのサイズがその値を超えるとセグメントに分割されます。最大サイズが指定されていない場合は「-1」を使用します。
encoding
文字に使用されるエンコーディング。デフォルトはUTF8です。

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

[copy-from]
ingestrate
おおよその1秒あたりの行内の取り込み速度。チャンク・サイズよりも大きい必要があります。
maxrows
行の最大数。最大数が指定されていない場合は「-1」を使用します。
skiprows
スキップする行数。
skipcols
スキップするカラム名のコンマ区切りリスト。
maxparseerrors
解析エラーの最大グローバル数。最大数が指定されていない場合は「-1」を使用します。
maxinserterrors
挿入エラーの最大グローバル数。最大数が指定されていない場合は「-1」を使用します。
errfile
インポートされていないすべての行を格納するファイル。値が設定されていない場合、情報はimport_ks_table.errに格納されます。ここで、ksはキースペース、tableはテーブル名です。
maxbatchsize
インポート・バッチの最大サイズ。
minbatchsize
インポート・バッチの最小サイズ。
chunksize
ワーカー・プロセスに渡されるチャンク・サイズ。デフォルト値:1000

テーブルに固有のCOPY TO/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
結果のフェッチ用のページ・タイムアウト。
cassandra.yamlファイルの場所は、インストールのタイプによって異なります。

パッケージ・インストール
Installer-Servicesインストール

/etc/dse/cassandra/cassandra.yaml

tarボール・インストール
Installer-No Servicesインストール

install_location/resources/cassandra/conf/cassandra.yaml