You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: core/connectors/README.md
+14Lines changed: 14 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -52,12 +52,26 @@ Please refer to the **[Sink documentation](https://github.com/apache/iggy/tree/m
52
52
When implementing `Sink`, make sure to use the `sink_connector!` macro to expose the FFI interface and allow the connector runtime to register the sink with the runtime. The macro also exports the connector's version (from `Cargo.toml`) which is reported in the runtime's `/stats` endpoint.
53
53
Each sink should have its own, custom configuration, which is passed along with the unique plugin ID via expected `new()` method.
54
54
55
+
### Available Sinks
56
+
57
+
- **Elasticsearch Sink** - sends messages to Elasticsearch indices
58
+
- **Iceberg Sink** - writes data to Apache Iceberg tables via REST catalog
59
+
- **PostgreSQL Sink** - stores messages in PostgreSQL database tables
60
+
- **Quickwit Sink** - indexes messages in Quickwit search engine
61
+
- **Stdout Sink** - prints messages to standard output (useful for debugging/development)
62
+
55
63
## Source
56
64
57
65
Sources are responsible for producing the messages to the configured stream(s) and topic(s). For example, the Test source connector will generate the random messages that will be then sent to the configured stream and topic.
58
66
59
67
Please refer to the **[Source documentation](https://github.com/apache/iggy/tree/master/core/connectors/sources)**for the details about the configuration and the sample implementation.
60
68
69
+
### Available Sources
70
+
71
+
- **Elasticsearch Source** - polls documents from Elasticsearch indices
72
+
- **PostgreSQL Source** - reads rows from PostgreSQL tables with multiple consumption strategies (delete after read, mark as processed, timestamp tracking)
73
+
- **Random Source** - generates random test messages (useful for testing/development)
74
+
61
75
## Building the connectors
62
76
63
77
New connector can be built simply by implementing either `Sink` or `Source` trait. Please check the **[sink](https://github.com/apache/iggy/tree/master/core/connectors/sinks)** or **[source](https://github.com/apache/iggy/tree/master/core/connectors/sources)** documentation, as well as the existing examples under `/sinks` and `/sources` directories.
0 commit comments