Getting Started

Estimated reading: 11 minutes

1.1 Overview & Purpose

Casabase Cube is an enterprise OLAP analytics engine delivered as a Snowflake Native Application. It provides multidimensional, dynamic-aggregation capabilities that overlay custom hierarchies directly on your existing Snowflake tables with zero data copying, no ETL pipelines, and no external infrastructure.

Casabase Cube brings traditional EPM (Enterprise Performance Management) and OLAP functionality natively into Snowflake, giving finance teams, FP&A analysts, and data engineers a powerful alternative to legacy platforms like Oracle Essbase, Cloud EPM, and custom-built aggregation processes.

Key Features

  • Dynamic Aggregation: Roll up data to any level using member operators: + (add), (subtract), ~ (no aggregation)
  • Flexible Hierarchies: Support ragged, unbalanced, and shared-member structures
  • Calculated Members: Define formulas like variance, % of total, cross-dimensional references, and custom KPIs
  • Zero Data Movement: All queries run directly against your source tables within your Snowflake account
  • Write-Back: EPM-style data input with spreading, locking, seeding, and full audit trails
  • Data Forms: Cloud EPM-style grid interfaces for structured data entry
  • Visual Query Builder: Point-and-click interface with interactive dimension trees
  • Row-Level Security: Secure data access by dimension per user
  • Essbase Import: Migrate metadata and data from Cloud EPM and Essbase
  • AI-Powered Help: Built-in Cortex Agent for natural language support

Privacy & Data Handling

  • Does not collect, store, or transmit customer data outside your Snowflake account
  • Does not send usage analytics, telemetry, or metrics to Casabase Software or any third party
  • Makes no external network calls; all processing occurs entirely within Snowflake
  • Does not copy or replicate your data; queries run directly against your source tables

1.2 Why a Snowflake Native Application?

Casabase Cube is built and distributed using the Snowflake Native App Framework, which means it runs entirely inside your Snowflake account. This architecture provides several important benefits:

Security & Data Governance

BenefitDescription
Data never leaves your accountCasabase Cube runs as a first-class Snowflake object. Your data stays in your tables, governed by your existing access controls.
No external connectionsThe application makes zero outbound network calls. There is no data exfiltration risk.
Snowflake RBAC integrationAccess is controlled through Snowflake’s native role-based access control using application roles (CUBE_ADMIN, CUBE_WRITER, CUBE_PUBLIC).
Audit trailAll operations are logged to an internal audit table within the application, subject to your retention policies.

Operational Simplicity

BenefitDescription
No infrastructure to manageNo servers, containers, or compute environments to provision or maintain.
Automatic upgradesNew versions are deployed through the Snowflake Marketplace or private listing. Your administrator approves the upgrade and it applies in seconds.
Uses your existing warehouseQueries run on your Snowflake virtual warehouse, so you control compute costs through your existing warehouse policies.
Single platformNo context-switching between tools. Users access Casabase Cube through Snowsight alongside their existing Snowflake workflows.

Cost Efficiency

BenefitDescription
No separate licensing serversThe application is installed and metered through Snowflake.
No data duplication costsSince queries run against your source tables, you avoid the storage and compute costs of maintaining duplicate aggregated datasets.
Pay for what you useCompute costs are determined by your warehouse size and query volume, identical to any other Snowflake workload.

1.3 How to Get Casabase Cube

Casabase Cube is available through two distribution channels:

Option A: Snowflake Marketplace (Public Listing)

The Snowflake Marketplace is the self-service option. Any Snowflake customer can discover and install Casabase Cube directly.

  1. Log in to Snowsight
  2. Navigate to Data Products → Marketplace in the left sidebar
  3. Search for “Casabase Cube”
  4. Click the listing and review the description, security details, and pricing
  5. Click Get to begin the installation process
  6. Select the warehouse to use and accept the required privileges
  7. The application will be installed as CASABASE_CUBE in your account

Option B: Private Listing (Enterprise / Custom)

For organizations that require a private, pre-approved distribution, or that have negotiated custom terms, Casabase Software can share the application directly to your Snowflake account via a Private Listing.

  1. Contact support@casabasesoftware.com or your Casabase Software account representative
  2. Provide your Snowflake account locator and cloud region (e.g., AWS us-east-1)
  3. Casabase Software will share a private listing to your account
  4. Your Snowflake administrator will see the listing under Data Products → Marketplace → Shared With You
  5. Click Get to install, following the same installation flow as the public listing

When to choose Private Listing: Private listings are recommended when your organization’s security policies prohibit installing public marketplace apps, when you require a custom contract or SLA, or when Casabase Software is delivering a pre-configured version specific to your environment.

1.4 Installation Guide (Snowflake Administrator)

