问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何编写一个分布式数据库

发布网友 发布时间:2022-04-24 06:02

我来回答

2个回答

热心网友 时间:2022-04-27 00:48

某种程度上看来,数据库作为整个系统的核心,这句话其实并不夸张,数据库的选型关系到上层业务代码实现的方方面面,现在比较流行的架构方案是上层业务逻辑微服务化,并且结合分布式缓存,这套框架已经基本能做到上层业务的弹性扩展,但是最底层的数据存储还是很难去中心化(除非整个技术栈中去除关系型数据库(RDBMS), 全部采用 NoSQL)。所以,经常是 RDBMS 成为整个系统的瓶颈。
在长期的斗争中,大家总结出了很多方式来扩展最底层的关系型数据库:
1. 主从,一主多从,双写,通过队列暂存请求... 这些方案其实并没有解决问题,写入仍然是单点,而且对于 DBA 的挑战比较大,今天我们暂时就不讨论了。
2. 通过中间件 Sharding,常见的开源方案有: Cobar, TDDL, Vitess, Kingshard, MyCat 等,这些方案的思路是拦截 SQL 的请求通过 sharding key 和一定规则,将请求转发/广播到不同的 MySQL 实例上,从而实现水平扩展的效果,这个方案基本解决了单点写入的问题,对于业务来说整体的吞吐也上来了,看上去不错,这个方案是大多数业务遇到性能瓶颈的解决方案,但是缺点也是有的:
1)大多中间件都没有解决动态扩容的问题,多采用了静态的路由策略,扩容一般还处于人工 x2 的状态,对 DBA 要求比较高。
2)从一定程度上来说都放弃了事务,这是由于一条语句有可能会涉及到多个数据库实例,实现分布式 事务是一个比较难的事情,我们后面会详细的介绍。
3)对业务不透明,需要指定 sharding key, 心智负担较大

热心网友 时间:2022-04-27 02:06

连consistency都要考虑就不能算轻量级了

真的叫轻量级 先满足能读能写吧 其它balance concurrency recovery replication都不考虑

读:谁管理meta data 谁存储exact data 如何利用meta data定位到slave 获取data后如何返回

写:写在哪个slave 如何更新meta

够简单吧 然而够你练了

涉及
架构设计 主从还是点到点
角色服务设计 主负责什么 从负责什么(主从模式的话)
数据存储模型(memory和disk的合理使用和管理
集群沟通和协调(coordination
机器间的数据传输(rpc

嫌少?加replication好了 如何不影响正常读写的情况下 asyn更新到各台机器
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
女生多大后可以不在长身高? 如何不用软件把手机投屏到电脑上手机屏幕怎样投放到电脑上 战时拒绝、故意延误军事订货罪既遂的处罚? 战时故意延误军事订货罪处罚标准 名师1+1导读方案:汤姆·索亚历险记目录 三星sm-g7200打开微信慢,无法正常收看,网速不慢。 笔记本电脑如何调亮屏幕亮度 大伙说说洗衣机要不要带烘干好 热烘干洗衣机怎么样 ef英语哪个好 黑芝麻为什么吃起来是苦的 目前主流的分布式数据库系统实现方案有哪些 降压药副作用和依赖性有什么? 炒熟的黑芝麻,有点苦正常吗 长期使用降压药物,会引起哪些问题? 我买的汇强满意的黑芝麻,为什么生吃起来有点苦苦涩涩的,正常吗?这芝麻... 芝麻炒熟后吃有点苦能吃吗 黑芝麻为什么细嚼会发苦? 吃了黑芝麻舌头会苦什么原因? 黑芝麻炒熟为什么有苦味? 买的黑芝麻嚼着吃到最后有点苦味?正常吗?还能继续吃吗 面试中的自我介绍! 初一要进学生会学习部面试的时候要自我介绍,说什么好 初一自我介绍,对学生会的认识,你想怎么做 初中面试 自我介绍要写一写什么 小升初入学面试自我介绍!! 初一简单自我介绍? 不以为然的意思 鸡蛋羹的做法是什么? 不以为然的然意思是 常用降压药有哪些?副作用? mysql如何实现分布式数据库 高血压患者吃地平类降压药,有哪些常见副作用? 数据库分布式的实现过程是什么 长期吃降压药有什么副作用 php mysql分布式数据库如何实现 降压药的副作用 降压药大类类?都有哪些副作用? 如何用ORACLE 11g实现分布式数据库 分布式数据库是做什么的? 如何设计一个分布式数据库? 用java如何实现 B/S的分布式数据库 分布式数据库系统的数据分布方式有哪些 有哪些分布式数据库,实现最终一致性的 什么是分布式数据库,有什么特点 梦到抓了一条遍体鳞伤的大鱼然后给放了 梦见抓鱼抓挺多鱼,抓到一条黑白相间的大鱼受伤了我把它放生了抓到两次都放了是什么蕴意啊? 梦见自己钓到鱼,但是鱼不是很大,又放生了是什么意思 梦见钓到一条大鱼因为种种原因放生,最后它救了我一命,预示着什么 梦见钓到大鱼放生大鱼表示感谢 让大鱼游走 大鱼还翻跟头表示谢谢我