从reddit/hackernews/lobsters/meetingcpp摘抄一些c++动态
本文基于OSDI-18收录的《Arachne: Core-Aware Thread Management》翻译整理而成。
最近工作中讨论到了Raft协议相关的一些问题,正好之前读过多次Raft协议的那paper,所以趁着讨论做一次总结整理。
分布式系统除了提升整个体统的性能外还有一个重要特征就是提高系统的可靠性。提供可靠性可以理解为系统中一台或多台的机器故障不会使系统不可用或者丢失数据。保证系统可靠性的关键就是多副本,一旦有多副本,那么就面临多副本之间的一致性问题
In Search of an Understandable Consensus Algorithm (Extended Version)
在文章《ONOS高可用性和可扩展性实现初探》讲到了ONOS系统架构在高可用、可扩展方面技术概况,提到了系统在分布式集群中如何保证数据的一致性。在数据最终一致性方面,ONOS采用了Gossip协议,这一部分的变化不大,而在强一致性方案的选择方面则在不断进行调整,其主要原因是分布式系统中强一致性对系统性能影响较大,而且现有的支持Paxos算法的实现不多。本文承接上一篇提出的一个问题:ONOS为什么从开始使用ZooKeeper转到Hazelcast,而最终选择了Raft?是不是之前的选择导致系统缺陷?亦或是在某些
提到大数据分析平台,不得不说Hadoop系统,Hadoop到现在也超过10年的历史了,很多东西发生了变化,版本也从0.x进化到目前的2.6版本。我把2012年后定义成后Hadoop平台时代,这不是说不用Hadoop,而是像NoSQL (Not Only SQL)那样,有其他的选型补充。 背景篇 Hadoop: 开源的数据分析平台,解决了大数据(大到一台计算机无法进行存储,一台计算机无法在要求的时间内进行处理)的可靠存储和处理。适合处理非结构化数据,包括HDFS,MapReduce基本组件。 HDFS:提供
1 SDN简介和组成部分 SDN即软件定义网络(Software Defined Network, SDN ),是emulex网络一种新型网络创新架构,是网络虚拟化的一种实现方式,其核心技术openf
作为最根深蒂固的标准之一,TCP协议有着悠久而成功的历史。但斯坦福大学教授John Ousterhout表示:“对于现代数据中心来说,TCP是一种糟糕的传输协议。”
感谢董飞先生投稿,推荐关注其知乎专栏 【董老师在硅谷 http://zhuanlan.zhihu.com/#/donglaoshi】 提到大数据分析平台,不得不说Hadoop系统,Hadoop到现在也超过10年的历史了,很多东西发生了变化,版本也从0.x进化到目前的2.6版本。我把2012年后定义成后Hadoop平台时代,这不是说不用Hadoop,而是像NoSQL (Not Only SQL)那样,有其他的选型补充。我在知乎上也写过Hadoop的一些入门文章 如何学习Hadoop - 董飞的回答,为了给大家
提到大数据分析平台,不得不说Hadoop系统,Hadoop到现在也超过10年的历史了,很多东西发生了变化,版本也从0.x进化到目前的2.6版本。我把2012年后定义成后Hadoop平台时代,这不是说不用Hadoop,而是像NoSQL (Not Only SQL)那样,有其他的选型补充。我在知乎上也写过Hadoop的一些入门文章 如何学习Hadoop - 董飞的回答,为了给大家有个铺垫,简单讲一些相关开源组件。 背景篇 Hadoop: 开源的数据分析平台,解决了大数据(大到一台计算机无法进行存储,一台计算机无
到目前为止,不管是哪门语言,应该都已经有一些raft协议的实现了。但是大家的实现也都是根据raft协议论文来的,根据自己的服务形态在细节上有一些差异而已,大体上是一样的。
第二章讲了上层抽象:数据模型和查询语言。本章下沉一些,聚焦数据库底层如何处理查询和存储。这其中,有个逻辑链条:
Raft是一种用来管理日志复制的一致性算法。一致性算法允许一组机器像一个整体一样工作,即使其中的一些机器出了错误也能正常工作。
RDD,学名可伸缩的分布式数据集(Resilient Distributed Dataset)。是一种对数据集形态的抽象,基于此抽象,使用者可以在集群中执行一系列计算,而不用将中间结果落盘。而这正是之前 MR 抽象的一个重要痛点,每一个步骤都需要落盘,使得不必要的开销很高。
Raft 是一种为了管理复制日志的一致性算法。它提供了和 Paxos 算法相同的功能和性能,但是它的算法结构和 Paxos 不同,使得 Raft 算法更加容易理解并且更容易构建实际的系统。为了提升可理解性,Raft 将一致性算法分解成了几个关键模块,例如领导人选举、日志复制和安全性。同时它通过实施一个更强的一致性来减少需要考虑的状态的数量。一项用户研究的结果表明,对于学生而言,Raft 算法比 Paxos 算法更加容易学习。Raft 算法还包括一个新的机制来允许集群成员的动态改变,它利用重叠的大多数来保证安全性。
【编者按】程序员的十年之后会怎样?恐怕很多的技术人在入行之初都曾信誓旦旦,不管是走上人生巅峰,还是单纯的对技术的热爱,坚持下去的又会有多少。本文采访的对象是大学时学习文科,后因兴趣转而征战技术圈的一名
假设系统中有 5 个节点,n1~n5。n1,n2,n3 在A物理机房。n4,n5 在 B 物理机房。现在发生了网络分区,A 机房和 B 机房网络不通。
原文标题:The Art of Balance: A RateupDB(TM) Experience of Building a CPU/GPU Hybrid Database Product
本文介绍了基于Apache Spark的分布式大数据处理框架,从RDD、DataFrame、Dataset、Streaming等组件的角度讲解了Spark的基本特性、架构和实现原理。同时,本文还通过多个实际应用案例,详细介绍了Spark在大数据处理、实时计算、机器学习和深度学习等领域的应用实践。此外,本文还讨论了Spark与其他大数据处理框架(如Hadoop、Storm等)的对比和选择。
当前业界有很多分布式一致性复制协议,比如Paxos,Zab,Viewstamped Replication等,其中Lamport提出的Paxos被认为是分布式一致性复制协议的根本,其他的一致性复制协议都是其变种。但是Paxos论文中只给出了单个提案的过程,并没有给出复制状态机中需要的MultiPaxos的相关细节描述。
感谢支持ayqy个人订阅号,每周义务推送1篇(only unique one)原创精品博文,话题包括但不限于前端、Node、Android、数学(WebGL)、语文(课外书读后感)、英语(文档翻译) 如果觉得弱水三千,一瓢太少,可以去 http://blog.ayqy.net 看个痛快
该论文来自Berkeley实验室,英文标题为:Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing。下面的翻译,我是基于博文http://shiyanjun.cn/archives/744.html翻译基础上进行优化、修改、补充注释和源码分析。如果翻译措辞或逻辑有误,欢迎批评指正。
上一章讨论了数据模型与查询语言,即向数据库给出数据时数据的格式以及数据查询的机制,其可以理解为从应用开发者的角度出发讨论了上述两件事情。本章将从「数据库」的角度来进行讨论,即如何存储给出的数据以及如何在要求查询时找到所需的数据,所介绍的存储引擎可以用于传统的关系数据库和大多数 NoSQL 数据库。
nanoPU是经过网络优化的新型CPU,旨在最大程度地减少RPC的尾部延迟。通过绕过高速缓存和内存层次结构,nanoPU直接将到达的消息放入CPU寄存器文件中。通过应用程序的线对线延迟仅为65ns,比当前的最新技术快13倍。nanoPU将关键功能从软件转移到硬件:可靠的网络传输,拥塞控制,核心选择和线程调度。它还支持独特的功能来限制高优先级应用程序遇到的尾部延迟。
随着CoreOS和Kubernetes等项目在开源社区日益火热,它们项目中都用到的etcd组件作为一个高可用强一致性的服务发现存储仓库,渐渐为开发人员所关注。在云计算时代,如何让服务快速透明地接入到计算集群中,如何让共享配置信息快速被集群中的所有机器发现,更为重要的是,如何构建这样一套高可用、安全、易于部署以及响应快速的服务集群,已经成为了迫切需要解决的问题。etcd为解决这类问题带来了福音,本文将从etcd的应用场景开始,深入解读etcd的实现方式,以供开发者们更为充分地享用etcd所带来的便利。
《In search of an Understandable Consensus Algorithm (Extended Version)》
领取专属 10元无门槛券
手把手带您无忧上云