导读:MariaDB只是 MySQL 的一个分支吗?这是关于 MariaDB 最具误导性的想法之一。是的,这是一个植根于MySQL 的项目,但它不仅仅是 MySQL 的一个分支。
MariaDB 是多年前由 MySQL 的创建者(Michael “Monty” Widenius)创建的一个分支。
当年,许多 MySQL 的原始开发人员都转移到了这个名为 MariaDB 的新项目。在我眼中,MariaDB 是 MySQL 的真正延续,只是换了个名字而已。
现如今,MariaDB 拥有一系列令人印象深刻的组件和新技术,可以极大地改善数据库的开发体验。从可靠的开源 MariaDB 社区服务器到尖端的 MariaDB SkySQL 第二代云数据库服务。
在本文中,我将和大家深入探讨每种工具如何解决现实世界的问题。
MariaDB 社区版服务器:强大且开放
作为软件开发人员,我们渴望速度、可靠性和开放性,而 MariaDB 社区服务器恰好满足了这一切。
这个开源数据库服务器植根于 MySQL,遵循ISO SQL/PSM标准。它让人可以放心地自由地创建小型应用程序。MariaDB 社区版服务器是一个经过实战考验的解决方案,在小型和大型公司中使用(例如维基百科使用的就是 MariaDB 社区版)。
MariaDB 存储引擎
当越来越多的人使用我们的应用程序时,数据就会开始增长,新的模式和极端情况就会出现。开发团队会遇到性能不佳的 SQL 查询。典型的案例是 OLTP 与 OLAP 的比较——是交易型还是分析型。
另一种情况是读取密集型与写入密集型工作负载的情况。并非所有的数据表都在读写范围内承受相同的压力。并非所有表格都用于生成报表。不同的工作负载需要不同的方式来处理数据,这些都是数据库要关心的问题。
MariaDB 包括很多种存储引擎。存储引擎只是我们可以在数据库服务器之上安装和激活的一个组件,它允许我们以不同的方式存储或处理数据。
例如使用如下语句:
ALTER TABLE some_table ENGINE=MyRocks
如果我们想针对写入繁重的工作负载优化这样的表,可以稍后运行。此外,表之间的跨引擎连接也是可能的。
MariaDB 企业服务器:生产就绪的动力源
当需要从开发或小型内部应用程序迁移到关键业务应用程序的生产环境时,这是MariaDB 企业版服务器要走的路。
MariaDB Enterprise Server 建立在 MariaDB Community Server 的坚实基础上,提供了更适合生产工作负载的默认配置。
MariaDB Enterprise Server 二进制文件经过进一步测试,以确保为生产环境做好准备。MariaDB Enterprise Server 提供付费支持,这一要求给软件开发人员以及项目经理和利益相关者带来了额外的增强与信心。
MariaDB MaxScale:轻松扩展和高可用性
扩展、确保高可用性和可管理,是数据库一项艰巨的任务。现在看来, MariaDB MaxScale是市场上最好的数据库代理服务器。MaxScale 充当一位交通警察,将查询引导到正确的位置并无缝处理自动故障转移。
当数据库节点出现故障或进入维护模式时,你的应用程序不会察觉到。通过支持MongoDB和Kafka等各种协议,MaxScale 使我们能够构建弹性且可扩展的应用程序,从而最大限度地降低数据库集群级别的复杂性。
受益于 MaxScale,一切看起来都像单体一个逻辑数据库。
MariaDB ColumnStore:释放分析潜力
在海量的数据上创建报表或编写任何类型的分析,即时 SQL 查询都是具有挑战性的。特别是当试图使用这些报表和查询快速运行时,开发者可能需要调整索引并不断维护它们。
在具有数十或数百个表和列的数据库中,这可不是一件容易的任务。
而这便是 MariaDB ColumnStore 可以发挥作用的地方。ColumnStore 专为数据仓库和分析工作负载而设计,以列式方式保存数据。这种方法带来了显着的性能优势,无需处理数据库索引,即可实现快速分析查询和洞察。
MariaDB Xpand:可靠地扩展读取和写入
在维护的同时扩展读取和写入,似乎是一个不可能实现的想法,但 MariaDB Xpand 已经使它成为了现实。作为分布式 SQL 数据库,MariaDB Xpand 通过自动数据切片和复制提供无缝的读写可扩展性来完成这些任务。
它通过在检测到热点时自动重新平衡数据来确保高可用性。所有这一切都是自动发生的,并且对应用程序来说是透明的。借助 MariaDB Xpand,开发人员可以专注于应用程序逻辑,同时享受强大且可扩展的关系数据库的优势。换句话说,使用 Xpand 的分布式 SQL 是进行数据库分片的新方法(我确定这是正确的)。
MariaDB SkySQL:云中完全托管的数据库服务
迁移到云端已成为现代软件开发的关键。
MariaDB SkySQL 使这一切过渡变得无缝平滑。SkySQL 只需单击几下,即可轻松部署 MariaDB 产品,无论是 MariaDB Enterprise Server、ColumnStore 还是 Xpand。
此外,它还提供无服务器分析部署、地理空间服务、远程监控和在任何地方运行的 MariaDB 服务器的云备份(如果需要,甚至它可以在 Raspberry Pi 上运行!)。
所有这一切,使 MariaDB SkySQL成为满足所有云数据库需求的全面解决方案。
MariaDB 不仅仅是 MySQL 的一个分支
如今的MariaDB 已经成为许多寻求健壮、可扩展、且可靠的数据库解决方案的开发者的首选。
从开源 MariaDB Community Server 到生产就绪的 MariaDB Enterprise Server 和 Xpand,MariaDB 提供了一系列工具来满足各种特定需求。
MaxScale 管理数据库流量,ColumnStore 释放分析能力,Xpand 支持可扩展的读取和写入,SkySQL 简化云数据库部署和管理。借助 MariaDB,开发人员可以专注于构建应用软件,而不会再因为数据库挑战而失眠多梦。
在本文中,我简要和大家探讨了一些使 MariaDB 不仅仅是 MySQL 的分支的功能。希望你现在就去使用它,然后一起实践!
我很乐意回答任何问题,不管是在你的公司内部、会议、开发人员小组、聚会或任何其他活动中介绍此类主题。欢迎在文底和网站讨论区留言给我们~