Pesquisar no tipo de dados da lista no dínamo db aws

Estamos usando o dynamo db como nossa solução de banco de dados para um de nossos sites. estamos armazenando dados no dínamo db, conforme abaixo, dado json.

Temos um vídeo que pode pertencer a um / muitos gêneros, por isso escolhemos o tipo de dado da lista e armazenamos dados nele e o transformamos em GSI (índice secundário global)

Estou enfrentando vários problemas.

1) Quando defino gênero como índice, o aws fornece apenas três tipos de dados (string, binário, número), não nos permitindo armazenar dados de tipo de lista. Dá um erro inesperado do tipo de dados.

2) Se não o definir como índice, não tenho permissão para buscar os dados. O DynamoDB solicita a chave de hash, o que não é possível no meu caso, pois estou buscando uma listagem que não deve depender de uma chave de hash (chave primária).

{
  "description": "********",
  "genre": [
    "Kids",
    "Documentary"
  ],
  "language": "******",
  "status": "0",
  "thumb_url": "******",
  "title": "******",
  "uploaded_by": "****** ",
  "url": "******",
  "video_id": 1330051052
}

Código para buscar dados

$DynamoDbClient = AWS::get('DynamoDb');
        $result = $DynamoDbClient->query(array(
            'TableName' => 'videos',
            'IndexName' => 'genre-index',
            'AttributesToGet' => array('video_id', 'language', 'description'),
            'KeyConditions' => array(
                // Key attribute
                // This is non-key attribute
                'genre' => array(
                    'ComparisonOperator' => 'EQ',
                    'AttributeValueList' => array(
                        array("S" => "Kids"),
                    )
                ),
            ),
        ));

No código acima, estou procurando vídeos no gênero Kids. mas retorna em branco e gera erro se eu não declarar gênero como índice. O mesmo vídeo pode pertencer a vários gêneros.

Existe alguma maneira de pesquisar dentro de uma lista OU não estou usando a API da maneira correta? A ajuda é sempre apreciada.

questionAnswers(1)

yourAnswerToTheQuestion