某传统企业去O上云案例

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云原生数据库 PolarDB 分布式版,标准版 2核8GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

最近参与到某新能源制造企业去O上云的项目,网站的需求很简单:以WEB/APP 的形式提供数据查询展示、分析的功能。
网站使用java编写,数据库采用Oracle DataGuard 搭建的高可用架构。DG环境是找第三方公司来搭建的,过了维保期之后主库出了问题,客户根据维保手册自行将备库提升为主库,但DG环境却搭不起来。找数据库运维公司来搭建,要10WRMB(狠!),也就咬牙不搭建DG环境了。相当于数据库一直处于果奔状态。
数据库主要存储站点、设备状态、设备运行日志、发电量、二氧化碳减排量等数据。数据表不多,但单表数据量特别大。WEB站点大都以图表的形式展示日、月、年发电量、二氧化碳减排量、Input、Output数据。很遗憾,所有的统计数据都是在用户访问页面时实时计算得来的。
image

随着新能源产业的兴起,公司销售的设备也越来越多,收集到的数据量也越来越大,单表最高达2亿,多张表数据量相当可观。同时也因为页面响应越来越慢的原因,收到更多的用户投诉。
而此时用户已经感受到来自WEB架构、数据表扩展等的压力,通过一番咨询后,找到我们来优化架构,解决数据量越来越大,WEB访问越来越慢、便于开发维护的问题。
在对公司业务、WEB/APP的业务类型、数据量变化趋势及客户想要达到的数据入库速度、页面响应时间详细了解之后,开始架构优化和数据库改造计划。

大家都知道Oracle相较于其他开源或者非开源的数据库都有很大的优势,表现在OLTP、OLAP等事务操作,以及对过程、触发器、函数等的强烈支持。但在大数据表的处理及扩展方面的能力也一直被大家诟病。另外一面就是对非专业数据库管理人员来说,维护起来有很大的挑战,并且第三方的运维服务公司大都很贵!
出于易运维、可扩展的需求,推荐使用阿里云分库分表中间价DRDS+RDS数据库架构;并对当前实时数据统计的业务场景做了优化。
DRDS:https://help.aliyun.com/document_detail/29659.html?spm=5176.doc52009.6.539.xf7Rpp
RDS:https://help.aliyun.com/knowledge_detail/41872.html
解决的问题:
DRDS单实例可以和N个RDS实例组成分库分表集群,每个RDS会创建8个数据库,每个数据库可以根据拆分规则创建M个分表,最终一张大表的数据会均匀(理论上)的分布在NM8个数据表上,单表数据量直线下降。
阿里云提供DRDS、RDS管理控制台,实例CPU、内存、慢日志等等都可以直观的在页面展示,快速定位解决问题,节省人工运维的成本。
针对实时计算的业务类型,做了大量的代码层和数据库层改造。基本思想是将该类型的业务放到后台,以定时任务的方式去计算,不同需求的结果存储在不同的月、年统计表中,真正做到页面与数据库的交互只有简单的DML操作,减少响应时间提升客户体验。
image


多轮性能测试下来,在100并发下,单个页面最快响应时间可达到500ms以下,多个页面的性能测试响应时间也在2S以下。

去O改造的指导思想是:
梳理和拆分业务,将需要计算的事情交给后台JOB去做,页面对数据库的请求只有一次交互、且只是一次对表的查询操作,避免多次交互和大量的计算操作,提升性能。

目录
相关文章
|
机器学习/深度学习 语音技术 开发工具
阿里巴巴开源语音识别声学建模技术
本文我们介绍阿里巴巴的语音识别声学建模新技术: 前馈序列记忆神经网络(DFSMN)。目前基于DFSMN的语音识别系统已经在法庭庭审识别、智能客服、视频审核和实时字幕转写、声纹验证、物联网等多个场景成功应用。
10919 155
|
安全 Windows
Win10/Win11如何获取最高管理员权限
Win10/Win11如何获取最高管理员权限
3495 0
|
安全 大数据 BI
阿里云数据中台发布智能风控引擎Quick Decision和隐私计算DataTrust,升级品牌主张
阿里云数据中台产品矩阵再丰富, Quick Decision和DataTrust双产品公开亮相,同时发布全新品牌视频,升级品牌主张!
15560 0
阿里云数据中台发布智能风控引擎Quick Decision和隐私计算DataTrust,升级品牌主张
|
数据采集 Python
数据爬取技术进阶:从表单提交到页面点击的实现
本文介绍了如何使用 Python 和代理 IP 技术,从表单提交到页面点击,实现动态网页的数据爬取。以百度贴吧为例,详细讲解了登录、发帖和数据采集的实现流程,并提供了完整的代码示例。通过代理 IP 确保数据获取的稳定性和安全性。
405 3
|
存储 开发者 C++
Python教程:Python安装目录说明
在 Python 开发中,深入了解 Python 的安装目录结构对于开发者来说是至关重要的。本文以Python 3.8.6为例,详细介绍 Python 的安装目录结构、各个子目录和文件的作用。
387 4
|
XML JSON API
淘宝商品详情API接口:获取商品信息的指南
淘宝详情API接口是淘宝开放平台提供的一种API接口,它允许开发者通过编程方式获取淘宝商品的详细信息。这些信息包括商品的基本属性、价格、库存状态、销售策略、卖家信息等,对于电商分析、市场研究或者商品信息管理等场景非常有用。
615 1
|
10月前
|
机器学习/深度学习 存储 人工智能
淘天算法工程师玩转《黑神话》,多模态大模型如何成为天命AI
淘天集团未来生活实验室的算法工程师们以ARPG游戏《黑神话:悟空》为平台,探索多模态大模型(VLM)在仅需纯视觉输入和复杂动作输出场景中的能力边界。他们提出了一种名为VARP的新框架,该框架由动作规划系统和人类引导的轨迹系统组成,成功在90%的简单和中等难度战斗场景中取得胜利。研究展示了VLMs在传统上由强化学习主导的任务中的潜力,并提供了宝贵的人类操作数据集,为未来研究奠定了基础。
|
10月前
|
测试技术 双11 开发者
一文分析架构思维之建模思维
软件里的要素不是凭空出现的,都是源于实际的业务。本文从软件设计本源到建模案例系统的介绍了作者对于建模的思维和思考。
|
10月前
|
数据可视化 项目管理 UED
如何进行有效的优先级管理:6大模型解析
优先级管理看似简单,但要真正做到高效、精准,却需要方法和技巧的支撑。3分钟了解6种优先级管理方法。
777 0
如何进行有效的优先级管理:6大模型解析
|
人工智能 C语言 Python
AI师傅+通义灵码=零基础小白上手python真·不是梦
作为一名不懂编程的设计师,我一直渴望掌握AI辅助设计。在快刀青衣的推荐下,我尝试了AI师傅和通义灵码,成功写出了第一个Python程序,并理解了编程的基本概念。通过AI师傅的引导和通义灵码的帮助,我顺利完成了Coursera上的Python课程,获得了两张证书。这种学习方式让编程变得不再遥不可及,为我的未来学习打开了新大门。