在「Influxdb made the switch from Go to Rust (reddit.com)」這邊看到 Reddit 上 InfluxDB 的 CTO 出來的解釋:「influxdb officially made the switch from Go => Rust」。
可以看到 Hacker News 上的討論很多人都有提到 InfluxDB 的各種問題,而且在量還不大的時候就會遇到了。
這次 Golang 換成 Rust,依照 InfluxDB CTO 的說法有這些「優點」:
- No garbage collector
- Fearless concurrency (thanks Rust compiler)
- Performance
- Error handling
- Crates
不過如果在 Golang 沒辦法解決 scalability 的問題 (通常需要 profiling 找出熱點然後改善演算法),Rust 這邊遇到一樣的問題應該也是一樣炸裂...
另外這家公司先前也出過事,七月的時候 InfluxDB 把比利時區的服務給關掉,但有不少客戶因為種種原因沒有收到通知,加上他們是直接 hard shutdown (沒有備份資料),造成 InfluxDB Cloud 的企業用戶直接幹翻天:「InfluxDB Cloud shuts down in Belgium; some weren't notified before data deletion (influxdata.com)」。
基本上可以閃遠一點... 目前看到的替代方案有 TimescaleDB (在 comment 裡有看到一些抱怨) 與 Clickhouse (在這篇的 comment 討論的比較少)。
有个新开源的 tsdb https://github.com/GreptimeTeam/greptimedb 带了集群方案