Está en la página 1de 5

SISTEMA DE BASE DE DATOS

CLASE 1→

¿Qué significa SQL?


SQL por sus siglas en inglés significa Lenguaje de Consulta Estructurada
(Structured Query Language), es un lenguaje de programación diseñado para
actualizar, obtener, y calcular información en bases de datos relacionales.

Bases de datos relacionales: Diseñadas para almacenar datos estructuradas


en tablas relacionadas entre sí, las tablas tendrán filas y columnas, un
conjunto de campos, los datos pueden tener tipo (de dato guardado), son
estructuras escalables y flexibles, por lo general se utilizan en aplicaciones
que requieren transacciones en tiempo real, dentro de las más conocidas,
oracle, postgres sql, my sql, sql server.

Bases de datos no relacionales (no SQL) : No utilizan tablas y claves (como las
relacionales), sino que utilizan un conjunto de estructuras de datos, y son muy
escalables. Se suelen utilizar cuando tenemos un gran conjunto de datos no
estructurados.

Bases de datos de objetos (no SQL): Almacenan los datos como objetos,
orientados a lenguajes de programación que trabajan con objetos (java,
python, etc), este tipo de datos se utilizan para manipular y almacenar objetos
complejos y jerárquicos.

Bases de datos de grafos: Están pensadas para trabajar con datos


relacionales y complejos (por ej: relaciones sociales, redes de transporte etc).
Generalmente se utiliza cuando se trabaja con patrones en grandes bases de
datos.

Bases de datos en memoria: Almacena datos en memoria, son de las menos


eficientes.

SISTEMAS DE ARCHIVO:
Inconvenientes:
● Redundancia de datos
● Dificultad de acceso a los datos
● Problemas de integridad
● Problemas de atomicidad
● Dependencia de datos
● Anomalías en el acceso concurrente

Para resolver estos problemas se crearon las bases de datos, según sus tipos,
para arreglar estas problemáticas.
¿Qué es una base de datos?

Es un conjunto de datos almacenados entre los que existen relaciones lógicas


y ha sido diseñada para satisfacer los requerimientos de información de una
empresa u organización. La intención de poder trabajar con las bases de
datos, es poder manipular sus relaciones, modificar datos, consultar datos,
eliminar datos, etc. Existen sistemas de gestión de base de datos (SGBD), para
poder realizar estas acciones.

Sistemas de gestión de base de datos (SGBD): Conjunto de programas o


componentes que le permite a los “usuarios”, definir, crear y mantener la base
de datos y a su vez proporcionar un acceso controlado a la misma.

¿Quiénes son los usuarios?

Tipos de usuarios:
● Usuario final: Consumidor final.
● Diseñadores de bases de datos: Realizan el diseño lógico de la
base de datos, identificando los datos que hay que guardar y la
relación que debe tener con el resto de la base.
● Diseñadores de aplicaciones: Aquellos que realizan consultas
para el acceso de datos (suele ser el máximo permiso que poseen)
● Administrador de base de datos: Conoce a la perfección el
almacenamiento físico de los datos, administra la seguridad.

Características de Sistemas de Gestión de Base de Datos:

● Las relaciones entre conjuntos deberían ser dadas por las reglas de
negocio de la aplicación.
● Independencia lógica y física. Independencia entre el lugar donde se
guarda el dato y el dato en sí.
● Poseen mecanismos de seguridad que nos garanticen la integridad de
los datos.
● Evitar redundancia en los datos.
● Mantiene integridad.
● Mantiene consistencia.
● Atomicidad.
● Soportan la concurrencia.

ARQUITECTURA DE UN SGBD
Se busca proveer a los usuarios una vista abstracta de los datos, por lo tanto
a nivel usuario se va a buscar ocultar el detalle de cómo es almacenada la
información. Son 3 niveles de abstracción:
1. Nivel físico: como están almacenados los datos a nivel físico.
2. Nivel lógico: detalle de qué datos están almacenados y qué
relaciones existen entre los datos, que nos permite
independencia de los datos físicos.
3. Nivel vista: detalle de una parte de la base de datos, tenemos
distintas vistas según el uso necesario.

