银行传统上使用的Oracle、Db2等商业数据库,都属于集中式架构。集中式数据库安装在单台服务器上,供本地用户和远程用户访问。

01、和传统集中式数据库的区别

与集中式数据库相比,分布式数据库有以下区别。

性价比:较传统集中式数据库,性价比更高;

性能上:整体性能优于传统集中式数据库;

可靠性:集中式数据库通常选择IBM小机,IBM小机可靠性高,分布式数据库组成x86服务器集群提升可靠性;

扩展性:集中式数据库通常纵向扩展(增加CPU个数、增加内存),分布式数据库可以纵向与横向同时扩展。

02、分布式数据库特点

扩展性:能够按照需求变化进行动态伸缩,支持横向与纵向扩展。

可靠性:不存在单点,服务不会因为单点失效问题而中断,切换机制要更丰富、整体容灾能力更强,数据可靠性、服务可用性有较高质量的保障。

高性能:由多台物理服务器组成,性能与数量成正比,基本呈线性增长。

03、分布式架构的局限性

分布式数据库带来了数据去中心化、负载分摊的优势,同时也带来了某些局限性。不单需要从架构上解决,还需要通过应用和规范来解决。

(1)分布式架构带来的复杂性,比集中式数据库运维难度大。

解决方案:通过平台化运维的新思路,统一上报告警及统计信息、统一日志中心、自动化监控、自动化运维、自动化巡检等。

(2)X86服务器可靠性低。

解决方案:服务器和数据都进行冗余配置,当出现节点故障时,通过主备切换保证服务的持续可用性。

(3)应用设计复杂度高。

解决方案:设计层面需合理设置分发键、增加冗余字段、减少多表关联、尽可能减少跨节点交互。

(4)分布式事务一致性维护成本高。

解决方案:分布式依赖网络,网络问题会导致事务一致性提交时间变长,因此应用编写的SQL语句应尽可能带分发键,减少跨节点事务数量。

04、分布式数据库设计与运维需要注意的点

从集中式数据库转型到分布式数据库后,需要从以下几方面关注设计开发和运维方面带来的新问题。

1设计开发方面

设计开发方面主要涉及SQL兼容性问题、性能问题、异地一致性问题等。

(1)SQL兼容性问题。

GoldenDB完全兼容MySQL语法。但部分语句在分布式环境下执行代价过大,通过产品迭代,完善执行效率、逐步放开代价过大的SQL语句功能。

(2)性能问题。

由于数据切分到多个数据节点,涉及网络通信的交互次数和交换的数据量较多时,存在SQL语句性能慢、锁冲突、多分片访问不均匀问题,需要采取针对性的优化方案。

(3)异地数据一致性。

由于网络时延、网络带宽等问题,异地数据可能存在一致性问题。异地对外提供服务前,分布式数据库会进行业务数据一致性对齐,自动恢复到最新的一致性时间点。、

2运维方面

运维方面主要涉及用户安全问题、数据安全问题、扩展性问题等,

(1)用户安全。

分布式数据库中涉及多种用户,包括Linux操作系统用户、数据库用户,对这些用户如何进行管理是个难题。需要按照相关规范控制用户权限:。

(2)数据安全。

数据的安全问题是重中之重,从设计、部署到日常运维均需要保障。

(3)扩展性。

扩展性包括纵向扩展和横向扩展,纵向扩展增加硬件,横向扩展增加数据分片。横向扩容之后需要重分布,重分布之前规划磁盘空间,确保空间足够。

(4)运维中的性能问题。

通过监控及时发现性能问题并进行优化。

(5)监控问题。

分布式数据库组件众多,通过单一种类的监控定位问题比较困难,需要一套或者多套监控体系配合来精准定位到故障节点。

(6)巡检问题。

需要开发一键式巡检脚本,通过生成的巡检报告展示分布式数据库运行趋势,从而配合监控更早定位出问题。

(7)备份恢复问题。

对数据备份和一致性恢复要求高,目前使用NBU软件进行备份恢复。

(8)读写分离问题。

为了提升交易处理的吞吐量,将读操作分流到备机。

(9)自动化应急。

分布式数据库涉及的组件多,必须实现自动化应急,真正做到“预防为主,处置高效”。

