2010-09-28 21 views
7

FastDB es una base de datos de código abierto en memoria que está estrechamente integrada con C++ (admite un lenguaje de consulta similar a SQL donde las tablas son clases y las filas son objetos). Al igual que la mayoría de los IMDB, está destinado a aplicaciones dominadas por patrones de acceso de lectura. Los algoritmos y las estructuras de datos están optimizados para sistemas que leen y escriben datos por completo en la memoria principal (RAM). Se supone que es muy rápido, incluso en comparación con otras bases de datos en memoria, pero no puedo encontrar ningún punto de referencia en línea.¿Alguien tiene alguna experiencia con FastDB (base de datos en memoria C++)?

Estoy considerando usar FastDB para datos de series de tiempo, en un proyecto donde 1) latencias de lectura de acceso aleatorio de menos de milisegundos y 2) millones de filas por segundo de lectura secuencial sería muy bueno.

No puedo encontrar muchas referencias a la experiencia de primera mano con FastDB; alguien lo ha usado aquí? ¿Puede señalar algún punto de referencia de FastDB, especialmente aquellos que consideran la latencia y el rendimiento de lectura?

+3

¿Soy solo yo, o esto suena más como un anuncio que una pregunta? –

+0

'@Jerry Coffin:' No significaba que sonara como un anuncio. Quería señalar sus características principales (en memoria, sin SQL e integración con C++). Pensé que varias personas aquí han observado los diferentes IMDB y podrían tener alguna idea de esto. –

+0

Anuncio o no, sigue siendo una pregunta válida. O al menos sería si hubiera una pregunta allí en alguna parte. –

Respuesta

5

Un reciente post en un foro de Erlang (desde 2009): http://www.trapexit.org/forum/viewtopic.php?p=49476#49476 tiene alguien (Sergey Aleynikov) recomendar FastDB para los sistemas comerciales con latencias sub-milisegundos:

Si no quiere gastar demasiado tiempo de codificación C++, ya que tiene
ya hecho un buen trabajo de abstracción de backend de mnesia, ¿por qué no
crear un controlador de Erlang para esta base de datos: www.fastdb.org. Se basa
en la memoria archivos, implementados en C++ asignada, es relativamente rápido en comparación
a otras bases de datos en memoria (aproximadamente 250k Búsquedas de/s, 50k inserciones/s), tiene
capacidades de series de tiempo, simple C-API . Implementé la interfaz FastDB
en varios idiomas, y en general es bueno para sistemas que se ocupan de las latencias
en un rango de menos de milisegundos. Puede ser suficiente para usted a menos que
necesite permanecer en el reino de microsegundos bajos.

Mi 2c.

Serge

Es bastante intimidante ver a la gente preocuparse por las latencias en los bajos microsegundos; Estoy considerando FastDB para procesamiento de señal digital (DSP), donde los sistemas de audio en vivo generalmente limitan la latencia a no más de 10 milisegundos. Por supuesto, si un sistema responde en milisegundos, podríamos usar pulsos de entrada de solo unos pocos microsegundos de longitud.

No hay mención de qué sistema se utilizó para las 250K búsquedas/s, 50K inserciones/s. Aún así, es un signo positivo.

Cuestiones relacionadas