5分钟上手HStreamDB:Docker快速启动教程
【免费下载链接】hstreamHStreamDB is an open-source, cloud-native streaming database for IoT and beyond. Modernize your data stack for real-time applications.项目地址: https://gitcode.com/gh_mirrors/hs/hstream
HStreamDB是一款开源的云原生流数据库,专为物联网及实时应用场景设计,能帮助开发者轻松构建现代化的数据处理栈。本文将通过Docker Compose实现HStreamDB的极速部署,即使是新手也能在5分钟内完成从环境准备到数据库验证的全流程。
📋 前置条件检查
在开始部署前,请确保您的环境已满足以下要求:
- Docker Engine (20.10.0+)
- Docker Compose (v2.0+)
- 至少2GB可用内存
- 稳定的网络连接
可以通过以下命令验证Docker环境:
docker --version docker compose version🚀 一键部署步骤
1. 获取项目代码
首先克隆HStreamDB仓库到本地:
git clone https://gitcode.com/gh_mirrors/hs/hstream cd hstream2. 启动容器集群
项目提供了预配置的快速启动脚本,只需执行:
docker compose -f docker/quick-start.yaml up -d该命令会自动创建并启动以下服务组件:
- hserver0/hserver1:HStreamDB服务器节点(双节点集群)
- hstore:基于LogDevice的存储服务
- zookeeper:分布式协调服务
- hserver-init:集群初始化组件
3. 验证部署状态
等待约30秒后,通过以下命令检查服务状态:
docker compose -f docker/quick-start.yaml ps所有服务状态显示为Up即表示部署成功。
🔍 基础功能验证
连接数据库客户端
使用HStreamDB提供的命令行工具连接到集群:
docker exec -it hstream_hserver0_1 hstream-client --host hserver0 --port 6570创建测试流
在客户端中执行以下命令创建名为test_stream的流:
CREATE STREAM test_stream;插入测试数据
通过客户端发送示例数据:
INSERT INTO test_stream (payload) VALUES ('{"temperature": 23.5, "humidity": 60}'); INSERT INTO test_stream (payload) VALUES ('{"temperature": 24.1, "humidity": 58}');查询流数据
实时查询流中的数据:
SELECT * FROM test_stream EMIT CHANGES;⚙️ 核心配置说明
docker/quick-start.yaml文件定义了完整的服务配置,关键参数说明:
- 端口映射:默认暴露6570和6572端口用于客户端连接
- 数据持久化:通过Docker卷挂载实现数据持久化,卷名称:
quickstart_data_store:存储服务数据quickstart_data_zk_data:ZooKeeper数据
- 集群发现:通过
--seed-nodes参数配置节点发现信息
🧹 清理环境
如需停止并清理HStreamDB集群,执行:
docker compose -f docker/quick-start.yaml down -v📚 进阶学习资源
- 官方配置文件:docker/quick-start.yaml
- 服务启动脚本:script/start-server.sh
- 客户端工具源码:hstream/app/client.hs
通过本教程,您已成功部署HStreamDB流数据库并完成基础操作。HStreamDB支持复杂事件处理、流处理SQL和实时数据分析等高级功能,更多使用技巧请参考项目文档。
【免费下载链接】hstreamHStreamDB is an open-source, cloud-native streaming database for IoT and beyond. Modernize your data stack for real-time applications.项目地址: https://gitcode.com/gh_mirrors/hs/hstream
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考