数据库管理-第173期 OceanBase一体化Plus多模融合(20240422)

2024-04-22 14:12

本文主要是介绍数据库管理-第173期 OceanBase一体化Plus多模融合(20240422),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

数据库管理173期 2024-04-22

  • 数据库管理-第173期 OceanBase一体化Plus多模融合(20240422)
    • 1 架构简化
    • 2 不止融合
      • 2.1 行列混存
      • 2.2 多维使用
      • 2.3 多模JOIN
    • 3 展望

数据库管理-第173期 OceanBase一体化Plus多模融合(20240422)

作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Associate: Database(Oracle与MySQL)
国内某科技公司 DBA总监
10年数据库行业经验,现主要从事数据库服务工作
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP、认证技术专家、年度墨力之星,ITPUB认证专家、专家百人团成员,OCM讲师,PolarDB开源社区技术顾问,OceanBase观察团成员
圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著名社恐(社交恐怖分子)
公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭

本次《2024OceanBase开发者大会》,发布了OB4.3,在单机分布式一体化架构的基础上,大幅提升了AP能力,同时着重宣传了多模融合功能,那么多模融合到底能解决什么问题,带来什么展望。

1 架构简化

这里我调用一下我周五的PPT:
image.png
在单模多类型数据库的架构中,除去关系型数据库,可能还需要:

  • Redis:作为常用简单常用数据的缓存,加速相关信息读取性能,源数据一般来自于关系型数据库
  • MongoDB:用作非关系型JSON数据存放,有一定的分布式加速能力
  • ElasticSearch:作为搜索引擎用于较大规模近实时搜索查询,源数据一般来自于关系型数据库,虽为JSON存储但一般遵循关系型模式
  • ClickHouse:宽列/列式存储,用于联机分析处理,实现实时查询
  • Hadoop:汇聚并清洗来自于各处的数据,并进行大规模离线数据分析

在这种架构下,会有一些问题:

  • 每一种数据库需要独立的运维能力
  • 每一种数据库有单独的学习成本、应用规范
  • 获取结果往往需要应用层组合多类型数据库获取数据,代码复杂
  • 各数据库之间数据流转繁杂,大量依赖网络,而网络是现代IT架构最不稳定的因素之一
  • 同一份数据在不同数据库之间存在大量重复,不仅有存储浪费的现象,还有全局一致性校验的压力

image.png
那么多模数据库,至少单从数据模态整合到了一个数据库中能实现些什么:

  • 仅需维护一个数据库,DBA/Ops省下来的时间可以出去晒太阳
  • 应用仅需配置到一个数据库,Dev不用管一堆配置串
  • 各类型、模态数据在一个数据库内流转,交互更加便捷,敏捷老板很开心啊
  • 数据冗余少,给业务省点钱

但融合数据库仅仅只带来了数据架构层的简化么?

2 不止融合

2.1 行列混存

随着业务场景和数据库技术的发展,数据库需要实现OTLP的基础能力,OLAP要求从Offline不断向Online
一份数据,通过行存方式保持OLTP性能,通过列存方式实现在线数据分析能力,二者组合,让一套数据库实现实时事务交易与分析HTAP能力。OB 3.x时代其实说了很多的HTAP场景,有了行存、行列混存。我个人觉得那时候OB说的行列混存,其实是工程上的概念和实现。其实用户需要一个更广义的、用户视角的“行列混存”,一个数据库里技能行存、又能行混存、还能列存,不同业务场景用不同的列存选择。这次在4.3发布,我终于看到了,在这个版本中行存列存甚至可以在表级来制定。
image.png

2.2 多维使用

在一个多模数据库中,不仅可以使用原单一模态专用数据库熟悉的方式对对应模态的数据库进行使用,减少学习成本与代码改动;也可以使用创新的针对多模数据的SQL语句方式,对不同模态的数据进行使用。
image.png

2.3 多模JOIN

多模融合数据库带来的还有不同模态的数据不再存放在各自的数据孤岛之中,在一个数据库内可以直接将多模态数据JOIN在一起,省去了不同数据库之间的数据交互,减轻了网络负载,统一了多模数据库使用方式。
image.png

最终,OceanBase希望通过分布式(包含单机分布式一体化)+多模融合数据库,实现强劲的事实分析数据库能力。
image.png

3 展望

在本次《2024OceanBase开发者大会》上,OB也公布了2024的路线图:
image.png
AP领域有很多优秀的数据库,过去十几年里用户都玩的很转。这块OB的定位和思考也很清楚,不做数仓只做数据库,不做超大数据体量只做PB级,解决实时分析场景的问题。话说如果实时分析能解决,离线还会难吗?OceanBase必将越来越好。最后总结下,业内多模是小卷,AP是真卷,欢迎OB加入卷王队列,卷出用户喜闻乐见的新高度!

这篇关于数据库管理-第173期 OceanBase一体化Plus多模融合(20240422)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/925997

相关文章

MyBatis Plus实现时间字段自动填充的完整方案

《MyBatisPlus实现时间字段自动填充的完整方案》在日常开发中,我们经常需要记录数据的创建时间和更新时间,传统的做法是在每次插入或更新操作时手动设置这些时间字段,这种方式不仅繁琐,还容易遗漏,... 目录前言解决目标技术栈实现步骤1. 实体类注解配置2. 创建元数据处理器3. 服务层代码优化填充机制详

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

mybatis-plus如何根据任意字段saveOrUpdateBatch

《mybatis-plus如何根据任意字段saveOrUpdateBatch》MyBatisPlussaveOrUpdateBatch默认按主键判断操作类型,若需按其他唯一字段(如agentId、pe... 目录使用场景方法源码方法改造首先在service层定义接口service层接口实现总结使用场景my

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

如何通过try-catch判断数据库唯一键字段是否重复

《如何通过try-catch判断数据库唯一键字段是否重复》在MyBatis+MySQL中,通过try-catch捕获唯一约束异常可避免重复数据查询,优点是减少数据库交互、提升并发安全,缺点是异常处理开... 目录1、原理2、怎么理解“异常走的是数据库错误路径,开销比普通逻辑分支稍高”?1. 普通逻辑分支 v

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp