当前位置: 首页 > news >正文

印尼“支付宝” DANA 如何借力 OceanBase 实现3个“关键零”

1720163744

当前,移动支付在东南亚正迅猛发展,据谷歌、淡马锡与贝恩公司发布的报告预测,东盟地区蓬勃兴起的移动支付市场有望在2030年突破至2万亿美元的交易规模。

在此背景下,DANA作为印尼——东南亚最大经济体中的一员,秉持着推动“无现金社会”的宏伟愿景,经过过去六年的不懈努力,已悄然崛起为印尼电子钱包及支付服务领域的佼佼者,其用户基数已接近2亿。

在 DANA 快速发展的过程中,一套强大且可扩展的技术基础设施至关重要,在对比了性能、产品、稳定性、迁移成本等多方因素后,DANA 选择了 OceanBase 为其提供数据库底层支持。

一、DANA 崛起,海量交易数据应运而生

DANA 成立于 2018 年,处于印尼迅速发展的数字领域的前沿,一出现迅速成为该国领先的电子钱包和支付服务之一,截至 2024 年,DANA 已拥有接近 2 亿的庞大用户基础,作为印度尼西亚无处不在的数字支付服务,DANA 近两年开始了其增长和转型之旅。

DANA 的征程始于一个愿景:在印尼创造一个无现金社会,为大众提供安全、可靠和创新的金融服务。基于此愿景,DANA 不断丰富自己的业务场景,包括转账、信用卡绑定、余额充值等,并成为首家与印尼快速响应代码标准(QRIS)网络集成,实现二维码支付的电子钱包。

由于服务范围广泛,DANA 每年可以记录数 10 亿次的交易数据,也正因此,其在国内电子钱包领域处于领先者的地位。然而,在 2018 年初,随着线上交易和商家合作的迅速增长,很快,DANA 就遇到了可扩展性和可持续性不足的障碍,原有使用的数据库无法满足现有系统需求,诸如交易管理、支付处理、账单、会员和营销等都开始运行缓慢。

如何在高并发和不可预测的交易背景下,一直保持数据库系统的稳定性,并保证可靠的性能和运行稳定成为了 DANA 亟需解决的问题。除此以外,DANA 还面临着数据丢失和长时间停机的风险,以及从本地部署向混合云部署过渡的复杂性。

DANA 技术运营与工程副总裁 Zikry Zakiyulfuadi 介绍:“DANA 最初采用的是类似 MySQL 的数据库,由于在线交易和合作商家数量快速增长,每当高峰时期,原有的用于交易管理、支付、账务、会员和营销等系统的数据库就很难灵活扩容,系统容量多次达到上限,这促使 DANA 寻求更强大的数据库解决方案。”

二、与 OceanBase 结缘,启动数据库升级工作

OceanBase 自 2010 年起投入研发,在应对电商发展带来的用户和交易量增长方面,有很好的实践经验——支付宝。

支付宝作为中国移动支付的先行者,也是 OceanBase 的首批用户之一,十余年成长,OceanBase 经历了支付宝大规模金融场景的多年打磨,曾成功应对在高峰时期每秒 6100 万次查询的交易量。

可以说其所具备的高可用、容灾性能等非常适配 DANA 所遇到的问题。由于可预见的流量增长,原本的 MySQL 数据库显然已经达到容量限制,得益于 OceanBase 在电子支付行业数据库升级的成功经验,DANA 在 2018 年选择了与 OceanBase 合作,并开始启动其数据库升级工作。

OceanBase 认为:为避免停机和数据丢失,数据库的可靠性和高可用性至关重要;其次性能也是关注的重点,OceanBase 的目标是低延迟和高吞吐量,借此去提供无缝的用户体验。Zikry 补充说:“OceanBase 的分布式架构使 DANA 能够在业务高峰期无缝扩展。这种分布式数据库与传统银行或企业中使用的数据库架构不同。传统的是主-备,但在 OceanBase 中,我们是主-主。”

这意味着,不是由主服务器处理全部工作负载,备份服务器仅在发生故障时才激活,而是主-主高可用集群能均匀分配工作负载至所有节点,确保最优的负载平衡。

三、实现混合云部署,做到 3 个“关键零”

当 DANA 在 2019 年开始从本地架构迁移到混合云架构的旅程时,OceanBase 再次为其提供了至关重要的技术助力。

DANA 首席技术官 Norman Sasono 在上周参加了 OceanBase 的首届海外技术峰会。他在会上分享:”与 OceanBase 的合作过程中,DANA 对分布式数据库有了更深入的了解,也让 DANA 更熟悉混合云架构,自己和团队的专业知识都上了一个新台阶,正是通过与 OceanBase 的合作,我们才决定建立一个现代化、统一的数据库,以确保我们的技术弹性和业务增长。”

1720164079

Norman 指出,根据他们的经验,100%的本地部署或 100%的公共云都不是 DANA 的最佳选择。他发现,对于常规工作负载,本地运行更经济,但在遇到高流量峰值时,需要将工作负载转移到云端。

2019 年 DANA 开始部署混合云,借助 OceanBase 促成了无缝过渡,使 DANA 拥有了“弹性伸缩能力”,特别是在需要支持系统高可用性时,能灵活地将工作负载移动到公共云。

同时,OceanBase 还提供了备份能力,基于 OceanBase 的多活能力,DANA 实现三机房混合云部署,即使三个数据中心之一不堪重负,仍有两个备份可用。有了这样的技术基础设施,在随后的 2020 年,DANA 实现了零数据库故障和零数据丢失,整体业务系统可用性超过 99.99%。

Zikry 补充说:“ OceanBase 能够在最小环境运行,每秒可以处理数千次交易,可以无缝支持 DANA 的业务增长,保证业务高峰期间也可以稳定运行。OceanBase的可扩展性加上 RTO<8 秒的容灾水平,以及 7*24 的全球远程技术支持,确保了DANA 即使交易量飙升,也能保持高性能和可靠性。”

此外,采用 OceanBase 最显著的好处是 DANA 实现了三个关键的零:零停机时间、零数据丢失、零数据不一致。每个节点都有相同的数据,所以不会有数据丢失。同步的时间在亚毫秒级,非常快。

这种稳定性和数据完整性非常有利于在用户和商家之间建立信任。Norman 补充说,随着 DANA 的在线交易和商户合作每年呈指数级增长,一个可扩展、可持续的数据库解决方案至关重要。

四、持续深耕,越来越懂海外用户

目前,DANA 的用户数仍在持续增长中。Zikry 介绍,2023 年底 DANA 用户数为约 1.5 亿,目前已增长到约 1.8 亿,而印尼总人口已超过 2 亿,这意味着对数字化技术的需求仍有巨大空间。

OceanBase 作为一款国产数据库,在过去几年也在持续加快出海脚步。在海外市场,OceanBase 选择在电商、零售、物流、电子支付等实战经验最丰富的行业进行深耕,不仅输出技术,更传递实战经验。

目前在全球,OceanBase 已拥有超过 1000 家客户,除印尼电子钱包 DANA 外,还应用在菲律宾电子钱包 GCash、非洲电子钱包 PalmPay、伊拉克国家信用卡 QiCard 等众多海外用户。

未来,OceanBase 将持续助力 DANA 的每一笔「支付」都算数,协同 DANA 让印尼人民的生活更加便捷美好。

相关文章:

印尼“支付宝” DANA 如何借力 OceanBase 实现3个“关键零”

当前,移动支付在东南亚正迅猛发展,据谷歌、淡马锡与贝恩公司发布的报告预测,东盟地区蓬勃兴起的移动支付市场有望在2030年突破至2万亿美元的交易规模。 在此背景下,DANA作为印尼——东南亚最大经济体中的一员,秉持着推…...

2018-2022 年份微博签到数据集

前阵子接到一个实验室老师的需求,采集五年前(2024-52019)过年前后的北京微博签到数据。 前两年采集的深圳签到数据是 2022 年是当年的尚可,这次虽然时间跨度只有两个月,但是由于时间太过久远,但是颇费了一…...

Avalonia开发实践(二)——开发带边框的Grid

一、开发背景 在实际开发工作中,常常会用到Grid进行布局。为了美观考虑,会给每个格子加上边框,如下图: 原生的Grid虽然有ShowGridLines属性可以控制显示格子之间的线,但线的样式不能定义,可以说此功能非常…...

