Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 13 additions & 1 deletion src/content/docs/storage/data-streams/data-streams.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,13 +51,25 @@ In your table settings, you can:
- Change the name of the stream.
- Add a column or define your own structure using the PATH or JSONNET template. [Learn more](https://developers.keboola.com/integrate/data-streams/overview/#template-jsonnet)
- Edit column names (available only if you create a new table within the stream).
- Edit primary keys (available only if you create a new table within the stream).
- Delete a column (available only if you create a new table within the stream).

:::caution
**Important:** Changing the table's name will create a new table, and the stream will import data into that table.
:::

:::note[No primary key support]
Data streams do **not** support primary keys --- every incoming event is **appended** to the
table and no deduplication happens on import.

If you need unique rows (e.g., one row per event ID), it is up to you to decide whether
deduplication is required and to handle it **downstream**: create a
[deduplication transformation](/storage/tables/#primary-key-deduplication) that reads the stream
table and writes the result to a new table where the
[output mapping](/transformations/mappings/#output-mapping) primary key performs the
deduplication on load. Schedule it to run regularly with a [conditional flow](/flows/).
[Kai](/kai/) can help you build both the transformation and the scheduled flow.
:::

#### Sample codes for integration
For easier use, we've prepared a few examples of how to send data to a stream using Python, Javascript, and Bash.

Expand Down
Loading