数据库管理 │ 浅谈从集中式到分布式数据库的转型要点相关推荐

  1. 集中式和分布式架构的“伯罗奔尼撒战争”

    01 1964年,吉恩·阿姆达尔的团队耗费了50亿美金后,终于研制出了世界上第一台采用集成电路工艺的计算机IBM360. 因为IBM360的出现,吉恩·阿姆达尔被冠以商用大型机最早的"建筑师 ...

  2. 组件化、模块化、集中式、分布式、服务化、面向服务的架构、微服务架构

    组件化.模块化.集中式.分布式.服务化.面向服务的架构.微服务架构 最近最火的词是什么?那大概就是微服务(Microservice)了.最近也火的一踏糊涂的Docker.DevOps也都是围绕着微服务 ...

  3. 架构选型必读:集中式与分布式全方位优劣对比

    应用现状比较 由于历史原因,集中式架构多用于传统银行.电信等行业.主机资源集中在大型主机或小型机上.集中式架构下,包括操作系统.中间件.数据库等"基础软件" 均为闭源商用系统.集中 ...

  4. Git复习(一)之简介、安装、集中式和分布式

    简介 Git是分布式版本控制系统,使用C语言开发的,CVS.SVN是集中式的版本控制系统,集中式的版本控制系统不但速度慢,而且必须联网才能使用. Git是分布式版本控制系统,同一个Git仓库,可以 分 ...

  5. postgresql 分区视图_PostgreSQL架构集中式到分布式主流架构总结

    文章目录 一.PG未来主流架构为什么是分布式二.PostgreSQL集中式到分布式架构总结 一.PG未来主流架构为什么是分布式 如果说5年前DB的分布式还只是一种趋势,如今分布式数据库正逐渐从趋势变成 ...

  6. 集中式 vs 分布式 版本控制

    集中式 集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器.中央服务器就好比 ...

  7. 集中式还是分布式?账务类数据库架构的选型

    近年来,分布式数据库已经成为了行业中默认的主流技术方向,仿佛只要一款数据库不是分布式架构,即丧失了其技术先进性,无法承载未来业务的发展.这种观点对于"大数据"时代的海量数据需求完全 ...

  8. 集中式和分布式版本控制系统的区别

    集中式: 先说集中式版本控制系统.简单的说就是,版本库是集中的存放于中央服务器的.干活的时候,先要去中央服务器里领取最新的版本,然后在开始干活.干完活在将自己的版本上传到中央服务器. 就好比要改一本书 ...

  9. 【git】—集中式与分布式版本控制系统

    [前言] 大家都知道,Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了,之前的linux代码是由Linus本人通过手工方式合并代码,后来为了切 ...

最新文章

  1. 卡耐基梅隆大学提出新型「自适应」技术,可提高「个性化神经机器翻译」质量...
  2. 子集和的目标值(codevs 1692)
  3. P3356 火星探险问题(网络流)
  4. java 1.6u29 下载_jdk1.6 64位下载|JDK 6(Java SE Development Kit)下载6u43 64位官方版_java运行环境 IT猫扑网...
  5. mysql返回yyyy mm dd_怎么把取出mysql数据库中的yyyy-MM-dd日期转成yyyy年MM月dd日格式...
  6. python子进程kerberos_Anaconda3的python找不到kerberos凭证缓存
  7. c#拼图碎片形状_使用神经网络解决拼图游戏
  8. Can't create handler inside thread that has not called Looper.prepare()
  9. Elasticsearch--高级-映射mapping 创建---全文检索引擎ElasticSearch工作笔记017
  10. 锁, threading.local, 线程池, 生产者消费者模型
  11. ubuntu + usb转RS232驱动
  12. 丰收互联蓝牙key怎么开机_蓝牙UKEY使用说明
  13. 微信开放平台应用申请流程优化公告
  14. 更换帝国cms默认文章内容编辑器fckeditor
  15. 物料的周期单位价格突然高得离谱
  16. html图片上传java_PhoneGap 上传图片HTML和服务器端端实现(JAVA)
  17. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
  18. 百度直连+cns完美,那怎么搭建CNS配合百度直连呢
  19. 【0034】 PostgreSQL报错信息:The server must be started by the user that owns the data directory.
  20. Jmeter实现多用户压测

热门文章

  1. java西语_使用Java 8 DateTimeFormatter和西班牙语月份名称进行解析
  2. 向来痴,从此醉,先生一路走好。
  3. Java调用Zebra800条码打印机
  4. Roguelike+单机玩法游戏保护案例
  5. RPA中国流程自动化产业峰会火热报名中...
  6. 如何防止CDN防护被绕过
  7. 沃伦·巴菲特 | 成功的 10/10/10 法则
  8. 用网盘(dropbox,kuaipan,everbox)保管的git repository
  9. Ubuntu整个系统迁移到其他盘办法
  10. 做玫瑰花的方法 用纸_用纸折玫瑰花步骤图