AWS DynamoDBDelete - AWS DynamoDBのテーブルからアイテムを削除する

Amazon Web ServicesのDynamoDBのテーブルからアイテムを削除します

「DynamoDB Browser」からテーブル名インデックス名ハッシュ属性名ハッシュ属性型レンジ属性名レンジ属性型 の各プロパティを設定することができます。
「DynamoDB Browser」の詳細については下記トピック「DynamoDB Browserの使い方」を参照してください。

■ストリーム情報

入力フォーマットすべて
接続数1
説明 入力ストリームは使用せず、すべて無視します。
出力フォーマットRecord
説明 削除したアイテムの情報を返します。
コンポーネントをフローに配置したときには削除結果(RequestStatus/Boolean)、ハッシュ属性(HashKey/String)、レンジ属性(RangeKey/String)がフィールドに追加してあります。取得したい属性名をフィールドに追加してください。
フィールド定義のデータ型によって自動的にDynamoDBのデータ型を決めてデータを取得します。
追加した属性のデータ型が取得したデータ型と異なる場合は値が返されませんので、下記の表でデータ型を確認して指定してください。
フィールド定義データ型DynamoDBデータ型
BooleanBoolean
IntegerNumber
DecimalNumber
DoubleNumber
StringString
BinaryBinary
DateTimeString

■コンポーネントプロパティ

名前プロパティ型マッピング説明
コネクションを使用boolean- 接続情報に以下のコネクション名 を使用するかどうか選択します。
はい [true] - 以下のコネクション名 で指定した接続情報を使用します。
いいえ [false] - コネクション情報 以下のプロパティを使って接続を行います。
コネクション名connection-コネクションを使用 が「はい」の場合に接続先のAWSを指定します。 コネクションペインまたは管理コンソールにて作成されたAWS接続名を選択します。
コネクション情報group-コネクションを使用 が「いいえ」の場合に使用されるプロパティ群です。
アクセスキーstring入力&出力 アクセスキーを指定します。
サーバーがEC2インスタンス上にあり、アクセスキーを指定しない場合は、EC2インスタンスに設定されたIAMロールを使用します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
シークレットキーpassword入力&出力 シークレットキーを指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
プロトコルchoice入力&出力 FSMCで設定したプロキシーサーバーを使用する場合、「プロキシの設定」で設定されたプロキシ情報の選択に使用します。
コネクションを使用 が「いいえ」の場合、かつプロキシ設定を使用 が「はい」の場合、この設定を参照します。
HTTP [http] - HTTPの設定を使用します
HTTPS [https] - HTTPSの設定を使用します
タイムアウト(秒)int入力&出力 リクエスト時およびコネクション接続時のソケットタイムアウト時間を秒単位で指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
リクエストタイムアウト(分)int入力&出力 1回のリクエスト実行のタイムアウトまでの時間を分単位で指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
リージョンchoice入力&出力 利用するAWSのリージョンを選択します。
選択肢にない場合はリージョンを表す文字列を入力することもできます。
例えば東京リージョンであれば ap-northeast-1を指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
AssumeRole ARNstring入力&出力 一時的な認証情報を使用するためにAssumeRoleのARNを指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
一時的認証情報の有効期限(秒)int入力&出力 AssumeRole ARNで設定する一時的な認証情報の有効期限を秒単位で指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
プロキシ設定を使用boolean入力&出力 管理コンソールで設定したプロキシ設定を使用するかどうかを指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
はい [true] - プロキシ設定を使用します。
いいえ [false] - プロキシ設定を使用しません。
テーブル名string入力&出力 アイテムを削除するテーブル名を指定します。
検索方法choice入力&出力 検索方法を選択します。
Get [Get] - Getによりアイテムを検索します。
ハッシュ属性とレンジ属性(必要な場合)を指定して1つのアイテムを取得し削除します。
Scan [Scan] - Scanによりアイテムを検索します。
テーブルもしくはインデックスから条件式で指定した条件からアイテムを取得し削除します。
Query [Query] - Queryによりアイテムを検索します。
テーブルもしくはインデックスからハッシュ属性とレンジ属性(必要な場合)を指定して検索したアイテムを取得し削除します。
条件式を指定することで結果にフィルターを掛けることができます。
※指定するハッシュ属性名とレンジ属性名は、検索実行時に下記の名前が使用されます。条件式(属性名)パラメーター条件式(属性値)パラメーターの名前に、下記の名前を使用した場合はコンパイルエラーが発生します。
条件式(属性名)パラメーター条件式(属性値)パラメーター
"#n"にハッシュ属性名もしくはレンジ属性名をつなげた名前になります。
ハッシュ属性名が"Address"の場合は、"#nAddress"となります。
":vhash"、":vrange"、":vrange2"が使用されます。

