概念
📄️ 基础概念
在深入了解 CnosDB 之前,我们需要先熟悉一下 CnosDB 中的一些基本概念,这将有助于我们后续的学习以及更好的使用 CnosDB 。为了帮助大家更好的理解这些概念,本篇文章将借助一个示例向大家介绍各个元素是如何在 CnosDB 中协同工作的,并在文中最后章节处罗列了各个概念的含义。
📄️ 整体架构
CnosDB 2.0 采用 Rust 语言开发,凭借其卓越的安全性、高性能以及强大的社区支持,为用户提供了一款出色的时序数据库,构建了一整套完整的 DBaaS 解决方案。
📄️ 元数据集群
元数据集群指的的 Meta 集群服务。Meta 服务是 CnosDB 分布式数据库系统中的核心组件之一,负责整个集群的元数据存储、管理相关工作。Meta 集群是通过 Raft 一致性协议实现的。Meta 集群通过 RESTful API 的方式对外提供服务,同时 node 也会对 Meta 信息的更新进行订阅。所有的元数据信息的更新都通过 Meta 集群进行。
📄️ 查询引擎
SQL 引擎
📄️ 存储引擎
TSKV 索引与数据存储
📄️ 数据分片与复制
CnosDB 按照两个维度对数据进行分片存储:时间分片与Hash分片。
📄️ 压缩算法
时序数据规模很大,且可能存在大量冗余,因而在时序数据库中经常使用压缩方法来节约存储空间和查询执行时的I/O代价,下面将讨论CnosDB中使用的压缩技术。
📄️ 云原生
云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。