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 it? I tried to use star schema

  • 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.

  • 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

7 Replies

  • Hey alks_skla_f ,

     

    From the attached picture, I believe there is a data modeling issue at play. The 'case survey' table and the 'case_history' table cannot cross filter each other. Yes, they are both connected to 'case dimension' but the filtering only flows in one direction that is from 'case dimension' to each of these tables. So, Power BI will now try to create a Cartesian product which will blow out the resources (and is probably not even the result you want). 
    Hope it helps!

      • alish_b's avatar
        alish_b
        Super User

        Please share a representative sample of the data (without any sensitive data) that can be copied so that we can get a general idea of the data at hand. Make sure the data demonstrates the issue (in this case, I am assuming there is a many to many scenario which made you opt for the dimension table). And also include a basic mockup of the table visual you are trying to achieve (an excel table showing what end result should look like). 

  • 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.

  • 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

    • v-dineshya's avatar
      v-dineshya
      Community Support

      Hi alks_skla_f ,

      We haven’t heard from you on the last response and was just checking back to see if you have a resolution yet. And, if you have any further query do let us know.

       

      Regards,

      Dinesh