Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-02-2008
Angel Fernández Angel Fernández is offline
Miembro
 
Registrado: may 2004
Ubicación: Valencia - España
Posts: 141
Poder: 20
Angel Fernández Va por buen camino
Base de datos enormes con firebird. ¿Cómo la estructuro?

Saludos al foro.
Quisiera ver si podéis orientarme según vuestra experiencia.
Tengo que crear una base de datos para almacenar muchísimos datos.
Se trata de recoger los datos que toman sensores de humedad, temperatura, lluvia y encharcamiento.
Estos datos se toman cada minuto a lo largo de las 24 del día todos los días del año y hay 30 sensores de humedad, otros tantos de lluvia y 2 ó 3 de lluvia y otro par de encharcamiento.
Total unos 70 sensores. Los datos los recoge un datalogger en formato csv (separados por puntos y comas), de ahí con una aplicación delphi los paso a una BD de Firebird.
Me he decidido por Firebird gracias a los buenos comentarios que he leído en este foro.
Ahora bien, haciendo cálculos así rápidos me salen aprox. 37 millones de entradas al año (24 horas x 60 minutos x 365 días x 70 sensores).

Estoy en la duda de hacer una tabla por sensor (sea de temperatura, humedad, etc no importa) del tipo:
Tabla: SENSORH1 (Sensor 1, tipo humedad)
Campos:
ID IDUBICACION FECHA HORA DATO
------------------------------------------------------------
1 2 14/01/2008 14:30:05 52.36
2 2 14/01/2008 14:31:00 52.46
ETC....

idubicacion enlazaría con otra tabla donde pondría datos de ubicación, etc.

Tabla2: SENSORT1 (Sensor 1 de temperatura)
Mismos campos

Y así hasta 70 tablas, una para cada sensor. Estas tablas almacenarían 1440 datos diarios (24 horas x 60 minutos).

Otra opción sería una tabla para humedad con los datos de todos los sensores de humedad, otra para temperatura, etc. con estos campos:

ID IDSENSOR FECHA HORA DATO
------------------------------------------------------------------
1 1 14/01/2008 14:30 xxx
2 2 14/01/2008 14:30 xxx
3 3 14/01/2008 14:30 xxx
etc.

idsensor enlazaría con otra tabla donde indicaría tipo de sensor, ubicación etc.

Así tendría 4 tablas (humedad, temp, lluvia y encharcamiento) con 100800 entradas diarias (24 x 60 x 70 sensores).

¿Qué opción os parece mejor para optimizar la base de datos? ¿Alguna otra alternativa? Y otra cosa: ¿Firebird puede con tantos registros? Hay que tener en cuenta que se desea crear un banco de datos de varios años (5 ó más). Para 7 años por ejemplo saldrían: (100800 x 365 x 7) = casi 256 millones de datos.

Agradeceré mucho vuestros comentarios, ya que hasta ahora he hecho muchas cosas en access, y muy pocas en firebird y con sólo algunos cientos de datos.

Utilizo Delphi 7, Firebird 2.0 y componentes MDO.

Gracias de antemano.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Herramienta case para diccionario de datos de base de datos firebird mcalmanovici Firebird e Interbase 1 11-02-2007 15:17:37
Como conectarme a una base de datos hecha en firebird? JuanErasmo .NET 5 30-12-2006 18:13:03
base de datos firebird Zehcliv Conexión con bases de datos 3 04-10-2006 17:45:27
Como conectar una Base de Datos en Firebird con TSQL Conection ?? Fer Gómez Firebird e Interbase 0 08-02-2006 20:52:37
como pasar una base de datos de fotografias en access a firebird Nelly Firebird e Interbase 1 06-10-2005 17:48:45


La franja horaria es GMT +2. Ahora son las 19:14:38.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi