从“金事通”带给我意想不到的来说--“数据是架构的中心”

news2024/11/26 10:39:19

背景

上周一个保险的销售人员来找我完成一定的售后流程。其中有一项是请我下载一个叫 金事通的 APP。说实在的我根本没听过。她说这是政治任务。我想不是有你们保险公司的APP了嘛。为什么还要我安装。没办法先安装吧。

经历了注册、人脸识别的步骤后。可以登录了。注册短信发来的 中国银保信。很有意思不是某个保险公司,而是银保监会的。

安装以后带来的效果

然后我就看到了我所有保险公司的业务数据,什么中国人寿、太平洋、平安、新华。寿险、财险、交强险。只要是我身份证下的不同保险公司的全部可以查询。而且我觉得吧,比这几个保险公司的APP做的简洁(不拖泥带水的)。

去年退税的时候我被个税APP的数据库震惊了。现在我被这个保险的数据库震惊了。

思考

以下全部是个人猜想,这个数据库应该是银保监会作为上级监管单位,要求所有被监管的机构将数据送过来。我觉得可能有两种做法,一种是数据通过CDC这种技术数据同步。

还有一种就是接口。后者可能大一些。但是前者也不是没有可能。

我国监管类的用一句外行话说就是“应集紧集,应采尽采”。

我能排除的不是所谓的用ETL这种进行数据集中到Hadoop。而是一定是一个交易型的数据库中。因为这里的查询都是硬件是范围查询等使用到索引的场景。

这种其实很像企业中一堆子系统,尤其是微服务场景把数据库拆的七零八碎的。要查询跨数据库的业务,而进行的数据融合。比如我今天这个案例,一个用户身份证下的不同保险公司的保单(这还是跨公司的都做到了,别说那种在一个公司的会员库和订单库了)

早上看到这个文章,我转发了。公司不少人看到我说我转的好。看来都是深受其害的。

image.png

这些年,我不遗余力的说微服务的问题。因为我的工作中(特指我),几乎没看到的所谓微服务的好处。只看到带来的问题。这里有反驳的声音就是把一个数据库拆成ABCDEFG后,当A数据库故障后,BCDEFG数据库还可以工作。

但是实际是我就只见过SQL写的不好导致数据库出现问题而已。而这种问题微服务不是根本解决之道。而且纵使BCDEFG数据库还可以工作,而实际上这是一个整体流程。全流程还是走不下去。例如订单数据库CPU满了,是不影响会员数据库登录。但是不能下单啊。对用户来说最终不可用。

这里我脑洞再大一点。现在这种做法,那么是不是可以银保监会把所有保险公司的保单的数据库直接放在一起(这是脑洞,先不说合理性)。这样监管就更加彻底的监管了。各个保险公司的数据库数据隔离。至于是租户还是其他方式都可以考虑。有些数据库是有这些功能的。

架构

对于这种我曾经在《一个数据库拆分成十几个数据库的意义》中论证。我观点鲜明还是对这种持负评价的。今天有人留言说:有些项目,也没有经过充分架构讨论,可能就是一个普通程序员的决定。 确实有这种情况。毕竟他不是从数据库角度去考虑的。那么有人说为什么要从数据库角度?我也在《应用适配数据库还是数据库适配应用》中阐述过。

这里我应用黄东旭老师的话:不同行业不同系统,从技术层面来说,抽象到最高,总结成一句话就是:数据是架构的中心。数据的产生,数据的存储,数据的消费,数据的流动……只不过是根据不同的需求,变化数据的形态和服务方式。系统 = 业务逻辑 x 数据。可以说很多架构问题都是出在数据层,例如常见的「烟囱式系统」带来的种种问题,特别是数据孤岛问题,其实本质上的原因就出在没有将数据层打通。

DBA对以上话非常赞同,但是开发人员不一定赞同。

有钱时候,觉得能提高开发效率比啥都重要。然后隐形投入的运维人力和机器成本视而不见。现在穷了后,啥都要省。而且从谷歌的数据来看节约了90%的成本,谁不心动?尤其是当初被忽悠上微服务的。不是每家公司都适合。

因为微服务和中台是阿里推广的,而这两个在其发祥地基本没什么声音了。有人说这些是利好云厂商,因为可以大量卖云资源了。也是一个理由。

最后我想说的如果能意识到数据是架构的中心。其实很多问题就好解决了。就看你能不能认清楚。然后要做的就是一件事情,控制好开发的SQL质量。

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

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

相关文章

Rx(Reactive Extensions)的由来

既然我们已经介绍了响应式编程,现在是时候了解我们的明星了:响应式扩展,通常简称为Rx。微软开发了Reactive扩展库,使其易于处理事件流和数据流。在某种程度上,时变值本身就是一个事件流;每个值更改都是一种类型的事件它会更新依赖…

交通地理信息系统实习教程(二)

这篇文章服务于GIS背景用户以及有志于GIS的朋友 操作源数据位置:【免费】交通地理信息系统实习二源数据资源-CSDN文库 软件安装包位置:【免费】TransCad-交通地理信息系统软件资源-CSDN文库 一、最短路径分析 1.1软件启动说明 这里需要给出一个必要的…

快来参加【顶尖赛事】LIC·2024 语言与智能技术竞赛

语言与智能技术竞赛(LIC)是由中国中文信息学会(CIPS)和中国计算机学会(CCF)联合主办,百度公司、中国中文信息学会评测工作委员会和中国计算机学会自然语言处理专委会承办的中文NLP顶级赛事&…

