Glossary
Get familiar with common words and phrases in web3, databases, and Tableland.
Tableland sits in a unique place in that it is web3-native but also brings traditional databases concepts. If you're new to either of those realms, there are certain terms that may be unfamiliar, and if not, it's still probably helpful to review this taxonomy. It highlights and describes the nomenclature used throughout the protocol itself.
A
ACL
An Access Control List (ACL) provides permissions associated with an object. In Tableland, it is how table mutations are gated where only those who meet the access rules can change the representation of data.
Account
An account is a representation of a web3 identity. It can be either a smart contract or an actual user and is the means to interact with a blockchain. Namely, to send a transaction, it must be sent from some account that holds a balance.
Address
For every account, there is an address that uniquely identifies it with a hexadecimal number (0x
prefixed with 40 characters comprised of 0-9
and a-f
). It's the public key of an account and can be used to, for example, openly send tokens in a transaction to something that resembles 0x70997970C51812dc3A010C7d01b50e0d17dc79C8
.
B
Block
A block is a batch of transactions ordered and grouped together, which then are accepted by the network as a whole. Once accepted, the global state of the chain is updated. Every chain's block times are different, but generally every few seconds, a new block gets "finalized" (accepted by the network), and the transactions included in that block go into effect and change the chain's state.
Blockchain
A blockchain (sometimes called "chain," for short) is a global state machine with shared consensus and execution. Basically, it allows for trustless interactions between accounts and enables an internet-based economy to emerge. There are many different types of chains, including Ethereum.
C
CID
Although not part of the Tableland protocol itself, IPFS is often used in tandem with Tableland. When files are stored on the IPFS network, they are represented with an immutable and unique Content Identifier (CID); it is a hash (string of characters) is generated and might look something like bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi
.
D
Database
A database is a performant way to store and query data. There are many types of databases, but in Tableland, the only one that matters is a "relational" database, which stores information in structured tables and is interfaced with SQL.
E
EOA
A non-smart contract account is called an Externally Owned Account (EOA), which, basically, means a human user. It is an account generated by private keys that does not have any code associated with it. Only EOAs can be the origin of a transaction, meaning, smart contract accounts cannot.
ERC20
An ERC20 token is the technical name for a fungible token, which includes any cryptocurrency that runs on an EVM chain. For reference, EIPs (Ethereum Improvement Proposals) are an open-source process where someone submits a proposal, and if accepted, it is adopted by the Ethereum protocol into an ERC (Ethereum Request for Comment) standard.
ERC721
An ERC721 token is the technical name for NFTs.
ERC1155
An ERC1155 token is the technical name for a specific way of implementing NFTs. It differs from an ERC721 in that its implementation can have any combination of fungible tokens, non-fungible tokens, or semi-fungible configurations. It adds some flexibility to how a single smart contract can produce, for example, NFTs that are generic vs. one-of-a-kind items, or even ERC20 tokens.
EVM
A component of Ethereum is its Ethereum Virtual Machine. It is the most widely adopted virtual machine in web3 and has become the de facto requirement for other chains to adopt. If you're using an EVM chain, that means it shares the same rules for computing a new valid state from block to block; a wallet / account on one chain can be used on another. Although the state is different, the way you interact with the chain is (at a high level) the same.
F
Filecoin
Filecoin is a decentralized storage network that uses the IPFS protocol but adds incentives to guarantee persistence. In other words, IPFS is a p2p protocol that allows peers to transfer files between each other, and Filecoin extends this with its own token and protocol design to ensure the data will be there upon request.
G
Gas
Sending a transaction is not free; you have to pay gas for the network to execute it. Namely, every time you want to change the blockchain's state, there is a computational gas fee that pays for blockchain nodes to perform the action. Incentives drive network coordination and are essential to decentralized systems. Note that it's possible for a transaction to be sent but never finalized (i.e., it fails) while gas is still paid for. This is because it still costs nodes computational effort to execute the transaction, up until the point of failure.
I
IPFS
IPFS stands for Interplanetary File System. It is a p2p protocol and is used as a common way to store files but in a distributed manner, which enables content addressing by way of CIDs. IPFS has less of a "guaranteed" persistence mechanism but does offer a feature for "pinning" files to help tell the network to keep the file around (but it's not incentive driven like its related protocol Filecoin).
L
Layer 2
Layer 2 (L2) solutions are built on top of another chain to help scale its performance. Generally, they refer to a network that is built on top of Ethereum and implement EVM compatibility, allowing for easy porting from one chain to another. L2s make blockchains scalable by increasing throughput and lowering costs, opening the door for a broader range of applications to be built.
M
Materialize
Data that is stored in the Tableland global database first is written onchain (to event logs) and then is processed by database validator nodes. The act of processing and altering the existing database state is to materialize the data.
Mutate
To mutate is to change. Data mutations relative to tables mean to write data to that table, whether it is adding new data or changing existing data.
N
Node
A node (also called a "client") is one of many in a distributed network of computers running software that verifies blocks and transaction data. Generally, by running a node, rewards are unlocked for acting non-maliciously and participating in the network as a whole. Every blockchain has different ways of designing the node network.
NFT
A Non-Fungible Token (NFT), also referred to as an ERC721 (or ERC1155) token, is an interface for representing data that is distinct and cannot be broken into smaller pieces. It is a widely adopted standard and paves the way for interoperable data objects to exist onchain. One unique component of NFTs is that they allow for an offchain pointer to exist, which is what all common marketplaces read from (e.g., JPEGs). However, this offchain reference can really be anything that adheres to the correct ERC721 schema, and Tableland offers a gateway that can be used as this pointer reference.