OceanBase 走进58集团,陌陌、新东方、毫末智行等应用场景落地实践 | meetup精彩回顾

2024年 5月 7日 66.0k 0

12月9日,OceanBase 社区企业行走进58集团,成功举办了主题为《海量数据应用场景落地实践》的技术沙龙,本次活动由OceanBase 和58技术委员会联合主办,特邀58同城数据库架构师刘春雷出品,并与来自同方智慧能源、毫末智行、陌陌、新东方、OceanBase 等企业的技术专家,对企业技术栈设计、数据库架构和运维的最佳应用实践进行了深度解析。

OceanBase CTO 杨传辉在现场表示:“在 2023 OceanBase 年度发布会上,我们引以为傲的发布了 OceanBase 4.2.1 LTS 版本,是分布式 OLTP 的全功能里程碑版本,且所有核心功能都经过完善。我们相信,这个版本可以在金融行业及其他行业的核心应用场景中成功使用,就像支付宝一样。此外,我们还现场测试了 OceanBase 4.3 的实验版,带来更强的实时 AP 分析能力。虽然还存在一些问题需要解决,但我们一直在不断改进。我们的目标是降低使用门槛,让开发者能够快速上手,让 DBA 能够更容易使用。”

OceanBase 走进58集团,陌陌、新东方、毫末智行等应用场景落地实践 | meetup精彩回顾-1

OceanBase CTO 杨传辉

以下为本次活动中各位演讲嘉宾的精彩回顾。

OceanBase OCP 自动化部署在58同城的落地实践

作为本次活动的出品人,58同城数据库架构师刘春雷的重点介绍了58同城在 OceanBase OCP 自动化部署的实践。

OceanBase 走进58集团,陌陌、新东方、毫末智行等应用场景落地实践 | meetup精彩回顾-2

58同城架构师刘春雷

58同城是中国互联网生活服务领域的领导者,也是国内最大的生活服务类平台之一,涵盖了丰富的服务场景,包括车辆、房产、本地招聘、金融、二手物品、宠物等各种业务。如此丰富、复杂的业务对数据库有一些特定需求,而 MySQL 这样优秀的数据库无法满足所有场景的要求。金融业务对数据的可靠性要求和大规模流量处理速度要求较高,因此,58同城调研和尝试了多种数据库,OceanBase 的稳定可靠和大规模数据处理能力符合58同城要求,同时, OCP 4.2 版本的推出,解决了集群的权限指定、部署服务的目录和 OceanBase Proxy 的安装目录等问题,帮助58同城实现了业务自动化。

在使用过程中,刘春雷总结了 OceanBase 生态工具 OCP 和 OBD 的优缺点。

OCP 是一个白屏化工具,用于部署和管理数据库。

OCP 优点:

• 支持一键部署一个集群,包括角色:OceanBase Proxy、OceanBase Server、OceanBase Agent。

• 支持 RPM 包管理。

• 需要自己下载想要的版本的多个包,需要用户自己控制集群的版本组合。

• 支持开启、关闭。

• 支持升级版本支持管理多套集群。

OCP 不足:

• 需要使用 OCP 的 API 才能融合到各自公司的自动化,开发成本比 OBD 开发高。

• 仅支持部分端口定制化,单机器无法部署多实例。这种是 OCP 的设计理念,防止单机多实例的资源使用问题。

• 如果 OCP 不能使用,则无法使用自动化!有一定风险(相比工具,平台风险更高),所以线上使用,推荐部署多个 OCP,底层元信息库多节点。

• 部署 OCP 比较麻烦,需要注意环境的情况。

OBD 是一个黑屏工具,用于在 OceanBase 中控机上执行命令来管理和部署集群。

OBD 优点:

• 支持一键部署一个集群,包括多种角色,如 OceanBase Proxy、OceanBase Server、OceanBase Agent、Prometheus、Grafana、ocp-express。

• 支持镜像管理。

• 下载 OceanBase 社区版一键安装包 (OceanBase All in One) 方便。

• 支持多种参数指定,如端口等。

• 支持开启、关闭。

