加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

一文讲透应用层数据库架构选型及设计

发布时间:2020-05-15 13:37:11 所属栏目:业界 来源:站长网
导读:副标题#e# 在市场变化充满了越来越多不确定性的今天,企业的每一个决策更要做到行之有据、掷地有声。而数据由于能够延伸企业观感、赋予企业洞察,已经被视为当今时代新的生产要素。如果不能掌握和利用好数据,企业就没有灵魂。在这其中,数据库一般担当着数

第二层的关键词是一致性。一方面,要保证数据库主库和从库之间的一致性;另一方面,还要保证数据库与上层缓存节点的一致性。这个问题要视业务对数据的可用性要求,以及对读写性能的要求级别的不同情况来看。比如说,业务对数据读取要求不高,可以通过强制读主库来保障一致性;如果是一个“写少读多”的业务,就可以做读写分离,选择性地配置半同步复制或强同步复制;而如果是读写要求都非常高的业务,还可以从架构入手,比如在MySQL上架一个Redis,根据具体情况灵活采用选择性读库方案,既保证性能同时确保一致性。

第三层是不可或缺的安全性保障。崔剑表示,数据库的安全分为几个层次:首先是在用户使用数据库外围时把风险挡在外面,主要办法是做好用户权限分离;其二,是在SQL层通过防火墙以及数据库审计等核心引擎提高整体安全能力;其三,是在数据层通过完善的备份和数据加密方案,防止数据丢失和数据被盗。

第四层是可扩展性。不同的数据库产品有不同的扩展方式,比如MySQL可以在数据量达到一定规模后做合理的数据分区、分表和分库;比如MongoDB则可以进行分片,甚至是横向扩充分片。

第五层是性能。对此,崔剑认为,性能的提升可以分操作来看。通常来说,要提高查询速度可以建索引,要提升读操作性能可以通过流量负载均衡实现读流量的定量分配管理,要提升写操作可以对主库进行分布化从而分散写流量压力。与此同时,对于复杂的业务场景,企业还可以一步步通过复合的办法实现整体性能的最大化。

再往上,还有非常关键的一层,就是体验。这方面主要体现在数据库的运维过程中,譬如,通过上面提到的人工智能技术就可以帮助技术团队完成简单的开发和运维,以及数据同步、数据备份等工作,从而释放企业更多的人力。

“总的来说,企业设计自己的数据库架构需要结合业务的复杂程度来进行。对于相对简单的业务,通常可以选择标准化的方案,而对于复杂的业务,就需要我们基于场景梳理,根据‘金字塔’架构逐层进行方案设计。”崔剑总结说。

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读