- Stream messages to Kafka to trigger notifications in an application.
- Mirror your data in full-text indexes, analytics engines, or big data pipelines.
- Export a snapshot of tables to backfill new applications.
- Feed updates to data stores powering machine learning models.
Stream row-level changes with changefeeds
Changefeeds are customizable jobs that monitor row-level changes in a table and emit updates in real time. These updates are delivered in your preferred format to a specified destination, known as a sink. In production, changefeeds are typically configured with an external sink such as Kafka or cloud storage. However, for development and testing purposes, sinkless changefeeds allow you to stream change data directly to your SQL client. Each emitted row change is delivered at least once, and the first emit of every event for the same key is ordered by timestamp.Get started with changefeeds
To get started with changefeeds in CockroachDB, refer to:- Create and Configure Changefeeds: Learn about the fundamentals of using SQL statements to create and manage changefeeds.
- Changefeed Sinks: The downstream system to which the changefeed emits changes. Learn about the supported sinks and configuration capabilities.
- Changefeed Messages: The change events that emit from the changefeed. Learn about how messages are ordered and the options to configure and format messages.
- Changefeed Examples: Step-by-step examples for connecting to changefeed sinks or running sinkless changefeeds.
Authenticate to your changefeed sink
To send changefeed messages to a sink, it is necessary to provide theCREATE CHANGEFEED statement with authentication credentials.
The following pages detail the supported authentication:
Monitor your changefeed job
It is a best practice to monitor your changefeed jobs for behavior such as failures and retries. You can use the following tools for monitoring:- The Changefeed Dashboard on the DB Console
- The
SHOW CHANGEFEED JOBSstatement - Changefeed metrics labels
Optimize a changefeed for your workload
Filter your change data with CDC queries
Change data capture queries allow you to define and filter the change data emitted to your sink when you create an changefeed. For example, you can use CDC queries to:- Filter out rows and columns from changefeed messages to decrease the load on your downstream sink.
- Modify data before it emits to reduce the time and operational burden of filtering or transforming data downstream.
- Stabilize or customize the schema of your changefeed messages for increased compatibility with external systems.

