HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
timeplus-io
proton
C++2023–2026
timeplus-io / proton

proton

The fastest unified streaming SQL Engine in a single C++ binary. ⚡ Millisecond latency. 100+ GB/s throughput. Continuously compute stateful context from streams, logs, metrics, events, and CDC.

8Distinct people
19Mentions
0Explicit recommenders
2.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

The fastest unified streaming SQL Engine in a single C++ binary. ⚡ Millisecond latency. 100+ GB/s throughput. Continuously compute stateful context from streams, logs, metrics, events, and CDC.

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:03:16 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by month19 dated mentions

Observed mentions: 2023-09-22 00:47:15 UTC to 2026-02-18 18:36:50 UTC.

012342023-09-01 00:00:00 UTC to 2023-10-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 commentsSep 20232023-10-01 00:00:00 UTC to 2023-11-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-11-01 00:00:00 UTC to 2023-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-12-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-01 00:00:00 UTC to 2024-02-01 00:00:00 UTC (exclusive): 4 mentions; 3 submissions, 1 comments2024-02-01 00:00:00 UTC to 2024-03-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-03-01 00:00:00 UTC to 2024-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-04-01 00:00:00 UTC to 2024-05-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2024-05-01 00:00:00 UTC to 2024-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-06-01 00:00:00 UTC to 2024-07-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-07-01 00:00:00 UTC to 2024-08-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-08-01 00:00:00 UTC to 2024-09-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-09-01 00:00:00 UTC to 2024-10-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-10-01 00:00:00 UTC to 2024-11-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-11-01 00:00:00 UTC to 2024-12-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsNov 20242024-12-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-01-01 00:00:00 UTC to 2025-02-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-02-01 00:00:00 UTC to 2025-03-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-03-01 00:00:00 UTC to 2025-04-01 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 comments2025-04-01 00:00:00 UTC to 2025-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-05-01 00:00:00 UTC to 2025-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-06-01 00:00:00 UTC to 2025-07-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-07-01 00:00:00 UTC to 2025-08-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-08-01 00:00:00 UTC to 2025-09-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-09-01 00:00:00 UTC to 2025-10-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2025-10-01 00:00:00 UTC to 2025-11-01 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 comments2025-11-01 00:00:00 UTC to 2025-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-01 00:00:00 UTC to 2026-02-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2026-02-01 00:00:00 UTC to 2026-03-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsFeb 2026

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Sep 20232023-09-01 00:00:00 UTC2023-10-01 00:00:00 UTC202
Oct 20232023-10-01 00:00:00 UTC2023-11-01 00:00:00 UTC000
Nov 20232023-11-01 00:00:00 UTC2023-12-01 00:00:00 UTC000
Dec 20232023-12-01 00:00:00 UTC2024-01-01 00:00:00 UTC000
Jan 20242024-01-01 00:00:00 UTC2024-02-01 00:00:00 UTC431
Feb 20242024-02-01 00:00:00 UTC2024-03-01 00:00:00 UTC101
Mar 20242024-03-01 00:00:00 UTC2024-04-01 00:00:00 UTC000
Apr 20242024-04-01 00:00:00 UTC2024-05-01 00:00:00 UTC211
May 20242024-05-01 00:00:00 UTC2024-06-01 00:00:00 UTC000
Jun 20242024-06-01 00:00:00 UTC2024-07-01 00:00:00 UTC000
Jul 20242024-07-01 00:00:00 UTC2024-08-01 00:00:00 UTC000
Aug 20242024-08-01 00:00:00 UTC2024-09-01 00:00:00 UTC000
Sep 20242024-09-01 00:00:00 UTC2024-10-01 00:00:00 UTC101
Oct 20242024-10-01 00:00:00 UTC2024-11-01 00:00:00 UTC000
Nov 20242024-11-01 00:00:00 UTC2024-12-01 00:00:00 UTC101
Dec 20242024-12-01 00:00:00 UTC2025-01-01 00:00:00 UTC000
Jan 20252025-01-01 00:00:00 UTC2025-02-01 00:00:00 UTC000
Feb 20252025-02-01 00:00:00 UTC2025-03-01 00:00:00 UTC000
Mar 20252025-03-01 00:00:00 UTC2025-04-01 00:00:00 UTC220
Apr 20252025-04-01 00:00:00 UTC2025-05-01 00:00:00 UTC000
May 20252025-05-01 00:00:00 UTC2025-06-01 00:00:00 UTC000
Jun 20252025-06-01 00:00:00 UTC2025-07-01 00:00:00 UTC000
Jul 20252025-07-01 00:00:00 UTC2025-08-01 00:00:00 UTC000
Aug 20252025-08-01 00:00:00 UTC2025-09-01 00:00:00 UTC000
Sep 20252025-09-01 00:00:00 UTC2025-10-01 00:00:00 UTC202
Oct 20252025-10-01 00:00:00 UTC2025-11-01 00:00:00 UTC220
Nov 20252025-11-01 00:00:00 UTC2025-12-01 00:00:00 UTC000
Dec 20252025-12-01 00:00:00 UTC2026-01-01 00:00:00 UTC000
Jan 20262026-01-01 00:00:00 UTC2026-02-01 00:00:00 UTC101
Feb 20262026-02-01 00:00:00 UTC2026-03-01 00:00:00 UTC101

