什么是因果集群?
因果集群是下一代多站点复制技术。它支持数据中心的分布式系统集群模型。借助于因果集群技术,可以让远程工作团队成员体验到更卓越的性能和更健壮的复制功能,确保您的团队始终以高效状态工作。

因果集群的特性
因果集群并不新鲜。但对于采用这种技术的半导体公司来说,却有着很大的益处。安全通过应用因果集群,可保证核心服务器始终可用,它们为事务处理提供了一个容错的平台,这样可以使您的团队可以在多数核心服务器正常运行的情况下保持高效工作状态。规模因果集群的主要特征之一是处理本地和并发写入的能力。举例来讲,在以前的HA拓扑中,如果您身在印度,而您的数据中心却在美国,则首先需要将印度的数据转发至美国的数据中心,之后数据必须在同步回印度之后才可用,这种操作模式非常费时费力。相比之下,使用因果集群,因为它是本地写入的,服务器主动拉取数据,而无需等待推送数据,所以这种操作模式可以大大节省团队工作时间,使更改立即可用。一致性如果发生网络或服务器中断,复制服务器至少可以保证本地提交的数据可用。在核心服务器恢复并正常运行之前,团队可能无法提交,但团队依然可以保持高效工作状态。因为因果集群采用选举式方法(稍后会作详细介绍),所以不存在分裂集群。这意味着您永远不会遇到需要协调相同数据的两个不同版本的“脑裂”的情况。除了这些特性,因果集群还实现了一个带有内置负载平衡的简单架构。你可以根据需要设置集群。对混合拓扑结构和匹配的拓扑结构的配置更简便快捷,也更易于维护。当需要升级时,因果集群允许您实施滚动更新操作。这消除了不必要的停机时间,让您的团队保持高效。

因果集群对设计工程师的益处
设计工程师是半导体公司最宝贵的资产之一。借助因果集群,他们可以获得更好的性能。通过本地写入数据,可以使团队保持高效工作状态,团队可以读取自己的写入数据,并且不存在分裂集群问题。因果集群还有助于提高服务可用性。服务器不仅能够在升级期间保持正常运行,而且在出现问题时,也可以用最少的停机等待时间进行恢复。由于具备更好的事务级检测工具,团队可以更加高效快捷地解决潜在的错误和问题。

因果集群操作
因果集群是如何运行的呢?主要还是配备了核心服务器,该类核心服务器可以被视作是其它高可用(HA)模型中的master角色。核心服务器按照Raft协议的标准进行复制,这确保了数据在事务提交前的安全性和持久性。最小的集群需要包含至少3个核心服务器(Core servers)。这些核心服务器协同工作进行投票和确认事务提交(N/2 +1)。只读副本有助于从核心向外扩展工作负载能力。它们就像数据缓存一样,可以执行只读查询和过程。只读副本(replicas)从核心服务器异步同步数据,他们周期性的查询上游服务器获得新提交的事务。大量的只读副本可以从少量的核心服务器来获取数据。从而提高集群的吞吐能力。

使用因果集群改进多站点复制
因果集群是公司的游戏规则改变者。如果您想为您的组织实施此功能,您需要确保您的工具可以扩展并支持它。Methodics IPLM具有高度可扩展性,以支持大团队和分布式开发而闻名。同时也是唯一内置支持因果集群的商业化平台。Methodics IPLM受到10家TOP半导体公司中9家的信任,这对于确保设计团队高效工作具有很大的助益,同时也能保持可追溯性和IP安全性。如欲了解Methodics如何帮助您实施因果集群技术并简化您的设计过程,请联系龙智,以了解Methodics IPLM如何为您的业务带来益处。 作者简介:

西蒙·巴特勒(Simon Butler)

西蒙·巴特勒(Simon Butler)是Methodics公司的创始人兼首席执行官,该公司于2020年被Perforce收购,目前西蒙担任Perforce Methodics业务部门的总经理一职。Methodics将IPLM创建为企业软件领域的一个新业务部门,从而能够满足IP和基于组件的设计需求。西蒙拥有30年的IC设计经验和EDA工具开发经验,擅长领域包括制定产品策略和设计新产品。

