0% encontró este documento útil (0 votos)
42 vistas14 páginas

Introduccion A La Base de Datos

El documento introduce los conceptos básicos de bases de datos, incluyendo su objetivo de almacenar y organizar datos de manera estructurada para que puedan recuperarse fácilmente. Explica que las bases de datos son cruciales para las aplicaciones y sitios web modernos que generan grandes cantidades de datos de usuarios. Describe cómo los datos se organizan en tablas llamadas entidades, con filas y columnas, y cómo las entidades se relacionan entre sí para conectar diferentes conjuntos de datos.

Cargado por

Miryan Puchini
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como ODT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
42 vistas14 páginas

Introduccion A La Base de Datos

El documento introduce los conceptos básicos de bases de datos, incluyendo su objetivo de almacenar y organizar datos de manera estructurada para que puedan recuperarse fácilmente. Explica que las bases de datos son cruciales para las aplicaciones y sitios web modernos que generan grandes cantidades de datos de usuarios. Describe cómo los datos se organizan en tablas llamadas entidades, con filas y columnas, y cómo las entidades se relacionan entre sí para conectar diferentes conjuntos de datos.

Cargado por

Miryan Puchini
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como ODT, PDF, TXT o lee en línea desde Scribd

Estudiando base de datos

Introducción de base de datos


Que vamos a aprender? Objetivo de la materia: aprender a modelar y estructurar una base de datos
con las mejores prácticas, crear gestionar y manipular datos con SQL - Sin
experiencia y conocimientos en tecnología llegar a ser creador de
experiencias digitales a partir de las historias personales de mehta –
Aprender a conectar la Base de datos con el front-end de una aplicación
web – Aprender a trabajar en equipo utilizando herramientas como git y
gihub para control de versiones

Que importancia tiene la ingeniería Para definir el concepto de Base de datos en un contexto real, se describirán
en base de datos?? casos de usos tipicos- Banco (clientes, cuentas, transacciones), hospitales
(pacientes, personal, laboratorios, etc.)- tienda online (perfiles, historial de
compras y transacciones contables)- Estos servicios en lineas y plataformas
de medios sociales generan enormes cantidades de datos debido a la gran
base de usuarios y su constante actividad- IoT son muchos dispositivos
conectados a internet y que generan gran flujo de datos complejos (5Vś
Volumen – variedad – Velocidad- Veracidad y Valor de los datos)
Funciones de la Base de datos: como se relacionan los datos, diferentes
estructuras de una base de datos y sus usos como creación, lectura,
modificación y eliminación (CRUD)- con operadores SQL se podra buscar
y filtrar datos- Conceptos de Normalización de BD y técnicas para
normalizar una BD

A través de un ejemplo (libro de recetas, agenda de contactos)- se


Como introducirnos al concepto de demuestra que hay una necesidad de las personas para “almacenar datos de
BD manera estructura y que se pueda encontrar fácilmente” (por algo instagram
y facebook nos permiten guardar historias que nos interesan)- Los datos son
el corazón de las app porque: crear una capa de datos que pueda ofrecer
respuestas y resultados o información rápida y precisa es fundamental- La
capa de dato se modela con: interfaz de usuario, API- Tener en cuenta que
al trabajar en base de datos consiste en crear un conducto para producir,
extraer, transformar y cargar muchos datos que llegan de la aplicación-
Técnicas importantes que se debe desarrollar como ingeniero de BD: la
comunicación y la organización- Escribir el código es solo el 80% del
trabajo el 20% restante lo completa la comunicación compuesta por: la
documentación, la actualización de la wiki, pruebas o co-chequeo en los
lugares correctos
Competencias interpersonales necesarias para este trabajo: conectar los que
se aprende con algo práctico que se pueda utilizar (problemas de la vida
real)- alicar a - adquirir el habito de escribir: escribir para compartir lo que
estamos haciendo nuestros códigos
Centrarse en las necesidades actuales de los datos y tener cuidado con la
escalabilidad masiva de datos, ya que pueden complicar en exceso la
solución-

Datos: hechos y cifras sobre cualquier cosa- Ej se recogen los datos de una
persona: edad, nombre y apellido, correo electrónico- Son datos de hechos
Que son los datos?? y cifras relacionados con una compra online: numero de pedido,
Como definir una bases de datos- descripción, cantidad pedida, fecha, email del cliente- Los datos son
ejemplos que identifiquen una base cruciales para las personas y para las organizaciones- El almacenamiento de
de datos y como se organizan los estos datos se realiza en las bases de datos
datos en una base de datos?? Base de datos: forma de almacenamiento electrónico en el que los datos se
organizan sistemáticamente, logrando almacenar y manipular
electrónicamente estos datos de manera mas eficiente y seguro-
La organización de la BD es similar a una hoja de calculo o una tabla – La
organización sistemática significa que todos los datos contienen
Cual es el aspecto de una BD? características o elementos y atributos por los que se los puede identificar .
Ej: una persona la podemos identificar por su estatura, su color de cabellos,
por su edad-

Estos datos se separan y almacenan en lo que conocemos como “entidades”


