This basic example illustrates a simple NodeJS URL Table Engine server for Clickhouse
Clickhouse is super fast and already has all the functions one could dream. What is this for?
This example is designed to understand the underlying formats and unleash imagination for integrators.
sequenceDiagram
autonumber
ClickHouse->>NodeJS: POST Request
loop Javascript
NodeJS->>NodeJS: INSERT
end
NodeJS-->>ClickHouse: POST Response
ClickHouse->>NodeJS: GET Request
loop Javascript
NodeJS->>NodeJS: SELECT
end
NodeJS-->>ClickHouse: GET Response
- INSERT to JS array
- SELECT from JS array
Install and run the example service :
npm install
npm start
Create a url_engine_table
table pointed at our service :
CREATE TABLE url_engine_node
(
`key` String,
`value` UInt64
)
ENGINE = URL('http://127.0.0.1:3123/', JSONEachRow)
INSERT INTO url_engine_node VALUES ('hello',1), ('world', 2)
SELECT * FROM url_engine_node
Query id: d65b429e-76aa-49f3-b376-ebd3fbc9cd1a
┌─key───┬─value─┐
│ hello │ 1 │
│ world │ 2 │
└───────┴───────┘
2 rows in set. Elapsed: 0.005 sec.