Forum Discussion

alks_skla_f's avatar
alks_skla_f
Helper II
7 months ago
Solved

Issue: Not enough memory, unable to create simple table visual

I have this data model:  When I try to create a table visual where I am mapping columns from these 3 tables (in yellow rectangle), I am getting issue "There's not enough memory". How can I fix...
  • cengizhanarslan's avatar
    7 months ago

    1) Introduce proper dimension tables

    You need a true star schema:

    • One or more dimension tables (Date, Customer, Product, etc.)

    • Each fact table connects only to dimensions

    • No fact-to-fact relationships

    Example:

    DimCustomer ──▶ Fact_A DimCustomer ──▶ Fact_B DimCustomer ──▶ Fact_C
     
    Then in the visual:
    • Columns → from dimension tables

    • Values → measures from facts

     Do NOT put fact columns directly into the table.

     

    2) Use measures, not fact columns

    Instead of this (problematic):

    • Fact_A[Amount]

    • Fact_B[Cost]

    • Fact_C[Quantity]

    Do this:

    Amount A = SUM ( Fact_A[Amount] )
    Cost B   = SUM ( Fact_B[Cost] )
    Qty C    = SUM ( Fact_C[Quantity] )
     
    And put:
    • Rows → dimension attributes

    • Values → these measures

    This avoids row-level joins completely.

     

    3) Check and fix relationship directions

    Make sure:

    • Single-direction filters from Dimension → Fact

    • Avoid Both unless strictly required

    • Avoid many-to-many unless unavoidable

    Many-to-many + table visual = memory disaster.

  • Jaywant-Thorat's avatar
    7 months ago

    Why you’re getting “There’s not enough memory”?

    Even though you tried a star schema, this specific issue is caused by:

    Reason-1: High-cardinality columns across multiple fact-like tables

    Those 3 yellow tables look like:

    • Large row counts

    • Many text / ID / GUID columns

    • Joined together in a single Table visual

    Power BI tries to create a huge intermediate result set (VertiPaq explosion).

    To FIX it, do these in order

    1. NEVER put columns from 3 large tables in one table visual

    Rule: A table visual should have 1 fact table + dimensions only

    • Pick ONE of the yellow tables as the base
    • Do not mix columns from all 3

    2. Use DIMENSIONS only (no facts) for descriptive fields

    • Move: Names, Status, Type, and Category into dimension tables
    • Connect with 1-to-many, single direction

    3. Replace columns with MEASURES

    • This causes memory blow-up
    • Raw numeric columns from multiple tables, use SUM(), COUNT(), DISTINCTCOUNT()
    • Visual should be:
      • Dimension columns
      • Measures only

    4. Reduce cardinality (VERY IMPORTANT)

    In Power Query:

    • Remove unused columns

    • Remove GUID / long text if not required

    • Turn off Auto Date/Time

    • Prefer Integer keys over text

    5. Check relationship direction

    Set:

    • Single direction

    • Never bi-directional between large tables

    Quick Architecture Rule (Remember this)

    Table visual = multiple big tables

    Table visual = dimensions + measures

    If you still need data from all 3 tables, Create ONE consolidated fact table in Power Query:

    • Merge once

    • Load once

    • Visual queries only one table

    Remember:

    • This is not a RAM issue
    • This is a model + visual design issue
    • Fix the visual grain + cardinality, memory error will disappear.

     

    =================================================================
    Did I answer your question? Mark my post as a solution! This will help others on the forum!

    Appreciate your Kudos!!

    Jaywant Thorat | MCT | Data Analytics Coach
    LinkedIn: https://www.linkedin.com/in/jaywantthorat/
    Join #MissionPowerBIBharat = https://shorturl.at/5ViW9
    #MissionPowerBIBharat
    LIVE with Jaywant Thorat from 10 Jan 2026
    8 Days | 8 Sessions | 1 hr daily | 100% Free