distributed-system

Set up of Hyperledger fabric on 2 different PCs

折月煮酒 提交于 2019-12-06 10:03:29
I need to run Hyperledger-Fabric instances on 4 different machines PC-1 should contain CA and peers of ORG-1 in containers, Pc-2 should contain CA and peers of ORG-2, PC-3 should contain orderer(solo) and PC-4 should Node api Is my approach missing something ? if not how can I achieve this? I would recommend that you look at the Ansible driver in Hyperledger Cello project to manage deployment across multiple hosts/vms. In short, you need to establish network visibility across the set of host/vm nodes such that the peer knows about the orderer to which it will connect and so that gossip can

Understanding Gossip protocol

跟風遠走 提交于 2019-12-06 05:32:57
问题 I'm reading akka cluster documentation and now I'm at the Gossip section. I did not understand the following statement: Cluster membership is communicated using a Gossip Protocol, where the current state of the cluster is gossiped randomly through the cluster, with preference to members that have not seen the latest version . It is pretty hard to imagine. I have the following question: Question : how does a node know which members have not seen the latest change if the latest change is still

PBFT: Why cant the replicas perform the request after 2/3 have prepared? why do we need commit phase?

时间秒杀一切 提交于 2019-12-04 17:38:30
I know there are some questions on this website that asks the same questions. However the answer is never clear: In PBFT, why cant the replicas execute the requests after 2/3s have prepared? why is commit phase needed? if 2/3 + 1 replica have agreed to prepared, then I owuld think they can execute the request without broadcasting again? (Edited) In addition to previous (incomplete) answer, a quote from from Practical Byzantine Fault Tolerance and Proactive Recovery might help. Note that author claims that Prepare phase is enough for ordering requests in same view, but it is not enough for

Understanding Gossip protocol

∥☆過路亽.° 提交于 2019-12-04 10:41:41
I'm reading akka cluster documentation and now I'm at the Gossip section. I did not understand the following statement: Cluster membership is communicated using a Gossip Protocol, where the current state of the cluster is gossiped randomly through the cluster, with preference to members that have not seen the latest version . It is pretty hard to imagine. I have the following question: Question : how does a node know which members have not seen the latest change if the latest change is still gossiped. I mean, if a node received a notification how it decide where to send it? Obviously, it

What's the difference between ZooKeeper and any distributed Key-Value stores?

喜欢而已 提交于 2019-12-04 02:37:38
I am new to zookeeper and distributed systems, and am learning it myself. From what I understand for now, it seems that ZooKeeper is simply a key-value store whose keys are paths and values are strings, which is nothing different from, say, Redis. (And apparently we can use slash-separated path as keys in redis as well.) So my question is, what is the essential difference between ZooKeeper and other distributed KV store? Why is ZooKeeper using so called "paths" as keys, instead of simple strings? kuujo You're comparing the high level data model of ZooKeeper to other key value stores, but that

Error handling in hadoop map reduce

旧时模样 提交于 2019-12-03 21:20:14
Based on the documentation, there are a few ways, how the error handling is performed in map reduce. Below are the few: a. Custom counters using enum - increment for every failed record. b. Log error and analyze later. Counters give the number of failed records. However to get the identifier of the failed record(may be its unique key), and details of the exception occurred, node on which the error occurred - we need to perform centralized log analysis and there are many nodes running. Logstash is on which is available. Apart from these, are there any other ways to handle the error scenarios,

Why doesn't Hadoop file system support random I/O?

天涯浪子 提交于 2019-12-03 20:26:25
The distributed file systems which like Google File System and Hadoop doesn't support random I/O. (It can't modify the file which were written before. Only writing and appending is possible.) Why did they design file system like this? What are the important advantages of the design? P.S I know Hadoop will support modifing the data which were written. But they said, it's performance will very not good. Why? Hadoop distributes and replicates files. Since the files are replicated, any write operation is going to have to find each replicated section across the network and update the file. This

Are PHP sessions hard to scale across a distributed system?

筅森魡賤 提交于 2019-12-03 12:19:32
At work we do almost everything in Java and perl, but I wanted to build out a feature using PHP and sessions. Some peeps thought that it was a bad idea to try to do PHP sessions on our system, cause it's distributed to many servers. What would the specific problem be? The answer to your specific question, what would the problem be, lies in the fact that by default PHP stores its sessions in files on the filesystem. For a single webserver serving requests, this is not a problem because your session data will always be available. But what if you had two load-balanced webservers serving requests?

Why isn't RDBMS Partition Tolerant in CAP Theorem and why is it Available?

余生长醉 提交于 2019-12-03 09:28:53
问题 Two points I don’t understand about RDBMS being CA in CAP Theorem : 1) It says RDBMS is not Partition Tolerant but how is RDBMS any less Partition Tolerant than other technologies like MongoDB or Cassandra? Is there a RDBMS setup where we give up CA to make it AP or CP? 2) How is it CAP-Available? Is it through master-slave setup? As in when the master dies, slave takes over writes? I’m a novice at DB architecture and CAP theorem so please bear with me. 回答1: A lot of databases now actually

Leader election for paxos-based replicated key value store

雨燕双飞 提交于 2019-12-03 08:29:48
I am going to implement a key value store with multi Paxos. I would have several nodes, one of which is the primary node. This primary node receive update requests and replicate values to slave nodes. My question is how the primary node (or leader) is selected? Can I still use the Paxos algorithm? If so, do you think it is necessary to abstract the paxos implementation to a single unit that could be used not only by the replication unit but also the leader election unit? If I use the node with the least id to be the leader? How can I implement the master lease? Thanks for any answers. Before I