インデックス名string入力&出力 削除するアイテムをインデックスから検索する場合にインデックス名を指定します。
条件式string入力&出力 検索した削除したいデータをフィルターするための条件式を指定します。 詳細については下記トピック「条件式とパラメーター」を参照してください。
ハッシュ属性名string入力&出力 ハッシュ属性名を指定します。
インデックス名を指定している場合はインデックスのハッシュ属性名を指定してください。
ハッシュ属性型choice入力&出力 ハッシュ属性の型を選択します。
String [S] - 文字列
Number [N] - 数値
Binary [B] - バイナリ
ハッシュ属性値string入力&出力 ハッシュ属性値を指定します。
レンジ属性名string入力&出力 レンジ属性名を指定します。
インデックス名を指定している場合はインデックスのレンジ属性名を指定してください。
レンジ属性型choice入力&出力 レンジ属性の型を選択します。
String [S] - 文字列
Number [N] - 数値
Binary [B] - バイナリ
レンジ比較演算子choice入力&出力 レンジ属性の比較演算子を選択します。
= [EqualTo] - =
< [LessThan] - <
<= [LessThanOrEqualTo] - <=
> [GreaterThan] - >
>= [GreaterThanOrEqualTo] - >=
次のもので始まる [StartWith] - 次のもので始まる
Between [Between] - レンジ属性値レンジ属性値2の間
レンジ属性値string入力&出力 レンジ属性値を指定します。
レンジ属性値2string入力&出力レンジ比較演算子で「Between」を選択した場合にもう1つのレンジ属性値を指定します。
アイテムがない場合エラーboolean- 削除対象アイテムを取得できなかった場合にエラーを発生するかどうかを選択します。
はい [true] - エラーを発生します。
いいえ [false] - 空のストリームを出力します。
削除に失敗した場合エラーboolean- アイテムの削除に失敗した場合にエラーを発生するかどうかを選択します。
はい [true] - エラーを発生します。
いいえ [false] - 処理を継続します。
削除成功件数int   出力 削除に成功したアイテム数を返します。
削除失敗件数int   出力 削除に失敗したアイテム数を返します。
条件式(属性名)パラメーターcategory入力&出力条件式の中で指定する属性名をパラメーターとして使用することができます。
主に、属性名としてDynamoDBの予約語を使用している場合にこのプロパティを使用します。
また、#osfieldから始まる名前は使用できません。

名前説明
名前条件式に記述した属性名の置換用の文字列を設定します。
置換する属性名を設定します。
条件式(属性値)パラメーターcategory入力&出力条件式の中で指定する属性値をパラメーターとして使用することができます。

名前説明
名前条件式に記述した属性値の置換用の文字列を設定します。
データ型DynamoDBのデータ型を設定します。
置換する属性値を設定します。

■ループ処理

なし。

■トランザクション処理

コミット何もしません。
ロールバック何もしません。

■エラー処理

タイプパラメーターエラー処理フロー
へのストリーム
エラー
コード
説明
汎用 なし コンポーネントの入力ストリーム1コネクションの定義項目に不正な値があった場合
2必須のプロパティの項目が指定されていなかった場合
4指定した検索方法が不正な場合
5プライマリキーに指定している型が不正な場合
7条件式(属性名)パラメーター名が不正な場合
8条件式(属性値)パラメーター名が不正な場合
1001APIクライアントの初期化に失敗した場合
アイテムが存在しない なし コンポーネントの入力ストリーム3アイテムがない場合エラーが「true」の場合で削除対象のアイテムが取得できなかった場合
削除に失敗した場合 なし コンポーネントの入力ストリーム6削除に失敗した場合エラーが「true」の場合でアイテムの削除に失敗した場合
APIエラー「APIエラーの
パラメーター」