que representan esos elementos
Que son las entidades? Entidad = tabla con filas y columnas que almacenan datos relativos a un
elemento en otras palabras “son elementos relacionales” – que están
relacionados entre si- Estas entidades pueden ser representaciones físicas
como de un empleado, un cliente o un producto- o representaciones
conceptuales como una factura, un pedido o un presupuesto-
Entidad almacena datos en formato similar de una tabla con atributos o
características de relacionados con el elemento- Ej tienda online tendrá que
almacenar datos de un cliente en una entidad cliente, que contendrá los
atributos específicos relacionados con el cliente- ej de atributos: nombre,
apellido, fecha de nacimiento y email- los datos de los productos se
almacenan en la entidad producto con atributos como: codigo, descripción,
precio y disponibilidad- en el mundo de las bases de datos relacionales
estas entidades se conocen como relaciones o tablas- Los atributos se
convierten en columnas de la tabla – cada fila de la tabla representa una
instancia de esa entidad-
Siguiendo el ejemplo tienda online las dos entidades que vimos se podrian
combinar en una lista de pedidos que recibe de sus clientes, en una BD
esto se puede representar como una tabla o entidad pedido- loa datos se
pueden organizar en filas que contienen un numero de pedido único,
nombre del cliente, producto

Tipos de BD Hay muchas formas de organizar los datos en una base de datos
Existen otros tipos de BD como OO esta en lugar de almacenar los datos en
tablas o relaciones los almacena como objetos.- BD como documentos en
donde los datos se almacenan como objetos JSON o javaScript, los datos se
organizan en colecciones como tablas, dentro de cada colección hay
documentos escritos en JSON que registran los datos- en el ejemplo los
documentos de clientes se guardan en una colección clientes, los
documento de pedidos de productos se almacenan en las colecciones de
pedidos de productos

En una PC de la organización o en un cloud siendo esto lo mas popular en


este caso se almacena, gestiona y recuperan los datos a traves de internet
Donde se almacena las BD?
La BD debe recuperar los datos de un cliente de la tabla clientes y el pedido
que realizo registrado en otra tabla pedidos-
Como la BD establece la relacion Los datos almacenados en una BD no pueden existir de forma aislados,
deben tener una relacion con otros datos para que puedan ser procesados
y convertirse en información significativa
En la tienda online se tiene 1 tabla cliente y 1 tabla pedidos para recuperar
el detalle de pedidos de un cliente comprobará en los pedidos el ID de
cliente- Analizar tabla cliente: las columnas IDCliente, Nombre,
Apellido,Ej la tabla pedidos- IDCliente en la tabla pedido la denominamos
foreign key- Asi se establece la relación entre las 2 tablas

Los datos se recopilan y almacenan en BD de diversas fuentes y por


distintos motivos- Ej: pedidos de los clientes, inscripciones en cursos de los
Ejemplos de datos relacionales a estudiantes-
traves de gráficos Es muy importante organizar y procesar los datos pero también el presentar
los datos de forma eficiente para que sean utiles y significativos para las
personas – Esto permite a las personas comprender mejor los datos y la
forma en que se relacionan-
Los gráficos pueden transmitir una cantidad de información y captar la
atención de las personas facilitándoles tomar decisiones y emprender
acciones
Gráficos de barras: representa datos categóricos con barras rectangulares
donde la altura de la barra son proporcionales a los datos que representan-
Grafico de burbujas Ej: una librería en londres tuvo problemas durante el cierre de la pandemia
y quiere saber mas sobre el rendimiento y progresos de su negocio despues
del 2019- el grafico de barra es útil en este caso para mostrar como variaron
el volumen de ventas x años y como afecto la pandemia al negocio
Se utilizan para comparar distintos valores a través del tamaño de burbujas,
estos gráficos ayudan a recordar este tipo de información- Ej: paises del
mundo según su población en el 2015
Gráfico de lineas
Presenta la información con una serie de puntos de datos llamados
“marcadores” conectados por segmentos de linea recta- son muy utilizados
para el análisis de datos- este grafico es utilizado para predecir el futuro del
mercado basados en las tendencia generales- Ej: precio del oro de una
empresa en el último mes
Gráficos de torta

Es un grafico circular que muestra como varios datos forman un conjunto


del 100% - cada dato tiene una porción de esa torta- ej: el grafico muestra
el tipo de deportes preferido por los alumnos de una clase- aca se puede ver
que el 50% de los estudiantes prefieren el futbol-

Otros graficos: gráficos de áreas que combina le grafico de lineas + grafico


de barras para comparar 2 o mas cantidades de datos- graficos de
Que grafico seleccionar? dispersión, graficos de gantt- mapas de calor- graficos de doble eje

Algunos son multipropositos mientras que otros son mejores para transmitir
tipos especificos de informacion a la audiencia- Gráficos de linea para
identificar tendencias que ayuden a predecir futuro- Graficos de torta o
circulares de forma sencilla se muestra como varias partes forman un todo,
pero no es bueno cuando hay muchas proporciones-
Como seleccionar el grafico depende de los factores: el publico objetivo
que utilizará información- la idea que pretende presentar- objetivo que
quiere alcanzar- tipo y cantidad de datos -

Son tipos de BD que han evolucionado por nuevas tendencias tecnologicas


