Forum Discussion

ahmedshalabyy12's avatar
1 year ago
Solved

Refreshing the model from the service

Hello ,    I have question why to refresh the semantic model from the service via the refresh icon or button it's prohibited and it will consume all the resoucres , but to refresh the whole model f...
  • Anonymous's avatar
    Anonymous
    1 year ago

    Hello ahmedshalabyy12  ,

    That's a very insightful question! Let me explain why refreshing a semantic model directly from the Power BI Service using the refresh button is not recommended, while refreshing it via Azure Data Factory (ADF) is preferred approach.


    Manual Refresh from Power BI Service

    When you click the refresh icon on the Power BI Service:

    - It triggers a full dataset refresh immediately, without considering resource availability or scheduling.
    - It can consume high capacity resources, especially if triggered during business hours or alongside other processes.
    - There is no orchestration, no dependency checks, and no retry mechanism.
    - For large models, this can lead to gateway bottlenecks, timeouts, or capacity overload.
    - Manual refreshes don’t scale in enterprise setups and can negatively impact other users/models sharing the same capacity.



    Refresh via Azure Data Factory (ADF)

    ADF offers a fully orchestrated, automated, and scalable approach:

    - Refreshes can be scheduled and batched during off-peak hours.
    - You can chain the refresh after data loading or transformation processes (e.g., Synapse, Dataflow, Data Lake updates).
    - ADF provides error handling, logging, retry policies, and monitoring dashboards.
    - It ensures consistent refresh logic across environments (Dev/Test/Prod).
    - It aligns with enterprise-grade data pipelines and CI/CD practices.

     

    1. Resource Efficiency
    Manual Refresh: Can overuse capacity resources unexpectedly.
    ADF Refresh: Optimized usage with planned execution.

    2. Automation & Scheduling
    Manual Refresh: Requires manual trigger; no built-in scheduling.
    ADF Refresh: Fully automated with flexible scheduling options.

    3. Retry and Failure Handling
    Manual Refresh: No retry mechanism if the refresh fails.
    ADF Refresh: Supports retries and failure workflows.

    4. Dependency Management
    Manual Refresh: Cannot coordinate with upstream processes.
    ADF Refresh: Can be set to run only after data prep steps complete.

    5. Governance and Monitoring
    Manual Refresh: Limited visibility and audit tracking.
    ADF Refresh: Offers detailed logs, alerts, and monitoring dashboards.

    6. Enterprise Readiness
    Manual Refresh: Not scalable for large or critical workloads.
    ADF Refresh: Built for enterprise-grade orchestration and pipelines.

    7. Capacity Optimization
    Manual Refresh: May lead to contention during peak times.
    ADF Refresh: Can be scheduled in off-peak hours for efficient capacity use.

     



    Using ADF (or any orchestration layer like Logic Apps, Power Automate, or Azure Synapse pipelines) provides a 100% justified, controlled, and scalable refresh mechanism for semantic models, especially important for enterprise-grade Power BI implementations.

     

  • ahmedshalabyy12's avatar
    ahmedshalabyy12
    1 year ago

    So if i trigger the refresh button manually for example at 5 AM there's no peak and no one is using the resources it will be the same as using adf ?