在构建任何软件应用程序时,选择合适的数据库至关重要。所有数据库在性能方面都有不同的优势和劣势,因此,针对您的特定用例和数据模型,决定哪个数据库的优势最多、缺点最少是一项重要的决策。下面您将找到 MariaDB 和 TDengine 的关键概念、架构、功能、用例和定价模型的概述,以便您可以快速了解它们之间的比较。

本文的主要目的是比较 MariaDB 和 TDengine 在涉及时序数据的工作负载方面的性能,而不是所有可能的用例。时序数据通常在数据库性能方面提出了独特的挑战。这是因为写入的数据量很大以及访问该数据的查询模式。本文并非旨在说明哪个数据库更好;它只是提供了每个数据库的概述,以便您可以做出明智的决定。

MariaDB 与 TDengine 细分


 
数据库模型

关系数据库

时序数据库

架构

MariaDB 可以部署在本地、云端或混合解决方案中,并且兼容各种操作系统,包括 Linux、Windows 和 macOS。

TDengine 可以部署在本地、云端或混合解决方案中,从而在部署和管理方面具有灵活性。

许可证

GNU GPLv2

AGPL 3.0

用例

Web 应用程序、事务处理、电子商务

物联网数据存储、工业监控、智能能源、智能家居、监控与可观测性

可扩展性

支持复制和分片以进行水平扩展,以及查询优化和缓存以提高性能

通过集群和内置负载均衡实现水平扩展。TDengine 还提供了解耦的计算和存储以及对象存储支持,用于某些版本中的数据分层

正在寻找最有效率的入门方式?

无论您是在寻找成本节约、更低的维护开销还是开源,InfluxDB 都能提供帮助。

MariaDB 概述

MariaDB 是一个开源关系数据库管理系统 (RDBMS),由 MySQL 的原始开发者在 2009 年作为 MySQL 的分支创建,由 Michael Widenius 领导。MariaDB 的主要目标是提供 MySQL 的开源和社区驱动的替代方案,MySQL 于 2008 年被 Oracle Corporation 收购。MariaDB 与 MySQL 兼容,并具有增强的功能、更好的性能和更高的安全性。它被全球各地的组织广泛使用,并由 MariaDB 基金会支持,该基金会确保其持续的开源开发。

TDengine 概述

TDengine 是一款高性能开源时序数据库,旨在高效处理海量的时序数据。它由 TAOS Data 于 2017 年创建,专为物联网 (IoT)、工业物联网和 IT 基础设施监控用例而设计。TDengine 具有独特的混合架构,结合了关系数据库和 NoSQL 数据库的优点,提供高性能、易于使用的 SQL 查询以及灵活的数据建模功能。


MariaDB 用于时序数据

虽然 MariaDB 并非专门为时序数据而设计,但由于其灵活且可扩展的架构,它可以用于存储、处理和分析时序数据。SQL 支持以及分析优化的存储引擎(如 ColumnStore)使其适用于处理较小数据量级的时序数据。

TDengine 用于时序数据

TDengine 从一开始就被设计为时序数据库,因此它非常适合大多数大量涉及存储和分析时序数据的用例。


MariaDB 关键概念

  • 存储引擎:MariaDB 支持多种存储引擎,每种引擎都针对特定类型的工作负载或数据存储需求进行了优化。示例包括 InnoDB、MyISAM、Aria 和 ColumnStore。
  • Galera 集群:MariaDB 的同步、多主复制解决方案,可实现高可用性、容错和负载均衡。
  • MaxScale:MariaDB 的数据库代理,提供高级功能,例如查询路由、负载均衡和安全性。
  • 连接器:MariaDB 提供了各种连接器,允许应用程序使用各种编程语言和 API 与数据库交互。

TDengine 关键概念

  • 超级表:用于创建具有相同模式的多个表的模板。它类似于其他一些数据库中的表继承概念。
  • 子表:基于超级表创建的表,继承其模式。子表可以具有额外的标签,用于分类和查询目的。
  • 标签:用于在超级表中分类和筛选子表的元数据属性。标签已索引并针对高效查询进行了优化。


MariaDB 架构

MariaDB 是一个关系数据库,使用 SQL 语言进行查询和数据操作。其架构基于客户端-服务器模型,客户端通过各种连接器和 API 与服务器交互。MariaDB 支持多种存储引擎,允许用户为其特定用例选择最合适的引擎。该数据库还提供复制和集群选项,以实现高可用性和负载均衡。

TDengine 架构

TDengine 使用云原生架构,该架构结合了关系数据库(支持 SQL 查询)和 NoSQL 数据库(可扩展性和灵活性)的优点。

免费时序数据库指南

获取对备选项和选择数据库的关键要求的全面审查。

MariaDB 功能

兼容性

MariaDB 完全兼容 MySQL,可以轻松迁移现有的 MySQL 应用程序和数据库。

存储引擎

MariaDB 支持多种存储引擎,允许用户为其特定用例选择最佳选项。

复制和集群

MariaDB 提供内置复制并支持 Galera 集群,以实现高可用性、容错和负载均衡。安全性:MariaDB 提供高级安全功能,例如数据加密、安全连接和基于角色的访问控制。

TDengine 功能

数据摄取

TDengine 支持高速数据摄取,能够处理每秒数百万个数据点。它支持批量和单个数据插入。

数据查询

TDengine 提供 ANSI SQL 支持,并提供额外的功能,允许用户使用熟悉的 SQL 语法轻松查询时序数据。它支持各种聚合函数、筛选和连接。

数据保留和压缩

TDengine 自动压缩数据以节省存储空间,并提供数据保留策略以自动删除旧数据。


MariaDB 用例

Web 应用程序

由于 MariaDB 与 MySQL 的兼容性、性能改进和开源特性,它是 Web 应用程序的常用选择。

数据迁移

希望从 MySQL 迁移到开源替代方案的组织可以轻松过渡到 MariaDB,这要归功于其兼容性和增强的功能。

OLTP 工作负载

作为关系数据库,MariaDB 非常适合任何需要强大事务保证的应用程序。

TDengine 用例

物联网数据存储和分析

TDengine 旨在处理物联网设备生成的海量时序数据。其高性能的摄取、查询和存储能力使其成为物联网数据存储和分析的合适选择。

工业物联网监控

TDengine 可用于存储和分析来自工业物联网传感器和设备的数据,帮助组织监控设备性能、检测异常并优化运营。

基础设施监控

TDengine 可用于收集和分析来自 IT 基础设施组件(如服务器、网络和应用程序)的时序数据,从而促进实时监控、警报和性能优化。


MariaDB 定价模型

MariaDB 是一个开源数据库,这意味着它可以免费下载、使用和修改。但是,对于需要专业支持的组织,MariaDB 公司提供各种订阅计划,包括 MariaDB SkySQL,这是一种完全托管的云数据库服务。支持订阅和 SkySQL 服务的定价取决于所选计划、服务级别和资源使用情况。

TDengine 定价模型

TDengine 是开源的,可以根据 AGPLv3 许可证免费使用。TDengine 还为需要额外功能、支持或符合特定许可要求的组织提供商业许可证和企业支持选项。