como BD en cloud y BigData, ahora deben almacenar mayor volumen de
datos no estructurados siendo esto una dificultad porque normalmente
Tipos de alternativas de BD almacenan datos estructurados. Las BD relacionales solo almacenan datos
estructurados estos es una dificultad porque actualmente se necesita que
almacenen datos no estructurados-
Una solucion es recurrir a BD no secuenciales que permiten almacenar
datos en varios formatos diferentes- proporcionan una BD con estructura
flexibles – son utilizadas por plataformas de redes sociales, IoT o IA-
Las BD no secuenciales son: BD de Documentos, BD de grafos, BD claves
valor-
Cloud y Big data nos cambiaron el enfoque de los datos y de las BD-
BIG Data son datos compuestos que puede crecer su volumen con el
tiempo- El big data los generan las plataformas de redes sociales, compras
online y otros servicios y con el IoT + el internet cada vez hay mas
dispositivos conectados que generan mas y mas datos- Big data puede
abordar problemas complejos que los datos estructurados no pueden
(venta al por menor manejar- Los macrodatos proporcionan perspectivas únicas que pueden
satisfacer la demanda mejorar la toma de decisiones – Ej: proceso manufacturero procesa big data
mejorar la experiencia del cliente para predecir fallos en esos equipos evaluando el estado actual del equipo;
conocer el comportamiento de los evaluar procesos de producción monitorizando la linea de producción;
clientes responder consultas de clientes de forma proactiva y anticiparse a futuras
mantener la competitividad) demandas monitorizando las ventas actuales- mejorar experiencia de
clientes; analizar el comportamiento del cliente y sus patrones de gastos e
identificar oportunidades de mejorar ofertas – telecomunicaciones utiliza
bigdata para el analisis del uso de las redes para planificar las inversiones
en infraestructura-
El uso de la nube para BD libera a la empresa de lidiar con las dificultades
de la infraestructura física de servidores como de los costos de
(inversiones del plan, diseño de mantenimiento y almacenamiento
nuevos servicios Las BD con la tecnología + estrategias relacionadas con Inteligencia de
analizar la calidad del servicio, Negocio (BI) pueden analizar sus datos y extraer información valiosa para
planes de negocio) tomar decisiones

(falta de infraestructura,
mantenimiento y coste de
almacenamiento
muchos servicios disponibles
solución más asequible) Cuando las PC son rentables para las empresas almacenan sus datos ahi–
Archivos planos - este sistema de BD almacena los datos en un unico
archivo o tabla, se tratan de ficheros de textos cada linea es un registro con
campos de longitud fija separados por coma, espacio en blanco o tabulador-
Como Evolucionaron las BD?? un fichero no puede contener varias tablas-

BD Jerarquicos almacena los datos de forma jerarquica- idea es un padre


puede tener muchos hijos pero un hijo puede tener solo 1 padre- la Bd
representa una relacion de 1 a muchos - todos los atributos de un registro
especifico se enumeran en una entidad- Ej hay 3 estudiantes y una serie de
cursos, 1 curso se puede asignar a 1 solo estudiante, pero 1 estudiante
puede tomar varios cursos

BD en red: permite múltiples relaciones padre-hijo o sea relacion de mucho


a mucho – los registros hijos se denominan miembro, se puede acceder a un
miembro a través de mas de un padre- permite representar relaciones mas
complejas en la BD- Ej: un profesor puede dictar varios cursos y un curso
pueden dictar varios profesores-

BD Relacional: fue un cambio de paradigma en la tecnologia de BD- Los


datos se almacenan en tablas- las columnas de las tablas contienen atributos
de los datos- los registros (filas) tienen un valor para cada atributo y cada
registro tienen un valor único ID (clave primaria)- Una BD relacional
almacena y accede a los datos que están relacionados entre si por la clave
externa o secundaria o foreign key- Ejemplo de BD relacional tabla
Profesor tiene Prof_ID (PK); la tabla Clase tiene Clase_ID (PK) y Prof_ID
(PK) esto establece la relación entre profesor y clase (un profesor puede
estar en 1 sola clase pero en 1 clase pueden haber varios profesores).
También la tabla Clase ademas la tabla Clase tiene Clase_ID (PK), Prof_ID
(FK) y Curso_ID (FK) que se relaciona con la tabla Curso que tiene
Curso_ID (PK) Esta relacion seria en 1 clase solo puede haber 1 curso pero
1 clase puede dictarse en varios cursos

BD OO: cuando se popularizó el paradigma OO surge la necesidad de


representar tambien los datos de un sistema como objetos- Estas bases de
datos funcionan en el marco de programación de los lenguajes java y C++
En lugar de tablas aca se habla de entidad o clases Ej: autor, libro y cliente
cada uno tiene sus atributos y comportamientos- Permite representar
algunos conceptos de OO como la herencia por ejemplo Cliente y Autor
descienden de Persona, siendo Persona una entidad genérica que puede
representar a Cliente o al Autor-

BD noSQL: como las BD relacionales solo permiten almacenar datos


estructurados, pero luego comenzo a ser necesario almacenar mayor
volumen de datos y de datos no estructurados- Asi surgen las BD noSQL
dando respuesta a internet y a la necesidad de mayor velocidad y
procesamientos de datos no estructurados- La ventaja de estas BD frente a
las BD relacionales es la velocidad y flexibilidad de almacenamiento de
datos- Estas BD permiten procesar los datos del Big data, IoT, plataformas
de redes sociales como twiter, facebook, linkedIn y google- Ventajas de
estas BD: mayor escalabilidad, esquema flexible, distribuida, puede
procesar datos semi estructurados y no estructurados, no tiene relaciones
complejas- Ej de BD noSQL: BD documentos almacena los datos en
documentos similares a objetos json; cada documento contiene pares de
campos-valores; los valores pueden ser de distintos tipos: cadenas,
numeros, booleanos, matrices u objetos-
BD clave-valor: este tipo de BD tiene elementos que contienen claves-
valores- Ejemplos dynamoBD de AWS- Son BD altamente divisibles y
permiten el escalado horizontal a escala que otros tipos de BD no pueden
alcanzar- Tutorial dynamoDB
https://aws.amazon.com/es/getting-started/hands-on/create-nosql-table/
Casos de uso: carrito de compras y almacen de sesiones

