He estado deliberando sobre la mejor manera de mantener un conjunto de datos "en vivo" y un conjunto de datos en borrador en la base de datos. La versión en vivo se muestra en un sitio web y la versión en borrador se trabaja hasta que esté lista para entrar en funcionamiento. El modelo es relacional y consta de muchas tablas.Modelo de base de datos en vivo y en borrador
Mi método actual es tener 2 bases de datos, una para el borrador y otra para el directo. Cuando promociona los datos para que vivan, SQL simplemente copie los datos del borrador de base de datos a la base de datos en vivo.
Esto está bien, pero un poco lento y parece desordenado. Y frecuentemente SQL tiene que considerar ambos conjuntos de tablas.
Otra forma sería hacer que un indicador en vivo sea parte de la clave de cada tabla, de modo que pueda mantener tanto en vivo como en borrador en la misma tabla y actualice el indicador para que los datos estén activos. - No estoy realmente convencido de esta idea.
- El DBMS es Sybase.
Estaría agradecido si alguien tiene alguna otra sugerencia.
U.M.
Gracias por las respuestas hasta el momento. Me han dado más ideas. - Tener la transmisión en vivo y el borrador en la misma tabla - Tendré que asegurarme de que los datos del borrador no se muestren por accidente. - Tener una bandera y configurarla en las filas de borrador para hacerlas vivir ... También podría marcar la antigua fila en vivo 'desactualizada' y la aplicación tomará un corte de 'en vivo' y guardará en borrador si hay algún cambio De esa forma evito una gran eliminación cuando los datos se marcan como en vivo. – sqlchan