Quien no tuvo un modelo de datos que solo tenía una única tabla de actualización diaria mientras que el resto de las tablas solo cambiaba mensualmente. En estas situaciones suele ser una molestia actualizar diariamente sabiendo que solo una tabla cambia.
Con tantas actualizaciones de características alrededor de Power Bi bajo el ecosistema de Fabric, aparecieron nuevas formas para actualizar una sola partición de una tabla de un modelo semántico.
En este artículo vamos a ver formas de actualizar una sola tabla y partición de un conjunto de datos de Power Bi de distintas maneras.
Existen diversas maneras de actualizar una única tabla de un modelo de datos de Power Bi. Aquí vamos a ver tres de ellas, seguramente hay muchas más con ligeros detalles que cambian. Lo que no cambia es la licencia necesaria para lograrlo. Para poder acceder a una sola partición de una tabla y delimitar una actualización, necesitamos ver el modelo que está en el servicio. Esto es posible únicamente con una licencia por capacidad o premium por usuario. Por el lado de permisos, la cuenta que ejecute el proceso tiene que poder leer y escribir el conjunto de datos.
Lo primero sea la opción que sea, será recolectar el nombre de la partición que vamos a actualizar. Para conocer el nombre de la partición, podemos utilizar una de las bien conocidas external tools como DAX Studio o Tabular Editor. En este caso usé DAX Studio conectando al Workspace y seleccionando mi conjunto de datos. Podemos correr una consulta de información como se indica en esta imagen:

NOTA: Este es un modelo que tiene una sola partición por cada tabla, distinto sería en caso de tener configurado Incremental Refresh.
En este ejemplo, vamos a actualizar la tabla Product de un tradicional Adventure works cuya partición lleva el nombre de Product-4d66dae4-17df-45f6-85ae-6683c7644026.
Veamos las opciones para lograrlo.
1- Enhanced refresh con SimplePBI (Rest API)
Dentro de lo que es el universo de Rest API de microsoft, existe un request de actualización con esteroides. Éste no esta en la lista que se encuentra en Power Bi Rest API pero la librería SimplePBI lo incorporó para que podamos disponerlo. Veamos como ejecutar una actualización de esa tabla con código python. Pueden ejecutarla en cualquier parte que se permita python (local o nube).
El request solicita como mínimo el id de área de trabajo, id de conjunto de datos y los objetos. Las otras opciones son a definición nuestra, por ejemplo si queremos paralelismo o reintentos:

Entonces sencillamente podemos definir esos parámetros como indica la siguiente imagen:

Como pueden apreciar el script es muy simple, todo es bastante convencional salvo los parámetros de objetos y sus particiones.
NOTA: Si nunca usaron la Power Bi Rest API, les dejo éste artículo para comenzar.
Validamos que la ejecución fue exitosa y solo actualizó una tabla con una consulta al modelo desde DAX Studio

Fácilmente identificamos que actualizamos una sola partición.
Aquí más información de Enhanced refresh API: https://learn.microsoft.com/en-us/power-bi/connect-data/asynchronous-refresh
2- Data Pipelines
La segunda forma viene desde un recurso de Fabric. Dentro del canva de los Data Pipelines, existe una actividad llamada "Semantic model refresh" que nos permite correr actualizaciones de modelos semánticos con ciertas configuraciones adicionales.
Veamos la guía de la imágen

Luego de crear la actividad y ponerle nombre, tenemos su configuración en la pestaña de "Settings". Allí lo primero sea crear una conexión en el menú desplegable de "Connection" dirigida a Power Bi Datasets. Puede que parezca raro pero el servicio de Data Pipelines necesita que creemos una conexión al servicio de modelos semánticos de Power Bi. Si no crean la conexión, no podrán ver las tablas del modelo semántico para elegir una sola. Adicionalmente, puede ver que hay opciones similares a la api para configurar por interfaz. Una de ellas es a destacar puesto que suma mucho en una orquestación, me refiero a "Wait on completion". Ese check nos permite esperar a que termine antes de mostrar como completada la actividad.
Validamos la ejecución con DAX Studio nuevamente:

3- Fabric Semantic-links y TMSL
La tercera opción también será dentro de Fabric, esta vez utilizando notebooks. La librería semantic link tiene muchas flexibilidades para ejecutar acciones en Fabric. Entre ellas pude encontrar el llamado tradicional de ejecución de actualizaciones que existe desde Analysis Services con un formato json particular.
NOTA: Si no saben que es y nunca usaron semantic links, pueden comenzar a leerlo en éste artículo.
Para comenzar podemos identificar la partición construyendo una funcion simple con el mismo sempy y tmsl:

Conociendo la partición podemos definir el tradicional script TMSL como siempre lo hizo Analysis Services para llamar un método que lo ejecute:

Validamos con la siguiente imagen que corrió correctamente:

De esa forma completamos la tercera manera de correr una actualización de una sola tabla.
Espero que este artículo les resulte útil para actualizar conjuntos que lleven distintos tiempos de actualizaciones por tabla o incluso si hay grandes tablas pesadas y necesitamos actualizar algunas puntuales por chequeos.