¿Qué es un indicador de eliminación temporal?
Se trata de una columna del conjunto de datos que indica que el elemento se ha eliminado en la interfaz y ya no aparecerá en la interfaz de usuario de Brightspace. En el contexto de los diferenciales, es una forma de indicar que la fila ya no está en uso y que potencialmente se puede quitar del almacén de datos. Para obtener más información, consulte la Presentación de eliminaciones temporales para los conjuntos de datos de Brightspace artículo.
El dilema: ¿Solo se pueden usar archivos diferenciales cuando no hay un indicador de eliminación temporal?
Muchos conjuntos de datos de Brightspace tienen una marca de eliminación temporal, sin embargo, algunos no la tienen. Idealmente, para minimizar el volumen y el tiempo de procesamiento, sería más eficiente usar solo archivos diferenciales (y no usar los archivos completos). Sin embargo, los archivos diferenciales solo incluyen inserciones y actualizaciones y, por lo tanto, no incluyen las filas que se han eliminado de forma permanente desde la ejecución anterior. Estas eliminaciones se pueden confirmar utilizando archivos completos, sin embargo, hay algunas estrategias que puede adoptar para permitirle capturar las filas eliminadas o las filas innecesarias utilizando solo archivos diferenciales, incluso cuando no hay un indicador de eliminación temporal en el propio conjunto de datos.
Para los siguientes estudios de caso que muestran las estrategias disponibles, utilizaremos el progreso del usuario de contenido como nuestro conjunto de datos objetivo. El progreso del usuario de contenido suele ser un conjunto de datos muy grande, ya que tiene todo el progreso de todos los usuarios en todo el contenido y no incluye un campo de eliminación temporal. A menudo es difícil de manejar para trabajar con él como un archivo completo y puede ser una tabla enorme cuando se almacena.
Estrategia 1: Heredar la eliminación temporal de un conjunto de datos dependiente (objeto base)
A menudo, cuando un conjunto de datos no tiene una marca de eliminación temporal, hay un conjunto de datos relacionado que sí lo tiene y que puede usar para identificar qué filas del conjunto de datos de destino se eliminan realmente. Es importante recordar que aquí está la relación entre los dos conjuntos de datos, el conjunto de datos con eliminaciones temporales debe ser un requisito previo para cualquier actualización en el otro conjunto de datos. Por ejemplo, en el ejemplo de Objetos de contenido y Progreso del usuario de contenido a continuación, ya no puede tener ningún progreso relacionado con el contenido una vez que se ha eliminado el objeto de contenido.
Cuando se utiliza el progreso del usuario de contenido en un informe, a menudo también se utiliza el conjunto de datos Objetos de contenido para obtener el título del contenido, para agrupar por módulo o para vincular a unidades organizativas para obtener la información del curso. El conjunto de datos Objetos de contenido contiene un indicador de eliminación temporal (IsDeleted) y, probablemente, si el contenido se ha eliminado, el progreso histórico ya no es relevante para ningún análisis o informe y debe excluirse. Este proceso también podría automatizarse como un procedimiento almacenado para ejecutarse periódicamente y eliminar cualquier fila del progreso del usuario de contenido en la que se indique que se eliminará la fila de objetos de contenido.
Estrategia 2: Tratar las filas como eliminadas donde las inscripciones o los roles hacen que los datos sean innecesarios
Al observar el nivel del curso, puede ser prudente eliminar las filas que no sean el tipo de datos que desea analizar. Por ejemplo, Brightspace trata a todos los usuarios de la misma manera en los datos, pero es posible que solo desee informar sobre las acciones de los estudiantes o, específicamente, sobre aquellos estudiantes que están actualmente en un curso y no necesitan almacenar las acciones de otros usuarios. En este caso, puede ser útil eliminar regularmente las filas correspondientes a las acciones de las personas que no son su objetivo. Una nota de precaución aquí: si sus políticas permiten que las personas cambien de rol dentro del mismo curso o que se vuelvan a inscribir después de haber sido retirados, es posible que esta no sea la estrategia correcta, ya que es posible que elimine filas que realmente desee en el futuro.
Al usar el Progreso del usuario de contenido, es posible que desee unirse a Inscripciones y retiros o Inscripciones de usuario para obtener el estado de inscripción actual de un usuario y su rol, de modo que tenga suficiente información para determinar si vale la pena mantener la fila.
Estrategia 3: Mantener los datos independientemente del estado
En algunos casos, puede que no valga la pena utilizar las estrategias anteriores para purgar los datos o seguir utilizando los conjuntos de datos completos. Por ejemplo, el conjunto de datos Detalles de rol no contiene un campo de eliminación temporal. Sin embargo, es probable que cambie los roles en raras ocasiones y los elimine aún más raramente, por lo que habrá pocas filas y pocas actualizaciones. Además, dejar allí una fila que se ha eliminado en la interfaz no afecta negativamente a ninguna lógica de informes, ya que ese rol ya no se usará en las inscripciones y, por lo tanto, se filtrará de cualquier informe de estado actual resultante. Definitivamente vale la pena centrarse en optimizar los conjuntos de datos más grandes para minimizar el almacenamiento y el uso de archivos completos, pero en algún momento el análisis de costo-beneficio favorecerá dejar los conjuntos de datos más pequeños sin eliminaciones o continuar extrayendo los conjuntos de datos completos periódicamente para verificar las eliminaciones. Es importante saber dónde existe esa línea en su organización y tomar decisiones en consecuencia.
Conclusión
Con la expectativa de que su objetivo final es alejarse por completo del uso de los conjuntos de datos completos y confiar solo en los diferenciales, los indicadores de eliminación temporal lo llevan parcialmente allí, y las estrategias anteriores pueden acercarlo aún más. En última instancia, minimizar los datos que está descargando, procesando y almacenando no solo le ahorra dinero, sino que probablemente haga que los informes que sus usuarios necesitan lleguen a sus manos más rápido. También es importante tener en cuenta que algunos conjuntos de datos nunca tendrán un campo de eliminación temporal porque son registros y, por lo tanto, sus filas no se eliminarán. Con una reflexión detenida sobre qué datos deben conservarse y por qué, puede optimizar su procesamiento de datos y minimizar el espacio de almacenamiento que necesita para los datos de Brightspace sin sacrificar ninguna de sus capacidades de generación de informes.