BD de columnas anchas almacenan los datos en tablas con filas y columnas


dinámicas; son utilizadas en los sitios de grandes empresas; alta velocidad
en transacciones Ej es hadoop (basado en MapReduce que es un modelo de
programación que da soporte a la computacion paralelo) se utiliza para
aplicaciones distribuidas que manejen grandes volumenes de datos (big
data) o cassandra BD de facebook

BD de grafos: almacena datos en nodos y aristas- los nodos pueden


almacenar datos de personas, lugares y cosas, mientras que las aristas
almacenan información sobre relaciones- Es una BD versatil y agil-
cuenta popular natural ejemplos de BD de grafos de propiedades que se implementa en industrias
y sectores como finanzas, fabricación, seguridad publica, ventas minoristas-
Estas BD permiten explorar y descubrir conexiones y patrones en redes
sociales, almacenes de datos y transacciones complejas , detección de
fraude, descubrimiento de conexiones en redes sociales y vista integral del
cliente- Estas BD cada vez se utilizan mas en la ciencia de datos para
clarificar las conexiones en las relaciones
cuenta controlada por bots
Un ejemplo muy interesante: “evaluar la publicidad y la tracciones en redes
sociales, en particular identificar las cuentas bot falsas que sesgan los
datos”- un analisis de patrones sencillos permitio evaluar el uso de cuentas
retweets y la densidad de conexiones con los vecinos, detectandose que las
cuentas populares tenian relaciones diferentes con los vecinos que las
cuentas controladas por bots

Otro ejemplo: las empresas con estas BD puede extraer datos sobre cliente
de las redes sociales

Aca surgen un dilema: grafica semantica o grafica de propiedades?- 1-


W3C publica la pila de la web semantica (RDF – Marco de descripción de
recursos) marca el inicio de las BD graficas, luego aparecen las
capacidades de inferencia de OWL (Lenguaje ontologia Web)- Neo4j
primera implementación de BD de grafos de propiedades-web semantica:
coordinar todo el conocimiento por el concepto y no por enlace entre
documentos- Grafos RDF (Marco descripción de recursos) pueden
like rating review= revision de calificacion representar conceptos complejos en un dominio, ofrecer semántica rica e
inferencia sobre datos

Conclusion:
Introducción a SQL Hasta acá ya vimos conceptos básicos de BD, como se gestionan, para que
se utilizan o sirven las BD – ahora vamos a ver como interactuar con las
BD para trabajar con datos- Las intervenciones con BD pueden ser: crear,
leer, actualizar y borrar datos = operaciones CRUD-
Que es SQL? SQL: lenguaje de consulta estructurado (Structured Query Language) es el
lenguaje de consulta estandar que se puede utilizar en todas las BD
principalmente las relacionales que requieren de un lenguaje que interactué
con datos estructurados-
SQL dependiendo para que se utilice SQL se puede dividir en sublenguajes
que son:
DDL conocido como lenguaje de definición de datos y DML el lenguaje de
manipulación de datos- DQL lenguaje de consulta de datos- DCL lenguaje
control de datos-
Lenguaje DDL: antes de almacenar los datos debemos crear o definir los
objetos relacionados como las tablas donde se almacenarán los datos-
comando DDL es create; si es necesario modificar alguna tabla ya creada
como agregar una columna utilizamos el comando DDL alter; para
eliminar una tabla de la BD el comando DDL drop

Los comandos DML para manipular datos de la BD como insertar,


actualizar o eliminar datos almacenados en la tablas- comando insert, este
comando permite especificar los campos donde se van añadir los datos
junto con los valores a insertar- para modificar datos que se insertaron en la
tabla se usa el comando update y para eliminar datos de una tabla se utiliza
delete-

DQL contiene los comando que nos permitirán leer y recuperar los datos de
un tabla- el comando select nos permite recuperar los datos de una o varias
tablas, especificando los campos de datos que se desea en función del
criterio de filtrado
DCL permite controlar el acceso a los datos de una BD

Como una BD entiende, interpreta Esto lo logra gracias al SGBD/ DBMS(Sistema de Gestión de BD), quien
o lee y ejecuta una instrucción transforma las instrucciones SQL en una forma comprensible que puede
mediante el lenguaje SQL? interpretar y tiene sentido para la BD.
Sistema de gestión de bases de datos (DBMS)
Un sistema de gestión de bases de datos es una aplicación de software que
se utiliza para gestionar diferentes bases de datos. Nos ayuda a crear y
administrar bases de datos. Con la ayuda de DBMS, nos encargamos de las
siguientes tareas:
1. Seguridad de datos
2. Copia de seguridad de datos
3. Administra una gran cantidad de datos
4. Exportación e importación de datos
5. Atiende múltiples solicitudes de bases de datos simultáneas
6. Nos brinda una manera de administrar los datos usando lenguajes de
programación.
Que ventajas ofrece SQL? Interfaz que permite la comunicación entre los usuarios y desarrolladores
web y la BD-
Requiere pocas habilidades de codificación, conjunto reducido de palabras
claves- no se necesitan muchas lineas para realizar operaciones CRUD-
Esto permite realizar consultas complejas en poco tiempo- Al ser un
lenguaje estandar se utiliza con cualquier BD relacional (postgresql, mysql,
oracle) - hay mucho soporte e información disponible- se ejecuta en
cualquier ordenador una vez instalado el sw de la BD- lenguaje portatil una
vez escrito se lo pude usar en cualquier HW, SO

