tCassandraOutput標準プロパティ - 7.3

Cassandra

Version
7.3
Language
日本語 (日本)
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Open Studio for Big Data
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > NoSQLコンポーネント > Cassandra
データガバナンス > サードパーティーシステム > NoSQLコンポーネント > Cassandra
データクオリティとプレパレーション > サードパーティーシステム > NoSQLコンポーネント > Cassandra

このプロパティはStandardジョブフレームワークで実行されているtCassandraOutputを設定するために使います。

Standard tCassandraOutputコンポーネントはビッグデータファミリーとデータベースNoSQLファミリーのコンポーネントです。

このフレームワーク内のコンポーネントは、ビッグデータ対応のTalend 製品すべて、およびTalend Data Fabricで使用できます。

基本設定

[Property type] (プロパティタイプ)

[Built-In] (組み込み)または[Repository] (リポジトリー)のいずれか。

[Built-In] (組み込み): プロパティデータは一元的に保存されません。

[Repository] (リポジトリー): プロパティを保存するリポジトリーファイルを選択します。

[Use existing connection] (デフォルト接続を使用)

定義済みの接続の詳細を再利用するには、このチェックボックスをオンにして、[Component List] (コンポーネントリスト)で該当する接続コンポーネントをクリックします。

[DB Version] (DBバージョン)

使用するCassandraバージョンを選択します。

[API type] (APIタイプ)

このドロップダウンリストは、[DB version] (DBバージョン)リストからCassandra2.0バージョン(非推奨)を選択した場合にのみ表示されます。この[API type] (APIタイプ)リストから[Datastax]を選択して、CassandraでCQL 3(Cassandraクエリー言語)を使用するか、Hector(非推奨)を選択してCQL 2を使用します。

Hector APIはCassandra v2.0のサポートと共に廃止されることにご注意ください。

CQLコマンドの進化に伴い、[Basic settings] (基本設定)ビューで設定できるパラメーターは異なります。

[Host] (ホスト)

Cassandraサーバーのホスト名またはIPアドレス。

[Port] (ポート)

Cassandraサーバーのリスニングポート番号。

[Required authentication] (認証の要求)

このチェックボックスをオンにすると、Cassandra認証の認証情報が提供されます。

このチェックボックスは、[Use existing connection] (既存の接続を使用)チェックボックスをオンにしない場合にのみ表示されます。

[Username] (ユーザー名)

このフィールドにCassandra認証のユーザー名を入力します。

[Password] (パスワード)

このフィールドにCassandra認証のパスワードを入力します。

パスワードを入力するには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符の間に入力し、[OK] をクリックして設定を保存します。

[Use SSL] (SSLの使用)

SSLまたはTLS暗号化接続を有効にする場合は、このチェックボックスをオンにします。

次に、同じジョブ内のtSetKeystoreコンポーネントを使用して暗号化情報を指定する必要があります。

[Keyspace]

データの書き込み先にキースペースの名前を入力します。

[Action on keyspace] (キースペースのアクション)

使用するキースペースで実行する操作を選択します:

  • [None] (なし): 操作は行われません。

  • [Drop and create keyspace] (キースペースの削除と作成): キースペースを削除してから、再作成します。

  • [Create keyspace] (キースペースの作成): キースペースが存在しないため、作成します。

  • [Create keyspace if not exists] (キースペースが存在しない場合に作成): キースペースが存在しない場合は作成します。

  • [Drop keyspace if exists and create] (キースペースが存在する場合に削除して作成): キースペースが既に存在する場合は、削除されて再作成されます。

[Column family] (カラムファミリー)

データの書き込み先にキースペースの名前を入力します。

[Action on column family] (カラムファミリーのアクション)

使用するカラムファミリーで実行する操作を選択します:

  • [None] (なし): 操作は実行されません。

  • [Drop and create column family] (カラムファミリーの削除と作成): カラムファミリーの削除と再作成を行います。

  • [Create column family] (カラムファミリーの作成): カラムファミリーが存在しないため、作成します。

  • [Create column family if not exists] (カラムファミリーが存在しない場合に作成): カラムファミリーが存在しない場合に作成します。

  • [Drop column family if exists and create] (カラムファミリーが存在する場合に削除と作成): カラムファミリーが既に存在している場合は削除され、再作成されます。

[Action on data] (データへのアクション)

定義されたテーブルのデータでは、以下の操作を実行できます:

  • [Upsert] (アップサート): カラムまたは既存のカラムが存在しない場合は、カラムを挿入します。

  • [Insert] (挿入): カラムが存在しない場合は、カラムを挿入します。このアクションは、既存のものも更新します。

  • [Update] (更新): 既存のカラムを更新するか、存在しないカラムを追加します。このアクションでは[Counter] (カウンター)Cassandraデータタイプがサポートされていません。

  • [Delete] (削除): 入力フローに対応するカラムを削除します。