qt移植到imx6ull运行(qt部署到imx6ull)

这个事情对于小白来说确实不是很友好,会经常出现错误,我弄了两天终于弄好了 我主要参考了https://blog.csdn.net/m0_61738650/article/details/131269561 https://blog.csdn.net/m0_61738650/article/details/131171914这两个教程 我现在来简述一下流程…

AI+新能源充电桩数据集

需要的同学私信联系,推荐关注上面图片右下角的订阅号平台 自取下载。 随着我国新能源汽车市场的蓬勃发展,充电桩的需求量日益增加,充电桩的智能化程度不仅影响充电站运营商的经营效益,也大大影响着用户的充电体验。AI技术可以涵盖…

深入浅出:ConcurrentLinkedQueue源码分析与实战

哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一…

C++青少年简明教程:C++中的常量、变量、表达式和语句

C青少年简明教程:C中的常量、变量、表达式和语句 在C编程中,常量、变量、表达式和语句是基本的编程概念。 常量(Constants):在程序中具有固定值的数据称为常量。常量可以是字面值,如整数、浮点数、字符或…

西门子博途WINCC动画之旋转运动

概述 本例将介绍在西门子 TIA Portal HMI 中旋转运动动画的一种实现方法。本例以风机、搅拌器和传送带为例,按下启动按钮开始转动,按下停止按钮停止转动。 第1步: 添加 PLC 设备。​博途TIA/WINCC社区VX群 ​博途TIA/WINCC社区VX群 选择西…

基于SpringBoot的酒店(预约)客房管理系统的设计与实现+毕业论文

系统介绍 酒店客房管理系统为酒店管理者和用户、清洁人员提供一个在线管理酒店客房的系统。在网站的设计中,一共分为了两个模块设计,一个是前台模块,一个是后台模块,前台主要用于提供查看客房信息,酒店资讯&#xff0…

iOS MRC那句话

混编时使用MRC文件需要使用这句话 -fno-objc-arc在下图中显示的位置添加

5月13号作业

使用消息队列实现的2个终端之间的互相聊天 并使用信号控制消息队列的读取方式: 当键盘按ctrlc的时候,切换消息读取方式,一般情况为读取指定编号的消息,按ctrlc之后,指定的编号不读取,读取其他所有编号的消息…

004.可观察对象与观察者

Rx非常适合事件驱动的应用程序。这是有意义的,因为事件(作为)(如前所述)是创建时变值的命令式方法。从历史上看,事件驱动编程主要出现在客户端技术中,因为作为事件实现的用户交互。例如,你可能工作过使用OnMouseMove或OnKeyPressed事件。正因…

commvault学习(7):恢复oracle

在实际生产环境中,oracle的恢复方式大部分是异机恢复。 环境: 备份机:windows server2008,ip:192.168.20.56 恢复目标机:windows server2008,ip:192.168.20.55 CS、MA&#xff1…

acw165. 小猫爬山-DFS剪枝与优化

题目 思路 暴搜顺序:从前往后依次枚举每只小猫,枚举当前这只小猫应该放在哪一辆车上,递归完n层之后,就可以知道所有方案中的最少车辆总数剪枝的情况: 优化搜索顺序:大部分情况下,应该优先搜索分…

Java抽象类:为何它是你代码架构的基石?

目录 1、抽象类的概念 2、抽象类语法 3、抽象类特性 4、抽象类的作用 5、 完结散花 个人主页:秋风起,再归来~ 文章专栏:javaSE的修炼之路 个人格言:悟已往之不谏,知来者犹可追 克…

FPGA OSD 方案,应用于XBOX游戏机收费等领域

FPGA方案,HDMI IN接收原始HDMI 信号,HDMI OUT输出叠加字符/图片后的HDMI信号 客户应用:XBOX游戏机收费 主要特性: 1.支持多分辨率格式显示 2.支持OSD 叠加多个图层 3.支持字体大小随意配置 4.支持字体格式随意配置 5.零延时&…

GStreamer中如何自定义配置线程优先级

1.引言 如果看了gstreamer官方教程配置多线程出现编译不过的问题了,不妨进来看看这篇文章或许能解决一些编译问题。 GStreamer 本质上是多线程的,并且是完全线程安全的。大多数线程内部对应用程序是隐藏的,这应该使应用程序开发更容易。但是&…

测试项目实战--安享理财2(Jmeter接口测试)

说明: 1.访问地址: 本项目实战使用的是传智播客的安享理财项目(找了半天这个项目能免费用且能够满足测试实战需求) 前台:http://121.43.169.97:8081/ 后台:http://121.43.169.97:8082/ (点赞收藏…

机器人开发项目实现过程

比赛项目实现过程 第一步:设置远程桌面连接 登录机器人系统,设置网络,参考远程桌面连接20230525.mp4 外接显示器、鼠标和键盘 登录系统 账户:robuster 密码:123456 建议,手机开热点,机器人…

开关电源功率测试方法:输入、输出功率测试步骤

在现代电子设备中,开关电源扮演着至关重要的角色,其效率和稳定性直接影响到整个系统的性能。因此,对开关电源进行功率测试成为了电源管理的重要环节。本文将详细介绍如何使用DC-DC电源模块测试系统对开关电源的输入输出功率进行准确测量&…