Installing Casabase Cube requires ACCOUNTADMIN or a role with the CREATE APPLICATION privilege. The following steps must be completed by your Snowflake administrator.

Step 1: Install the Application

After clicking Get from the Marketplace listing (public or private), Snowflake will create the application in your account. By default, the application is named CASABASE_CUBE.

Alternatively, an administrator can install from an application package via SQL:

-- Install from application package (internal/private)
CREATE APPLICATION CASABASE_CUBE
  FROM APPLICATION PACKAGE CUBE_PACKAGE
  USING VERSION v2;

Step 2: Grant Required Privileges

The application requests two privileges during installation:

PrivilegePurpose
READ SESSIONAllows the app to read session context (e.g., CURRENT_USER()). Required for row-level security and the Streamlit user interface.
EXECUTE MANAGED TASKAllows the app to run scheduled tasks for automatic hierarchy rebuilds when source dimension data changes.

These are standard Snowflake Native App privileges and can be reviewed in the application’s manifest.

Step 3: Grant Access to Your Data

Casabase Cube queries your data in place. You must grant SELECT access on the tables and views you want to use with Cube:

-- Grant access to a fact table
GRANT SELECT ON TABLE your_database.your_schema.your_fact_table
  TO APPLICATION CASABASE_CUBE;

-- Grant access to dimension tables
GRANT SELECT ON TABLE your_database.your_schema.your_dimension_table
  TO APPLICATION CASABASE_CUBE;

-- If your dimension or fact data is in views
GRANT SELECT ON VIEW your_database.your_schema.your_view
  TO APPLICATION CASABASE_CUBE;

-- Grant usage on the containing database and schema
GRANT USAGE ON DATABASE your_database TO APPLICATION CASABASE_CUBE;
GRANT USAGE ON SCHEMA your_database.your_schema TO APPLICATION CASABASE_CUBE;

Important: You must grant USAGE on both the database and schema containing your tables, in addition to SELECT on the tables themselves.

Step 4: Enable AI Features (Optional)

If you want to use the built-in Cortex Agent (AI-powered Help Center), grant the Cortex user role:

GRANT DATABASE ROLE SNOWFLAKE.CORTEX_USER TO APPLICATION CASABASE_CUBE;

Step 5: Assign Application Roles to Users

Casabase Cube defines three application roles:

RoleAccess Level
CUBE_ADMINFull access: configure cubes, manage hierarchies, write data, manage security, view audit logs. Inherits CUBE_WRITER and CUBE_PUBLIC.
CUBE_WRITERData entry access: use data forms, write cell values. Inherits CUBE_PUBLIC.
CUBE_PUBLICRead-only access: run queries via the Query Builder, view audit logs, access Help Center.

Grant application roles to individual users or to account roles:

-- Grant admin access to a user
GRANT APPLICATION ROLE CASABASE_CUBE.CUBE_ADMIN
  TO USER "jane.doe@company.com";

-- Grant read-only access to an account role (recommended)
GRANT APPLICATION ROLE CASABASE_CUBE.CUBE_PUBLIC
  TO ROLE ANALYST_ROLE;

-- Grant data entry access to a role
GRANT APPLICATION ROLE CASABASE_CUBE.CUBE_WRITER
  TO ROLE FINANCE_TEAM;

Best Practice: Grant application roles to account-level roles rather than individual users. This simplifies user management as team membership changes.

Step 6: Verify the Installation

-- Confirm the application is installed
SHOW APPLICATIONS LIKE 'CASABASE_CUBE';

-- Verify you can access the application
DESC APPLICATION CASABASE_CUBE;

Upgrading

When a new version is available, Snowflake will notify administrators. To upgrade:

  • Marketplace installs: Upgrades may be automatic (depending on your account settings) or can be approved manually from the application details page.
  • Manual upgrade via SQL:
ALTER APPLICATION CASABASE_CUBE UPGRADE;

Previous version information is preserved and can be queried after upgrade.

1.5 First Login & Orientation

Once your administrator has installed Casabase Cube and assigned your application role, you can access it through Snowsight.

Accessing the Application

  1. Log in to Snowsight
  2. Navigate to Data Products → Apps in the left sidebar
  3. Click CASABASE_CUBE
  4. The Casabase Cube Streamlit application will open

Application Pages

Casabase Cube’s interface is organized into the following pages, accessible from the left sidebar:

