Apache Atlas is an Apache Software Foundation project providing metadata management, classification, and lineage for the Hadoop ecosystem, with an extensible type system and an authorization path through Apache Ranger.
Self-hosted Java services: a JanusGraph metadata store over a configurable backend, a separate search index, and Kafka for change notifications. Metadata is pushed in by engine hooks as queries run rather than pulled on an ingestion schedule. Development continues at a slow but real pace, with releases through 2026.
How Apache Atlas answers the questions Data Catalogs turns on.
| How it works | |
| Metadata model | A type system you extend, entity, classification, struct and enum definitions with supertypes and typed attributes, instantiated as entities in a JanusGraph store. Metadata is pushed in by engine hooks as queries run rather than pulled on an ingestion schedule |
| Lineage | Captured at runtime by the engine hooks rather than parsed after the fact (a Process entity records the inputs and outputs of a query as it runs) and classifications propagate along it, so a table marked PII marks the view derived from it too |
| Search and discovery | Basic search over type, attribute and classification filters; a SQL-like DSL for advanced search with grouping and aggregation; relationship search; and saved favourite searches, with free text served by the separate search index |
| Business glossary | First-class: terms grouped into categories that nest into hierarchies, related to one another semantically and mapped onto assets, and managed separately from the metadata they annotate |
| Quality checks | None: Atlas describes and classifies data, it does not test it, so anything from data-quality sits beside it rather than inside it |
| Custom metadata | The point of the type system, define new entity types with supertypes and typed attributes over REST, and layer business metadata on top: struct-like attribute sets bound to chosen entity types, assigned per entity through the UI or API and searchable once assigned |
| Connections | |
| Connectors | Ten bridges and hooks in the tree, and the list is a portrait of its generation, Hive, HBase, Impala, Kafka, Sqoop, Storm, Falcon, HDFS and Couchbase, with a Trino extractor the newest arrival; anything else arrives through the REST API |
| Access | |
| Policy and compliance | The reason to run it, classifications become authorization and masking decisions in Apache Ranger, role- and attribute-based, so a column marked PII is one the engine refuses to serve and one marked NATIONAL_ID can come back as its last four digits. Classifications carry attributes of their own, and Atlas's own API is authorised by either the Ranger authorizer or a simple file-based one |
| Access requests | None: no request, approval or grant flow anywhere. Access is decided in Ranger against the classifications Atlas supplies, and asked for however the organisation already asks |
| Cost | |
| Billing unit | Nothing to pay: an ASF project with no vendor tier above it, one of only two such rows here. In practice most deployments arrive inside a platform distribution such as Cloudera's and are paid for as part of that |
vs Apache Atlas: Commercial · Self-hosted · Managed · Subscription · Operational complexity: Medium
vs Apache Atlas: Commercial · Managed · Serverless · Subscription · Operational complexity: Low
vs Apache Atlas: Operational complexity: Medium