---
title: "Glossary"
date: 2023-11-28
license: "This software is licensed under the Apache License version 2."
---

## API

- Application Programming Interface, defining the methods and protocols for interacting with a server.

## AWS

- Amazon Web Services, a cloud computing platform provided by Amazon.

## AWS Glue

- A compatible implementation of the Hive Metastore Service (HMS).

## GPG/GnuPG

- Gnu Privacy Guard or GnuPG is an open-source implementation of the OpenPGP standard.
  It is usually used for encrypting and signing files and emails.

## HDFS

- **HDFS** (Hadoop Distributed File System) is an open-source distributed file system.
  It is a key component of the Apache Hadoop ecosystem.
  HDFS is designed as a distributed storage solution to store and process large-scale datasets.
  It features high reliability, fault tolerance, and excellent performance.

## HTTP Port

- The port number on which a server listens for incoming connections.

## IP Address

- Internet Protocol address, a numerical label assigned to each device in a computer network.

## JDBC

- Java Database Connectivity, an API for connecting Java applications to relational databases.

## JDBC URI

- The JDBC connection address specified in the catalog configuration.
  It usually includes components such as the database type, host, port, and database name.

## JDK

- The software development kit for the Java programming language.
  A JDK provides tools for compiling, debugging, and running Java applications.

## JMX

- Java Management Extensions provides tools for managing and monitoring Java applications.

## JSON

- JavaScript Object Notation, a lightweight data interchange format.

## JSON Web Token

