Como sugirió Dave, las bases de datos de MV están realmente diseñadas para funcionar mejor cuando conoce la clave del registro que está tratando de recuperar. Algunas personas se refieren a ellos como sistemas de bases de datos basadas en registros, en oposición a SQL, que es un sistema de base de datos basado en conjuntos.
Realmente depende de lo que intenta hacer, cómo se deben estructurar los datos y qué otras herramientas tiene disponible. Paso la mayor parte del tiempo trabajando en MV (en su mayoría, los productos de Revelation) y manejamos conjuntos de registros en más de 10,000,000, y la velocidad es buena.
La intensidad de la base de datos de MV es cuando los datos son fluidos. Encontramos que la mayoría de nuestros clientes lo usan para aplicaciones como productos legales, médicos y financieros; aplicaciones donde las relaciones son complejas y pueden cambiar rápidamente y drásticamente con el tiempo.
Es posible que desee ver el movimiento sin SQL, que comparte muchos de los mismos conceptos, aunque MV y no SQL realmente no son lo mismo.
La desventaja principal de MV es menos en su estructura, que sus herramientas. Generalmente encontrará que, dado que la base de desarrolladores es más pequeña, el conjunto de herramientas y la ayuda disponibles son más pequeños. También puede encontrar que el lenguaje básico incrustado que la mayoría de las ofertas le ofrecen carece de la codificación de estilo de objeto a la que está acostumbrado. Hay veces que incluso JavaScript parece tener más funcionalidad como lenguaje.
Dicho esto, dado que las bases de datos de MV son principalmente cadenas gigantes, el manejo de las cadenas de idiomas es excelente. Son geniales para manipular cadenas HTML y XML directamente.
Supongo que la gran pregunta que tengo es si tiene preguntas específicas. No voy a abrir una guerra diciendo que es como pasar de Windows a Linux o una Mac, o incluso pasar de Debian a Red Hat, pero las estructuras y sistemas son diferentes, por lo que tienen diferentes conceptos, fortalezas, limitaciones y propósitos. . Si intenta manejar una base de datos MV como SQL (que puede), encontrará que no es la mejor opción. Una base de datos MV mal diseñada puede ser un ejercicio de frustración. Una base de datos MV bien diseñada puede ser una cosa de belleza.
Gracias por la respuesta detallada. ¿Cuáles son sus pensamientos sobre la sobrecarga de convertir todo a y de cadenas para el almacenamiento en la base de datos, y para analizar las entradas de registro para múltiples valores (y subvalores). ¿Esto supera algunos de los beneficios conceptuales de almacenar datos en una representación más 'de la vida real'? –
No puedo darle una respuesta absoluta ya que depende de una multitud de factores. Por ejemplo, ¿cuál es el perfil de lectura/escritura de la aplicación? ¿Cuál es la comparación entre las nuevas escrituras y las escrituras de actualización? Otros factores serían las diferencias de tiempo de desarrollo. –