Подтвердить что ты не робот

Сканирование DynamoDB с фильтром, соответствие условиям "в установке"

Я пытаюсь использовать операцию сканирования в таблице DynamoDB для соответствия элементам с указанными "тегами". Теги для элемента хранятся в одном атрибуте набора. Например:.

machine-1: tags = "windows", "iis", "64bit"
machine-2: tags = "windows", "fs"

Теперь у меня есть поддержка с поддержкой Premium, но она занимает некоторое время. То, что я хочу сделать, это сопоставить машины, где "теги" содержат записи "windows" и "iis".

Я могу сопоставить один, используя режим CONTAINS, и указывая, например, один атрибут AttributeValue со строковым значением "windows".

Однако CONTAINS не поддерживает множества в одном атрибуте AttributeValue или несколько атрибутов. Это дает ошибку.

Итак, я попробовал IN (предлагал также премиум-поддержку AWS): однако, я использую один атрибут AttributeValue (даже просто ищу "окна" снова или несколько), я получаю нулевые результаты.

Документация для IN довольно бедна. Операция описана в 4 неинформативных словах, фактически: "проверяет точное соответствие".

Пока я жду поддержки, возможно, пройдя еще несколько раундов Q & A, читает ли кто-нибудь этот вопрос с помощью Scan? (Если бы вы могли, пожалуйста, сначала проверьте, что вы говорите в своем ответе: я думаю, что я пробовал очевидные!)

Для справки, документация сканирования: http://docs.amazonwebservices.com/amazondynamodb/latest/developerguide/API_Scan.html

4b9b3361

Ответ 1

Это от премиум-поддержки AWS:

"Здравствуйте.

Я получил подтверждение от DB Dynamo, которое в настоящее время не поддерживается. СОДЕРЖАНИЕ против набора может выполняться только с одним значением. "

Urgh. Итак, теперь я создам новый атрибут для каждого возможного тега с "True" или "False" в каждом столбце и отфильтрую его Scan на нем.