2020年11月20-21日 , 一年一度的数据技术嘉年华在北京顺利召开 , 此次大会以“自研·智能·新基建——云和数据促创新 生态融合新十年”为主题 , 打造 “开源自研、智能运维、智能自治、新基建、用户实践”五大模块 , 设置1个主会场、12个分会场 , 汇聚学术精英、数据库技术大咖、数据行业专家、互联网卓越产品 , 带来超过60场主题演讲 。
星环科技受邀亮相此次嘉年华 , 与行业内的专家和业界人士一同探讨总结数据技术过往十年的历程与成绩 , 共同展望未来十年的趋势与目标!
星环科技产品研发部赵志强结合当前分布式数据库的技术需求背景 , 分享《国产分布式数据库KunDB开发实践》主题演讲 。 赵志强主要从介绍星环KunDB产品、KunDB如何使用分布式技术解决分库分表方案的核心痛点、KunDB上私有云的技术总结、KunDB主要开发路线四个方面做有关主题演讲 , 与参会人员分享星环科技近些年在分布式数据库上所做的努力和贡献 , 并希望未来将分享更多相关前沿技术 。
分布式数据库的技术需求
目前国内分布式数据库的发展逐步火热化 , 企业纷纷开始投入做国产分布式数据库的行列中 。 在了解市场和政策的需求背景下 , 结合具体的技术逻辑 , 赵志强总结了分布式数据库技术的应用需求和运维需求 。 以星环科技参与上海市随申码开发为例 , 目前与人民生活密切相关的民生和政务系统会成为海量用户使用的应用 , 亟待分布式数据库技术解决 。 另外 , 并不是所有企业像头部互联网公司一样具有专业的运维团队 , 由于数据库目前是分布式的 , 数据同步和灾备超出传统的管理能力 , 所以能够在产品层面解决运维痛点也是企业目前急需解决的难题 。
KunDB介绍
此次大会分享的KunDB产品是星环科技打造的分布式关系型数据库 , 具有可扩展、高并发、高可用等特性 , 可对现代数据库的需求提供通用的解决方案 , 有效支撑各行业业务平台 , 应对各类新型业务面临的挑战 。
?云化数据库
KunDB是云原生的数据库产品 , 可以部署在公有云、私有云、及混合云架构;具有高性能、好迁移、易部署等优势
?性能水平扩展
KunDB采用可扩展分布式架构 , 轻松处理高并发、大流量访问 , 使数据库性能不再成为系统瓶颈 。 具有线性延展、在线延展、高并发等优势
?多租户能力
KunDB提供多租户能力 , 保障租户隔离和SLA 。 可以保障多租户间的数据隔离、资源隔离、运行隔离 , 提供租户管理员角色 , 使各租户能得到有效监管 , 统一界面对租户权限和资源进行合理划分与管理 。
?SQL & ACID
KunDB高度兼容传统关系型数据库SQL以及标准事务 。
?安全可靠、自主可控
KunDB是星环科技自主研发的国产数据库 , 同时为数据提供多维度的安全保护 , 确保数据信息安全 。
【科技|引领数据创新,星环科技分布式数据库KunDB亮相数据技术嘉年华】 ?高可用和容灾
KunDB内置灾备和恢复机制 , 提供7x24小时连续服务保证 。 可取代传统国外RDB , 摆脱外国厂商对国内数据库市场的控制 , 同时支持国产CPU和服务器等自主可控的硬件平台 , 兼容多种国产操作系统 , 能够足够满足企业对数据安全的要求 , 适应多租户模式的企业架构对安全的要求 。
文章图片
KunDB产品的技术实践
KunDB的分布式实践
星环科技在研发KunDB产品过程中 , 具体的的分布式实践可以在以下五个方面突出表现 。
可扩展性方面, KunDB部署后 , 支持单Shard模式和分布式模式两种形态 。 KunDB产品所有组件都是容器化的 , 所以扩缩容过程可做到真正的平滑 , 为了做到在线业务影响最小化 , 扩缩容数据重分布的过程 , 则需按照严谨的结构复制、数据复制、数据一致性校验等流程完成 。 计算层由于没有状态 , 相对轻量 , 可快速完成并且不影响在线业务 。
事务的原子 性 方面, KunDB默认提供了一阶段提交和二阶段提交两种模式 。 一阶段适合对事务原子性没有非常高要求的业务场景 。 二阶段提交增加了事务准备的中间阶段 , 正常流程中 , 所有事务先进行投票 , 投票通过后 , 所有参与者一起发起事务提交 。 投票失败的时候 , 事务可通过回滚达到全局原子性 。 在实现上 , KunDB中KunGate担当了二阶段提交的事务协调者的角色 , 存储集群则是事务的实际参与者 。 KunDB自研二阶段提交协议 , 未使用MySQL XA协议完成 , 并且优化了通信流程 , 比经典的二阶段提交方式更加轻量 。 KunDB含有异常事务的监测进程 , 用来管理因参与者宕机故障或者超时引起无法按流程执行的事务 。
事务的一致性方面, KunDB引入了全局事务管理器和快照模型 。 全局事务管理器用来管理事务ID和可见的事务快照 , 即可见的事务范围 。 为了协调事务执行的参与者 , 即KunDB的各个Shard , 参与到一个共享的事务中 , 将全局事务下发给给存储层的Shard 。 通过修改MySQL的事务逻辑使其同时支持分布式全局事务和本地事务 , 保证分布式事务的全局一致性 。 事务的实际执行与管理仍可在本地进行 , 跟常见的全局事务管理器方案相比 , 性能上更有优势 。
事务的隔离性方面, 采用的是全局事务+Read View的方案 , 从全局事务管理器获取的快照列表跟本地的Read View机制一起做数据可见性的判断 。 另外对事务过程中的二进制日志做全局管理 , 即把全局事务管理下沉到二进制日志中 , 实现全局备份恢复一致性 。
分布式数据库 在解决高并发写和可扩展存储后 , 需要通过分布式查询计算实现大容量数据下的数据高性能读取和使用 。 KunDB在查询计算的数据链路中 , 有KunGate提供查询的SQL解析 , 基于规则和代价选择合适的执行路径 , 尽可能的下推给底层MySQL来并发执行 。 部分不能下推的复杂计算型的SQL或者没有分片规则可以优化执行的场景 , 会通过批处理的方式从底层存储引擎拉取到内存中进行分布式计算 。
KunDB的云化实践
云原生数据库是数据库新的部署形态 。 KunDB支持在星环TDH和TDC两种模式下部署和交付 。 两种模式下 , KunDB的服务组件都是通过容器计划服务化的 , 区别在于存储方面 , TDH里KunDB还是用的裸存储设备 , 而在TDC里则用的池化的存储设备 。
数据库作为一种持久化的服务 , 使用容器服务化会异常复杂 。 星环使用Docker+Kubernetes框架对大数据类服务和微服务框架进行改造 , KunDB基于多年的容器实践做了云化改造 。
首先是服务编排、调度与资源管理的技术 。 包括如何支持数据库这类有状态服务的云存储 , KunDB在内部采用了存储感知的调度策略 , 优化了对池化资源的使用 。 通过数据库内部服务切分 , 跟云平台服务的调度系统和多租户服务的SLA控制策略结合 , 保障数据库服务的优先调度 。 借鉴大数据云化的经验 , 采取数据局部性让计算最优化 。
KunDB目前支持双因子认证 , 数据通信链路加密 , 数据加密 , MAC权限管理等机制 。 KunDBA套件基于数据库运行日志做全时态的监控 , 包括数据库运行状态 , 性能监控和SQL审计 , 并支持告警 。 分布式数据库的运维体系相对传统数据库更加复杂 , KunDBA还提供了服务链路的跟踪和故障的根因分析 。 在监控的基础上 , KunDBA会集成SQL调优、扩缩容管理、灾备管理等常见的运维事项 , 提供集中化的运维平台 。
KunDB产品的演进
星环科技通过多年的实践经验 , 目前KunDB的核心定位是作为MySQL和Oracle的分布式替代方案 , 持续增强对MySQL和Oracle的兼容 。 HTAP是数据库产品的一个新的趋势 , KunDB结合现有的能力以及星环科技的产品矩阵 , 选择了OLTP+OLAP的异构方案组成HTAP 。 其中OLTP指的是KunDB , OLAP是星环分布式分析数据库ArgoDB 。
星环科技从技术视角出发 , 生动诠释KunDB作为分布式数据库和云原生数据库的内容 , 以期带来有关对数据库技的思考和实践 。 展望未来 , 希望星环科技的KunDB产品能够在技术的加持下 , 服务更多市场客户 , 用实力技术助推企业发展 。
【微信搜索关注关注“星环科技”公众号>>>更多内容资讯等你来看>>>还有不定时福利放送哦!】
推荐阅读
- 区块|面向2030:影响数据存储产业的十大应用(下):新兴应用
- 产品|泰晶科技与紫光展锐联合实验室揭牌
- 空间|(科技)科普:詹姆斯·韦布空间望远镜——探索宇宙历史的“深空巨镜”
- 相关|科思科技:无人机地面控制站相关设备产品开始逐步发力
- 机身重量|黑科技眼控对焦23年后回归,升级! 江一白解读EOS R3
- 公司|科思科技:正在加速推进智能无线电基带处理芯片的研发
- 项目|常德市二中2021青少年科技创新大赛再获佳绩
- 选型|数据架构选型必读:2021上半年数据库产品技术解析
- 殊荣|蝉联殊荣!数梦工场荣获DAMA2021数据治理三项大奖
- 视点·观察|科技巨头纷纷发力元宇宙:这是否是所有人的未来?