伯俊软件CTO陈雨陆:R3全渠道业务中台的OceanBase落地实践

11 月 16 日,OceanBase 在京顺利举办 2023 年度发布会,正式宣布:将持续践行“一体化”产品战略,为关键业务负载打造一体化数据库。其中,“数字化转型升级实践专场”我们有幸邀请到伯俊软件 CTO 陈雨陆进行《OceanBase 在伯俊软件 R3 的实践》主题演讲,以下为演讲整理全文:

大家好,我是伯俊科技软件公司的陈雨陆,目前在公司担任 CTO 岗位,接下来将为大家分享 OceanBase 在伯俊软件 R3 的实践。

伯俊科技从事于泛零售行业,帮助企业做数字化转型,服务了中国和全球的 5000 多家知名品牌,帮助客户在零售线上线下做信息化支撑和业务拓展。从 1999 年成立到现在 24 年,每年所有客户营业额总流水超过 1000 亿,在中国遍布的所有终端加起来有 30 万,每天都在帮助零售客户完成相应的业务支撑。

图片

图片

零售企业的服务场景即“人、货、场”,当下所有零售企业最关心的就是建立品牌的全渠道零售能力。那么对于我们而言,就是帮助所有客户在任何渠道都能接住每一笔生意。此外,对所有品牌来说,基于全渠道一盘货以「最小的货盘」做「最大的生意」就是全渠道零售带来的核心价值。

图片

伯俊科技从 2018 年开始,由传统架构软件向中台一体化全渠道软件进行探索和开发。基于打造企业全渠道零售的背景,我们推出 R3 全渠道业务中台的产品。

图片

这个时间段正值互联网爆发,对零售企业而言与互联网产业密切相关,所以在时代大浪潮下,随着技术的变化,我们要满足客户在不同场景的业务闭环,而且要保留原来在业务里所有操作的便捷性、业务的关注点,更灵活地支撑,而不是给客户而带来相应的负担。

由此,R3 的整体架构也从原来一体化的软件逐渐走向 IaaS 层,搭建自己的 PaaS,通过中间的业务域建立相应的业务体系支撑中心。在业务域基础上,为不同业务上游提供不同业务场景的业务应用,直接在中台上最终为客户在不同场景如电商、门店、经销等支撑业务闭环。

图片

在如此复杂的全渠道中台背景下,我们发现一个最大的问题——数据库架构非常复杂。

图片

首先,互联网的微服务化推出要分库分表,通过分库分表提供相应的 OLTP 能力,原来基于传统关系型数据库的架构到互联网时,无法稳定支撑高并发,那时数据库产品还没来得及跟上,所以不得已开始采用分库分表做支撑。

然后,分库分表支撑下导致另一个问题,传统集中式数据库虽然享受到不错的 OLTP 能力,但当我们要查询订单,要按照模糊查,要按照备注进行修改,要看每天的进销存等。这时在互联网大中台和微服务推动下,我们选择了高 OLTP 解决业务速度的问题。相应地其他问题也要解决,所以基于订单查询我们又采用了 ES 来做相应订单的过滤、订单的查询,当它在 ES 里查询到相应数据后,再以 ID 的方式回流到 DRDS 分库分表里,再把数据吐出来,这样才能满足一些场景。

再往后,就到了业务报表的统计、分析。我们在搭建“IT+DT”(注:DT 为数据中台)双中台的时候,很多客户就说,原来在 IT 里的业务统计、业务分析,用互联网的架构感觉并没有带来什么好的突破,反而还带来了负担。因为IT不能闭环,必须要有 DT 进行闭环,所以在日常的报表和企业相应数据支撑里,我们又采取了其他的数据库和数据中间件来支撑它在 IT 里日常过程中的业务支持。采用 Binlog 解析,通过 DTS 或者 Kafka,将相应的数据流传输到带有 OLTP 能力的关系型数据库里,来作为日常的数据支撑。处理不了的数据,我们再通过 Flink 直接发送到DT,做最终的数据统计与分析。

这一套下来不难发现整体架构太过于复杂,如果能在 2018 遇见 OceanBase,我们就不用走那么多弯路。因为当时市场上还是互联网推动的时候,大家都在讲,某一个技术只为一个业务场景来进行服务,所以我们不得不一步一步去尝试在不同业务场景下选择各种各样的技术方案,来满足客户当下的业务。

五年过后,客户的业务发生了变化,互联网架构下也慢慢开始发现一些问题。第一个问题,成本越来越高。每年的成本,比如雷打不动的那么多中间件,每一个中间件每年的费用高达三、四十万,四个中间件加起来一百多万,就解决“OLTP+OLAP”一体化这一个问题;第二个问题,接下来还有人员的边际成本来运维所有中间件,后续还有企业如何从技术平台迁移到其他云,迁移到自己的信息化里,这一块带来的问题越来越多。

