Pregunta

Tengo un script que genera secuencias de comandos DDL para definir las vistas materializadas para una base de datos normalizada. Algunas mesas tienen columnas como "propietario" que apuntan a un usuario de base de datos en particular, que luego puede crear vistas de que sólo mostrará las filas de una tabla que el usuario crea base de datos actual. Estos puntos de vista en algunos casos sería beneficioso tanto desde el punto de vista de seguridad y comodidad. - por ejemplo, mostrar sólo los propios resultados de uno cuestionario de opción múltiple

La cosa es que, aparte de un puñado de mesas, hay muchas mesas en el que podía imaginar a alguien pidiendo ese punto de vista, pero no puedo pensar en un caso de uso concreto. Sin embargo, creo que a veces dicha funcionalidad en general puede ser útil, ya que no siempre se puede prever todos los casos de uso.

Mi pregunta es, ¿cuántos de estos puntos de vista personalizados me molesto generando de forma automática? Durante varios cientos de tablas, esto se suma una buena parte del tiempo a la construcción, pruebas y procesos de evaluación comparativa, automatizados que sean. ¿Le errar por el lado de la funcionalidad adicional que no puede ser utilizado, o en el lado de tener disponibles sólo aquellos puntos de vista que se han pedido / que sabe que será útil?

¿Fue útil?

Solución

Esta es una buena pregunta que debe hacerse - generalidad es (generalmente ;-) una buena cosa, pero como se observa generalizar que puede lanzar en una explosión combinatoria. Puede ser posible organizar los bits necesarios de DDL que se generen "justo a tiempo" cuando un usuario intenta hacer uso de ella (por supuesto, mantener un poco de "caché" de los bits que ya han demostrado su utilidad)?

Si eso es inviable y, a continuación, teniendo en cuenta la posibilidad de "puntos de vista potencialmente útiles" para crecer de forma exponencial en el número de tablas y columnas, de mala gana quedaría con el "hacer sólo lo que se conoce para ser útil / deseada" estrategia (y esforzarse para que sea muy fácil para los usuarios que me haga saber cuando me necesitan añadir algo más ...).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top