Los sistemas de bases de datos tienen instancias y esquemas:


● Instancia: un estado que presenta una base de datos en un tiempo
dado.
● Esquema: descripción lógica de la base de datos. Aquel que nos
proporciona los nombres de tablas, campos, tipo de datos, etc.
Generalmente no cambian los esquemas, sino que cambian los datos.

Independencia lógica-física de los datos: Tendremos 2 interfaces distintas


para que los programas accedan a los datos. Una de esas interfaces se
denomina DML (Data Manipulation Language) y la otra DDL(Data Definition
Language).

● DML: Sentencia de manipulación de datos.


● DDL: Lenguaje de definición. no manipula datos, sino la estructura.
Permite crear índices, restricciones, etc (todo lo anterior al dato).

Sistemas de gestión de base de datos: Ayudan por medio de administración


de transacciones , ya sean transacciones propias del motor, o las iniciadas
por administración. permite poder soportar el acceso a un conjunto de datos
como única unidad de trabajo. Propiedades:

● Atomicidad: los cambios aplicados a la transacción deben aplicarse


todos o ningunos.
● Consistencia: reglas y validaciones definidas en la base de datos deben
mantenerse luego de ejecutada la transacción.
● Aislamiento: significa que la ejecución de una transacción sobre un
conjunto de datos tiene que ser independiente de otra transacción
sobre el mismo conjunto de datos.
● Durabilidad: Luego de ejecutada una transacción los datos tienen que
ser persistentes más allá de un posible fallo del sistema.
● Estas propiedades también son conocidas como propiedades ACID

Están compuestos por 2 grandes módulos que son los responsables de


funciones específicas en un sistema completo, uno es el administrador de
almacenamientos y el otro es el procesador de consultas.
Storage Manager(Administrador de almacenamiento):

● Componente que provee una interfaz entre los datos almacenados a


bajo nivel y los programas de aplicación y las consultas enviadas al
sistema.
● Responsable de guardar, recuperar y actualizar los datos.
● Se encarga de traducir consultas DM L a comandos de bajo nivel del
sistema de archivos.

Subcomponentes
● Authorization and integrity manager.
● Transaction Manager.
● File Manager.
● Buffer Manager.

Estructuras de datos que implementan


● Archivos de datos.
● Diccionario de datos.
● Índices.

Query Process(Procesador de consultas):


● Componente que provee una interfaz de alto nivel para el acceso a los
datos a través de consultas de manera eficiente.
● DDL:
Subcomponentes
● DDL Interpreter.
● DML Compiler.
● Query evaluation engine.
● Las aplicaciones que usan SGBD suelen particionarse en dos o tres capas (tiers).
Las más comunes son 2-tiers y 3-tiers.

inconvenientes de un sistema de base de datos:


● Complejidad
● Tamaño (diferencia entre almacenar archivos o base de datos)
● Costos (económico; equipamiento adicional como servidores,
herramientas, profesionales y licencias; prestaciones).

Ventajas de un sistema de base de datos


● Mayor eficiencia
● Mayor capacidad de respuesta
● Calidad de los datos, que pasan a ser información
● A la larga reduce costos, y nos brinda mayor disponibilidad de los datos
que tenemos

Para tener una base de datos óptima debemos poner el enfoque en:
● Diseño adecuado de la base de datos de acuerdo a la necesidad.
● Uso adecuado de índices (claves primarias, índices únicos, índices de
búsqueda).
● Optimización misma de las consultas.
● Configuración adecuada del servidor de base de datos(donde se
guardan datos lógicos y físicos, memoria disponible, cantidad de
conexiones simultáneas).
● Optimización de almacenamiento de datos.
● Correcto mantenimiento de la base de datos(eliminación de datos
obsoletos, actualizaciones de estadísticas, backups y copias de
seguridad).

También podría gustarte