Sunday, November 17, 2019, 10:04 AM
Site: Holochain DevCamp
Course: Holochain DevCamp (Holochain DevCamp)
Glossary: Holochain Glossary
M

(in the DHT) Our DHT allows people to store data (which gets hashed and then stored at the address that is the hash of the data), as well as store metadata about that the data at that hash, such as who has verified it, or what data it links to.

#### Monotonic

The idea that stored data only increases, never decreases. This means all data points are kept then aggregated (e.g. using a max function) rather than updated in place. In distributed systems, it is very hard to synchronize the removal of data, so we keep a record of the existence of the data, and mark it retracted (or expired, or flagged as invalid). A retraction is not a deletion of the original data but an addition of new data that asserts the old data is outdated.

#### Multi-party Transaction

A transaction which involves multiple different agents, and must be countersigned by all parties to each of their source chains before propagation on the shared DHT.
N

#### Neighborhood

Each holochain network has a configured redundancy. Each entry is copied this many times to different nodes maintaining the DHT. Each entry is sent to the nodes with the hashes most similar to the entry's own hash. This forms a "neighbourhood" for the nodes around that entry. The size of the neighbourhoods is the redundancy of the network. Nodes in a neighborhood "gossip" to each other to track participation in the storage of the entry and to make sure their neighbors haven't gone rogue. If a node drops or cannot produce the entry when requested then it is replaced in the network by the node with the next most similar node ID to the entry hash. (See Immune System)

#### Node

A node is a machine participating in the DHT peer-to-peer communications involved in sharing and validating data.

#### Node ID

The address of a node in the DHT.

#### Nucleus

The Application Container for executing the instructions in the DNA of the Holochain application. The DNA is split in "Zomes" (i.e. chromosome) that may be written in different programming languages. The Nucleus contains language specific "Ribosomes" that provide a virtual machine for executing the DNA code.
P

#### P2P

Peer-to-Peer: An approach to distributed system development where every peer is an equal to other peers and they coordinate in that manner. (see Distributed)

#### P3

Protocol for Pluggable Protocols - Ceptr's self-describing protocols stack which enables interoperability between holochain networks.

#### PACELC theorem

An extended form of CAP theorem to include latency even when there are no network partitions. Reads like "if Partition then Availability or Consistency else Latency or Consistency". (see CAP theorem).