流支持本地dynamodb?

jsc*_*chr 14 amazon-web-services amazon-dynamodb dynamo-local

我似乎无法在Dynamo db local中获得流支持,是否支持?我能找到它的唯一标志是http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Tools.DynamoDBLocal.html#Tools.DynamoDBLocal.Differences中的最后一个要点.

使用dynamodb local,似乎忽略了StreamSpecification,因此在调用createTable或describeTable时没有LatestStreamArn

以下代码使用托管的dynamodb服务返回LatestStreamArn,但不返回dynamodb local:

ddb.createTable({
  TableName: 'streaming_test',

  AttributeDefinitions: [
    { AttributeName: 'id', AttributeType: 'S' }
  ],

  KeySchema: [
    { AttributeName: 'id', KeyType: 'HASH' }
  ],

  ProvisionedThroughput: {
    ReadCapacityUnits: 5,
    WriteCapacityUnits: 5
  },

  StreamSpecification: {
    StreamEnabled: true,
    StreamViewType: 'NEW_AND_OLD_IMAGES'
  }
}, function (err, data) {
  if (err) {
    console.log(err, err.stack)
  } else {
    // data.TableDescription.StreamSpecification and 
    // data.TableDescription.LatestStreamArn are undefined 
    // for dynamodb local
    console.log(data)
  }
})
Run Code Online (Sandbox Code Playgroud)

Ale*_*kis 14

我无法重现您的问题.我采取的步骤:

  1. 这里下载DynamoDB Local
  2. 使用本地启动DynamoDB java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -inMemory -sharedDb
  3. 导航到http:// localhost:8000/shell /
  4. 粘贴下面的代码,然后单击播放按钮.我写的和上面的代码之间的唯一区别是我替换ddbdynamodb.

当我这样做时,我得到了一个非null且非空的LatestStreamArn arn:aws:dynamodb:ddblocal:000000000000:table/streaming_test/stream/2017-02-12T08:39:03.722.

dynamodb.createTable({
  TableName: 'streaming_test',

  AttributeDefinitions: [
    { AttributeName: 'id', AttributeType: 'S' }
  ],

  KeySchema: [
    { AttributeName: 'id', KeyType: 'HASH' }
  ],

  ProvisionedThroughput: {
    ReadCapacityUnits: 5,
    WriteCapacityUnits: 5
  },

  StreamSpecification: {
    StreamEnabled: true,
    StreamViewType: 'NEW_AND_OLD_IMAGES'
  }
}, function (err, data) {
  if (err) {
    console.log(err, err.stack)
  } else {
    // data.TableDescription.StreamSpecification and 
    // data.TableDescription.LatestStreamArn are undefined 
    // for dynamodb local
    console.log(data)
  }
})
Run Code Online (Sandbox Code Playgroud)