2009-11-07 24 views
9

¿Qué puede decir acerca de la velocidad de las bases de datos de couchdb y mysql?couchdb vs mysql speed

Me refiero a solicitudes muy simples como obtener una fila (o un documento) por ID único y solicitudes simples como obtener los 20 ids/filas/documentos con la fecha más grande (por supuesto, usar índices y vistas, etc.). Realmente sé cómo funciona en CouchDB, pero estoy bastante seguro de que hay algo. Por favor, no me envíe a aprender cómo funciona CouchDB: lo voy a aprender, pero de todos modos necesito una comparación de rendimiento).

Gracias!


mientras me daba cuenta de los eslabones de la primera respuesta, mientras que sólo tengo un servidor de base de datos, es mucho mejor usar MySQL?

+0

¿Ha considerado MariaDB en lugar de MySQL? –

Respuesta

9

En primer lugar, tenga en cuenta que CouchDB no es una base de datos SQL relacional como MySQL. No estoy seguro de si la consulta que describes puede expresarse en CouchDB (pero no soy un experto en esto).

Dicho esto, aquí hay algunos enlaces:

+0

Sí, entiendo :) Espero que haya una diferencia en el rendimiento. ¿Qué pasa con la consulta: sí, puede obtener datos con parámetros, pero tengo que crear una vista especial para este tipo de consulta antes de ejecutarlo. –

+0

¿qué pasa con los enlaces: me hicieron sentir triste :(Entonces, como me di cuenta, si bien tengo un solo servidor para DB, es mejor utilizar MySQL? –

+0

Recomendaría ejecutar sus propios experimentos con el tipo de consultas que espera. Sí, parece que CouchDB todavía es algo inmaduro en lo que respecta al rendimiento. – Thomas

19

Encontré this article vinculado en otra pregunta SO sobre el rendimiento de MySQL frente a CouchDB, pero no sé si cuenta.

+2

LOL, demasiadas personas en mi ingenio. –

+6

El primer humor que he visto en StackOverflow. Muy necesario. Gracias. – Ryan

0

Le recomendaría que haga una prueba usted mismo. Por qué ? CouchDb y MySql son bestias muy diferentes, y la forma en que elegiría organizar los datos en cada uno dependería mucho del dominio de su problema. En consecuencia, la forma de consultarlos también será diferente.

Creo que algunos datos ficticios en cada uno y algunos puntos de referencia usted mismo valdrá más la pena que mirar los resultados de alguna prueba arbitraria. Me doy cuenta de que tomará un tiempo en sí mismo, pero creo que es la mejor manera de avanzar.

-1

Una de las mejores analogías que he escuchado es que CouchDB no quiere ser un Ferrari, quiere ser un Honda, es decir, no el más rápido, pero el más confiable.

1

Una forma de que couchdb podría facilitar una mejora de velocidad dramática, es con su replicación. Se puede replicar a través de conexiones de alta latencia, tal vez incluso hasta un sitio de cliente si la infraestructura de seguridad lo admite. De esta forma, podría tener múltiples bases de datos en múltiples ubicaciones físicas sin sacrificar su complejidad.

Cuando hice algunas comparaciones por mi cuenta, encontré que el sofá era aproximadamente la mitad de la velocidad de Oracle para un escenario con un gran número de inserciones de 100k inserciones mientras los lectores estaban leyendo. Esto, por supuesto, no es la fuerza de un sofá, ya que los lectores tuvieron que reconstruir las vistas mientras ocurrían los insertos.

0

Exactamente. La principal diferencia es que: relacional vs no relacional. Y depende de lo que necesite.Hay un movimiento en esto: http://en.wikipedia.org/wiki/NoSQL

Y, otra buena no-relacional DB:

www.mongodb.org