stoyan-scava / aws-cdk-dynamodb-to-elasticsearch-stream

Stream a snapshot of every DynamoDB item's changes to AWS ElasticSearch

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Stream DynamoDB to ElasticSearch

npm version

AWS CDK based construct that enables you to easily stream data from a DynamoDB table to an ElasticSearch index.

Installation

npm install @scavasoft/aws-cdk-dynamodb-to-elasticsearch-stream

Sample usage

Use the construct as a "drop-in" replacement of the dynamodb.Table construct.

Before:

import * as dynamodb from '@aws-cdk/aws-dynamodb';

new dynamodb.Table(this, 'table', {
    partitionKey: {
        name: "id",
        type: AttributeType.STRING,
    },
});

After:

import * as elasticsearch from '@aws-cdk/aws-elasticsearch';

new DynamoDBWithElasticSearchStream(this, 'table', {
    partitionKey: {
        name: "id",
        type: AttributeType.STRING,
    },
    streamTo: {
        domain: new elasticsearch.Domain(this, 'elasticsearch', {
            version: ElasticsearchVersion.V7_7,
        }),
        index: "some-elasticsearch-index",
    }
});

A more in-depth example is available in the /examples subfolder.

About

Stream a snapshot of every DynamoDB item's changes to AWS ElasticSearch


Languages

Language:TypeScript 97.4%Language:JavaScript 2.6%