Base de datos- Sintaxis SQL Normas de SQL: no distingue entre mayúscula y minúscula- normalmente
las palabras claves se escriben en mayuscula
Las declaraciones SQL dependen de las lineas de textos
SQL depende del calculo relacional de tuplas y del algebra relacional

Proceso SQL: cuando se ejecuta un comando SQL para cualquier SGBD el


sistema busca la mejor manera de realizar la peticióny el motor SQL
determina como interpretar la tarea- Los componentes que intervienen son:
motor optimización, motor de consultas, motor despachador, etc – Todas las
consultas no SQL son manejadas por un motor clasico porque el motor de
consultas SQL no maneja archivos lógicos

crear CREATE TABLE table_name (column_name1 datatype(size), column_name2


datatype(size), column_name3 datatype(size));
Eliminar DROP TABLE table_name;
Alterar una tabla
Modificar la estructura de las tablas de la base de datos, como cambiar el
nombre de una tabla, añadir una clave primaria a una tabla o añadir o
eliminar una columna de una tabla.
ALTER TABLE table_name ADD (column_name datatype(size));
ALTER TABLE table_name ADD primary key (column_name);
Para eliminar todos los registros de una tabla, lo que vaciará la tabla pero
no borrará la tabla en sí.
TRUNCATE TABLE table_name;
para realizar comentarios en SQL comment, no se ejecuta esta linea es
solo para uso propia
--Retrieve all data from a table
SELECT * FROM table_name;
DQL: permiten consultar y recuperar datos de la base de datos
SELECT * FROM table_name;

DML: permiten consultar, borrar y actualizar datos de la base de datos.


INSERT INTO table_name (column1, column2, column3)
VALUES (value1, value2, value3);

UPDATE table_name SET column1 = value1, column2 = value2


WHERE condition;

DELETE FROM table_name WHERE condition;

DCL (lenguaje Control de datos): se utiliza para gestionar los derechos y


permisos de los usuarios de un sistema de BD
GRANT: otorga privilegios al usuario para que acceda y manipule la BD
REVOKE: quita permisos a cualquier usuarios
TCL (Lenguaje de control de transacciones): gestionan los cambios
realizados en los datos de una tabla usando DML
COMMIT: comando para guardar todo el trabajo ya realizado en una BD
ROLLBACK: comando para restaurar una BD al ultimo estado
comprometido
TCL (Lenguaje de control de transacciones): gestionan los cambios
realizados en los datos de una tabla usando DML
COMMIT: comando para guardar todo el trabajo ya realizado en una BD
ROLLBACK: comando para restaurar una BD al ultimo estado
Tablas de las bases de datos y comprometido
como se estructuran los datos
Las BD almacenan varias tablas relacionadas entre si- una tabla es una
entidad – en BD OO una tabla es un objeto- una tabla representa un objeto
o entidad donde sus atributos son columnas o campos- cada columna o
campo tiene un nombre y un tipo de dato único- el tipo de dato define que
tipo de valor puede contener una columna, por ej: un numero entero o fecha
y hora, cadena de caracteres o binarios para almacenar imagenes y archivos
– los tipos de datos varían según el SGBD- cada fila representa un registro
que es una combinación de columnas o campos
Dominio es el conjunto de valores legales que se pueden asignar a un
atributo o sea son los valores de un atributo que puede contener un campo-
Cada registro se identifica de forma única mediante PK (clave primaria) es
asi que la columna que contenga los valores únicos se convierte en PK de la
tabla- una PK puede ser combinación de mas de una columna-
Profundizar en la estructura de una una celda es el cruce entre una fila y una columna y es el lugar donde se
tabla de BD almacena un dato
Estudiar sobre los tipos de datos, PK y FK incluso las restricciones de una
tabla- Tipo de datos CLOB (Character large Object) almacena grandes
bloques de textos en alguna forma de codificación de texto- BLOB (Binary
Large Object) para almacenar colección de datos binarios como imagenes-

Tablas de una BD relacional: varias tablas componen una BD y representan