半导体行业如何保持高效远程办公?因果集群(Causal Clustering)了解一下!的更多相关文章

  1. Neo4j 因果集群搭建及neo4j-java-driver连接

    搭建Neo4j因果集群 1.下载企业版,当前是3,5,9版本 https://neo4j.com/download-center/#enterprise 2.配置,三个核心集群为例 配置文件,conf ...

  2. Etcd学习(二)集群搭建Clustering

    1.单个etcd节点(测试开发用) 之前我一直开发测试一直是用的一个Etcd节点,然后启动命令一直都是直接打一个etcd(我已经将etcd安装目录的bin目录加入到PATH环 境变量中),然后启动信息 ...

  3. Confluence 6 数据库表-集群(Clustering)

    下面的表格包含了 Confluence 站点使用集群的信息. clustersafety 在通常的情况下,这个表格只有一条记录. safetynumber 的值是 Confluence 被用来如何找到 ...

  4. 基于开源软件构建高性能集群NAS系统,包括负载均衡(刘爱贵)

    大数据时代的到来已经不可阻挡,面对数据的爆炸式增长,尤其是半结构化数据和非结构化数据,NoSQL存储系统和分布式文件系统成为了技术浪潮,得到了长足的发展.非结构化数据目前呈现更加快速的增长趋势,IDC ...

  5. Percona 开始尝试基于Ceph做上层感知的分布式 MySQL 集群,使用 Ceph 提供的快照,备份和 HA 功能来解决分布式数据库的底层存储问题

    本文由 Ceph 中国社区 -QiYu 翻译 英文出处:Using Ceph with MySQL 欢迎加入CCTG Over the last year, the Ceph world drew m ...

  6. MongoDB 高可用集群架构简介

    在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写.海量数据高效存储.高可扩展性和高可用性这些难题.不过就是因为这些问题Nosql诞生了. 转载自严澜的博文——<如何搭建高效的 ...

  7. kubernetes (一)使用Rancher搭建集群

    目录 如何快速高效部署K8s集群 Rancher是什么 为什么是Rancher 1.0.安装Rancher 1.1.环境 1.2.选择Rancher版本 1.3.拉取镜像 2.0.容器启动高级选项 2 ...

  8. neo4j企业版集群搭建

    一.HA高可用集群搭建 版本采用的是neo4j-enterprise-3.5.3-unix.tar.gz 1.1.集群ip规划 192.168.56.10 neo4j-node1 192.168.56 ...

  9. k8s学习-集群调度

    4.7.集群调度 4.7.1.说明 简介 Scheduler 是 kubernetes 的调度器,主要的任务是把定义的 pod 分配到集群的节点上.听起来非常简单,但有很多要考虑的问题: 公平:如何保 ...

随机推荐

  1. 什么是 CSRF 攻击?

    CSRF 代表跨站请求伪造.这是一种攻击,迫使最终用户在当前通过身份验证的 Web 应用程序上执行不需要的操作.CSRF 攻击专门针对状态改变请求,而不是 数据窃取,因为攻击者无法查看对伪造请求的响应 ...

  2. vmware克隆Centos虚拟机网卡无法启动问题

    快速处理办法: cat /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i '/UUID/d' /etc/sysconfig/network-script ...

  3. 学习saltstack (一)

    salt介绍 Salt是一个基础平台管理工具 Salt是一个配置管理系统,能够维护预定义状态的远程节点 Salt是一个分布式远程执行系统,用来在远程节点上执行命令和查询数据 salt的核心功能 是命令 ...

  4. AutoValue —— Generated immutable value classes

    本文参考 在<Effective Java>第三版第十条"Obey the general contract when overriding equals"中提到goo ...

  5. CollectionUtils工具类之并集union(arr1,arr2)和差集subtract(arr1,arr2)

    一.CollectionUtils工具类之并集union(arr1,arr2)和差集subtract(arr1,arr2) 采用的类: import org.apache.commons.collec ...

  6. 设计模式之简单工厂SimpleFactory的实现

    internal interface Chart { void Display(); } internal class LineChart : Chart { public LineChart() { ...

  7. SimpleDateForma求日期,2008-11月第6周星期日是几号?

    题目4: 巧妙利用SimpleDateFormat根据各种信息求日期.2008-11月第6周的星期日是几号? import java.text.ParseException;import java.t ...

  8. java中final变量的用法

    4.4 final变量    final变量的数值不能在初始化之后进行改变(你希望a=3,有很多用到a的场合, 你当然不能在程序中就用3来代替a). 比如: final int h = 0; 想像有一 ...

  9. oracle查询出现科学计数法问题

  10. 使用element UI el-upload组件实现视频文件上传及上传进度显示方法总结

    实现效果: 上传中: 上传完成: 代码: <el-form-item label="视频上传" prop="Video"> <!-- acti ...