数据库管理-第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加入卷王队列,卷出用户喜闻乐见的新高度!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/566212.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Skill Check: Building Blocks for an LLM Application

Skill Check: Building Blocks for an LLM Application

腾讯云轻量2核4G5M服务器优惠价格165元1年,2024年多配置报价单

腾讯云轻量2核4G5M服务器优惠价格165元1年。腾讯云服务器价格表2024年最新价格,轻量2核2G3M服务器61元一年、2核2G4M服务器99元1年,三年560元、2核4G5M服务器165元一年、3年900元、轻量4核8M12M服务器646元15个月、4核16G10M配置32元1个月、8核32G配置11…

vue-element-admin vue设置动态路由 刷新页面后出现跳转404页面Bug 解决方法

做项目时遇到的这个bug,因为除了跳404之外也没太大影响,之前就一直放着没管,现在项目基本功能实现了,转头处理了一下,现在在这里记录一下解决方法 这个bug的具体情况是:设置了动态路由之后,不同…

如何在PostgreSQL中使用索引覆盖扫描提高查询性能?

文章目录 解决方案1. 创建合适的索引2. 确保查询能够使用索引覆盖扫描3. 调整查询以利用索引覆盖扫描4. 监控和调优 示例代码1. 创建索引2. 编写查询3. 检查是否使用索引覆盖扫描4. 调整索引 总结 在PostgreSQL中,索引是提高查询性能的关键工具之一。索引允许数据库…

物理机中没有VMNet1和VMNet8虚拟网卡

控制面板——网络连接——网络适配器 VMware Network Adapter VMnet1 VMware Network Adapter VMnet8 如果没有这两个虚拟网卡,虚拟机的网络会出现问题 # 解决办法-恢复虚拟网卡默认设置 1、下载并打开ccleaner,ccleaner官网:CCleaner M…

【苍穹外卖】HttpClient-快速理解入门

目录 HttpClient-快速理解&入门1. 需求2. 如何使用3. 具体示例4. 大致优点5. 大致缺点 HttpClient-快速理解&入门 1. 需求 在平常访问服务器里面的资源的时候,我们通常是通过浏览器输入网址(或者在浏览器点击某个连接)这种方式&…

OpenCV杂记(2):图像拼接(hconcat, vconcat)

OpenCV杂记(1):绘制OSD(cv::getTextSize, cv::putText)https://blog.csdn.net/tecsai/article/details/137872058 1. 简述 做图像处理或计算机视觉技术的同学都知道,我们在工作中会经常遇到需要将两幅图像拼…

Spring Boot中判断轨迹数据是否经过设置的打卡点,且在PGSQL中把点拼接成线,判断某个点是否在线上或在线的50米范围内

问题描述 轨迹数据判断是否经过打卡点,轨迹数据太多,循环判断的话非常消耗内存。解决办法只需要把所有轨迹数据点拼成了一条线,然后只需要循环打卡点即可,打卡点不多,一般不会超过100个,如果多的话&#x…

苹果手机远程打卡教程

关于苹果手机远程打卡教程之——有电脑零成本版 📎个人主页:我的主页 📎小白一枚,欢迎指教👏 嗨嗨嗨,今天来出一期iPhone实现远程打卡的教程,让我们可以随时随地的打卡wherever~ 准…

shell进阶之正则表达式:字符转义(十七)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

【深度学习】烟雾和火焰数据集,野外数据集,超大量数据集,目标检测,YOLOv5

标注了2w张数据集,是目标检测yolo格式的,有火焰、烟雾两个目标。 训练方法看这里: https://qq742971636.blog.csdn.net/article/details/138097481 打包 依据不一样的需求, 详情请查看 https://docs.qq.com/sheet/DUEdqZ2l…

在windows系统中安装kafka配置全步骤记录

在windows系统中安装kafka配置全步骤记录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可…

软考高级架构师:AI 通俗讲解负载测试、压力测试、强度测试、容量测试和可靠性测试

在软件工程领域,测试是一个确保软件质量和性能的关键步骤。负载测试、压力测试、强度测试、容量测试和可靠性测试都是性能测试的不同类型,它们的目的和方法有所不同。 下面我将通过简单的比喻和解释,帮助您理解这些测试之间的区别。 负载测试…

Vue阶段练习:tab栏、进度条、

阶段练习旨在学习完Vue 指令、计算属性、侦听器-CSDN博客后,进行自我检测,每个练习分为效果显示、需求分析、静态代码、完整代码、总结 四个部分,效果显示和准备代码已给出,我们需要完成“完整代码”部分。 练习1:tab栏…

3Darray 修改array值然后保存图片

from PIL import Image import numpy as np img_path ./000001.jpg # 读取图片 image Image.open(img_path) width, height image.size print("图片的宽度为{},高度为{}".format(width,height)) print("图片的mode为{}".format(image.mode)) print(&quo…

arm编译、u-boot编译过程、linux内核编译

arm编译 我们之前在linux编译时使用gcc就行,但是在arm中我们需使用arm-linux-gcc 我们需安装交叉编译工具,地址就在119行 若没有,可自行在网上下载 u-boot编译过程 u-boot作为开源项目,可在其官网下载源码,官网 但在实际开发过程中,我们不会直接去u-boot官网下载源码…

STM32F103ZET6 封装 LQFP-144 ST意法 单片机芯片

STM32F103ZET6 是意法半导体(STMicroelectronics)生产的一款基于 ARM Cortex-M3 内核的 32 位微控制器。它具有高性能、低功耗的特点,广泛应用于各种嵌入式系统和工业应用中。STM32F103ZET6 的主要特点如下: 内核:ARM…

QA测试开发工程师面试题满分问答19: url请求到响应整个过程,涉及到什么技术细节

概述 当你点击鼠标发起一个请求,直到页面显示响应数据,整个过程可以详细展开为以下步骤: 用户点击鼠标:用户在浏览器中点击某个链接或按钮,触发请求的发起。 URL 解析:浏览器解析点击的链接中的 URL&…

力扣数据库题库学习

577. 员工奖金 问题链接 思路分析 Employee表与Bonus表通过empId字段可以连接,需求是查出奖金少于1000的员工名和奖金值。 这里奖金少于1000的情况就是没有奖金有奖金但少于1000 这里我给出的解决方案就是使用左连接,将Employee表作为左表&#xff…

LoRa-Kit 开发板使用介绍

文章目录 前言一、准备二、连接1. 将Ra-03SCH模组焊接到转接板上2. 将转接板插到开发板上3. 将ST-Link v2烧录器与开发板连接4. 将ST-Link v2烧录器和开发板连接到电脑 三、烧录1. 打开STM32烧录工具2. 连接开发板 四、使用步骤1. 打开串口调试助手2. 按下复位键后模组绿色指示…