3.0 KiB
3.0 KiB
Snowflake Data Warehouse Dashboard
An interactive visualization tool for exploring Snowflake data warehouse structures, including databases, schemas, and tables (both fact and dimension).
Features
- True Infinite Canvas: Unlimited zooming and panning capabilities for exploring vast data structures
- Interactive Exploration: Click to expand/collapse databases and schemas
- Table Details: View detailed information about fact and dimension tables
- Visual Distinction: Different colors for databases, schemas, fact tables, and dimension tables
- Relationship Visualization: Animated connections between related elements
- Dynamic Navigation: Zoom controls and minimap for easy navigation of the infinite space
- Custom Connections: Create and manage custom connections between any elements (databases, schemas, tables)
Implementation Details
This dashboard is built using:
- React for the UI components
- ReactFlow for the interactive graph visualization
- CSS for styling and visual hierarchy
Usage
-
Exploring the Data Warehouse:
- Click on a database node to expand and see its schemas
- Click on a schema node to expand and see its tables
- Click on a table node to view detailed information
-
Infinite Canvas Navigation:
- Use the mouse wheel to zoom in/out without limits
- Click and drag to pan infinitely in any direction
- Use the minimap in the bottom-right for quick navigation
- Use the dedicated "Zoom Out" button to quickly get a broader view
- Click "Reset View" to return to the initial state
- Current zoom level is displayed in the control panel
-
Creating Custom Connections:
- Click "Start Connection Mode" to enter connection mode
- Choose connection type: Reference, Dependency, or Custom
- Drag from a connection point (dot) on any node
- Drop onto a connection point on another node to create the connection
- View and manage all custom connections in the bottom-left panel
- Delete connections by clicking the "✕" button
- Connection points appear on all four sides of each node
Data Structure
The dashboard visualizes:
- Databases: Top-level containers (e.g., Sales DW, Marketing DW)
- Schemas: Logical groupings of tables within a database
- Fact Tables: Tables containing measurable, quantitative data about business events
- Dimension Tables: Tables containing descriptive attributes used for analysis
Future Enhancements
- Add search functionality to quickly find specific elements
- Implement filtering options for different table types
- Add ability to save and share specific views
- Integrate with real Snowflake data sources via API
- Add SQL query generation based on selected tables
Development
To run the project locally:
npm install
npm run dev
The application will be available at http://localhost:5173/
This project was bootstrapped with Vite and uses React for the UI.