一文了解 IoTDB 的部署方式与适用场景!
目前,IoTDB 支持 3 种部署方式——单机版部署、集群版部署、双活版部署。本文将为大家揭秘 3 种部署方式的含义、优缺点、各自的适用场景和部署方式,方便用户按需选择使用。
01 单机版部署
含义:单机版部署,顾名思义就是将 IoTDB 数据库部署到一台单独的服务器上,将所有数据全部写在一个实例中。
优点:便于开发者安装部署,部署和维护成本较低,操作方便。
缺点:不具备高可用性,存在单点故障风险;仅具有纵向扩展能力,即在单节点上增加更多的 CPU、内存和硬盘来扩大系统的能力。
适用场景:适用于开发测试环境、数据量和访问量较低的小规模应用场景,例如边缘端服务器。
部署方法:在单个服务器上下载安装包进行安装部署,详情指路官网链接:
02 集群版部署
含义:集群版部署,指的是将同一个数据库拆分为多个节点部署在多个服务器上,集群中各单节点地位相同,共同对外提供服务。当部分节点出现故障时,剩余节点仍然能对外提供服务,保证数据库服务的高可用性。集群版部署的意义在于提升数据库性能、可扩展性和可用性。
集群版部署示意图
优点:具有高可用性、高扩展性,需要扩容时可以新增节点,并在新节点上部署相同的服务,即可减轻数据增量给服务器带来的压力。负载均衡,显著提升性能。
缺点:部署和维护复杂,成本高,对网络要求较高。
适用场景:适用于大规模数据处理、高并发访问的企业级应用场景,如物联网、工业互联网等,需要处理大量时序数据并保证系统高可用性和可靠性的场景。
部署方法:准备多台服务器,明确角色分配,依次启动各机器上的数据库(TimechoDB 企业版需要激活),详情指路官网链接:
03 双活版部署
含义:双活版部署为 TimechoDB 企业版功能,是指两个独立的单机(或集群),都处于活跃状态,能同时对外提供服务。两个单机实时进行镜像同步,它们的配置完全独立,但可以同时接收外界的写入,并将写入到本机的数据实时同步到另一个单机中,两个单机的数据可达到最终一致。两个单机也可构成一个高可用组——当其中一个单机停止服务时,另一个单机不会受到影响。当停止服务的单机再次启动时,另一个单机会将新写入的数据同步过来。业务可以绑定两个单机进行读写,从而达到高可用的目的。
双活版部署示意图
优点:可实现高可用性、容灾部署,发生故障时可快速切换,保证数据同步。
缺点:实现较为复杂,维护成本高,对于性能的提升效果有限。
适用场景:适用于需要通过两个节点搭建高可用环境,需要电力、网络等容灾部署的场景。
部署方法:分别部署单机版(或集群版)IoTDB,创建并启动 pipe 保证数据流可以互相同步。详情指路官网链接:
04 部署形态特点总结
综上,可以将三种部署形态的特点总结如下,方便用户对比选择。可靠性、扩展性、性能等往往不能同时达到最优,建议根据数据特点、应用场景进行取舍。
规上企业应用实例
能源电力:中核武汉|国网信通产业集团|华润电力|大唐先一|上海电气国轩|清安储能|太极股份|绍兴安瑞思