アクションリストは、使っているHector (非推奨)またはDatastax APIによって異なります。APIがDatastaxの場合、より多くのアクションが利用可能になります。

詳細な操作は、[Advanced settings] (詳細設定)ビューを使用します。

[Schema] (スキーマ)[Edit schema] (スキーマを編集)

スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。

スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを使用できます。

  • [View schema] (スキーマの表示): スキーマのみを表示する場合は、このオプションを選択します。

  • [Change to built-in property] (組み込みのプロパティに変更): ローカルで変更を行うためにスキーマを組み込みに変更する場合は、このオプションを選択します。

  • [Update repository connection] (リポジトリー接続を更新): リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。変更を現在のジョブにのみ反映する場合は、変更後、[No] (いいえ)を選択し、[Repository Content] (リポジトリーのコンテンツ)ウィンドウで再びこのスキーマのメタデータを選択します。

 

[Built-in] (組み込み): そのコンポーネントのみのスキーマを作成して、ローカルに保存します。

 

[Repository] (リポジトリー): スキーマは作成済みで、リポジトリーに保管されています。さまざまなプロジェクトやジョブデザインで再利用できます。

再使用するスキーマに整数またはファンクションのデフォルト値が指定されている場合は、これらのデフォルト値を引用符で囲まないようにご注意ください。引用符で囲まれている場合は手動で削除します。

詳細は、Talend Studioユーザーガイドでテーブルスキーマに関連する説明を参照してください。

[Sync columns] (カラムの同期)

ジョブで接続された前のコンポーネントからスキーマを取得するには、このボタンをクリックします。

[Die on error] (エラー発生時に強制終了)

エラーの発生した行をスキップし、エラーが発生していない行の処理を完了するには、このチェックボックスをオフにします。エラーをスキップしたら、[Row] (行)> [Reject] (リジェクト)リンクを使用してエラーの発生した行を収集できます。

Hector API (非推奨)でのみ使用可能な機能

行のキーカラム

リストから行キーカラムを選択します。

[Include row key in columns] (カラムに行キーを含める)

カラムに行キーを含めるには、このチェックボックスをオンにします。

[Super columns] (スーパーカラム)

リストからスーパーカラムを選択します。

このドロップダウンリストは、[Column family type] (カラムファミリータイプ)ドロップダウンリストから[Super] (スーパー)を選択した場合にのみ表示されます。

[Include super columns in standard columns] (標準カラムにスーパーカラムを含める)

標準カラムにスーパーカラムを含めるには、このチェックボックスをオンにします。

[Delete row] (行を削除)

行を削除するには、このチェックボックスをオンにします。

このチェックボックスは、[Action on data] (データへのアクション)ドロップダウンリストから[Delete] (削除)を選択した場合にのみ表示されます。

[Delete columns] (カラムを削除)

削除するカラムをカスタマイズします。

[Delete super columns] (スーパーカラムを削除)

スーパーカラムを削除するには、このチェックボックスをオンにします。

このチェックボックスは、[Delete Row] (行の削除)チェックボックスをオンにした場合にのみ表示されます。

詳細設定

[Batch Size] (バッチサイズ)

各処理バッチの行数。

Datastax APIを使っている場合、この機能は[Use unlogged batch] (UNLOGGEDバッチを使用)チェックボックスをオンにした場合にのみ表示されます。

[Use unlogged batch] (UNLOGGEDバッチを使用)

このチェックボックスをオンにすると、データをバッチ処理できますが、CassandraのUNLOGGEDアプローチが使用されます。このフィーチャーは[Insert] (挿入)[Update] (更新)および[Delete] (削除)の3つの操作で使用できます。

次に、バッチモードの動作を設定する必要があります:
  • [Batch size] (バッチサイズ): 処理する各バッチの行数を入力します。

  • [Group batch method] (グループバッチ方式): 行をグループ化して一括処理する方法を選択します。
    1. [Partition] (パーティション): 同じパーティションキーを共有する行をグループ化します。

    2. [Replica] (レプリカ): 同じレプリカに書き込まれる行をグループ化します

    3. [None] (なし): ランダムに行をグループ化します。このオプションは、単一ノードのCassandraに適しています。

  • [Cache batch group] (キャッシュバッチグループ): このチェックボックスをオンにすると、グループ化する前に行がメモリにロードされます。この方法では、行の順序でグループ化が影響を受けることはありません。

    このチェックボックスをオフにしたままにすると、同じ条件を満たす連続した行のみがグループ化されます。

  • [Async execute] (非同期実行): このチェックボックスをオンにすると、tCassandraOutputでバッチが並行して送信されます。選択を解除したままにすると、tCassandraOutputでは、バッチの結果を待機してから、別のバッチをCassandraに送信します。

  • [Maximum number of batches executed in parallel] (並行して実行できるバッチの最大数): [Async execute] (非同期実行)を選択したら、Cassandraに並行して送信するバッチの数を入力します。

    この数値を負の数または0にすべきではなく、大きすぎる値も使用しないことをお勧めします。