图片

伯俊软件一直与零售行业走得很近,我们发现在目前的大环境下,所有电商流量也开始均摊化。过去的“双 11“只有当天算是活动高峰期,但现在已经变成多波段,从 10 月 25 开始预售到 11 月 11 号付尾款,流量已经被打散。

当年在互联网蓬勃发展的大背景下,企业的想法很简单,就是我拥有了互联网的架构、互联网的技术来满足相应的业务体量。如今的企业市场经济增长不再高歌猛进,零售企业为信息化做的投入也可以进行流量均摊。接下来我们再往深水区走一些,中台技术基于数据库的转型也应该要升级了。

此时,伯俊软件希望能找到一个能够融合所有技术,比如基于 OLTP 和 OLAP 为一体的融合型数据库。所以去年我们找了很多数据库厂家一起做测试,基于业务场景的契合度,我们最终选择了 OceanBase。

图片

OceanBase 目前的能力,一个数据库已经能够满足行业客户 80% 的需求,所有业务的查询和业务配套的分析基于 OceanBase 都可以一并解决,此时的整体架构也变得异常简单。

自从和 OceanBase 合作后,我们的客户口碑和业务满意度都得到了提升,既满足了客户业务的常态化需求,又满足了客户在高可用、高并发等性能上的提升,不仅如此,对当下企业最受益还是人员边际成本的降低、多余系统采购成本的降低。比如,中间件成本就可以节省掉了,大家想一想,零售企业的毛利本来就低,每年少交的一百多万,要卖多少东西才能把这一百多万挣出来。总的来说,企业负担减少了,但仍然享受相同甚至更高的数据库能力。

图片

R3 属于战略型产品,主要是满足营收大概 30 亿以上的头部客户,伯俊软件还有很多中长尾客户。我们将在这方面尝试与 OceanBase 打造基于公有云的 PaaS 能力的直接订阅,因为 OceanBase 能显著降低原来基于订阅的费用。

未来,作为零售行业服务商,我们将与 OceanBase 携手一起将技术能力转化成背后的普惠服务客户,以最好的性能和最优的价格,让更多中小型客户能在如此不容易的市场环境下还能用得起、还能挣钱,让现金带动内需,让大家都过上最好的生活。

图片

以上就是伯俊软件站在零售行业的当下,分享的落地 OceanBase 数据库实践,希望能对大家有所帮助,谢谢。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从Intel Cyclone10GX TransceiverPHY 高速收发器认识ATX PLL、FPLL、CMU PLL等PLL

文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 前言 在使用Intel Cyclone10GX TransceiverPHY的过程中发现这个IP还是比较复杂的,特别是时钟系统,提到了多种PLL:ATX PLL、FPLL、CMU PLL,这里进行一下扩展学…

LoadBalancer将服务暴露到外部实现负载均衡metallb-layer2模式配置介绍

目录 一.metallb简介 1.支持多种负载均衡协议 2.支持自定义 IP 地址范围 3.无需额外的硬件设备 4.易于安装和配置 5.可扩展性强 6.layer2模式下选举的leader节点压力大 二.layer2模式配置演示 1.开启ipvs并开启严格ARP模式 2.下载并应用metallb 3.创建一个 IPAddres…

用友U8 Cloud RegisterServlet SQL注入漏洞复现

0x01 产品简介 用友U8 Cloud是用友推出的新一代云ERP,主要聚焦成长型、创新型企业,提供企业级云ERP整体解决方案。 0x02 漏洞概述 用友U8 Cloud RegisterServlet接口处存在SQL注入漏洞,未授权的攻击者可通过此漏洞获取数据库权限,从而盗取用户数据,造成用户信息泄露。 …

2023年甘肃省职业院校技能大赛(中职教师组)网络安全竞赛样题(四)

2023年甘肃省职业院校技能大赛(中职教师组) 网络安全竞赛样题(四) (总分1000分) 目录 模块A 基础设施设置与安全加固 A-1任务一 登录安全加固(Windows) A-2任务二 本地安全策略…

搭建React项目,基于Vite+React+TS+ESLint+Prettier+Husky+Commitlint

基于ViteReactTSESLintPrettierHuskyCommitlint搭建React项目 node: 20.10.0 一、创建项目 安装包管理器pnpm npm i pnpm -g基于Vite创建项目 pnpm create vitelatest web-gis-react --template react-ts进入项目目录安装依赖 $ cd web-gis-react $ pnpm i启动项目 $ pnpm…

【开题报告】基于SpringBoot的文学鉴赏平台的设计与实现

