Опрос многие-ко-многим в DynamoDB с Node.js - PullRequest
0 голосов
/ 05 июня 2018

Я читал о том, как смоделировать отношения «многие ко многим» в DynamoDB из этой статьи: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-adjacency-graphs.html

enter image description here

Предположим, чтоТребуется отобразить список всех счетов для данного счета.Но вам нужно отобразить все атрибуты для каждого счета (красные кружки на изображении).

Я мог бы запросить все счета для счета-фактуры-92551 следующим образом:

    var params = {
       TableName: "some-table",
       KeyConditionExpression: "#pk = :pk",
       ExpressionAttributeNames: {
          "#pk":"pk",
       },
       ExpressionAttributeValues: {
          ":pk": "Invoice-92551"
       },
       ProjectionExpression: "pk, sk, isPaid, Amount, created...etc"
    }; 

docClient.query(params, function(error, billsForGivenInvoice) {...});

Хорошо, у меня естьТеперь счета, но мне нужно больше атрибутов для каждого из них.Я мог бы сделать следующее:

            var params = {
                RequestItems: {
                    "some-table": {
                        Keys: ["Bill-4224663", "Bill-4224687"],
                        ProjectionExpression: "...other attributes needed..."
                    }
                }
            };

            docClient.batchGet(params, function(error, bills) {});

Можно ли запросить оба результата за один раз?Вместо того, чтобы сначала вызывать query (), а затем batchGet ().

...