el back-end de un SI- Ej: en un sistema de información de estudiante la
tablas podrian incluir Estudiante, Profesor, Asignatura y Clase
Importante: en la terminología de BD Relacionales una tabla se lo conoce
como relación- una fila o registro lo conocemos como tupla, por ej: la tabla
estudiante de la imagen tiene 6 tuplas- cada tabla o relación de una BD
tiene su propio esquema (= estructura) que incluye: el nombre de la tabla o
relación, sus atributos, sus nombres y el tipo de dato
Que es una PK?
Es el campo o columna de una tabla por la que se puede identificar de
manera única y exclusiva cada tupla concreta de una relación (tabla)- se la
denomina PK- Ej: en la tabla estudiante la PK = studient_id- analizando el
resto de las columnas vemos que varios estudiantes pueden duplicar los
datos como nombre, apellido por lo tanto no hay otro atributo que podamos
utilizar como PK- en algunos casos la PK puede ser combinación de + de
Que es FK – clave secundaria o una columna o campo- Ver ejemplo de la tabla de Empleado donde
clave externa EMP_ID no es único
Se establecen las relaciones entre las tablas de una BD- se vinculan por la
columna PK de una tabla la cual está presente en la tabla relacionada como
columna FK- Ej tabla de estudiante y departamento
Son las normas que deben cumplir todas las tablas de una BD-
Restricciones de integridad Restricciones de clave: todas las tablas deben tener una columna o varias
columnas que permitan obtener datos de las tablas o sea PK este atributo no
debe ser NULL o el mismo para 2 filas de datos diferentes Ej Id_Estudiante
- Restricciones de dominio: se refieren a las reglas definidas para los
valores que se puedan almacenar en cada columna Ej: el numero de celular
no debe tener mas 10 digitos numéricos- Restricciones de Integridad
Referencial: cunado una tabla esta relacionada con otra a través de una
clave externa o FK el valor de la columna de referencia debe existir en la
otra columna Ej: Estudiante- Departamento, los valores Id_Estudiante debe
existir para todas las filas de la tabla Departamento
a que se refiere la estructura básica
de una BD Estructura de BD = como se organizan los datos en la BD- En una BD los
datos relacionados se agrupan en tablas, cada tabla consta de filas (tuplas o
registros) y columnas – Componentes claves de la estructura de una BD:
tablas o entidades contiene todos los atributos y registros de un tipo de
Entidad + atributos que detallan o describen a la tabla o entidad + campos
son columnas que captura atributos + registros o fila consiste en una
colección de datos para cada entidad + PK columna que es un valor único
para una entidad-
Tipo de datos: permiten mantener la coherencia de los datos entre todos los
registros de una tabla y se asigna a cada columna – el tipo de dato de una
columna determina que tipo de dato se puede almacenar en ella- permite
clasificar los valores de columna- cada tipo de dato o valores de columna
determinan la cantidad de memoria para almacenarlos y cada tipo de dato
permiten distintas operaciones con esos valores
Tipo de datos: fecha y hora- numericos- caracteres y cadena – binarios-
tipos de datos misceláneos: Objeto Largo de Caracter (CLOB) para
almacenar grandes bloques de texto y Objeto Largo Binario (BLOB) para
almacenar colección de datos binarios como imagenes

Estructura lógica de una BD: se representa a traves del DER diagrama


entidad relación – es una representación visual de la implementación de la
BD en tablas durante el diseño físico de la BD utilizando un SGBD como
MySQL u Oracle- la estructura muestra como se establecen las relaciones
entre las entidades, estas relaciones se establecen entre las instancias de las
entidades – hay 3 formas de relacionar las instancias de las entidades entre
sí: Relaciones 1 a 1; relaciones 1 a muchos y relaciones muchos a muchos-
estas relaciones se las conoce como cardinalidad – Importante un buen
diseño de BD nos proporciona el acceso a la información actualizada y
precisa- Esto nos asegura satisfacer las necesidades y adaptarse fácil a los
cambios
Tipos de claves de una BD- el
objetivo será identificar las claves Estructura física de una BD: las entidades se implementan como tablas, las
principales de las tablas de una BD relaciones se establecen agregando un campo llamado FK que hace
relacional y explicar la relación referencia a la PK de la otra tabla
entre las claves de una tabla
para entender como funciona el modelo de BD relacional debemos entender
como de relacionan las tablas dentro de una BD- La relación entre tablas se
establecen por las claves
El modelo de BD relacional se define por 2 conceptos: las entidades se
definen como tablas y las relaciones entre tablas- Ej: una competición
deportiva que utiliza 3 tablas para gestionar la liga-tabla clasificacion de la
liga, tabla equipos y tabla puntos- cada tabla tiene columnas que
representan cada atributo de la entidad de la tabla- tabla de clasificación o
liga registra la posición de cada equipo en la liga, su nombre y el estado
que representa – tabla de equipos tiene nombre del equipo, el capitán y el
entrenador- tabla de puntos registra posición del equipo en la liga, nombre
del equipo y cuantos puntos tiene esta temporada -
Importante: evitar los atributos multivalor en el diseño de BD relacionales -
Atributos claves: es el valor utilizado para identificar de forma única un
registro individual de datos en una tabla o sea el valor de este atributo es
unico en cada fila de la tabla, permitiendo identificar de manera univoca
cada registro de datos en una BD relacional - Ej en la tabla de personal el
atributo clave es el Id_personal (staff I.D.)
Tenemos los atributos claves candidatos: es cualquier atributo que tenga un
valor único en cada fila de la tabla y cada columna que contenga valores
repetidos se denominan atributos no claves
Clave compuesta: se componen de 2 o mas atributos para formar un valor
único en cada nuevo rol de la tabla personal. Ej: combinar el nombre y el
cargo del empleado, suponiendo que no hay otra instancia con la misma
combinación en otra parte de la tabla-
Clave secundaria o alternativa: es una clave candidata que no fue
seleccionada como clave primaria PK- por lo tanto esta columna tiene
valores unicos en cada fila
Clave Foranea o FK: es una clave secundaria que hace referencia a una PK
en otra tabla. Ej: DNI PK de estudiante puede ser FK de otras tablas de la
BD Colegio