• 支持升级版本。

• 支持重新部署、重新加载。

• 支持管理多套集群。

• 容易融合到自动化。

OBD 不足:

• 支持的功能有限,不支持扩容、缩容节点。

• 大家可以等新版本支持。

• 稳定性欠佳。

通过刘春雷对 OCP 和 OBD 特点的提炼,可以帮助用户更好地理解和选择适合自己需求的工具。刘春雷表示,会加速使用和推广 OceanBase,希望 OceanBase 能够持续发展,成为一款优秀的数据库产品。

OBKV 在陌陌的探索与实践

陌陌数据库负责人冀浩东以业务需求和技术发展阶段为背景,在 KV 储存选型和 OBKV 应用上进行重点讲解。

OceanBase 走进58集团,陌陌、新东方、毫末智行等应用场景落地实践 | meetup精彩回顾-3

陌陌数据库负责人冀浩东

陌陌和探探是属于陌生人社交领域的头部 APP,涵盖了直播业务、附近动态、IM 业务和增值业务等。每个业务场景都有其特点和需求,如直播、IM 业务对低延迟和高并发有要求,附近动态的数据量大且有冷热分层,增值业务对数据一致性要求高。

技术选型没有非黑即白的说法,如果一步到位的架构很难做到,或许可以尝试逐步演进的技术架构,毕竟合适的才是最好的。例如初创公司想快速拉起一个项目的阶段,为了应对业务的快速迭代,选择能用就行的方案可能是合适的。典型的选择是原生 Redis 的主从架构或 Redis Cluster 架构。随着业务不断发展,需要逐步扩展能力,就可以选择 Redis 的常见的分片架构。在业务相对稳定的阶段,需要对之前的技术债进行补偿和成本优化。例如将数据放在更廉价的介质上,优化存储成本。随着业务和技术的发展进入一个长期稳定阶段,这个时候还有持续不断进行成本优化需求,这个时候已经进入业务和技术的深水区,那么此时改变业务或者技术都可能带来很大的风险。如何这样的前提下寻求突破是目前遇到的难题,通过测试,我们发现通过引入 OBKV 架构,可以进一步帮助我们来完成持续成本优化的目标。

需要一个靠谱的分布式 KV

选择了 OceanBase KV (以下简称“OBKV”)作为解决方案,是因为它与竞品相比,具备很多特性

• 性能更好:基于 Table 模型构建,Redis 数据结构持久化方案可以看作是典型的表模型,模型匹配,性能比起传统持久化存储更强

• 稳定性高:OBKV 存储引擎经过大规模 TP 场景验证,具备高并发,低延时

• 扩展性更强:基于 Paxos 原生分布式协议,能做到弹性扩缩容,轻松应对 KV 流量洪峰冲击

• 多模扩展:基于 OBKV-TableAPI,比较方便的扩展其它模型,比如 Redis,Hbase

• 存储成本低: OBKV 通过表模型和自研的 encoding 框架,实现了更低的存储成本和高性能;它可以直接处理存储层的计算,而不需要先将数据查出再处理,同时支持服务端 TTL

• 易于运维管理:多租户功能有效解决了单机多实例的问题,参数管理和资源隔离提高了运维效率OBKV 的编码方式和压缩技术可以节省大量资源

• 生态丰富:OBKV 基于 OceanBase,可直接使用周边生态工具 OCP 等,无缝对接上下游和 OBKV 生命周期管理

• 技术与生态共建:OceanBase 社区响应支持及时,推崇技术共建,能更好的将技术栈优势切合到业务场景中

希望在未来可以实现 KV 多模生态的全面接管,以及提供存储引擎层面的数据分层能力,通过 KV 层面的创新为企业节省的更多的技术、资源成本。

OceanBase 在同方智慧能源落地实践

同方智慧能源数据库工程师丁泽斌主要围绕数据库选型及应用 OceanBase 的最佳实践展开分享。

OceanBase 走进58集团,陌陌、新东方、毫末智行等应用场景落地实践 | meetup精彩回顾-4

