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

背景

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

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

安装以后带来的效果

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

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

思考

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

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

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

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

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

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

image.png

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

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

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

架构

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

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

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

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

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

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

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

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

相关文章

【异常处理】(中北大学-程序设计基础(2))

目录 题目 源码 结果示例 题目 求一元二次方程式ax^2bxc0的实根&#xff0c;如果方程没有实根&#xff0c;则输入有关警告信息。要求&#xff1a;建立一元二次方程类&#xff0c;利用异常技术处理。 源码 #include <iostream> #include <cmath>using namespa…

iOS MRC那句话

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

【Android Studio】开启真机调试

1 打开手机的开发者模式 各种款式的手机进入开发者模式的情况不同&#xff0c;但大致是在 【关于手机】中多次点击系统版本即可进入。这里以小米8为例&#xff0c;记录下流程。 1.1 进入手机开发者模式 【设置】->【我的设备】->【全部参数】->【MIUI版本】连续点击3…

防火请技术基础篇:令牌桶机制的剖析与应用

防火墙中的令牌桶机制&#xff1a;深度剖析与应用 在现代网络通信中&#xff0c;防火墙技术发挥着至关重要的作用&#xff0c;它不仅能够实现网络安全防御&#xff0c;还能通过诸如令牌桶算法等机制来有效管理网络流量&#xff0c;保证网络服务的质量。本文将全面深入地探讨防…

[猫头虎分享21天微信小程序基础入门教程]第8天:发布与审核流程

第8天&#xff1a;发布与审核流程 &#x1f680; 自我介绍 大家好&#xff0c;我是猫头虎&#xff0c;一名全栈软件工程师。今天我们将继续微信小程序的学习&#xff0c;重点了解如何将开发完成的小程序提交审核并发布上线。这是小程序从开发到用户使用的关键步骤。&#x1f…

通过EXCEL控制PLC启停电机的一种方法

概述 本例将介绍用微软EXCEL电子表格控制西门子S7-1200 PLC实现电机启停的一种方法。 第1步&#xff1a; 添加PLC设备&#xff0c;选择西门子S7-1214C CPU&#xff0c;设置IP地址&#xff1a;192.168.18.18&#xff0c;子网掩码&#xff1a;255.255.255.0。 第2步&#xff1a…

【新手入门】Github与Git使用教程

Github与Git 一、Github基础教程 1.1 基本操作 点击代码文件可以直接查看文件的内容&#xff0c;支持在线修改文件&#xff0c;只需要点击(文件内容)右上角的编辑按钮即可进行编辑。 README.md一般介绍项目的功能&#xff0c;用法&#xff0c;注意事项&#xff1b;有时还有…

冥想的时候怎么专注自己

冥想的时候怎么专注自己&#xff1f;我国传统的打坐养生功法&#xff0c;实际最早可追溯到五千年前的黄帝时代。   每天投资两个半小时的打坐&#xff0c;有上千年之久的功效。因为当你们打坐进入永恒时&#xff0c;时间停止了。这不只是两个半小时&#xff0c;而是百千万亿年…

synchronized 使用及实现原理

synchronized 关键字 如何使用 synchronized 关键字的使用方式主要有下面 3 种&#xff1a; 修饰实例方法 修饰静态方法 修饰代码块 1、修饰实例方法 &#xff08;锁当前对象实例&#xff09; 给当前对象实例加锁&#xff0c;进入同步代码前要获得 当前对象实例的锁 。 …

网络库-libcurl介绍

1.简介 libcurl 是一个功能强大的库&#xff0c;支持多种协议&#xff0c;用于数据传输。它广泛应用于实现网络操作&#xff0c;如HTTP、HTTPS、FTP、FTPS、SCP、SFTP等。libcurl 提供了丰富的 API&#xff0c;可以在多种编程语言中使用。 libcurl 主要特点 支持多种协议&am…

RuoYi-Vue-Plus (SpringCache、CacheManager、@Cacheable、缓存雪崩、击穿、穿透)

一、概述 1、SpringCache是Spring提供的一个缓存框架&#xff0c;在Spring3.1版本开始支持将缓存添加到现有的spring应用程序中&#xff0c;在4.1开始&#xff0c;缓存已支持JSR-107注释和更多自定义的选项。 2、SpringCache利用了AOP&#xff0c;实现了基于注解的缓存功能&…

质量保障之精准测试!

一、背景与概念 随着软件测试行业的长足发展&#xff0c;测试理念、技术都在发生着日新月异的变化。因此一套完整的自动化测试用例对于每个软件公司都是不可或缺的&#xff0c;然而虽然有如此规模宏大的自动化案例集资源投入&#xff0c;同时也有大量人力的投入&#xff0c;但…