cual es el numero minimo de tablas que puede contener una BD? - 1 basta
Conclusión: se definió que es una tabla en una base de datos, su estructura básica, tipos de datos, claves
primarias y foraneas y sus funciones dentro de una tabla y también las restricciones de las tablas

Conclusión semana 1: despues de ver fundamentos de las BD y los datos + una introducción a SQL + estructura
de la BD- ahora podemos definir conceptualmente y con una visión general que es una BD- Podemos dar
ejemplos de bases de datos y explicar como se organizan los datos en una BD- Explicar la importancia de los
datos relacionados en una BD- Identificar ejemplos de datos relacionados dentro de una BD y dar una vision
general de las nuevas tendencias y aplicaciones de BD-
se estudió sobre consultas estructuradas de BD con SQL: mencionar el proporsito de SQL, el rol de SQL y las
BD- ventajas de SQL- como utilizar los comandos SQL- DDL – DML y DQL
Estructura básica de BD: concepto de tablas de BD – para que se utilizan- cuales son sus componentes claves

Sobre normalización: https://www.ionos.es/digitalguide/hosting/cuestiones-


tecnicas/normalizacion/
Lectura complementaria: Pautas para planificar una BD de escritorio
https://support.microsoft.com/en- Principios para el buen Diseño de BD: Información duplicada (datos
us/office/database-design-basics- redundantes) produce desperdicios en el espacio de almacenamiento y altas
eb2159cf-1e30-401a-8084- probabilidades de error e inconsistencia – Exactitud e integridad de la
bd4f9c9ca1f5 información, si la BD tiene información incorrecta, los informes que se
genere serán incorrectos y con información incorrecta se toman decisiones
incorrectas- Proceso de diseño: Determinar el proposito de la BD (una
opción es escribir en un papel cual es propósito, que desea hacer con la BD
incluso si la BD la utilizarán varios usuarios. Ej: "La base de datos de
clientes mantiene una lista de información de clientes con el fin de producir
correos e informes". Otra opcion es usar historias de usuarios: articula
como va a proporcionar valor una función de sw al cliente por lo tanto e
sun objetivo final no una función- Estructura Como[perfil][quiero][para]
Ej: como secretaria quiero organizar la agenda asi tener mayor control),
Encontrar y organizar la información requerida (reunimos los documentos
sino contamos con eso imaginamos que tenemos que diseñar un formulario
para registrar la información del cliente- tambien considerar que tipos de
informes solicita o necesita el cliente- Idea dividir cada pieza de
información en sus partes útiles mas pequeñas EJ: nombre-apellido- Pensar
las preguntas que queremos que responda la BD); Dividir la información en
tabla (elegir las entidades o tema principal por ej: BD para la venta de
productos podria contener las tablas preliminares: cliente-Productos-Pedido
y proveedores); convertir elementos de información en columnas (decidir
que información de cada tabla se quiere almacenar – Algunos tips: no
almacenar datos calculados- si se combina mas de un tipo de informacion
en un campo es dificil recuperar datos individuales); especificar PK;
configurar las relaciones de la tabla (conviene utilizar identificadores
autonumerico carecen de hechos, no son datos y son ideales porque no
cambian su valor por ej: Prod_ID); Redefinir el diseño (cargar registros ver
si se puede obtener los resultados que desea de sus tablas y de la BD;
realizar operaciones y consultas SQL como testing)- Puede agregar otra
tabla Categorias y establecer la relación con tabla Productos- si tiene una
tabla como la de la figura donde agrega un numero al final del nombre de
cada columna debe revisar su diseño; aplicar las reglas de normalización-

Porque dividir la informacion en Ej: si en 1 tabla tenemos Producto, Proveedor, Dirección un Proveedor
tablas puede tener varios productos entonces estaríamos repitiendo proveedor y
dirección y estaríamos desperdiciando espacio de almacenamiento – Es
mejor tener la tabla proveedores y esta relacionarla con producto- otro
problema si tenemos 1 tabla es si el proveedor cambia su direccion,
deberemos cambiar en todos los registros del proveedor y si nos olvidamos
1- Que pasa si 1 proveedor tiene 1 solo producto y quiero eliminar ese
producto pero quiero conservar los datos del proveedor y su direccion,
puedo eliminarlo?

Creando las relaciones: relación 1 a muchos (Proveedor y Producto)- en el


