Cassandra「行の更新」アクティビティーの使用

Cassandra でレコードを更新するには、「行の更新」アクティビティーを使用します。

このタスクについて

Cassandra インスタンスでレコードを更新するには、このタスクを使用します。このアクティビティーの呼び出しは、同期呼び出しです。同期呼び出しでは、入力データが処理のためにアクティビティーに送信され、オーケストレーションに応答が返信されます。

手順

  1. アクティブなオーケストレーションで、「アクティビティー」タブを開いて Cassandra フォルダーのコンテンツを展開します。
  2. 「行の更新」アクティビティー・アイコンをオーケストレーション上にドラッグします。アクティビティーを選択します。 Cassandra 行の更新「チェックリスト」が表示されます。
  3. 「チェックリスト」で「要約」をクリックします。
  4. アクティビティー名」フィールドの内容を確認して、必要な変更を行います。
  5. 「チェックリスト」で「エンドポイントの選出」をクリックします。
  6. 「参照」をクリックし、「プロジェクト・エクスプローラー」ダイアログ・ボックスを使用して、関連する Cassandra エンドポイントを選択します。
  7. オプション: 「新規作成」をクリックして必要な接続の詳細を指定することで、エンドポイントを作成することができます。この構成のエンドポイントを保存して使用するには、「OK」をクリックします。
  8. 選択したエンドポイントの構成に対して必要な変更を行うには、「編集」をクリックして、別のウィンドウでオプションにアクセスします。 変更を行うと、アクティブなオーケストレーションにおけるエンドポイントのすべての使用に、グローバルに影響します。
  9. 「チェックリスト」で「構成」をクリックします。
  10. 「構成」の下の「表の選出」をクリックし、「キースペース」の名前を指定します。エンドポイントで指定されたデータベース内の表の現行リストから動的に表を選択するには、「参照」をクリックします。

    表を選択するには、以下のいずれかのオプションを選択します。

    • リスト内の表をクリックし、「OK」をクリックします。
    • 「表のフィルタリング (Filter Table)」セクションに表の名前を指定し、「検索」ボタンをクリックします。
  11. 選択した表のすべての列がグリッドに表示されることを確認します。
  12. エンコード UTF-8 は、Unicode の標準の文字エンコードです。これはデフォルト・エンコードです。
  13. 表内の既存の列に対して追加/更新/削除を行った場合、「最新表示」ボタンを使用して、 選択された表の更新済みの列詳細を取得します。
    注:
    • データベース内の 1 行のみを更新するには、直接、「入力のマップ」セクションを選択します。
    • 複数のレコードを更新するには、「配信ルール」のオプションを選択して「バッチ」のチェック・ボックスを使用可能にする必要があります。
  14. 「構成」の下の「配信ルール」をクリックします。「バッチを使用可能にする」チェック・ボックスを選択し、一度に更新する行数を定義します。
    1. チェック・ボックスを選択すると、ドロップダウン・セクションには以下のような「バッチ・タイプ」が設定されます。
      • ログあり
      • ログなし
      • カウンター
    2. 上記のいずれかのバッチ・タイプを選択します。
    3. 「書き込み整合性レベル」ドロップダウンのデフォルト値は、テスト接続のエンドポイントの作成時に選択されたものです。ユーザーは、いずれかの整合性レベルを選択することで、値を変更できます。
  15. 「チェックリスト」から「入力のマップ」を選択します。 「行の更新」アクティビティーの選択した表から生成された XML スキーマが、「アクティビティーへ」パネルの request 入力パラメーターの下にノードとして表示されます。

    列タイプ map<?,?> の場合、スキーマには key、value、および updateOption が含まれます。

    map の有効な UpdateOption は以下のとおりです。
    • Add: キーと値の組を追加します。
    • Remove: 指定されたキーを削除します。Remove の場合、value エレメントを値やマッピングに設定しないでください。

    Map データ型のサンプルの入力要求:

    <to_do>
     <key>Staging</key>
     <value>Box.com</value>
     <updateOption>Add</updateOption>
    </to_do>

    列タイプ set<?> および List<?> の場合、スキーマには、再帰的エレメント value および UpdateOption が含まれます。

    列タイプ List<?> の有効な UpdateOption 値は、以下のとおりです。
    • Append: 既存のリストの最後に単一値を追加します。
    • Prepend: 既存のリストの先頭に単一値を付加します。
    • Discard: 既存のリストから、単一値を破棄します。
    • Append All: 既存のリストの最後に値の集合を追加します。
    • Prepend All: 既存のリストの先頭に、値の集合を付加します。
    • Discard All: 既存のリストから、値の集合を破棄します。
    列タイプ Set<?> の有効な UpdateOption 値は、以下のとおりです。
    • Add: 既存のセットに単一値を追加します。
    • Remove: 既存のセットから、単一値を削除します。
    • Add All: 既存のセットに、値の集合を追加します。
    • Remove All: 既存のセットから、値の集合を削除します。

    List データ型、Set データ型のサンプルの入力要求:

    <email>
     <value>john_3@abc.com</value>
     <value>john_4@abc.com</value>
     <value>john_5@abc.com</value>
     <updateOption>Append</updateOption>
    </email>
    
     <projects>
     <value>Salesforce.com</value>
     <value>Box.com</value>
     <value>SL</value>
     <updateOption>Add All</updateOption>
    </projects>
  16. オーケストレーション変数とアクティビティーの入力パラメーターとの間のマップを作成します。
    注: 入力構造の必須エレメントの値は、実行時に指定されている必要があります。 この値は、エレメントのデフォルト値を指定するか、エレメントを入力ノードにマッピングすることによって指定できます。実行時に必須エレメントの値が指定されていないと、アクティビティーは Web 管理コンソールから報告された例外をスローします。実行時にオプションの入力パラメーターの値が指定されていなくても、実行時に例外はスローされません。
  17. チェックリスト」から「出力のマップ」を選択します。 アクティビティーの応答保持のために生成された XML スキーマが、「アクティビティーから」パネルの response 出力パラメーターの下にノードとして表示されます。
  18. 出力パラメーターとオーケストレーション変数との間のマップを作成します。

タスクの結果

Cassandra「行の更新」アクティビティーを構成しました。
注:

このアクティビティーへの入力として、複数のオブジェクトを追加することができます。 入力として複数のオブジェクトを追加するには、「入力のマップ」「アクティビティーへ」ペインで「オブジェクト名」 (例えば、Filter) フィールドを右クリックし、「オカレンスの展開」を選択します。