Database.es - jjaroztegi/BuildingSignalSimulator GitHub Wiki
Documentación de la Base de Datos
Descripción General
El Simulador de Distribución de Señal utiliza una base de datos relacional para almacenar datos de componentes, configuraciones y márgenes de calidad. La base de datos está diseñada para gestionar eficientemente los componentes de red y sus especificaciones técnicas mientras soporta las funciones de cálculo y optimización de señal.
Estructura del Esquema
El esquema de la base de datos está organizado en tres secciones principales:
1. Tablas Principales
TiposComponente
Almacena los tipos de componentes disponibles en el sistema.
Columna | Tipo | Descripción |
---|---|---|
id_tipos_componente |
COUNTER (PK) | Identificador único |
nombre |
TEXT(50) | Nombre del tipo de componente |
descripcion |
TEXT(255) | Descripción detallada |
Componentes
Almacena información general de los componentes.
Columna | Tipo | Descripción |
---|---|---|
id_componentes |
COUNTER (PK) | Identificador único |
id_tipos_componente |
LONG (FK) | Referencia a TiposComponente |
modelo |
TEXT(100) | Nombre del modelo del componente |
costo |
CURRENCY | Costo unitario |
2. Tablas de Componentes Específicos
Coaxiales
Propiedades técnicas de cables coaxiales.
Columna | Tipo | Descripción |
---|---|---|
id_coaxiales |
COUNTER (PK) | Identificador único |
id_componentes |
LONG (FK) | Referencia a Componentes |
atenuacion_470mhz |
DOUBLE | Atenuación a 470 MHz |
atenuacion_694mhz |
DOUBLE | Atenuación a 694 MHz |
Derivadores
Propiedades de los derivadores.
Columna | Tipo | Descripción |
---|---|---|
id_derivadores |
COUNTER (PK) | Identificador único |
id_componentes |
LONG (FK) | Referencia a Componentes |
atenuacion_derivacion |
DOUBLE | Atenuación de derivación |
atenuacion_paso |
DOUBLE | Atenuación de paso |
directividad |
DOUBLE | Directividad |
desacoplo |
DOUBLE | Desacoplo |
perdidas_retorno |
DOUBLE | Pérdidas de retorno |
Distribuidores
Propiedades de los distribuidores.
Columna | Tipo | Descripción |
---|---|---|
id_distribuidores |
COUNTER (PK) | Identificador único |
id_componentes |
LONG (FK) | Referencia a Componentes |
numero_salidas |
LONG | Número de salidas |
atenuacion_distribucion |
DOUBLE | Atenuación de distribución |
desacoplo |
DOUBLE | Desacoplo |
perdidas_retorno |
DOUBLE | Pérdidas de retorno |
Tomas
Propiedades de las tomas.
Columna | Tipo | Descripción |
---|---|---|
id_tomas |
COUNTER (PK) | Identificador único |
id_componentes |
LONG (FK) | Referencia a Componentes |
atenuacion |
DOUBLE | Atenuación |
desacoplo |
DOUBLE | Desacoplo |
3. Tablas de Configuración
Configuraciones
Almacena las configuraciones de edificios.
Columna | Tipo | Descripción |
---|---|---|
id_configuraciones |
COUNTER (PK) | Identificador único |
nombre |
TEXT(100) | Nombre de la configuración |
nivel_cabecera |
DOUBLE | Nivel de cabecera |
num_pisos |
LONG | Número de pisos |
costo_total |
CURRENCY | Costo total |
fecha_creacion |
DATETIME | Fecha de creación |
usuario_creacion |
TEXT(50) | Creado por |
fecha_modificacion |
DATETIME | Fecha de última modificación |
usuario_modificacion |
TEXT(50) | Modificado por |
MargenesCalidad
Define los márgenes de calidad aceptables.
Columna | Tipo | Descripción |
---|---|---|
id_margenes_calidad |
COUNTER (PK) | Identificador único |
tipo_senal |
TEXT(50) | Tipo de señal |
nivel_minimo |
DOUBLE | Nivel mínimo aceptable |
nivel_maximo |
DOUBLE | Nivel máximo aceptable |
Relaciones
-
TiposComponente → Componentes
- Relación Uno a Muchos
- Cada tipo de componente puede tener múltiples componentes
- Clave Foránea:
Componentes.id_tipos_componente
→TiposComponente.id_tipos_componente
-
Componentes → Tablas Específicas de Componentes
- Relaciones Uno a Uno
- Cada componente tiene una entrada en su tabla específica de tipo
- Claves Foráneas:
Coaxiales.id_componentes
→Componentes.id_componentes
Derivadores.id_componentes
→Componentes.id_componentes
Distribuidores.id_componentes
→Componentes.id_componentes
Tomas.id_componentes
→Componentes.id_componentes
Optimización de Rendimiento
Índices
Los siguientes índices están implementados para mejorar el rendimiento de las consultas:
idx_componentes_tipo
enComponentes(id_tipos_componente)
idx_coaxiales_componente
enCoaxiales(id_componentes)
idx_derivadores_componente
enDerivadores(id_componentes)
idx_distribuidores_componente
enDistribuidores(id_componentes)
idx_tomas_componente
enTomas(id_componentes)
Datos de Ejemplo
Tipos de Componentes
- Cable Coaxial
- Base de Toma
- Derivador
- Distribuidor
Componentes de Ejemplo
- Cables: CE-752, CE-740, CE-170, FI-250, CL-200
- Tomas: BS-100, BS-112, BS-110, BS-111, BS-210, BS-510
- Derivadores: FP-414, FP-420, FP-426
- Distribuidores: FI-243, FI-473, FI-253, FI-483
Márgenes de Calidad
- TDT: Mín 45.0 dB, Máx 70.0 dB
Acceso a la Base de Datos
La aplicación utiliza JDBC para operaciones de base de datos a través de las siguientes clases:
com.signalapp.dao.AccessConnection
: Gestión de conexión a MS Accesscom.signalapp.dao.DerbyConnection
: Gestión de conexión a Derbycom.signalapp.dao.*DAO
: Objetos de Acceso a Datos para cada entidad