Netflix/metacat
Netflix/metacat has 1,690 GitHub stars and 286 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-06 05:20 UTC. Last push 2026-10-29.
Metacat is a unified metadata exploration API service. You can explore Hive, RDS, Teradata, Redshift, S3 and Cassandra. Metacat provides you information about what data you have, where it resides and how to process it. Metadata in the end is really data about the data. So the primary purpose of Metacat is to give a place to describe the data so that we could do more useful things with it.
Measured star growth
- in 24h
- 0
- in 7 days
- Update delayed
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalMetacat
Introduction
Metacat is a unified metadata exploration API service. You can explore Hive, RDS, Teradata, Redshift, S3 and Cassandra. Metacat provides you information about what data you have, where it resides and how to process it. Metadata in the end is really data about the data. So the primary purpose of Metacat is to give a place to describe the data so that we could do more useful things with it.
Metacat focusses on solving these three problems:
- Federate views of metadata systems.
- Allow arbitrary metadata storage about data sets.
- Metadata discovery
Documentation
TODO
Releases
Builds
Metacat builds are run on Travis CI here.
Getting Started
git clone [email protected]:Netflix/metacat.git
cd metacat
./gradlew clean build
Once the build is completed, the metacat WAR file is generated under metacat-war/build/libs directory. Metacat needs
two basic configurations:
metacat.plugin.config.location: Path to the directory containing the catalog configuration. Please look at catalog samples used for functional testing.metacat.usermetadata.config.location: Path to the configuration file containing the connection properties to store user metadata. Please look at this sample.
Running Locally
Take the build WAR in metacat-war/build/libs and deploy it to an existing Tomcat as ROOT.war.
The REST API can be accessed @ http://localhost:8080/mds/v1/catalog
Swagger API documentation can be accessed @ http://localhost:8080/swagger-ui/index.html
Docker Compose Example
Pre-requisite: Docker compose is installed
To start a self contained Metacat environment with some sample catalogs run the command below.
This will start a docker compose cluster containing a Metacat container, a Hive Metastore Container, a Cassandra
container and a PostgreSQL container.
./gradlew metacatPorts
metacatPorts- Prints out what exposed ports are mapped to the internal container ports. Look for the mapped port (MAPPED_PORT) to port 8080.
REST API can be accessed @ http://localhost:<MAPPED_PORT>/mds/v1/catalog
Swagger API documentation can be accessed @ http://localhost:<MAPPED_PORT>/swagger-ui/index.html
To stop the docker compose cluster:
./gradlew stopMetacatCluster
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
560,381 starspublic-apis/public-apis
A collective list of free APIs
496,681 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
437,489 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,058 stars