dynamodb-read-stream

Readable stream client for DynamoDB

Usage no npm install needed!

<script type="module">
  import dynamodbReadStream from 'https://cdn.skypack.dev/dynamodb-read-stream';
</script>

README

dynamodb-read-stream

An open-source tool for reading data chunk by chunk. This tool is created for handling DynamoDB limitation for one response (1 MB). This library provides read stream implementation for DynamoDB.

npm

Example usage

Query reader

const reader = new DocumentClientQueryReadable(
  new DocumentClient(), {
  TableName: 'someTable',
  KeyConditionExpression: 'key = :primaryKey',
  ExpressionAttributeValues: {
    ':primaryKey': 'someValue'
  }
})
const transformOutput = new Transform({
  objectMode: true,
  transform (chunk: DocumentClient.QueryOutput, encoding: string, callback: (error?: Error, data?: any) => void): void {
    callback(undefined, JSON.stringify(chunk) + '\n')
  }
})

reader
  .pipe(transformOutput)
  .pipe(process.stdout)

Scan reader

const client = new DocumentClient()
const reader = new DocumentClientScanReadable(client, {
  TableName: 'someTable'
});
const transformOutput = new Transform({
  objectMode: true,
  transform (chunk: DocumentClient.ScanOutput, encoding: string, callback: (error?: Error, data?: any) => void): void {
    callback(undefined, JSON.stringify(chunk) + '\n')
  }
})

reader
  .pipe(transformOutput)
  .pipe(process.stdout)