- See [JWT](#jwt).

## JVM

- A virtual machine that enables a computer to run Java applications.
  A JVM implements an abstract machine that is different from the underlying hardware.

## JVM Instrumentation

- The process of adding monitoring and management capabilities to the [JVM](#jvm),
  primarily to collect performance metrics.

## JVM Metrics

- Metrics related to the performance and behavior of the [Java Virtual Machine](#jvm).
  Some valuable metrics are memory usage, garbage collection, and buffer pool metrics.

## JWT

- A compact, URL-safe representation for claims between two parties.

## KEYS File

- A file containing public keys used to sign previous releases, necessary for verifying signatures.

## PGP Signature

- A digital signature generated using the Pretty Good Privacy (PGP) algorithm.
  The signature is typically used to validate the authenticity of a file.

## REST

- A set of architectural principles for designing networked applications.

## REST API

- Representational State Transfer (REST) Application Programming Interface.
  A set of rules and conventions for building and interacting with Web services using standard HTTP methods.

## SHA256 Checksum

- A cryptographic hash function used to verify the integrity of files.

## SHA256 Checksum File

- A file containing the SHA256 hash value of another file, used for verification purposes.

## SQL

- A programming language used to manage and manipulate relational databases.

## SSH

- Secure Shell, a cryptographic network protocol used for secure communication over a computer network.

## URI

- Uniform Resource Identifier, a string that identifies the name or resource on the internet.

## YAML

- YAML Ain't Markup Language, a human-readable file format often used for structured data.

## Amazon Elastic Block Store (EBS)

- A scalable block storage service provided by Amazon Web Services (AWS).

## Apache Gravitino

- An open-source software platform initially created by Datastrato.
  It is designed for high-performance, geo-distributed, and federated metadata lakes.
  Gravitino can manage metadata directly in different sources, types, and regions,
  providing data and AI assets with unified metadata access.

## Apache Gravitino Configuration File (gravitino.conf)

- The configuration file for the Gravitino server, located in the `conf` directory.
  It follows the standard properties file format and contains settings for the Gravitino server.

## Apache Hadoop

- An open-source distributed storage and processing framework.

## Apache Hive

- An open-source data warehousing software project.
  It provides SQL-like query language for managing and querying large datasets.

## Apache Iceberg

- An open-source, versioned table format for large-scale data processing.

## Apache Iceberg Hive Catalog

- The **Iceberg Hive catalog** is a metadata service designed for the Apache Iceberg table format.
  It allows external systems to interact with an Iceberg metadata using a Hive metastore thrift client.

## Apache Iceberg JDBC Catalog

- The **Iceberg JDBC catalog** is a metadata service designed for the Apache Iceberg table format.
  It enables external systems to interact with an Iceberg metadata service using [JDBC](#jdbc).

## Apache Iceberg REST Catalog

- The **Iceberg REST Catalog** is a metadata service designed for the Apache Iceberg table format.
  It enables external systems to interact with Iceberg metadata service using a [REST API](#rest-api).

## Apache License Version 2

- A permissive, open-source software license written by The Apache Software Foundation.

## Authentication Mechanism

- The method used to verify the identity of users and clients accessing a server.

## Binary Distribution Package

- A software package containing the compiled executables for distribution and deployment.

## Catalog

- A collection of metadata from a specific metadata source.

## Catalog Provider

- The specific system or technology used to store and manage metadata catalogs.

## Columns

- The individual fields or attributes of a table.
  Each column has properties like name, data type, comment, and nullability.

## Continuous Integration (CI)

- The practice of automatically building and testing code changes when they are committed to version control.

## Dependencies

- External libraries or modules required by a project for its compilation and features.

## Distribution

- A packaged and deployable version of the software.

## Docker

- A platform for developing, shipping, and running applications in containers.

## Docker Container

- A lightweight, standalone package that includes everything needed to run the software.
  A container compiles an application with its dependencies and runtime for distribution.

## Docker Hub

- A cloud-based registry service for Docker containers.
  Users can publish, browse and download containerized software using this service.

## Docker Image

- A lightweight, standalone package that includes everything needed to run the software.
  A Docker image typically comprises the code, runtime, libraries, and system tools.

## Dockerfile

- A configuration file for building a Docker image.
  A Dockerfile contains instructions to build a standard image for distributing the software.

## Dropwizard Metrics

- A Java library for measuring the performance of applications and providing support for various metric types.

## Environment Variables

- Variables used to customize the runtime configuration for a process.

## Geo-distributed

- The distribution of data or services across multiple geographic locations.

## Git

- A distributed version control system used for tracking software artifacts.

## GitHub

- A web-based platform for version control and community collaboration using Git.

## GitHub Actions

- A continuous integration and continuous deployment (CI/CD) service provided by GitHub.
  GitHub Actions automate the build, test, and deployment workflows.

## GitHub Labels

- Labels assigned to GitHub issues or pull requests for organization or workflow automation.

## GitHub Pull Request

- A proposed change to a GitHub repository submitted by a user.

## GitHub Repository

- The location where GitHub stores a project's source code and related files.

## GitHub Workflow

- A series of automated steps triggered by specific events on a GitHub repository.

## Gradle

- An automation tool for building, testing, and deploying projects.

## Gradlew

- A Gradle wrapper script used to execute Gradle commands.

## Hashes

- Cryptographic hash values generated from some data.
  A typical use case is to verify the integrity of a file.

## Headless

- A system without a local console.

## Identity Fields

- Fields in tables that define the identity of the records.
  In the scope of a table, the identity fields are used as the unique identifier of a row.

## Integration Tests

- Tests that ensure software correctness and compatibility when integrating components into a larger system.

## Java Database Connectivity (JDBC)

- See [JDBC](#jdbc)

## Java Development Kits (JDKs)

- See [JDK](#jdk)

## Java Management Extensions

- See [JMX](#jmx)

## Java Toolchain

- A Gradle feature for detecting and managing JDK versions. 

## Java Virtual Machine

- See [JVM](#jvm)

## Key Pair

- A pair of cryptographic keys, including a public key used for verification and a private key used for signing.

## Lakehouse

- **Lakehouse** is a modern data management architecture that combines elements of data lakes and data warehouses.
  It aims to provide a unified platform for storing, managing, and analyzing both raw unstructured data
  (similar to data lakes) and curated structured data.

## Manifest

- A list of files and their associated metadata that collectively define the structure and content of a release or distribution.

## Merge Operation

- A process in Iceberg that involves combining changes from multiple snapshots into a new snapshot.

## Metalake

- The top-level container for metadata. 
  Typically, a metalake is a tenant-like mapping to an organization or a company.
  All the catalogs, users, and roles are associated with one metalake. 

## Metastore

- A central repository that stores metadata for a data warehouse.

## Module

- A distinct and separable part of a project.

## Open Authorization / OAuth

- A standard protocol for authorization that allows third-party applications to authenticate a user.
  The application doesn't need to access the user credentials.

## OrbStack

- A tool mentioned as an alternative to Docker for macOS when running Gravitino integration tests.

## Private Key

- A confidential key used for signing, decryption, or other operations that should remain confidential.

## Properties

- Configurable settings and attributes associated with catalogs, schemas, and tables.
  The property settings influence the behavior and storage of the corresponding entities.

## Protocol Buffers (Protobuf)

- A method developed by Google for serializing structured data, similar to XML or JSON.
  It is often used for efficient and extensible communication between systems.

## Public Key

- An openly shared key used for verification, encryption, or other operations intended for public knowledge.

## Representational State Transfer

- See [REST](#rest)

## RocksDB

- An open source key-value storage database.

## Schema

- A logical container for organizing tables in a database.

## Secure Shell

- See [SSH](#ssh)

## Security Group

- A virtual firewall for your instance to control inbound and outbound traffic.

## Serde

- A serialization/deserialization library.
  It can transform data between a tabular format and a format suitable for storage or transmission.

## Snapshot

- A point-in-time capture of the state of an Iceberg table, representing a specific version of the table.

## Sort Order

- The arrangement of data within a Hive table, specified by expression or direction.

## Spotless

- A tool or process used to enforce code formatting standards and apply automatic formatting to code.

## Structured Query Language

- See [SQL](#sql)

## Table

- A structured set of data elements stored in columns and rows.

## Thrift

- A network protocol used for communication with Hive Metastore Service (HMS).

## Token

- A **token** in the context of computing and security is a small, indivisible unit of data. 
  Tokens play a crucial role in various domains, including authentication and authorization.

## Trino

- A query engine for big data processing.

## Trino Connector

- A connector module for integrating Gravitino with Trino.

## Ubuntu

- A Linux distribution based on Debian, widely used for cloud computing and servers.

## Unit Test

- A type of software testing where individual components or functions of a program are tested.
  Unit tests help to ensure that the component or function works as expected in isolation.

## Verification

- The process of confirming the authenticity and integrity of a release.
  This is usually done by checking its signature and associated hash values.

## Web UI

- A graphical interface accessible through a web browser.