PageIconRole RequiredDescription
HomeHomeAllWelcome page with version info and quick links
Query BuilderConstructionAllVisual point-and-click interface for building and running cube queries with interactive dimension trees
Data FormsDocumentAllCloud EPM-style grid interface for structured data entry and write-back
Cube ConfigSettingsCUBE_ADMINCreate and configure cubes. Define data tables, amount columns, and cube-level settings.
HierarchiesHubCUBE_ADMINCreate, edit, validate, and manage dimension hierarchies with visual tree editor
FormulasCalculateCUBE_ADMINDefine calculated members: variance, ratios, custom KPIs with cross-dimensional references
AdminAdmin PanelCUBE_ADMINManage application roles, row-level security, cube variables, and system settings
Audit LogListAllView detailed logs of all cube operations, queries, and data changes
Help CenterSupportAllAI-powered help with searchable knowledge base and natural language support

Note: Admin-only pages (Cube Config, Hierarchies, Formulas, Admin) are only visible in the sidebar if you have the CUBE_ADMIN application role.

Understanding the Schema Structure

Casabase Cube organizes its internal data across three schemas:

SchemaPurpose
CONFIGStores all cube configuration: hierarchy definitions, formulas, saved queries, variables, security grants, audit logs, data forms, and locks.
CUBEContains the versioned application logic: all stored procedures, functions, and the Streamlit application. This is the primary interface schema.
SHARED_DATAHolds generated hierarchy views and materialized query results. Objects here are accessible to CUBE_PUBLIC users.

1.6 Key Terminology

TermDefinition
CubeA named configuration that maps one or more dimension hierarchies to a fact table. Cubes define how data is aggregated, queried, and secured.
HierarchyA parent-child structure that defines how dimension members roll up. Created from your existing dimension tables using CREATE_HIERARCHY.
DimensionA category of data (e.g., Account, Period, Entity, Product) used to slice and aggregate measures. Each dimension is backed by a hierarchy.
MemberA single value within a dimension (e.g., “Revenue” in Account, “Q1” in Period). Members are organized in parent-child relationships.
POV (Point of View)A JSON structure that defines which members to include from each dimension in a query. Supports operators like children, descendants, bottom, etc.
Aggregation OperatorControls how a member rolls up to its parent: + (add), (subtract), ~ (never aggregate).
Formula / Calculated MemberA named expression computed at query time (e.g., Variance = Actual − Budget). Supports cross-dimensional references and IS* functions.
Shared MemberA member that rolls up under multiple parents (e.g., a product in two categories).
Write-BackThe ability to write values into a cube via WRITE_CUBE or Data Forms. User inputs are stored separately from source data and merged at query time.
Data FormA Cloud EPM-style grid interface for structured data entry, with row/column/POV layout and support for spreading, locking, and comments.
SpreadingDistributing a value across bottom-level members when writing to a parent. Methods: REPLACE, ADD, SUBTRACT, SPREAD_EVEN, SPREAD_PROPORTIONAL, SPREAD_FILL.
Cube VariableA substitution variable (e.g., current_year = FY24) that can be referenced in POV strings using [CUBE_VAR=name] syntax.
Inline FormulaA formula passed directly in a query’s POV JSON, computed at runtime without being saved to the formula table.
IS* FunctionsHierarchy-aware formula functions (ISLEAF, ISCHILD, ISDESC, ISGEN, ISLEV, etc.) that adapt calculations based on a member’s position in the hierarchy.
Auto-RebuildA feature that automatically refreshes hierarchies when the underlying dimension table data changes, using Snowflake managed tasks.
Input TableA per-cube table that stores user-written values. Merged with source data at query time, with user inputs taking priority.
LockPrevents writes to a specific dimension member (e.g., lock a closed version or period).
Application RoleA Snowflake Native App role (CUBE_ADMIN, CUBE_WRITER, CUBE_PUBLIC) that controls what actions a user can perform within Casabase Cube.
Snowflake Native ApplicationAn application built with the Snowflake Native App Framework that runs entirely inside the consumer’s Snowflake account, with no external data movement.

1.7 System Requirements

RequirementDetails
Snowflake AccountAny Snowflake edition (Standard, Enterprise, Business Critical) on AWS, Azure, or GCP
Snowflake RoleACCOUNTADMIN (or CREATE APPLICATION privilege) for installation; application roles for daily use
Virtual WarehouseAny active warehouse (XS is sufficient for most queries; scale up for large datasets)
BrowserLatest version of Chrome, Firefox, Safari, or Edge
DataAt least one fact table and one dimension table with parent-child columns in your Snowflake account

No client software, plugins, VPN connections, or external services are required.

1.8 Getting Help

ResourceDetails
In-App Help CenterNavigate to the Help page in the sidebar for AI-powered assistance and searchable knowledge base
Websitecube.casabasesoftware.com
Email Supportsupport@casabasesoftware.com
Current VersionCheck via: DESC APPLICATION CASABASE_CUBE;
Share this Doc

Getting Started

Or copy link

CONTENTS