热门文章> 数据库学习,数据库基础 >

数据库学习,数据库基础

36氪企服点评小编
2021-06-22 18:31
590次阅读

       在商业活动中,数据库是一个非常重要的环节,它经常成为商业发展的瓶颈。通常有两种方法实现高性能数据库:读写分离和分库分表。接下来,小编将介绍数据库学习,数据库基础的相关内容,一起来看看吧。

数据库学习,数据库基础数据库学习,数据库基础

1.数据库学习

分离读写的基本实现:

  • 资料库伺服器建立主从集群,一个主从集或一个主从集。
  • 主要的数据库负责读写操作,而数据库只负责读写操作。
  • 主要数据库通过复制将数据同步到各个数据库,每个服务器存储相同的数据。
  • 商业服务器向主数据库发送写操作,并向数据库发送大多数读操作。
  • 此外,我们也听说过“主备集群”,它通常只用于备份,并不涉及实际的业务。
  • 读取和写入分离的基础是相当简单的,但是需要关注两个细小的节点:主从复制延迟和分配机制。

主从复延

       实际应用过程中,我们可能经常遇到这样的情况:用户刚刚注册成功,马上就可以从数据库中读取数据时,常常无法读取数据;或者用户刚刚完成订单,马上就可以查询到订单,发现没有这个订单。

       原因在于主从复制需要一个过程,速度可能会较慢,特别是在同步处理大量数据时。

       处理主从复制延迟的一些方式:

  • 在写入操作之后的读取操作指定了主要数据库。这个方法与业务相关联,对于新加入的程序员来说,这可能是不可能的。
  • 对主数据库进行二次重新读取,读取失败时进行再次读取。这一方法与业务并无多大关系,更多的是底层处理,缺点是如果二次读取过多,将增加主数据库的压力。
  • 关键性的业务都要求使用主数据库,而非关键业务需要读取和写入。

分布机理

  • 通常情况下,读写分离的业务实现分为程序代码封装和中间件封装。

节目编码封装

  • 程式码封装是指从程式码层面抽象出一层数据存取层,以执行读写作业与资料库伺服器连结管理。我们也许会经常提及到Dao层。

这一模式的特征:

  • 它的实现非常简单,可以根据业务需要定制。
  • 每种编程语言都要执行,而且不能通用。
  • 在失败的案例中,如果所有的主从切换发生在需要修改配置和连接的业务之间。

       一般来说,建议使用成熟的开放源码方案,如MySQL官方之前提供的MySQLProxy,或MySQLRouter,现在官方推荐。其主要功能包括读写分离、故障自动切换、负载平衡、连接池等。以上就是数据库学习,数据库基础的相关内容,感谢您的阅读。

[免责声明]

文章标题: 数据库学习,数据库基础

文章内容为网站编辑整理发布,仅供学习与参考,不代表本网站赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时沟通。发送邮件至36dianping@36kr.com,我们会在3个工作日内处理。

相关文章
最新文章
查看更多
关注 36氪企服点评 公众号
打开微信扫一扫
为您推送企服点评最新内容
消息通知
咨询入驻
商务合作