mapeo la PK del lado de “uno” de la relacion y agregar en la tabla del lado
de “muchos” como una columna adicional- Ej la columna Proveedir_ID
agregar en la tabla Productos
Creando relación “muchos” a “muchos”: Consideramos tabla Productos y
tabla Pedidos aca para cada registro de la tabla Producto puede aparecer en
muchos registros de la tabla Pedidos y para cada registro de la tabla Pedido
pueden haber muchos registros de la tabla Productos – Esta relación es un
problema porque imaginemos si tenemos por ej que agregar Producto _ID a
la tabla Pedidos y los mismo pasara si Pedido_ID agregamos a la tabla
Productos- Solución es crear una tercer tabla Detalle_Pedido que divide la
relacion en 2 relaciones de “uno a muchos” aca debemos insertar las 2 PK
de cada tabla Producto _ID, Pedido_ID , precio unitario, cantidad- las 2PK
o los dos campos juntos producen un registro único en la tabla
Detalle_pedido, la relaciones son “uno a muchos” Pedidos y
Detalle_pedido 1 registro de Pedidos esta asociado a muchos registros de la
tabla Detalle_pedido, un registro de la tabla Detalle_pedido se relaciona a
un único registro de la tabla Pedidos- Relación Detalle-pedido y Productos
1 registro de la tabla Productos puede aparecer en muchos registros de la
tabla Detalle_pedido pero 1 registro de la tabla Detalle_pedido se relaciona
con un único registro de la tabla Productos
Relación “uno” a “uno”: este caso se da cuando necesitamos anexar o
completar la información solo de algunos productos no de todos los
productos, entonces si le ponemos como otro atributo o columna en la tabla
Productos algunos registros tendrán este campo vacío entonces es mejor
crear otra tabla complementaria a Productos y la cual va a tener
Producto_ID como una columna y donde va existir un unico registro para
cada registro de la Tabla Productos- Entonces si las 2 tablas tienen el
mismo tema se puede configurar la relación usando la misma PK para las 2
tablas- Si las 2 tablas tienen temas diferentes con PK diferentes inserte la
PK en la otra tabla como FK-
Si o si cuando se da la relacion “uno” a “uno” o “uno” a “muchos” las
tablas involucradas deben compartir una columna o columnas comunes
Normalización
consiste en aplicar reglas de diseño a la BD- esta reglas permiten
determinar si la BD diseñada esta bien estructurada – La normalizaciń no
asegura que nuestra BD tenga todos los elementos de datos correctos- El
procedimiento consiste en aplicar las reglas sucesivamente asegurandose
que en cada paso el diseño de la BD cumpla con una de las formas
normales- Son 5 las formas normales pero los 3 primeros son los requeridos
para validar el diseño
Primera forma normal:en cada intersección de fila y columna (celda) debe
existir un único valor y nunca una lista de valores
Segunda forma normal: requiere que cada columna que no sea clave
dependa completamente de la PK, esto se aplica cuando la PK esta formada
por mas de una columna, si tenemos una Tabla con ID_pedido,
ID_producto y nombre_producto este diseño viola la 2da forma normal
porque nombre_producto depende de ID_producto y no de ID_pedido por
lo que no depende de la PK completamente- se debe eliminar
nombre_producto y agregar en la tala Producto
Tercera forma normal: las columnas sin claves deben ser independientes
entre si- por ej tenemos una tabla con ID_producto, nombre, SRP,
descuento donde descuento depende SRP(precio sugerido minorista)-
descuento vio la 3er forma normal depende de otra columna SRP- esto
significa que si se cumple la 3er forma normal puedo cambiar cualquier
columna que no sea clave sin afectar ninguna otra columna- Si cambia SRP
entonces deberá cambiar descuento esto viola esta norma – descuento se
debe mover a otra tabla que este ingresada SRP
https://www.ibm.com/docs/en/ Estructura de la BD: conjunto de tablas que se pueden manipular según el
control-desk/7.6.0?topic=design- modelo relacional de datos-
relational-database-structure Una BD incluye: un conjunto de tablas = catalago del sistema que describe
la estructura lógica y física de los datos- Un archivo de configuración que
contiene los valores de los parámetros asignados a la BD – Un registro de
recuperación con transacciones en curso y transacciones archivables
Jerarquia de las BD:
Diccionario de datos: repositorio con la información sobre programas de
aplicación, BD, modelos lógicos de datos y autorizaciones de una
organización- Si se edita el diccionario de datos se deben realizar
comprobaciones de edición que evitan que se corrompa el diccionario- Se
recupera el diccionario de datos restaurándolo a partir de una copia de
seguridad
Contenedor: ubicación del almacenamiento de datos, ej:un archivo,
directorio o dispositivo que se usa para definir una BD
Partición de almacenamiento: es una unidad lógica en una BD como una
colección de contenedores, se denominan espacios de tablas en DB2 y
Oracle y se llaman grupos de archivos en SQLServer
Objetos de negocio: entidad tangible dentro de una aplicación que los
usuarios crean, acceden, y manipulan mientras realizan un caso de uso- los
objetos de negocio dentro de un sistema son de estado, persistentes y de
larga duración- contienen datos de negocio y modelan el comportamiento
del negocio- contienen un conjunto de atributos y valores, operaciones y
relaciones con otros objetos de negocio
Objeto de BD: existen en la instalación de un sistema de BD como una
instancia, una BD, un grupo de particion de BD, un pool de buffers, una
tabla, un indice- estos objeto contienen datos y no tiene ningun
comportamiento
Tabla: objetos de BD que contiene una colección de datos sobre un tema
concreto, tiene filas y columnas
Columnas: componente vertical de una tabla, tiene un nombre y un tipo de
datos concreto-
Fila: componente horizontal de una tabla, formado por una secuencia de
valores, uno por cada columna de la tabla
Vista: tabla lógica basada en datos almacenados en un conjunto de tablas
subyacentes- Los datos devueltos por una vista estan determinados por una
sentencia SELCT que se ejecutan en las tablas subyacentes
Indice: conjunto de punteros ordenados lógicamente por valores de una
clave- proporcionan un acceso rápido a sus datos y pueden imponer la
unicidad de los valores claves para las filas de la tabla- Se puede crear un
índice en las columnas de un objeto que se consulta con frecuencia
Relación: vínculo entre uno o mas objetos que se crea especificando una
sentencia join
Join (union): operación relacional de SQL con la que se puede recuperar
datos de 2 tablas, normalmente se basa en una condición de unión que
especifica las columnas de unión

También podría gustarte