What Hacker News says

19 sources
Temporal binding is one of the hardest problems in visualization, all about aggregations across different time windows. And it gets even harder when the clock never stops and live data keeps flowing. Client visualization layer: Timeplus Vistral (https://github.com/timeplus-io/vistral) Server data processing layer: Timeplus Proton (https://github.com/timeplus-io/proton) Streaming-native from processing to insights in motion
In Vistral: A streaming data visualization lib based on the Grammar of Graphics
I work on Proton/Timeplus (disclosure). We hit a SIGSEGV where the backtrace was misleading: our fatal handler tried to print a stack trace and that trace capture sometimes crashed inside libunwind, so it looked like “unwinding is broken”. What worked was building a deterministic postmortem harness (core dump + debug binary + symbols + matching source paths) inside Docker, then installing Codex in the same container so it could run GDB + rebuild/iterate in-place. OpenAI Codex pivoted away from unstable backtraces and classified the crash via siginfo_t/ucontext_t. It turned out to be SEGV_PKUERR (Intel MPK/PKU) caused by a thread-local PKRU mismatch when some worker threads entered V8. PR with the patch: https://github.com/timeplus-io/proton/pull/1091
In Debugging a "weird SIGSEGV" core dump with Codex and GDB inside Docker
gangtao·Oct 22, 2025Submission

Show HN: Timeplus Proton 3.0 – First vectorized streaming SQL engine

Two years after open sourcing Proton, we're releasing v3.0 which brings enterprise-grade streaming capabilities to the open source version: full connectivity, processing, and routing in a single binary with zero dependencies. Key features: First vectorized streaming SQL engine in modern C++ with JIT compilation High-throughput, low-latency, high-cardinality processing End-to-end streaming: ETL, joins, aggregation, alerts, and tasks Native connectors: Kafka, Redpanda, Pulsar, ClickHouse, Splunk, Elastic, MongoDB, S3, Iceberg Native Python UDF/UDAF support to support your AI/ML work loads The same performance we've proven in large enterprise deployments is now available in the community edition. Would love feedback from anyone working with streaming data or looking for Flink/ksqlDB alternatives.
11 points · Open discussion
Dynamic Tables are interesting for declarative streaming. In the ClickHouse ecosystem, you might want to look at materialized views combined with streaming engines. For real-time transformations, there are a few approaches: - Native ClickHouse MaterializedViews with AggregatingMergeTree - Stream processors that write to ClickHouse (Flink, Spark Streaming) - Streaming SQL engines that can read/write ClickHouse We've been working on streaming SQL at Proton (github.com/timeplus-io/proton) which handles similar use cases - continuous queries that maintain state and can write results back to ClickHouse. The key difference from Dynamic Tables is handling unbounded streams vs micro-batches. What's your specific use case? Happy to discuss the tradeoffs.
In Any pipeline tool for ClickHouse, similar to Snowflake's Dynamic Tables
jovezhong·Mar 20, 2025Submission

Show HN: Open-Source C++ Apache Iceberg Client with Write Support

Existing OSS C++ projects like ClickHouse and DuckDB support reading from Iceberg tables. Writing requires Spark, PyIceberg, or managed services. In this PR https://github.com/timeplus-io/proton/pull/928, we are open-sourcing a C++ implementation of Iceberg integration. It's an MVP, focusing on REST catalog and S3 read/write(S3 table support coming soon). You can use Timeplus to continuously read data from MSK and stream writes to S3 in the Iceberg format. No JVM. No Python. Just a low-overhead, high-throughput C++ engine. Docker/K8s are optional. Demo video: https://www.youtube.com/watch?v=2m6ehwmzOnc Help us improve the code to add more integrations and features. Happy to contribute this to the Iceberg community. Or just roast the code. We’ll buy the virtual coffee.
8 points · Open discussion
jovezhong·Mar 6, 2025Submission

Show HN: C++ AWS MSK IAM Auth Implementation – Goodbye Kafka Passwords

In 2023, AWS announced[1] IAM authentication for MSK Kafka clusters with support for "all programming languages"… except C++. While Java[2], Python[3], Go[4], and others got official SDKs, C++ developers/vendors were stuck hardcoding SCRAM-SHA credentials in code/configs or relying on heavier Java-based tools like Kafka Connect or Apache Flink. Later, community projects added Rust[5] and Ruby[6] support. Why no C++? Rust might be the new favorite, but C++ is still king for high-performance data systems: minimal dependencies, lean resource use, and raw speed. At Timeplus, we needed IAM auth for our C++ streaming engine, Proton, so we built it ourselves. Today, we’re open-sourcing our code for AWS MSK IAM authentication. It’s live in Timeplus Proton 1.6.12 Just attach an IAM role to your EC2 instance or EKS pod, then put the Timeplus Proton
Read the rest
single binary inside, start the server, then run the following SQL to read or write MSK: CREATE EXTERNAL STREAM msk_stream(column_defs) SETTINGS type='kafka',topic='topic2', brokers='prefix.kafka.us-west-2.amazonaws.com:9098', security_protocol='SASL_SSL', sasl_mechanism='AWS_MSK_IAM'; The core logic is just two files under 200 lines and you can reuse the code anywhere. https://github.com/timeplus-io/proton/blob/develop/src/IO/Ka... https://github.com/timeplus-io/proton/blob/develop/src/IO/Ka... We’d love to get your feedback and work together to make this a standalone library—or even get it into ClickHouse or AWS SDK for C++. For those curious about Timeplus Proton: it’s an open-source streaming engine we built in C++ (think “FlinkSQL in C++” meets ClickHouse’s columnar storage). Later this month, we will also open-source our C++ code for Apache Iceberg read&write. Stay tuned. Links: [1] https://aws.amazon.com/blogs/big-data/amazon-msk-iam-authent... [2] https://github.com/aws/aws-msk-iam-auth [3] https://github.com/aws/aws-msk-iam-sasl-signer-python [4] https://github.com/aws/aws-msk-iam-sasl-signer-go [5] https://docs.rs/aws-msk-iam-sasl-signer [6] https://rubygems.org/gems/aws-msk-iam-sasl-signer/
50 points · Open discussion
Timeplus Proton [1] is an OSS fork of Clickhouse that adds support for streaming queries. Timeplus Proton is wire-compatible with Clickhouse and its streaming support makes the log tailing use case you mentioned above easy to setup: > - You can live tail events, I don't think Grafana for Clickhouse has that (I'm a big fan of tail -f) So it sounds like your v2 will work with any DB that is wire-compatible with Clickhouse, correct? [1] https://github.com/timeplus-io/proton
In Show HN: Open-source Kibana alternative for logs and traces in ClickHouse
What's the process for adding support for other databases to your tool qStudio? I'm thinking perhaps you could add support for Timeplus [1]? Timeplus is a streaming-first database built on ClickHouse. The core DB engine Timeplus Proton is open source [2]. It seems that qStudio is open source [3] and written in Java and will need a JDBC driver to add support for a new RDBMS? If yes, Timeplus Proton has an open source JDBC driver [4] based on ClickHouse's driver but with modifications added for streaming use cases. 1: https://www.timeplus.com/ 2: https://github.com/timeplus-io/proton 3: https://github.com/timeseries/qstudio 4: https://github.com/timeplus-io/proton-java-driver
In Loading a trillion rows of weather data into TimescaleDB
A deep dive from CTO of Timeplus. ksqlDB is great for * SQL Interface * Real-Time Streaming Processing * Integration with Kafka * Stateful Processing * Scalability * Security However, there are also limitations with ksqlDB: * Deep Coupling with Kafka * Heavy Resource Consumption * Not Designed for Analytics * Not True Open-Source There are lots of similarities between Proton and ksqlDB. Both support: * Stateful streaming processing * Data persistence * Stream/table concept * Dual query mode, long running, unbounded push based query and bounded, pull base query * Query Kafka data and write analytic results back to Kafka Most features of ksqlDB can be found in Proton, while Proton offers additional benefits: * Proton demonstrates stronger performance * Proton is more flexible when consuming Kafka data * Proton is purpose designed for a
Read the rest
nalytic workloads * Support complex computing by JavaScript UDF (User Defined Function) * Proton is more developer friendly To explore Proton yourself, visit the [Proton GitHub repo](https://github.com/timeplus-io/proton) or create your own workspace on [Timeplus Cloud](https://timeplus.com).
In Comparing Timeplus Proton and ksqlDB for stream processing
As a streaming SQL engine, Proton is a fast and lightweight alternative to Apache Flink, powered by ClickHouse. It can help developers solve the data streaming challenges from processing, routing to analytics, and send aggregated data to the downstream systems. Proton is also the core engine of Timeplus (http://timeplus.com), which is a cloud-native streaming analytics platform. If you are looking for a high-performance and lightweight streaming processing engine capable of running everywhere, or gaining streaming insights with historical context, you should try Proton: https://github.com/timeplus-io/proton!
In Proton, a unified database for streaming and historical data in a single binary

Showing the 15 most recent of 19 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.