SequoiaDB 技术简介
整理分享SequoiaDB 技术简介
-
想说两句
-
应用与微服务发展
-
-
- 应用架构转型
-
-
SequoiaDB 特点
-
-
- SequoiaDB 三大核心应用场景
- 计算与存储分离设计
- 兼容多种数据库类型
- HTAP读写分离特性
- 多租户
- 负载均衡管理能力
- SQL性能优化
- 存储性能优化
- STP技术应用
- 集成式多中心容灾备份解决方案
-
-
SequoiaDB 深入解析
- 详细阐述记录的读写流程
- 对象级别的数据读写机制
- 数据存储格式解析
- 对象文件的存储规范
- 数据提交的双阶段机制
- 系统指令执行流程图解
- 图形化监控界面(SAC)功能模块
- 命令行交互优化方案
- 标准部署策略与实践案例
- 大规模数据迁移与同步策略
- 高并发准实时复制机制优化
- 异步处理提升系统性能方案
- 高效的数据备份与恢复系统设计
- MySQL Binlog双向复制机制分析及AWS RDS镜像同步方案
- 详细阐述记录的读写流程
-
对SequoiaDB的性能分析思路及硬件配置建议
- 包括最佳实践部署、数据库关键参数设置、推荐硬件规格以及InnoDB与SequoiaDB混合使用场景的具体说明
- 具体部署方案需遵循的最佳操作规范
- 关键参数设置对系统性能的影响分析
- 基于实际案例推荐的理想硬件规格建议
- InnoDB与SequoiaDB混合使用场景下的性能优化策略
- 包括最佳实践部署、数据库关键参数设置、推荐硬件规格以及InnoDB与SequoiaDB混合使用场景的具体说明
想说两句
- 巨衫数据库作为国产分布式数据库的杰出代表作之一,在中国科技发展史上展现出显著成就。国产数据库的发展呈现出蓬勃发展之势,在全球范围内展现出独特的创新活力与技术实力。
- 国产并不是简单地模仿借鉴他人的技术或方案即可完成的任务,在此基础上通过自主创新与优化提升自身的竞争力与稳定性。
- 分布式数据库的特点众多繁杂,在众多特点中我们重点探讨巨衫数据库的独特之处。
- HTAP:支持混合事务与分析场景下的读写分离能力;
- 计算存储分离架构:实现多个实例间的等价读写能力;
- 支持多种主流存储解决方案:包括MySQL、MariaDB、PostgreSQL、SparkSQL、MongoDB、S3及SPLFileInfo系统;
- MVCC机制:提供基于多版本的安全并行事务控制方式;
- STP机制:实现全局一致的时间戳管理功能以保障分布式事务系统的稳定扩展;
- 本文旨在作为对巨衫技术进行简要介绍的文章,并非全面详述其所有特性与功能。
- 在文章中出现的"智者"一词可理解为对老师的尊称,
- 本文主要面向热爱学习与技术分享的朋友群体,
- 在文章末尾处将陆续分享更多关于SequoiaDB的内容,
- 文章图片来源于巨衫课程或相关技术分享,
- 官网链接link,
- 文章性质属于学习分享类内容,
- 所有描述均源自个人理解,
- 希望通过本文能够帮助读者更好地认识和了解巨衫这一优秀的分布式数据库产品。
应用与微服务发展
应用架构转型
传统式和分布式方案各有其价值与意义所在,在选择时不应仅限于考虑使用分布式数据库的可能性。如果应用采用微服务架构,则必定会遇到数据库抉择的困境。

当业务规模激增导致集中式数据库难以承受时,最明智的选择往往是将数据库划分为多个区域(即分库)并分散存储相关内容以减轻负载压力。然而,在这种情况下反而会使工作变得复杂——零散的数据犹如无序的碎片,在开发过程中难以协调与整合。此时你或许应该思考是否存在一种简便的方法能够通过一次简单的SQL查询整合其他几个区域中的所有关联数据——这就好比找到了通往成功的大门而非走进死胡同。

分布式数据库发展也就是优劣的抉择,想一个新方法去解决上一个缺陷。

分布式数据库的重要特性众多,在核心功能上主要体现在支持ACID、HTAP以及具备良好的扩展性能力。就产品性能而言,在数据存储领域巨杉数据库实现了基于湖仓一体架构的产品方案设计,并且这一创新成果值得高度认可。

SequoiaDB 特点
SequoiaDB 三大核心应用场景
- 在线数据、过去的数据、视频、图片、文件等全部集成在一起, HTAP与内容管理系统是其两大核心优势。
- 现在没有人希望只能隔天才能查看当天的销售总额,或者必须等到银行后台处理才能拿到钱,但有一个例外情况是为了防范ATM转账诈骗,最终实现了全天候转账的安全性。

