Move your data from PostgreSQL to Elasticsearch, continuously

Continuously ingest data from different sources, transform data on-the-fly, and then deliver data to any destinations using RisingWave’s connectors.
PostgreSQL
→
RisingWave
→
Elasticsearch
PostgreSQL
↓-
RisingWave
↓-
Elasticsearch
PostgreSQL
|
CREATE SOURCE pg_cdc_source WITH (
    connector = 'postgres-cdc',
    hostname = '127.0.0.1',
    port = '8306',
    username = 'root',
    password = '123456',
    database.name = 'mydb',
    slot.name = 'mydb_slot'
);

CREATE TABLE orders_rw (
    order_id INTEGER PRIMARY KEY,
    customer_id INTEGER,
    order_status VARCHAR,
    total_amount DECIMAL,
    last_updated TIMESTAMP,
)
FROM source pg_cdc_source TABLE orders;
For comprehensive configuration details, please refer to the PostgreSQL connector documentation.
|
RisingWave
|
CREATE SINK elasticsearch_sink AS
SELECT
    order_status,
    COUNT(*) as order_count,
    SUM(total_amount) as total_revenue,
    AVG(total_amount) as avg_order_value,
    MIN(last_updated) as first_order_time,
    MAX(last_updated) as last_order_time
FROM orders_rw
WITH (
    connector = 'elasticsearch',
    primary_key = 'user_id',
    index = 'user_index',
    url = 'http://localhost:9200',
    username = 'user_name',
    password = 'secure_password',
    delimiter = ','
);
For comprehensive configuration details, please refer to the Elasticsearch connector documentation.
|
Elasticsearch
The Modern Backbone for Your
Event-Driven Infrastructure
GitHubXLinkedInSlackYouTube
Sign up for our to stay updated.