Skip to main content
The NexusOne Semantic Models feature defines a business-friendly abstraction layer that sits between datasets and end-users. The abstraction layer translates datasets into shared business definitions used across the company. NexusOne compiles these definitions into a SQL command and materializes the result as a view to accelerate query performance. The materialized view remains the same, or else you refresh it.

Semantic model data flow

In NexusOne, the Semantic Models feature interacts with three core NexusOne apps, DataHub, CrewAI, and Trino. The following list describes the data flow from a client to NexusOne:
  1. You ingest datasets into NexusOne and categorize them into a DataHub domain.
  2. You select datasets from that DataHub domain.
  3. NexusOne fetches the domain metadata from DataHub.
  4. CrewAI agents analyze the metadata and generate semantic models that define a business-friendly abstraction layer.
  5. NexusOne compiles the semantic model into SQL and stores it as a draft for review.
  6. An administrator reviews the generated SQL draft and either approves or rejects it.
  7. If approved, then NexusOne deploys the approved models as Trino materialized views.
  8. Optional: NexusOne registers the view in DataHub with lineage.
  9. Optional: You schedule the view for a refresh using Airflow.

Key features

The following features highlight the core features of the NexusOne Semantic Models feature:
  • Audit trail: Complete tracking of all semantic model changes.
  • Automated semantic model generation: CrewAI agents reduce manual work by automatically analyzing metadata and generating semantic models.
  • Domain-scoped operations: Work within DataHub domains to keep data organized and context-aware for the AI.
  • Human-in-the-loop approvals: Validate semantic models before deploying to production to maintain accuracy and control.
  • Materialized views: Deploy semantic models as materialized views in Trino for consistently fast queries.
  • User-level execution: Run queries under an authenticated user with permission boundaries.

Semantic model states

A semantic model has the following states:
  • Draft: Initial state after configuring a semantic model
  • Pending review: Submitted and waiting for review and approval
  • Approved: Reviewed and approved for deployment
  • Deployed: Live and available for use
  • Archived: Deleted and no longer active
  • Failed: Error occurred and needs fixing

Security and access control

When using the Semantic Models feature, you can assign any of the following Keycloak roles to a user:
  • nx1_semantic_admin
  • nx1_semantic_modeller
  • nx1_semantic_user
The following table describes the Apache Ranger permissions available for each role.
Operationnx1_semantic_usernx1_semantic_modellernx1_semantic_admin
List domains
View deployed semantic models
View domain datasets
Create a semantic model
Edit a semantic model
Submit a semantic model draft for review
Preview SQL
Generate a semantic model using AI
Approve/reject a semantic model
Deploy/undeploy a semantic model
Refresh views
View audit logs

Use cases

These examples show how different industries can use NexusOne’s Semantic Models feature:
  • Financial services: Define business-friendly metrics like revenue, risk, and compliance reporting for financial reports using shared semantic models.
  • Education: Standardize student metrics such as enrollment, attendance, and performance across multiple data sources using shared semantic models.

Additional resources

  • For more information about data ingestion, refer to Ingest Overview.
  • For more information about an alternative version of this feature that only produces a SQL command for data insights, refer to Ask Overview.