同方智慧能源数据库工程师丁泽斌

同方智慧能源是以能源为主题的综合智慧能源解决方案提供商,依托于中核集团和清华大学的科技优势。公司业务面向建筑、交通、工业、北方供热、数据中心等主要用能场景展开。公司项目有如下特点:

• 侧重于为政府的工业建设、城市交通和基础设施等服务。

• 项目较少的使用公有云,项目多独立部署,项目间资源不共享。

• 项目数据主要来自设备而非用户,数据产生可能没有低峰期,数据采集频率和性能需求较高。

我们许多旧项目使用传统关系型数据库 MySQL,一些项目对数据库的性能要求不高,仅需满足普通的业务需求即可,因此数据库架构较为简单。也有一些项目经历了多年的改造,技术架构相对简单,但是业务功能复杂,并且随着数据量增加,传统的关系型数据库 MySQL 在存储和性能方面瓶颈越来越明显。即使使用 MySQL 分库分表方案,虽然在一定程度上得到缓解,但是根本问题仍然没有解决,而且带来更多运维复杂度问题。

传统数据库方案比如 MySQL 存在扩展性差、单点故障不易恢复、单机性能瓶颈等问题,虽然市面上有多种解决方案,但也会使项目架构变得更加复杂,增加了运维与开发成本,灵活性也不够。所以我们希望有一款数据库,满足数据库升级要求的前提下,具有强劲性能、完整生态、高兼容性、易维护性、高可靠性、和方便水平扩展等特点。

经过我们的一系列调研选型最终选择了 OceanBase:

• 数据库升级要求:对于一些项目,升级是硬性要求,要求各方面都符合升级标准。

• 数据库选型:OceanBase 具有兼容性、高可靠性和可扩展性等优点,与 MySQL 相比具有更好的性能与更高的压缩率。

• 搭建和使用经验:OceanBase 的搭建门槛降低,易于维护。建议大型项目使用 OceanBase Cloud Platform(OCP)搭建,但部署时需要注意资源的分配与占用问题。

• 部署运维产品专业化:使用 OceanBase Cloud Platform (OCP)搭建和管理 OceanBase 集群方便且专业。不过未来建议将 OceanBase Database (OBD)、OceanBase Cloud Platform (OCP) 产品合并,避免用户部署时候做选择,也有助于 OceanBase 明确产品的边界,让开发人员更专注与oceanbase的业务使用。

• 生态工具丰富性: OceanBase 拥有丰富的生态工具,如 OCP、OMS、ODC、CDC 等。这些工具提供了管理、迁移、数据迁移和同步、协同开发等功能, OceanBase 也可以借用MySQL的生态,更加丰富自己的生态。

未来,同方智慧能源计划在疾控中心等等行业使用 OceanBase 并逐步扩大使用规模,同时将 OceanBase 作为新能源项目的数据库方案,进一步应用于供热供暖、地铁交通、智慧建筑等领域。

OceanBase 在毫末智行的落地实践

毫末智行运维工程赵国良以产品和业务侧的生命周期深度解析 OceanBase 的应用实践。

OceanBase 走进58集团,陌陌、新东方、毫末智行等应用场景落地实践 | meetup精彩回顾-5

毫末智行运维工程师赵国良

毫末智行是一家专注于自动驾驶的人工智能技术公司。在数据采集方面面临着车型多样、解析规则复杂、数据包体积大且需要永久保留等挑战。同时,由于数据量大、时效性要求高以及处理过程复杂等特点,数据管理变得非常复杂,需要考虑业务特性、数据属性和成本等多个维度的因素。随着需求的不断增加与业务数据量的增长,多云下的数个自建 MySQL 实例与数个RDS产品维护成本逐渐增高,亿级数据量的各类场景下问题逐步暴露。

在选用分布式数据库之前,毫末智行了解了目前市场上比较优秀的两款产品 TiDB 与 OceanBase。这两款产品按照各自的方案实现了可扩展、高可用的特性,并且高度兼容 MySQL 协议与语法。但因为业务复杂,实例繁多。OceanBase 自身的集群资源管控能力比较优秀,租户按需分配等特性让我们最终选择了 OceanBase。