1.选题背景 随着互联网的普及和文学教育的重视,人们对文学作品的阅读和交流需求逐渐增加。传统的纸质书籍已经不能完全满足人们多样化的阅读需求,因此基于互联网的文学鉴赏平台应运而生。这样的平台通过提供文学作品的展示、评论和交流功能,…

ARM64安全特性之SMAP

ARM64 SMAP(Supervisor Mode Access Prevention)是一种安全扩展,用于在ARM64架构中限制特权模式下的内存访问。它的目的是防止特权模式下的恶意软件或漏洞利用程序访问受限内存区域,从而提高系统的安全性。 SMAP的主要原理是通过…

new Promise用法

promise要解决的问题 回调函数问题 问题一:回调函数多层嵌套调用(回调地狱) 问题二:每次回调的结果存在成功或失败的可能性 使用 promise 解决 解决问题一:promise 通过 .then 实现链式调用 解决问题二:p…

Python的海龟 turtle 库使用详细介绍(画任意多边形,全网最详细)

学Turtle库,其实就是学数学,而且还能提高对数学和学习的兴趣。Turtle库还能够帮助孩子更好地理解几何学和数学概念,比如角度、比例、几何图形的性质等等,是Python中一个很有趣的库。 前言 Turtle库是Python中一个很有趣的库&…

Web开发-问题-前后端交互数据不一致

0x01 问题描述 所用的技术:VueSpring Boot后端传给前端数据: [Student(studentId1, personorg.fatmansoft.teach.models.Person4abe6020, major软件工程, className一班, grade一年级), Student(studentId2, personorg.fatmansoft.teach.models.Person…

百元开放式蓝牙耳机哪款好、热门高性价比开放式推荐

在众多耳机类型中,开放式耳机正逐渐崭露头角。它们融合了音质和佩戴舒适性,能给你带来全新的佩戴感受。这些耳机不仅提供高品质的音响体验,还让你能够在户外佩戴欣赏音乐的同时保持对周围环境的感知,更加安全、保障。 在本文中&a…

字符数组和字符串例题2

1、回文字符串 题目描述 给定一个字符串,长度不超过100,判断它是否是回文串。例如: aba, abcba是回文, abc, xyy 不是回文。 输入要求 输入一个字符串,由小写字母组成 输出要求 若是回文输出Yes,否则输出No 输入样例 abcb…

IDEA版SSM入门到实战(Maven+MyBatis+Spring+SpringMVC) -Mybatis核心配置详解

第一章 Mybatis核心配置详解【mybatis-config.xml】 1.1 核心配置文件概述 MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息。 1.2 核心配置文件根标签 没有实际语义,主要作用:所有子标签均需要设置在跟标签内部 1.3 核心配置文件…

Lambda表达式与方法引用

作者简介:大家好,我是smart哥,前中兴通讯、美团架构师,现某互联网公司CTO 联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬 引子 先来看一个案例 …

RPC基础

RPC基础知识 RPC 是什么? RPC(Remote Procedure Call) 即远程过程调用,通过名字我们就能看出 RPC 关注的是远程调用而非本地调用。 为什么要 RPC ? 因为,两个不同的服务器上的服务提供的方法不在一个内存空间&…

Hadoop学习笔记(HDP)-Part.07 安装MySQL

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

无人机停机坪的主要功能有哪些

随着无人机行业领域的不断完善,无人机停机坪作为一项关键基础设施,正发挥着越来越重要的作用。无人机停机坪也叫无人机机巢、无人机机库、无人机机场。无人机停机坪不仅是无人机的“家”,更是其高效运行的关键环节。让我们一同探索无人机停机…

1+X Web 前端开发职业技能等级证书模拟题(中级)理论知识

1X Web 前端开发职业技能等级证书模拟题(中级)理论知识 一、单项选择题 在 Bootstrap 中,可以使用 navbar-header 类的情况是() A 为整个页面添加一个标题 B 为导航栏添加一个标题 C 为导航栏 添加头部 D 为整个页面添…

js对象转换为数组的两种方法

第一种方法: Object.values(obj) 示例: var obj { name: 张三, age: 18}; console.log( Object.values(obj) ); // [张三, 18]第二种方法: for-in循环 示例: var obj { name: 张三, age: 18}; var arr []; for(let i in obj) …

探讨电能质量监测与治理解决方案在半导体行业的设计与应用-安科瑞 蒋静

摘要:在国家鼓励半导体材料国产化的政策导向下,本土半导体材料厂商不断提升半导体产品技术水平和研发能力,逐渐打破了国外半导体厂商的垄断格局,推进中国半导体材料国产化进程。半导体产品的制造使用到的设备如单晶炉、多晶炉等都…