参照してください。
コンポーネントの入力ストリーム202認証に失敗した場合。
APIの実行でエラーコードAccessDeniedExceptionを受け取った場合が該当します。
203リクエストの頻度が多すぎる場合。
APIの実行でエラーコードProvisionedThroughputExceededExceptionを受け取った場合が該当します。
204テーブルの状態が無効な場合。
APIの実行でエラーコードResourceNotFoundExceptionを受け取った場合が該当します。
205AWSアクセスキーIDまたはシークレットキーが無効である場合。
APIの実行でエラーコードUnrecognizedClientExceptionを受け取った場合が該当します。
206必須パラメータが指定されていないなどの場合。
APIの実行でエラーコードValidationExceptionを受け取った場合が該当します。
201APIの実行で上記以外のエラーコードを受け取った場合。
接続エラー なし コンポーネントの入力ストリーム301接続に失敗した場合。

■APIエラーのパラメーター

APIエラーが発生したときに設定されるエラーのパラメーターです。

No.名前説明
1CodeAWSから取得したエラーコード。エラーの詳細につきましては、AWSのサイトを参照ください。
2MessageAWSから取得したエラーの内容。エラーの詳細につきましては、AWSのサイトを参照ください。

■制限事項

本コンポーネントはList型とMap型には対応していません。

■条件式とパラメーター

このコンポーネントでは取得するアイテムをフィルターする条件式を設定することができます。
条件式のなかで直接比較に使用する属性名、属性値を指定できない場合に、条件式(属性名)パラメーター条件式(属性値)パラメーターを使用して値を指定します。

例えばDynamoDBのデータ型がNumber型のIDという属性が10より大きいものを取得したい場合は条件式条件式(属性値)パラメーターに次のように設定します。
条件式条件式(属性値)パラメーターの名前条件式(属性値)パラメーターのデータ型条件式(属性値)パラメーターの値
ID > :id:idNumber10


次にDynamoDBのデータ型がNumber型のIDという属性が10より大きく、かつString型のUserNameという属性が”A”と等しいデータを取得したい場合は条件式条件式(属性値)パラメーターに次のように設定します。
条件式条件式(属性値)パラメーターの名前条件式(属性値)パラメーターのデータ型条件式(属性値)パラメーターの値
ID > :id and UserName = :username:idNumber10
:usernameStringA


DynamoDBのGroup.IDという属性が”ABC”と等しいアイテムを取得したい場合は条件式条件式(属性名)パラメーター条件式(属性値)パラメーターに次のように設定します。
条件式条件式(属性名)パラメーターの名前条件式(属性名)パラメーターの値条件式(属性値)パラメーターの名前条件式(属性値)パラメーターの値
#groupid = :support#groupidGroup.ID:supportABC


条件式(属性名)パラメーターの名前は、必ず「#」で始まる必要があります。条件式(属性値)パラメーターの名前は、必ず「:」で始まる必要があります。
条件式に関する詳しい説明は下記のURLを参考にしてください。
https://docs.aws.amazon.com/ja_jp/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html

■DynamoDB Browserの使い方

本コンポーネントをダブルクリックするか、右クリックメニューの「DynamoDB Browser」を実行すると、DynamoDB Browserが起動します。
DynamoDB Browserはテーブルプロパティを設定するために使用しますが、DynamoDBへの簡単な操作も行えます。

DynamoDB Browserの画面構成

①.DynamoDB構成情報ツリー
接続したDynamoDBのテーブル、インデックスをツリー構造で表示します。
ここで選択したテーブル、インデックスがプロパティへ設定されます。
  • ローカルセカンダリインデックス
    ローカルセカンダリインデックスの場合、名前に[Local]が追加されて表示されます。
  • グローバルセカンダリインデックス
    グローバルセカンダリインデックスの場合、名前に[Global]が追加されて表示されます。
