述职
心态很重要,我们常说自己是个研发,做研发不能只把自己当作需求翻译师,将 PRD 或设计稿变为用户可用的功能,完成这只完成了开发的部分,研究的部分还需要思考如何作深作广,不断的打磨出好的产品,探究问题的本质和找到适合的方案。
主动的业务思考指的是主动产出新的业务点子,有大致的产品方案,包括背景、价值、可行性分析、长期规划等。然后通过积极与产品经理充分沟通,相互碰撞想法,最终由产品经理或者技术同学产出完整的产品方案。最终,再由技术同学推动落地。
那么业务sense 就是首先就是你对这个行业,当下做的事情前因后果脉络有一个清晰的认知理解,从了解、吸收业务现状,提炼业务痛点和方向,进而推导出为什么会制定这样的业务策略,在这个策略下,核心的几个点分别是什么。2022年6月22日
从技术角度来看,分布式数据库解决方案大致可以分为两大类,即分布式数据库中间件和原生分布式数据库。分布式数据库中间件是架构在多个传统单点数据库系统上的中间层解决方案,通过将数据分拆到不同的数据库节点上,利用中间件来管理和访问各个数据库中的数据,通常需要用户参与到数据分拆和节点管理过程中。互联网行业最初所使用的分布式数据库方案多是基于中间件的,在解决服务压力问题上也取得了较好的效果,但同时也暴露出不少问题。原生分布式数据库是指从架构设计、底层存储和查询处理均面向分布式数据管理需求,数据库集群作为一个整体对外提供服务,用户无需关注集群内部的实现细节。由于原生数据库系统开发的难度大,最初的版本通常功能简单,限制了其应用的场景。随着版本的不断成熟,原生分布式数据库已经展现出了取代分布式数据库中间件的趋势。
在分布式数据库中,主要有三类解决方案,一类是以中间件+单机数据库为主的分布式数据库,下层的单机数据库提供存储和执行能力,在多个单机数据库上封装一层中间层,以统一分片规则管理及处理分布在不同数据库节点的数据,并提供SQL解析,请求转发和结果合并的能力;第二类是原生分布式数据库,在架构设计之初,便根据分布式一致性协议做底层设计,因此,数据的存储、查询、处理都天然具备分布式特性,各数据节点提供对等的读写服务,组成统一的集群对外提供服务;第三类是通过构建分布式共享存储实现扩展,采用非对称计算节点,大部分公有云数据库都属于此类。在本文中,我们重点说说前两类。
分库分表中间件由于本身不具备分布式的能力,进行数据迁移时需要对业务做改造。才能使数据库正常运行。而且,由于每张表只能有一个分片规则,业务建模需要重新规划,业务代码也要相应修改,改造成本高。
原生分布式数据库和云原生数据库的区别
云原生数据库天然生长在云环境中,而且都是分布式的。云原生数据库有两种分布式的方式,一种方式是计算存储分离,例如,计算部分采用集中式数据库,存储采用远程的、分布式的文件系统。另一种方式是,计算与存储都采用分布式。
而原生分布式数据库既可以部署在本地或私有云,也可以部署在公有云上。比如OceanBase,除了支持计算存储分离的分布式之外,它还支持计算系统的分布式扩展,提升系统的处理能力。当它被部署到云上,就成为了云原生分布式数据库,提供与本地相同的用户体验。
此外,原生分布式数据库部署灵活的特性意味着不被特定硬件和服务绑定,能够做到机房部署、任意公有云部署,甚至集群内跨多基础设施的混合云或多云部署,被称为“多云原生”。
https://juejin.cn/post/7136010112413958175
https://www.51cto.com/article/640113.html
https://www.infoq.cn/article/4ikomuqk89u0gxgnl3xn