3

I have problems understanding the utility of gossip protocol in Apache Cassandra (Why Cassandra use gossip protocol as a P2P communication protocol?)?

Given that Apache cassandra use gossip protocol, for wich reasons? is it just to exchange nodes states in cluster to find if a node is UP or DOWN? or it's used too to exchange node information like memory usage & disk capacity?

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
iThabet
  • 43
  • 1
  • 4
  • 1
    I answered something similar here: http://stackoverflow.com/questions/27077701/how-cassandra-select-the-node-to-send-request/ – Aaron Mar 13 '15 at 18:53
  • thank you, i want to know if it's possible to use gossip protocol in Cassandra to get node information (like memory usage). i know that i can get those information by using: ./nodetool info – iThabet Mar 13 '15 at 20:40
  • I'm not sure, but you might want to read through this doc on the Gossip Architecture: http://wiki.apache.org/cassandra/ArchitectureGossip It might have what you're looking for. – Aaron Mar 13 '15 at 20:47

2 Answers2

5

Gossip is used to broadcast members' state around the cluster. Part of the information exchanged:

  • status
  • health
  • tokens
  • schema version
  • addresses
  • data size

Note: there might be other details that I have missed. Another resource that you can consult is https://wiki.apache.org/cassandra/ArchitectureGossip

Alex Popescu
  • 3,982
  • 18
  • 20
0

The Gossip protocol is the internal communication technique for nodes in a cluster to talk to each other. Gossip is an efficient, lightweight, reliable inter-nodal broadcast protocol for diffusing data. It's decentralized, "epidemic", fault tolerant and a peer-to-peer communication protocol. Cassandra uses gossiping for peer discovery and metadata propagation.