Warehouse Tool

The Warehouse Tool enables DinoAI to directly access your data warehouse metadata, making it uniquely powerful for analytics engineering tasks. Unlike general AI tools, DinoAI can reference your actual tables, columns, and relationships.

DinoAI only accesses metadata (schema information), not your actual data, maintaining security while providing powerful assistance.

Capabilities

DinoAI's Warehouse Tool can:

  • Discover available databases, schemas, and tables in your data warehouse

  • Access column names, data types, and descriptions

  • Identify primary and foreign key relationships

  • Generate accurate source definitions and references

  • Suggest appropriate join conditions between tables

Supported Data Warehouses

  • Snowflake

  • BigQuery

  • Redshift

  • Trino

  • Databricks

  • ... Additional warehouses coming soon!

Real-World Example: Creating a sources.yml file

Prerequisite: Connect your warehouse to your Code IDE environment

  1. Open DinoAI in the left panel of the IDE and enter a prompt like: Create a sources.yml from the data in my data warehouse

  2. DinoAI connects to your warehouse and scans the metadata

  3. Review/accept DinoAI's permission request(s)

Example Use Cases

Creating Comprehensive Source Definitions

  • Prompt: "Create a sources.yml file for all tables in the marketing schema"

  • Result: Complete sources.yml with accurate table structures, column names, and data types

Building Models with Precise References

  • Prompt: "Create a staging model for the customers table with appropriate column renaming"

  • Result: A staging model that correctly references all columns with standardized naming

Mapping Complex Relationships

  • Prompt: "Create a dimensional model that combines order, customer, and product data"

  • Result: Properly structured model with correct join conditions based on your actual schema


Best Practices

For Best Results

  1. Be specific about schemas when working with large warehouses

  2. Include table prefixes if you have naming patterns (e.g., "raw_customers" vs "stg_customers")

  3. Mention the warehouse if you work with multiple connections

  4. Use .dinorules to set persistent rules for how DinoAI interacts with your data warehouse(s)

Last updated

Was this helpful?