Skip to main content

Data Catalog

The Data Catalog lets workspace users discover catalog, schema, table, and column names and then inspect data, permissions, metadata, lineage, history, and quality information. This is the canonical assessment of that capability.

See Architecture for system boundaries and Evidence for verification and reproduction steps.

Status​

FieldCurrent value
AvailabilityAvailable in realm gj76anadpsc, workspace w-t5e2kcxjd
Supported user-facing catalogdelta only in the assessed deployment
Assessment coveragePartial — source and deployed configuration are verified; signed-in UI and restricted-role journeys remain open
Kubernetes contextdev-north-alicloud
Last verified2 September 2026
Trackingplatform-docs #44; component validation is not recorded

Who determines the catalog list?​

No single component currently owns the complete contract.

DecisionAuthority
Catalogs that Trino can queryPlatform deployment configuration. Each /etc/trino/catalog/*.properties file defines one Trino catalog and connector.
Top-level entries shown by CogrionSuperset's database registry as visible to the exchanged user token. Oqullus calls GET /superset/api/v1/database; it does not call SHOW CATALOGS.
Schemas, tables, and columns beneath an entrySuperset database APIs backed by the registered connection; the current delta connection introspects Trino, where Ranger can filter or deny metadata operations if the effective user is preserved.
Table/column descriptions, tags, structured properties, and lineageDataHub, addressed with dataset URNs. DataHub does not determine the top-level navigation list. Catalog/schema description and tag controls are not connected to this path.
Query-time data access and the Permissions tabRanger policies; the BFF restricts all reviewed Ranger catalog routes to platform_admin.
Browser tree and expansion stateOqullus memory for the current page session. It is a cache, not an authority.

The effective product contract is therefore the Superset registrations created by the supported platform stack and verified against the corresponding Trino catalog. Adding an arbitrary Superset database may make it appear in the UI, but does not make all Catalog features compatible or supported.

Superset itself supports Trino's catalog level and exposes catalog discovery for catalog-capable engines. The missing level is specific to the Cogrion integration: Oqullus treats each Superset database connection as a catalog node and proceeds directly to that connection's schemas. For the current single-Trino design, the UI may hide the connection level, but the visible delta node should still come from Trino catalog discovery rather than from a Superset connection that happens to be named delta.

Catalog landing behavior​

/admin/catalog should be a browse entry point, not a placeholder Quick Access page. With one authorized catalog, it should open that catalog's explorer directly. With multiple authorized catalogs, it should show a searchable catalog directory. Zero authorized catalogs and discovery failure must have different states so denial is not confused with outage or absence.

The current Recents tab does not implement recency. It displays the same complete list as Catalogs, and every Last viewed value is hard-coded to N/A. Remove Quick Access, Recents, and Last viewed until durable user- and workspace-scoped visit tracking exists.

Supported catalogs​

NameDeployed Trino connectorRegistered in SupersetShown in CatalogStatus
deltadelta_lakeYesYesSupported for this assessment
hivehiveNoNoDeployed but unsupported; no current consumer was identified
tpchtpchNoNoSynthetic Trino test data; not a product data catalog
tpcdstpcdsNoNoSynthetic Trino test data; not a product data catalog
icebergNot deployedNoNoLegacy bundle configuration only; not supported in the current KCL path or assessed deployment
Databricks, external SQL, and connector sourcesSeparate connector/preview flowsNo verified Catalog registrationNoOutside this Data Catalog support contract

AWS and workspaces other than w-t5e2kcxjd are not runtime-verified. Current KCL also seeds only the delta Superset registration, but that is source evidence rather than a cross-environment support commitment.

System schemas​

information_schema is virtual Trino metadata needed for discovery and client metadata queries. It should be readable only through Ranger-filtered metadata operations and hidden from normal Catalog browsing by default. It is not a governance target: users must not be offered descriptions, tags, ownership, quality rules, sampling, or history actions for it.

cogrion_system contains product-internal tables for data quality, FAQs, PII scanning, and recommendations. Hide it from normal Catalog and SQL Editor discovery and deny direct user SQL by default. Product endpoints should use separate least-privilege service identities after authorizing the caller; users must not receive broad access merely to make an internal feature work.

Actors and access conditions​

The frontend exposes the Catalog route to platform_admin, tenant_admin, data_engineer, ml_engineer, business_user, and data_steward. It excludes data_analyst. The product rationale for that distinction is not documented.

Opening the page is separate from accessing data. Superset permissions determine whether its registered delta connection appears. Ranger does not determine that top-level list. Deeper metadata operations and SQL pass through Trino, where Ranger can enforce the effective user. Metadata mutations instead go through the BFF to DataHub. Current source does not consistently hide mutation controls for roles that the backend will reject.

Critical journeys​

JourneyCurrent evidenceRequired verification
List catalogsSource and deployed Superset metadata confirm delta.Capture the signed-in Catalog list and its network response.
Expand schema, table, and columnsLazy Superset-backed calls are source-mapped.Verify normal, empty, unauthorized, dependency-failure, and retry behavior.
Inspect sample dataOpening a table automatically starts a limited query through Superset and Trino.Verify Ranger denial, partial failure, data types, large values, and visible error handling.
Inspect historyA connector-specific table$history query runs automatically.Confirm supported Delta behavior and the response for unsupported connectors or tables.
Edit table and column descriptions and tagsDataHub mutations and on-demand table-schema ingestion exist.Verify permitted and denied roles, audit identity, propagation, conflict, and recovery. Catalog/schema metadata is not supported.
Inspect lineageDataHub lineage APIs exist.Verify canonical URN construction and actual lineage for a known table.
Manage permissionsRanger list/grant/revoke routes require platform_admin.Verify role-aware controls, inherited scope, audit, denial, and query enforcement.
SearchClient search loads unloaded catalogs and schemas, then filters locally.Establish request, latency, table-count, and browser-memory boundaries.
Upload CSV or ExcelCatalog offers upload to a registered Superset database.Verify authorization, destination, collision, size, cleanup, and partial failure.

Findings​

Use this table as the assessment register. In each finding, Implementation issue identifies the repository where the code change is tracked and Component involvement explains any additional repository or runtime role. These fields are not person or team assignments. Use Live evidence for the complete execution scenarios.

IDFindingEvidenceImpact
ARCH-CAT-001Separate connection routing from catalog identitySource + deployed configurationHigh
ARCH-CAT-002Use one catalog-tree presentation across Catalog and SQL EditorSource-verifiedMedium
ARCH-CAT-003Replace browser-authored DQ SQL with a resource APISource + captured live failureHigh
COST-CAT-001Load table-detail tabs on demandSource + live failuresHigh
DATA-CAT-001Use one canonical DataHub dataset identitySource-verifiedHigh
DATA-CAT-002Declare how Catalog metadata reaches DataHubSource-verified; runtime coverage pendingHigh
DATA-CAT-003Hide catalog and schema fields without an authoritySource-verifiedHigh
DATA-CAT-004Preserve table format in shared-HMS discoverySource-verified; mixed-format fixture pendingHigh
GOV-CAT-001Separate system schemas from governed user dataSource-verified; role visibility pendingHigh
LIFE-CAT-001Assign or retire the deployed Hive connectorSource + partial usage historyMedium
OPS-CAT-001Make DQ initialization observable and durableDeployed failure observedCritical
PERF-CAT-001Bound Catalog search without loading the entire treeSource-verified; scale pendingMedium
PERF-CAT-002Define bounded Sample and History executionSource-verified; benchmarks pendingHigh
PROD-CAT-001Remove unsupported catalog lifecycle controlsSource-verifiedMedium
PROD-CAT-002Hide unsupported adjacent-product controlsSource + live observationMedium
PROD-CAT-003Replace fake Recents with a useful Catalog landingSource-verifiedMedium
PROD-CAT-004Remove non-persistent catalog and schema metadata controlsSource-verifiedHigh
REL-CAT-001Distinguish discovery failure from an empty nodeSource-verifiedHigh
REL-CAT-002Retry only transient, safe Catalog failuresSource + repeated live failuresHigh
SEC-CAT-001Authorize DataHub mutations per actor and resourceSource-verified; security review pendingCritical
SEC-CAT-002Align permission controls with verified authorizationSource-verified; role matrix pendingHigh
SEC-CAT-003Preserve end-user identity through Catalog discoveryArchitecture verified; runtime identity pendingHigh
SEC-CAT-004Make system-schema policy deterministicSource-verified; deployed policies pendingHigh
UX-CAT-001Do not present local rename as a durable mutationSource-verified; live reproduction pendingHigh
UX-CAT-002Use consistent object-type iconsSource + live observationMedium
UX-CAT-003Remove the artificial Warehouse hierarchySource + product reviewLow
UX-CAT-004Provide one consistent Upload data actionSource + live observationMedium
UX-CAT-005Remove the inert Catalog metastore settingSource-verifiedMedium
UX-CAT-006Keep display timezone consistent with query semanticsSource + product reviewHigh
UX-CAT-007Preserve typed Spark lineageSource + product reviewHigh

Implementation subissues​

All remediation remains unassigned and is grouped under platform-docs #44.

FindingIssueFindingIssue
ARCH-CAT-001oqullus #527ARCH-CAT-002oqullus #528
ARCH-CAT-003bff-api #234COST-CAT-001oqullus #533
DATA-CAT-001oqullus #529DATA-CAT-002platform-stacks #674
DATA-CAT-003oqullus #536GOV-CAT-001bff-api #236
DATA-CAT-004bff-api #238
LIFE-CAT-001platform-stacks #675OPS-CAT-001platform-stacks #672
PERF-CAT-001oqullus #532PERF-CAT-002bff-api #233
PROD-CAT-001oqullus #537PROD-CAT-002oqullus #538
PROD-CAT-003oqullus #539PROD-CAT-004oqullus #540
REL-CAT-001oqullus #531REL-CAT-002oqullus #534
SEC-CAT-001bff-api #232SEC-CAT-002oqullus #535
SEC-CAT-003bff-api #235SEC-CAT-004platform-stacks #673
UX-CAT-001oqullus #530UX-CAT-002oqullus #541
UX-CAT-003oqullus #542UX-CAT-004oqullus #543
UX-CAT-005oqullus #544UX-CAT-006oqullus #545
UX-CAT-007bff-api #237

Detailed rationale and reproduction steps are in Evidence. Findings are observations, not accepted implementation commitments. Missing evidence stays open, and severity and disposition require review.

Boundaries and workarounds​

  • Treat delta as the only supported top-level catalog in the assessed workspace. Do not register another Superset database merely to make it appear.
  • Do not remove hive based only on Superset history. First inventory non-Delta Hive tables, all-client Trino audit history, and Ranger policies, then perform a monitored deny or disable canary.
  • Use the refresh control after platform-side catalog changes; there is no automatic reconciliation or durable browser cache.
  • Do not rely on tree Rename, Create Catalog, Create Schema, or Set Owner as durable operations.
  • Ignore schema Owner and Created at values; remove them rather than treating N/A and the hard-coded date as metadata. Keep the corresponding Catalog fields hidden until an authoritative, persistent source exists.
  • Do not use catalog/schema Description or Tags controls. Durable DataHub-backed metadata is currently implemented only for tables and columns.
  • Hide information_schema from normal Catalog navigation and block governance mutations for it. Permit only Ranger-filtered read-only metadata access.
  • Hide and deny direct user access to cogrion_system; use scoped service identities for authorized internal product operations.
  • Ignore the Catalog gear's metastore value; it is hard-coded and not a setting. Remove it until an admin-only live diagnostic capability exists.
  • Do not grant users direct access to cogrion_system to make the current DQ loader succeed. Load DQ state through a resource-oriented BFF endpoint and fetch it only when Quality is first opened.
  • Treat DQ as unavailable until initialization verifies its schema, tables, Delta files, and seed rows through the same Trino path used at runtime. A running watcher is not evidence that DQ is ready.
  • Treat Sample as an arbitrary preview, not a random or representative sample. For a slow table, use SQL Editor with explicit columns and an approved partition predicate until bounded preview execution exists.
  • Treat History timestamps as instants supplied by Delta $history. Use UTC with an explicit offset; the current Local selection is display-only and resets on reload. Do not infer query/filter semantics from it.
  • Delta Sharing, Clean Rooms, and External Data are not available; their disabled controls do not indicate a role, configuration, or workspace issue.
  • Treat Recents and Last viewed as non-functional presentation. Use Catalogs or the navigation tree; no reliable visit history currently exists.
  • Use SQL Editor with an explicit fully qualified name to diagnose whether a Trino catalog exists independently of its Catalog-page registration.
  • Do not treat visibility of the top-level delta entry as proof of Ranger authorization. Verify access by expanding the object or executing an approved query until SEC-CAT-003 is closed.
  • No supported maximum is documented for catalogs, schemas, tables, columns, search fan-out, sample cell size, uploads, lineage graph size, or tag count.

Review status​

Product, data-platform, metadata-governance, security, and operations owners have not yet validated this assessment. Signed-in UI evidence and restricted role tests are pending; those gaps are not evidence of support.