Hi all, I'm Zihan Dai, a Computer Science student at the University of Melbourne, writing to introduce myself as one of this year's GSoC contributors with Apache IoTDB. I'll be working on GSOC-304: Enhancing ThingsBoard Integration with IoTDB 2.x Table Mode, mentored by Xuan Wang.
Background - Full GSoC proposal (PDF): https://drive.google.com/file/d/1FuMtvgMXo_OdKj03Sn3LdqLER-YGtGnq/view?usp=sharing - IoTDB contributions: - Merged: PR #17212 (Process resource leak fix, March 2026), PR #17400 (C++ client time column UB fix, April 2026) - In review: PR #17180 (GROUP BY inclusive end time syntax), #17408 (Java client time column equivalent), #17411 (last_by null after deleting all table data) - Cross-community discussions I started before applying: - GSOC-304 proposal/design discussion + PoC (IoTDB Discussion #17352): https://github.com/apache/iotdb/discussions/17352 - ThingsBoard Discussion #15296 (the same effort, framed for the ThingsBoard community): https://github.com/thingsboard/thingsboard/discussions/15296 - Other Apache work: merged PRs in Beam, ShardingSphere, and Iceberg, mostly around resource lifecycle and connector hardening. Full list at https://github.com/PDGGK. Planned scope A new ThingsBoard backend `database.ts.type=iotdb-table`, implemented as a connector module `iotdb-thingsboard-table` under apache/iotdb-extras: - TimeseriesDao, LatestDao, and AttributeDao implementations on top of IoTDB 2.x Table Mode - Tablet-based writes, SQL aggregations (date_bin, COALESCE) for the existing ThingsBoard dashboard queries, and TTL-based retention - Final stage: a PR to ThingsBoard adding the new backend option, plus performance benchmarks against the existing tree-model integration and a migration guide Plan for the community bonding period (now through May 24) 1. Re-validate the existing PoC against IoTDB 2.0.8. 2. Keep a setup-issues log so future users can avoid the same friction. 3. Post the refined design document to this list by Sunday, 2026-05-17, with a concrete recommendation and trade-offs on the two open questions from #17352: attribute table schema (per-scope tables vs. scope-in-key encoding) and label handling. Feedback drives the final decision. 4. Track progress on the ThingsBoard side in parallel so the eventual cross-community PR stays visible to both communities. Coding starts on May 25 and runs through August 24, with the mid-term evaluation deadline on 2026-07-10 18:00 UTC / 2026-07-11 04:00 AEST. Feedback on the two design questions, or on similar Table-Mode write/aggregation workloads, would be useful before I post the design doc. Thanks, Zihan Dai GitHub: https://github.com/PDGGK