②.選択内容
DynamoDB構成情報ツリーで選択した項目別に表示します。
  • Amazon DynamoDB
    • 「テーブル作成」ボタン
      クリックして表示されるダイアログに値を入力してテーブルを作成します。

      • テーブル名
        新規に作成するテーブル名を入力します。
      • ハッシュ属性名
        テーブルに設定するハッシュ属性名を入力し、型を選択します。
      • レンジ属性名
        テーブルに設定するレンジ属性名を入力し、型を選択します。
  • テーブル
    • ステータス
      選択しているテーブルのステータスを表示します。
    • ストレージ容量
      選択しているテーブルのストレージ容量を表示します。
    • ハッシュ属性名
      選択しているテーブルに設定されているハッシュ属性名を表示します。
      コンポーネントに「ハッシュ属性名」プロパティがある場合にこの値が設定されます。
      • 文字列
        文字列型の場合、名前に[S]が追加されて表示されます。
      • 数値
        数値型の場合、名前に[N]が追加されて表示されます。
      • バイナリ
        バイナリ型の場合、名前に[B]が追加されて表示されます。
    • レンジ属性名
      選択しているテーブルに設定されているレンジ属性名を表示します。
      コンポーネントに「レンジ属性名」プロパティがある場合にこの値が設定されます。
      • 文字列
        文字列型の場合、名前に[S]が追加されて表示されます。
      • 数値
        数値型の場合、名前に[N]が追加されて表示されます。
      • バイナリ
        バイナリ型の場合、名前に[B]が追加されて表示されます。
    • 読み取りスループットの合計
      選択しているテーブルに設定されている読み取りスループットの合計を表示します。
    • 書き込みスループットの合計
      選択しているテーブルに設定されている書き込みスループットの合計を表示します。
    • アイテム数
      選択しているテーブル内のアイテム数を表示します。
    • 「アイテム追加」ボタン
      クリックして表示されるダイアログにJSONを入力することで、選択しているテーブルへアイテムを追加します。
    • 「テーブル削除」ボタン
      選択しているテーブルを削除します。
  • インデックス
    • ステータス
      選択しているインデックスのステータスを表示します。
    • ストレージ容量
      選択しているインデックスのストレージ容量を表示します。
    • ハッシュ属性名
      選択しているインデックスに設定されているハッシュ属性名を表示します。
      コンポーネントに「ハッシュ属性名」プロパティがある場合にこの値が設定されます。
      • 文字列
        文字列型の場合、名前に[S]が追加されて表示されます。
      • 数値
        数値型の場合、名前に[N]が追加されて表示されます。
      • バイナリ
        バイナリ型の場合、名前に[B]が追加されて表示されます。
    • レンジ属性名
      選択しているインデックスに設定されているレンジ属性名を表示します。
      コンポーネントに「レンジ属性名」プロパティがある場合にこの値が設定されます。
      • 文字列
        文字列型の場合、名前に[S]が追加されて表示されます。
      • 数値
        数値型の場合、名前に[N]が追加されて表示されます。
      • バイナリ
        バイナリ型の場合、名前に[B]が追加されて表示されます。
    • 読み取りスループットの合計
      選択しているインデックスに設定されている読み取りスループットの合計を表示します。
    • 書き込みスループットの合計
      選択しているインデックスに設定されている書き込みスループットの合計を表示します。
    • アイテム数
      選択しているインデックス内のアイテム数を表示します。
    • 射影属性
      選択しているインデックスに射影属性が設定されている場合に、射影属性を表示します。
③.アイテム情報
  • アイテム
    DyanamoDB構成情報ツリーでテーブルを選択した場合に、テーブルに含まれるアイテムを取得して内容を表示します。
    アイテム取得時にはテーブルへのスキャンが行われます。
    • 1ページ最大取得数
      1回に取得する最大のアイテム数を数値で指定します。
      ※テーブル内に大量のアイテムが存在する場合やフィルターを設定する場合に、大きな値を設定すると動作が速くなる場合があります。
    • 「<<」ボタン
      ページ1へ移動します。
    • 「<」ボタン
      1ページ戻ります。
    • ページ n [アイテム m件]
      現在表示しているページ番号とページ内アイテム数を表示します。
    • 「>」ボタン
      1ページ進みます。
    • 条件式
      スキャン時にフィルターを1つだけ設定することができます。
      フィルターに使用する「属性名」「属性型」「比較演算子」を選択し、「値」を入力して「検索」ボタンをクリックします。
      フィルターの設定を変更するとページ情報はクリアされ、検索時には1ページ目が表示されます。
    • 「複製」ボタン
      選択したアイテムを複製して、新規にアイテムを追加します。
      ボタンをクリックするとダイアログが表示され、選択しているアイテムのJSONが表示されますので、JSONを編集してOKボタンをクリックします。
    • 「編集」ボタン
      選択したアイテムを編集します。
      ボタンをクリックするとダイアログが表示され、選択しているアイテムのJSONが表示されますので、JSONを編集してOKボタンをクリックします。
    • 「削除」ボタン
      選択したアイテムを削除します。
    • JSON
      選択したアイテムをJSON形式で表示します。
④.保存・キャンセル
  • 「保存」ボタン
    クリックするとDynamoDB構成情報ツリーで選択したテーブルをプロパティへ設定し「DynamoDB Browser」を終了します。
  • 「キャンセル」ボタン
    クリックすると内容を破棄して「DynamoDB Browser」を終了します。