落地OceanBase后,取得了以下收益:

• 实现了线上业务的城市级别的容灾,有效保障了业务连续性及数据的安全性。

• 使业务系统的数据存储具备了动态扩容的能力,实现了无感知的平滑扩容,有效提升了业务的连续性。

• 降低了运维管理成本,使数据量增长或业务调整时,数据库扩容或迁移过程中的运维投入趋近于零。

• 有效降低了云端成本,相比 MySQL/RDS,迁移至 OceanBase 后,大幅度降低了云端成本。

• 数据库管理的工作效率获得了极大的提升,OCP提供了诸如快捷部署、性能监控、日志服务、SQL分析、自动备份等诸多数据库管理功能或工具。

• SQL性能获得了较大提升,通过优化,使原有业务场景中的一些依赖数据库的任务的运行效率要了较大幅度的提升。

在接下来的业务需求中,毫末智行计划基于 OCP、ODC和 OMS 打造一个数据库管理平台,利用可视化功能减少工作量。希望实现数据库审计和将剩余数据迁移到 OceanBase,OCP、ODC的登录体系和兼容性能够有批量操作功能的改善。

OceanBase 4.2 在新东方的探索实践

新东方数据库资深工程师周永强分享了在 OceanBase 4.2 版本 OLTP 性能上的探索实验,重点从部署应用性、性能增强和降低维护成本三个方面进行介绍。

OceanBase 走进58集团,陌陌、新东方、毫末智行等应用场景落地实践 | meetup精彩回顾-6

新东方数据库资深工程师周永强

在部署应用性方面,新东方更倾向于使用 OCP 部署,因为它功能更全面,可以同时管理多套集群。对于开发能力较弱的公司,可以将 OCP 作为开发管理平台使用。

在性能方面的实验中,新东方通过关联表查询等方式对 OceanBase 4.2 的性能进行了探索。实验结果显示,在64核的环境下,OceanBase 的响应时间已经达到了秒级别,并且 QPS 基本稳定。

此外,OceanBase 的性能优于其他数据库,表现出色,具体来说,新东方在实际的单表业务场景中评估了OceanBase 的性能,发现其响应时间较短,相比其他数据库有所提升。在 4.2 版本中,OceanBase 通过参数控制写入日志的阈值,实现了限速,不会影响集群的稳定性。此外,OceanBase 还增强了一些功能,如支持集群和租户级别的容灾备份。对于灵活部署模式,OceanBase 适用于不同的场景,包括混合云部署和微服务场景,灵活的悲观事务,并且可以减少成本、提高资源利用率。

为了提高资源利用率并解决现有主从延迟带来的问题,新东方计划将一些资源浪费较大的集群通过 OMS 同步到 OceanBase 租户中,并通过租户与租户之间的隔离来解决主从延迟的问题。同时,将一些小规模的 RDS 集群同步到 OceanBase 租户中,以实现租户集群模式,节约成本。

OceanBase 4.2 架构特性解析及企业典型场景探索实践

OceanBase 数据库专家郑赫扬主要带来 OceanBase 4.2的架构解析和企业场景探索。

OceanBase 走进58集团,陌陌、新东方、毫末智行等应用场景落地实践 | meetup精彩回顾-7

OceanBase 数据库专家郑赫扬

传统的业务选型通常是从 MySQL开始,然后根据业务发展换成高规格的 MySQL 或 RAC,再到核心业务使用分库分表。而在 OceanBase 中,通过单机一体化的功能特性,用户可以从小规模的单机开始,根据业务增长轻松扩展到分布式。这种方式避免了传统选型中频繁的数据迁移和业务改动。