SequoiaDB 计算存储分离架构
数据库各具特色且协调配合地对数据库执行对等读写操作;存储引擎则负责整体调度数据处理流程。
任他经历风雨考验,
我始终保持坚定的态度。

SequoiaDB 支持多种数据库实例
*语法兼容性特性使得无需进行大量中间转换操作。例如,在将数据导入到关系型实例时,在从文档型实例中读取数据时


HTAP读写分离能力
- 读写分离的能力是关键,在分析业务中对联机交易资源的占用程度较大。
- 采用不同的数据节点,在运行时不会互相干扰(强一致性)。

多租户
- 多租户隔离与权限控制,集中存放、分开管理互不干扰。


WLM 负载管理能力
- 高负载下的优先级策略,先想好保大还是保小。

SQL实例增强
SequoiaDB 5.0版本经过对sql的优化工作取得更为完善的成效,并在易用性上也取得了显著提升。这一成就值得肯定与赞扬

存储引擎增强
- SequoiaDB 5.0版本在存储引擎上的重大升级。

STP技术
- 让分布式事务更加稳定,才能放心大胆的扩展节点。

多中心容灾能力
- 活着比什么都重要!

SequoiaDB 深入介绍
记录读写流程
- 这张图展示了sql在运行过程中在巨杉中的执行流程。
- 执行计划下压(下沉)是一个重要的优化方向。由于编写sql的质量差异显著(差距),这使得优化效果大相径庭(差异)。我希望能在总结部分详细阐述这一观点。

对象读写流程
在操作过程中, 文件应被划分为若干个数据块, 并将这些数据块分别存放到不同的数据节点中.

记录存储格式
- 分页存储

对象文件存储格式
- LOBM逻辑结构:分桶存放,记录文件位置。
- LOBD逻辑结构:文件实际存放页面。

两阶段提交过程
采用分阶段提交的方法本身存在一定的局限性,在面对此类问题时智者必然已经考虑到这些问题,并且可能通过侧面途径加以解决;由于学识浅薄的原因学者无法轻易做出推断

指令执行过程
以MySQL为例,深入阐述了指令在各个阶段的具体运行流程。这一改写使学者对巨杉的执行流程有了更深入的认识。

图形化监控管理(SAC)
- 图形化操作是一种便捷高效的方式。
- 新搭集群、实时监控、扩缩容等这些功能如正确配置和使用不会出现太大问题。
- 但是随意配置的话,在遇到错误时很难自行解决。
- 通常需要依靠经验和调试能力来处理这些问题。

命令行可视化管理
SDBTOP命令行可视化应更加普及,在实际应用中其隐藏的功能较多,在不熟悉操作的情况下可能会让人感到困惑。

典型部署方式
- 常见方法基于三副本机制以确保数据可靠性。
- 数据库实例与协调节点(Coord)位于同一台服务器上以防止网络延迟影响处理速度。

数据导入导出
- 支持的数据源越多,迁移越容易。好用才是硬道理!

准实时数据复制
- 简单粗暴的描述就是说走ETL,当然有更好的工具肯定选工具喽!

异步数据复制
制定一个定时任务脚本,在该脚本中需要从多个库中提取并获取标准化的JSON或CSV数据文件。这些数据文件可以通过巨杉平台提供的导入工具进行无缝集成。值得注意的是,在一些网络隔离的情况下(如高负载环境),即使在极端情况下(如网络隔离),也需要手动完成操作流程以确保数据完整性。

数据备份恢复
- 数据恢复可以通过数据库实例实现。
- 巨杉数据库支持自身提供的全量和增量备份功能,并且操作简便。

Mysql binlog双向复制
- Mysql的100%兼容,利用binlog,可以直接换。

SequoiaDB 分析思路与参考建议
性能分析思路
- 智者总结的挺全面,学者可以参考分析可能影响性能的原因!

最佳实践部署

数据库重要的配置
- 分布式集群的重要参数

- Mysql实例的重要参数

- 分布式集群 事务 相关重要参数

供参考的硬件配置
- 在联机交易中,CPU和内存是最为关键的资源。
- 在数据中台应用中,虽然相比联机交易的CPU需求较弱,在这种情况下对存储容量的需求却更为旺盛。
- 影像平台通常对存储空间的要求最为迫切,在这种情况下其他资源可以适当减少配置。
- 在实际应用中建议根据具体需求合理规划硬件配置,在此之外的开支则显得没有必要且浪费资源。

InnoDB/SequoiaDB混布模式
数据库表分段迁移方案的研究存在不足之处。或许这一方法仅适用于特定情况下的应用

