分散式资料库:分散式策略

  • 资料分片(Sharding)
    选择适当的架构才能确保可用性及运行效能。
    • 评量要素
      • 均匀分布
      • 组态设定
      • 路由规则
      • 弹性伸缩(Auto Scaling)
      • 迁移成本
    • 分片策略
      • 余数杂凑(Modular Hashing)
        只需节点数量及杂凑参数即可计算分片,当节点数量异动时,会需要付出资料迁移成本。
      • 一致性杂凑(Consistent Hashing):Apache Cassandra
        利用一致性杂凑环(Consistent Hashing Ring)解决节点数量移动时的资料迁移成本问题,利用邻近节点储存资料及分享资料流辆却可能会牺牲了负载平衡,利用虚拟节点解决了负载平衡问题。
      • 连续区域:BigTable
        有相邻关系的资料会被分配到同一节点,适合需要大范围查询资料容易会有 TableScan 产生的情况,有效减少因节点数量异动造成的资料迁移成本问题。
  • 资料复本
    主要还是在客户资料请求前将资料库(主、从、节点)内容更新到一致。
    • 非同步复制
      资料操作请求传输到特定节点後即刻回应,後续利用日志将资料操作更新到其他资料库复本,满足 Read After Write 最终一致性。
    • 同步复制:
      资料操作请求传输到特定节点後,会转发所有节点等待处理完成才回应,容易有明显的延迟问题。

<<:  Data layer implementation (1)

>>:  DAY7-EXCEL统计分析:统计学是什麽?

Day 12 - 用 canvas 复刻 小画家 文字填写

说明 ctx.font = "30px sans-serif" //文字字型 大...

如何申请免费 Let’s Encrypt SSL 自动更新凭证,自架 IIS 站台适用

Https 连线网页使用 SSL 加密凭证可以让使用者在网页输入的资料更加安全,减少被截取内容的风险...

Day 26 「一个巨星的诞生」Entity、Repository 与单元测试

通常一个活动,最後登场的都是主角吧?理应如此,笔者记得有一年的金马奖颁奖典礼,主办单位不知道哪根筋打...

[26] 用 python 刷 Leetcode: 150 evaluate reverse polish notatio

原始题目 Evaluate the value of an arithmetic expressio...

Day29 Mixin

当元件之间共用方法时就可以使用组件,所有元件的选项都可以使用,当使用mixin时,mixin中的选将...