OceanBase 提供了丰富的单机到分布式的扩展方式,包括大规模单机、主备库和水平扩展,都可以无缝扩展,而且业务不会受到影响。与传统数据库相比,OceanBase 在日志流方面采用了多条日志流并通过分布式数据库和 Raft 协议保证了 ACID 特性和持久性,然而,这些特性也会带来一些开销,特别是在参与者数量较多时。因此,分布式数据库的代价会随着参与者增加而增加。OceanBase 4.x版本通过改进日志流,可以降低分布式日志开销和选举成本,并提高性能和效率。此外,通过优化存储和执行期的能力,OceanBase 在性能和存储方面也有显著的提升;旁路导入功能的引入使优化器执行器、租户级隔离等功能增强,进一步提升了用户体验和管理能力;自动 DOP 功能可以根据业务需求自动调整并行度,降低了对线程使用的门槛,提高了性能和效率。

上述特性使OceanBase能够满足不同场景的需求:

• 在典型场景中,OceanBase 的使用展现了它在多个领域的效益,比如提供稳定的性能、低延迟和高可靠性。比如历史库场景,通过编码算法和通用压缩技术,使存储和取数方面都能节省空间,在降低存储成本的同时提升读写能力。

• 针对微服务和多租户业务,通过多租户的碎片化管理、错峰超卖、高并发访问、高可用架构和数据时效优化等功能,可以满足不同业务部门的需求,同时,OceanBase 的分布式架构和服务节点划分可以提供灵活的部署方案,降低业务和资源间的相互影响。

• 针对数仓业务,OceanBase 可以替代传统的 Spark 和 HDFS 等组件,减少复杂的链路和成本,并提供更快的数据分析和响应能力。OceanBase 还支持和替换其他数据库,比如 HBase 和 Redis,并具备无限扩展的潜力。

通过不断的创新和开发,OceanBase 正在成为一个适用于各行各业的分布式数据库解决方案。

据 OceanBase 开源生态资深技术总监封仲淹透露,OceanBase 社区将在2024年加大对开源的资源投入,以提升研发和测试水平。同时会推出比 OceanBase 4.2.1 版本更先进的版本。他谈到“社区产品的自助能力对各行各业的用户至关重要,我们将努力确保社区用户能够实现自助解决问题的效果。同时,开源社区最重要的是生态发展和建立联系,我们希望与大家建立更紧密的联系,加强合作,避免闭门造车。”

OceanBase 走进58集团,陌陌、新东方、毫末智行等应用场景落地实践 | meetup精彩回顾-8

OceanBase 开源生态资深技术总监封仲淹

以上就是本次OceanBase企业行的精彩内容。活动现场座无虚席,一些开发者甚至从50公里外耗费超过2小时赶来参加活动,这些小伙伴的积极参与显示出越来越多的开发者们对于 OceanBase 的兴趣和热情,愿意花费时间和精力来学习和交流。

通过本次活动,参会者对 OceanBase 在企业技术领域的应用和优势有了更深入的了解,为业务发展提供了有价值的参考和实践经验。开发者的无私分享和积极参与也鼓励 OceanBase 为开发者带来更多的创新和成长的机会。正如杨传辉所言“我们怀揣着一个梦想,那就是让所有企业都能够使用 OceanBase,并熟练运维。我们将继续投入更多精力,努力办好和大家近距离交流的活动,这对于开源社区来说具有非常重要的意义。”感谢所有参与者的支持和付出!

OceanBase 走进58集团,陌陌、新东方、毫末智行等应用场景落地实践 | meetup精彩回顾-9

OceanBase 定期在线上、线下举办技术交流活动,为数据库技术和开源爱好者提供一个自由学习、交流的平台。无论你对分布式技术、数据库技术感兴趣,还是作为开源爱好者,都欢迎你参与活动,和大家交流技术。

社区志愿者招募

欢迎对数据库及开源感兴趣的朋友加入 OceanBase 社区,成为社区讲师或城市活动组织者,举办更具城市特色的活动,与 OceanBase 一起连接更多数据库和开源的爱好者。

加入方式:添加OB社区小助手(微信:OBCE666)回复【讲师】【志愿者】或【承办活动】。

同时,欢迎大家加入社区,提交问题和建议,一起共建开源项目。Building connectly first!Learning as belonging!

OceanBase 开源项目地址:https://github.com/oceanbase/oceanbase

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论