Pregunta

Pregunta acerca de Cassandra

Por qué el infierno en la tierra nadie escribe un MOTOR de base de datos en Java ?
Puedo entender por qué usted quiere tener una interfaz Java, pero el motor...

Yo estaba bajo la impresión de que no hay nada más rápido que C/C++, y que un motor de base de datos no debería ser más lento que la velocidad máxima, y ciertamente no utiliza la recolección de basura...

¿Alguien puede explicar a mí lo posible el sentido de que hace / ¿por qué Cassandra puede ser más rápido que el normal de SQL que se ejecuta en C/C++ de código ?

Editar:
Lo siento por el "¿por Qué el infierno en la tierra", pero realmente no tenía ningún sentido para mí.
Me olvidé de considerar que una base de datos, a diferencia de la media de jardín-variedad programas de usuario, debe ser iniciado sólo una vez y, a continuación, se ejecuta durante un tiempo muy largo, y probablemente también como el único programa en el servidor, lo que evidentemente hace que para una importante diferencia de rendimiento.

Yo estaba más comparando/hace referencia a un 'disfuncional' (por decirlo suavemente) de Java impuesto programa que estaba usando en el momento de escribir (o más bien habría gustado uso).

De hecho, a diferencia del uso de Java para los programas de impuestos, el uso de Java para escribir un programa del servidor dedicado tiene perfecto sentido.

¿Fue útil?

Solución

Puedo ver un par de razones:

  • Seguridad:es más fácil escribir de seguridad de software en Java que en C++ (recuerde que los desbordamientos de buffer?)
  • Rendimiento:no es QUE peor.Definitivamente es peor en el inicio, pero una vez que el código está en marcha y funcionando, no es una gran cosa.En realidad, usted tiene que recordar aquí un punto importante:El código Java se optimiza continuamente por la VM, por lo que en algunas circunstancias, se vuelve más rápido que C++

Otros consejos

¿A qué te refieres, C++?La mano codificados de la asamblea sería más rápido si usted tiene un par de décadas de repuesto.

Por qué el infierno en la tierra nadie escribe un MOTOR de base de datos en JAVA ?

Plataforma de independencia es un gran factor para servidores, porque usted tiene un montón más de hardware y sistema operativo heterogeneidad de los Pc de sobremesa.Otro es la seguridad.No tener que preocuparse por los desbordamientos de búfer significa que la mayoría de la peor clase de agujeros de seguridad son simplemente imposibles.

Yo estaba bajo la impresión de que no hay nada más rápido que C/C++, y que un motor de base de datos no debería ser más lento que la velocidad máxima, y ciertamente no el uso de la basura de la colección de...

Su impresión es incorrecta.C/C++ no es necesariamente más rápido que Java, moderno y recolectores de basura tienen una gran parte en que debido a que permiten la creación de objetos a ser increíblemente rápido.

No olvides que la Java Vm hacer uso de just-in-time (JIT) del motor que realizar sobre la marcha optimizaciones para que Java comparable a la de C++ en términos de velocidad.Teniendo en cuenta que Java es bastante productiva de idioma (a pesar de sus detractores) y portátil, junto con el JIT optimización de la capacidad, significa que Java no es irrazonable elección para algo como esto.

La penalización de rendimiento para los modernos tiempos de ejecución de Java no es muy grande y la programación en Java es menos propenso a errores que en c.

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