Cassandraでバッチを使用する理想的な状況には、少数のテーブルで挿入または更新するデータを同期する場合などが挙げられます。

このUNLOGGEDアプローチでは、ジョブは、Cassandraのバッチログシステムにバッチを書き込まないため、この書き込みによって発生するパフォーマンスの問題を回避します。CassandraのBATCHステートメントおよびUNLOGGEDアプローチの詳細は、バッチを参照してください。

[Insert if not exists] (存在しない場合は挿入)

このチェックボックスをオンにすると、行が挿入されます。この行の挿入は、ターゲットテーブルに存在しない場合にのみ行われます。

このフィーチャーは[Insert] (挿入)操作でのみ使用できます。

[Delete if exists] (存在する場合は削除)

このチェックボックスをオンにすると、受信フロー内の同じレコードを持つ行のみがターゲットテーブルから削除されます。

このフィーチャーは[Delete] (削除)操作でのみ使用できます。

[Use TTL] (TTLを使用)

このチェックボックスをオンにすると、ターゲットテーブルにTTLデータが書き込まれます。表示されるカラムリストで、TTLカラムとして使用されるカラムを選択する必要があります。このカラムのDB型はIntにする必要があります。

このフィーチャーは[Insert] (挿入)操作および[Update] (更新)操作でのみ使用できます。

[Use Timestamp] (タイムスタンプを使用)

このチェックボックスをオンにすると、ターゲットテーブルにタイムスタンプデータが書き込まれます。表示されるカラムリストで、タイムスタンプデータの保管に使用するカラムを選択する必要があります。このカラムのDBタイプは[BigInt]にする必要があります。

このフィーチャーは、[Insert] (挿入)[Update] (更新)および[Delete] (削除)のアクションで利用可能です。

[IF condition] (IF条件)

[Update] (更新)または[Delate] (削除)操作を実行するために満たす条件を追加します。この条件を使用すると、更新または削除するカラムについて正確な操作が可能になります。

[Special assignment operation] (特別な割り当て操作)

このテーブルを完成して、[Update] (更新)操作をより具体的にするためのCassandraの高度なSETコマンドを構成します。たとえば、指定されたカラムの先頭または特定の位置にレコードを追加します。

このテーブルの[Update column] (カラムの更新)カラムで、更新されたカラムを選択し、[Operation] (操作)カラムから使用する操作を選択する必要があります。以下の操作を実行できます:
  • [Append] (後ろに追加): 更新するカラムの末尾に受信レコードを追加します。処理できるCassandraのデータタイプは、Counter、List、SetおよびMapになります。

  • [Prepend] (前に追加): 更新するカラムの先頭に受信レコードを追加します。処理できる唯一のCassandraのデータタイプはListになります。

  • [Remove] (削除): 受信フローに同じレコードが存在する場合、ターゲットテーブルからレコードを削除します。処理できるCassandraのデータタイプは、Counter、List、SetおよびMapになります。

  • [Assign based on position/key] (位置/キーに基づく割り当て): 更新するカラムの特定の位置にレコードを追加します。処理できるCassandraのデータタイプは、ListおよびMapになります。

    この操作を選択すると、[Map key/list position] (キー/リスト位置のマッピング)カラムが編集可能になります。このカラムから参照に使用するカラムを選択し、更新する位置を検索する必要があります。

これらの操作の詳細は、http://docs.datastax.com/en/cql/3.1/cql/cql_reference/update_r.html?scroll=reference_ds_g4h_qzq_xj__description_unique_34の関連ドキュメントを参照してください。

[Row key in the List type] (リストタイプの行キー)

CassandraのWHERE句を構成するために使用するカラムを選択し、[Update] (更新)または[Delete] (削除)操作を実行します。このテーブルで使用されるカラムは、Cassandraテーブルのプライマリキーカラムのセットから選ぶ必要があります。

[Delete collection column based on postion/key] (位置/キーに基づいてコレクションカラムを削除)

削除する特定の行を参照する際に使用するカラムを選択します。

このフィーチャーは[Delete] (削除)操作でのみ使用できます。

[tStatCatcher Statistics] (tStatCatcher統計)

このチェックボックスをオンにすると、ジョブレベルおよび各コンポーネントレベルでジョブ処理メタデータが収集されます。

グローバル変数

[Global Variables] (グローバル変数)

NB_LINE: 入力コンポーネントによって読み取られた行の数、または出力コンポーネントに転送された行の数。これはAfter変数で、整数を返します。

ERROR_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、Die on error (エラー時強制終了)がオフになっている場合にのみ機能します。

Flow変数はコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。

フィールドまたは式に変数を入れるには、Ctrl + Spaceを押して変数リストにアクセスし、リストから使用する変数を選択します。

変数の詳細は、『 Talend Studio ユーザーガイド』を参照してください。

使用方法

使用ルール

このコンポーネントは出力コンポーネントとして使用され、常に着信リンクが必要です。