Java泛型的定义与运用

泛型 泛型的作用从使用层面上来说是统一数据类型,防止将来的数据转换异常。从定义层面上来说,定义带泛型的类,方法等,将来使用的时候给泛型确定什么类型,泛型就会变成什么类型,凡是涉及到泛型的都会变成确…...

Java如何自定义注解及在SpringBoot中的应用

注解 注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说…...

微软 Edge 浏览器全解析

微软 Edge 是微软推出的一个现代化浏览器,继承了 Internet Explorer(IE)的部分功能,但在速度、安全性和兼容性方面做出了很大改进。下面是对微软 Edge 浏览器的详细解析,包括其特点、安装、配置和常见问题的解答。 微软 Edge 浏览器的特点 基于 Chromium 内核 Edge 浏览…...

C++ 八股(1)

C语言中strcpy为什么不安全?如何解决? 主要原因是缺乏对输入长度的边界检查,容易导致缓冲区溢出漏洞。 解决:可以使用strncpy函数替代,或者在程序最顶端加入代码段 #define _CRT_SECURE_NO_WARNINGS 缓冲区溢出 …...

超高精电容传感器PCAP01调试+LABVIEW数据可视化调试手记

PCAP01超高精电容传感芯片STM32LabView可视化 文章目录 PCAP01超高精电容传感芯片STM32LabView可视化一、PCAP01介绍1.1、PCAP01引脚定义1.2、电容测量1.3、温度测量1.4、PCAP典型测试电路 二、PCAP01的STM32驱动2.1、SPI协议配置2.2、PCAP01浮空电容测量内部温度测量操作流程 …...

5.更多

发现一个项目与 MkDocs 类似的项目 PyMdown 拓展文档 ,等待探索。 1.排版模仿 以下网站使用 MkDocs 构建 Material for MkDocs 的美化 - Charles Les Notebook (charleschile.com) Documentation - Home Assistant (home-assistant.io) Godot Docs – master bra…...

ConditionalOnJndi注解使用介绍、应用场景以及示例代码

概述 ConditionalOnJndi 是 Spring Framework 中的一个条件注解,用于在特定的 JNDI (Java Naming and Directory Interface) 环境条件下决定是否创建一个 bean 或配置一个 bean。JNDI 是 Java EE 规范中定义的一种用于访问命名和目录服务的 API,它允许 …...

Spring Cloud 引入

1.单体架构: 定义:所有的功能实现都打包成一个项目 带来的后果: ①后端服务器的压力越来越大,负载越来越高,甚至出现无法访问的情况 ②业务越来越复杂,为了满足用户的需求,单体应用也会越来越…...

自定义波形图View,LayoutInflater动态加载控件保存为本地图片

效果图&#xff1a; 页面布局&#xff1a; <?xml version"1.0" encoding"utf-8"?><LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.android.com/tools"android:la…...

每日一道算法题 求最小公倍数

题目 求最小公倍数_牛客题霸_牛客网 (nowcoder.com) Python 辗转相除法 dividend,divisormap(int,input().split()) #被除数&#xff0c;除数 # remainder0 余数 # 最小公倍数 def lcm(dividend,divisor):# 最大公约数def gcd(dividend,divisor):if 0divisor:return divid…...

【OCC学习18】三维几何对象工具包:TKG3d

【OCC学习18】三维几何对象工具包&#xff1a;TKG3d loveoobaby 已于 2022-08-26 10:10:32 修改 阅读量1.2k 收藏 10 点赞数 1 分类专栏&#xff1a; OpenCascade学习笔记 文章标签&#xff1a; 学习 版权 OpenCascade学习笔记 专栏收录该内容 24 篇文章60 订阅 订阅专栏…...

【Unix】SunOS/Oracle Solaris系统介绍

一.SunOS系统介绍 SunOS 是由 Sun Microsystems 开发的 Unix 操作系统。它最初是为 Sun 的 SPARC 架构计算机设计的&#xff0c;后来也支持了 Intel x86 架构。SunOS 是基于 UNIX System V 4.1 版本&#xff0c;并且随着时间的发展&#xff0c;SunOS 经历了多个版本迭代&#…...

氛围感视频素材高级感的去哪里找啊?带氛围感的素材网站库分享

