首页
/ Apache HoraeDB 快速入门及最佳实践

Apache HoraeDB 快速入门及最佳实践

2026-01-16 10:29:14作者:侯霆垣

1. 项目介绍

Apache HoraeDB(incubating) 是一款高性能、分布式、云原生的时间序列数据库。它设计用于处理大量时间序列数据,提供高并发读写能力和低延迟查询。HoraeDB 支持 Rust 和 SQL,适合 IoT 数据库、时序分析和其他对时间戳数据存储有需求的应用场景。

2. 项目快速启动

2.1 环境准备

确保您的环境中已经安装了 Docker,这是运行 HoraeDB 的基本要求。

2.2 单节点运行

使用以下命令通过 Docker 启动一个 HoraeDB 的服务器实例:

docker run -d --name horaedb-server \
    -p 8831:8831 \
    -p 3307:3307 \
    -p 5440:5440 \
    ghcr.io/apache/horaedb-server:nightly-20231222-f57b3827

2.3 集群模式

要部署多节点集群,修改 Docker Compose 文件并启动服务:

docker-compose -f docker/docker-compose.yaml up

2.4 操作示例

创建表

curl --location --request POST 'http://127.0.0.1:5440/sql' \
    -d 'CREATE TABLE `demo` (
        `name` string TAG,
        `value` double NOT NULL,
        `t` timestamp NOT NULL timestamp KEY (t)
    ) ENGINE=Analytic with (enable_ttl="false")'

插入数据

curl --location --request POST 'http://127.0.0.1:5440/sql' \
    -d 'INSERT INTO demo (t, name, value) VALUES (1702224000000, "horaedb", 100)'

查询数据

curl --location --request POST 'http://127.0.0.1:5440/sql' \
    -d 'SELECT * FROM `demo`'

删除表

curl --location --request POST 'http://127.0.0.1:5440/sql' \
    -d 'DROP TABLE `demo`'

3. 应用案例和最佳实践

在 IoT 场景中,HoraeDB 可用于实时监控设备状态,收集传感器数据并进行分析。最佳实践包括定期清理过期数据以保持存储效率,以及合理设计时间序列索引来优化查询性能。

4. 典型生态项目

  • InfluxDB IOx: 作为另一个开源时间序列数据库,InfluxDB IOx 提供了类似的功能,两者在某些场景下可互补或互换。
  • TiKV: 一个分布式的事务性键值存储系统,可作为 HoraeDB 在分布式环境中的基础组件。
  • 其他支持 HoraeDB 的集成工具: 如数据分析平台、可视化工具等,这些工具能够与 HoraeDB 结合,构建更完整的解决方案。

本文提供了 Apache HoraeDB 的快速入门指南和简单应用场景介绍。深入了解其特性和功能,您可以参考官方文档、参与社区讨论或开发贡献。祝您使用愉快!

登录后查看全文
热门项目推荐
相关项目推荐