亲爱的创作者们&#xff0c;大家好&#xff01;今天我们来聊聊视频创作中至关重要的一点——氛围感。一个好的视频&#xff0c;不仅要有视觉冲击力&#xff0c;还要能够触动观众的情感。那我们应该去哪里寻找这些充满氛围感且高级的视频素材呢&#xff1f;别急&#xff0c;我这…...

基于Java的学生选课系统

第1章 系统概述 1.1概述 背景&#xff1a;随着计算机网络技术的发展&#xff0c;Web 数据库技术已成为应用最为广泛的网站架构基础技术。学生选课系统作为教育单位不可缺少的部分&#xff0c;其内容对于学校的决策者和管理者至关重要。传统的人工管理方式存在效率低、保密性差等…...

802.11漫游流程简单解析与笔记_Part2_05_wpa_supplicant如何通过nl80211控制内核开始关联

最近在进行和802.11漫游有关的工作&#xff0c;需要对wpa_supplicant认证流程和漫游过程有更多的了解&#xff0c;所以通过阅读论文等方式&#xff0c;记录整理漫游相关知识。Part1将记录802.11漫游的基本流程、802.11R的基本流程、与认证和漫游都有关的三层秘钥基础。Part1将包…...

STM32的 DMA(直接存储器访问) 详解

STM32的DMA&#xff08;Direct Memory Access&#xff0c;直接存储器存取&#xff09;是一种在单片机中用于高效实现数据传输的技术。它允许外设设备直接访问RAM&#xff0c;不需要CPU的干预&#xff0c;从而释放CPU资源&#xff0c;提高CPU工作效率&#xff0c;本文基于STM32F…...

14-65 剑和诗人39 - 打造你自己的 Devin

​​​​​ 绝密 Devin 架构 更具体地说,构建您自己的 AI 代理。 Devin 使用 GPT-4 ,而人们已经开始用 Claude-3-Opus 构建替代方案 Devin 的 UI 体验更好。 例如,它甚至看不到浏览器,但它确实存在于用户面前 此外,你可以随时与它“交谈”,就像与人交谈一样,它会在后…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python&#xff5c;GIF 解析与构建&#xff08;5&#xff09;&#xff1a;手搓截屏和帧率控制 一、引言 二、技术实现&#xff1a;手搓截屏模块 2.1 核心原理 2.2 代码解析&#xff1a;ScreenshotData类 2.2.1 截图函数&#xff1a;capture_screen 三、技术实现&…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

大话软工笔记—需求分析概述

需求分析&#xff0c;就是要对需求调研收集到的资料信息逐个地进行拆分、研究&#xff0c;从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要&#xff0c;后续设计的依据主要来自于需求分析的成果&#xff0c;包括: 项目的目的…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告&#xff08;肿瘤大小、血液指标&#xff09;&#xff0c;你需要做出一个**决定性判断**&#xff1a;恶性还是良性&#xff1f;这种“非黑即白”的抉择&#xff0c;正是**逻辑回归&#xff08;Logistic Regression&#xff09;** 的战场&a…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用&#xff1a;实现组件通用属性的渐变过渡效果&#xff0c;提升用户体验。支持属性&#xff1a;width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项&#xff1a; 布局类属性&#xff08;如宽高&#xff09;变化时&#…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

MMaDA: Multimodal Large Diffusion Language Models

CODE &#xff1a; https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA&#xff0c;它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

【2025年】解决Burpsuite抓不到https包的问题

环境&#xff1a;windows11 burpsuite:2025.5 在抓取https网站时&#xff0c;burpsuite抓取不到https数据包&#xff0c;只显示&#xff1a; 解决该问题只需如下三个步骤&#xff1a; 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题&#xff0c;前来答题。 每个人对刷题理解是不同&#xff0c;有的人是看了writeup就等于刷了&#xff0c;有的人是收藏了writeup就等于刷了&#xff0c;有的人是跟着writeup做了一遍就等于刷了&#xff0c;还有的人是独立思考做了一遍就等于刷了。…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)

Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败&#xff0c;具体原因是客户端发送了密码认证请求&#xff0c;但Redis服务器未设置密码 1.为Redis设置密码&#xff08;匹配客户端配置&#xff09; 步骤&#xff1a; 1&#xff09;.修…...