SlideShare una empresa de Scribd logo
1 de 62
Bases de Datos Masivas
Corte I
Diana Quiroga
Reglas
• PORCENTAJES POR CORTE
❖Corte 1 = 35%
❖Corte 2 = 35%
❖Corte 3 = 30%
• CORTE I
❖Proyecto Integrador (40%) (20% Documento , 60% Sustentación)
❖Parcial (30%)
❖Trabajos en clase, estudio de casos y talleres (30%)
BASES DE DATOS
BASES DE DATOS
Característica Base de datos SQL Base de datos NoSQL
Desempeño (performance) Bajo Alto
Availability (disponibilidad) Pobre Buena
Fiabilidad (reliability) Buena Pobre
Consistencia (consistency) Buena Pobre
Almacenamiento (data
storage)
Tamaño medio Optimizado para grandes datos
Escalabilidad (scalability) Alta pero cara Alta
SQL AVANZADO
Vistas:
Tabla virtual generada a partir de la ejecución de varias consultas sobre una o más
tablas. Una vista tiene la misma estructura de filas y columnas que cualquier otra
tabla MySQL, se almacenan del mismo modo y no es posible que existan dos con el
mismo nombre.
CREATE [OR REPLACE] VIEW nombre_vista [lista_columnas] AS consulta
SQL AVANZADO
Índices:
Son punteros a una fila de una determinada tabla de nuestra base de
datos.
• Permiten localizar y devolver registros de una forma sencilla y rápida. Son
especialmente útiles cuando se quiere buscar elementos de entre los
millones y hasta billones de registros que puede contener una tabla.
• OJO: La creación de índices implica un aumento en el tiempo de ejecución
sobre aquellas consultas de inserción, actualización y eliminación. Del
mismo modo, los índices necesitan un espacio para almacenarse, por lo que
también tienen un coste adicional en forma de espacio en disco.
SQL AVANZADO
Índices:
SQL AVANZADO
Índices para que se usan:
• Encontrar las filas que cumplen la condición WHERE de la consulta cuyas
columnas estén indexadas.
• Recuperar las filas de otras tablas cuando se emplean operaciones de tipo JOIN.
• Disminuir el tiempo de ejecución de las consultas con ordenación o
agrupamiento si todas las columnas presentes en los criterios forman parte de
un índice.
• Si la consulta emplea una condición simple cuya columna de la condición está
indexada, las filas serán recuperadas directamente a partir del índice, sin pasar a
consular la tabla.
SQL AVANZADO
¿Qué tipos de índices hay?
• INDEX (NON-UNIQUE): Índice normal, no único. Esto implica que admite valores
duplicados para la columna (o columnas) que componen el índice. No aplica
ninguna restricción especial a los datos de la columna (o columnas) que
componen el índice sino que se emplea simplemente para mejorar el tiempo de
ejecución de las consultas.
CREATE INDEX T_IE1 ON T (B);
CREATE INDEX T_IE1 ON T (B);
CREATE INDEX T_IE1 ON T (B);
SQL AVANZADO
¿Qué tipos de índices hay?
• UNIQUE: Se refiere a un índice en el que todas las columnas deben tener un valor
único. Esto implica que no admite valores duplicados para la columna (o
columnas) que componen el índice.
CREATE UNIQUE INDEX index_name
ON table_name(column_1,column_2);
SQL AVANZADO
¿Qué tipos de índices hay?
• PRIMARY: este tipo de índice se refiere a un índice en el que todas las columnas deben
tener un valor único (al igual que en el caso del índice UNIQUE) pero con la limitación de
que sólo puede existir un índice PRIMARY en cada una de las tablas.
ALTER TABLE table_name
ADD PRIMARY KEY(column_list);
CREATE TABLE roles(
role_id INT AUTO_INCREMENT,
role_name VARCHAR(50),
PRIMARY KEY(role_id) );
SQL AVANZADO
¿Qué tipos de índices hay?
• FULLTEXT: estos índices se emplean para realizar búsquedas sobre texto (CHAR,
VARCHAR y TEXT). Estos índices se componen por todas las palabras que están
contenidas en la columna (o columnas) que contienen el índice. Este tipo de
índices sólo están soportados por InnoDB y MyISAM en MySQL 5.7.
CREATE FULLTEXT INDEX idx ON opening_lines(opening_line);
SQL AVANZADO
Particionamiento
Particionar es el proceso donde tablas muy grandes son divididas en múltiples partes más
pequeñas. Al separar una tabla grande en tablas individuales más pequeñas, las consultas
que acceden sólo a una fracción de los datos pueden correr más rápido porque hay menos
datos que escanear.
SQL AVANZADO
Particionamiento
• Mejorar la escalabilidad.
• Mejorar el rendimiento. Las operaciones de acceso a datos en cada partición se realizan en un volumen de datos
menor. Si se realiza correctamente, la creación de particiones puede aumentar la eficiencia del sistema.
• Mejorar la seguridad. En algunos casos, puede separar los datos confidenciales y no confidenciales en particiones
distintas y aplicar controles de seguridad distintos a los primeros.
• Proporcionan flexibilidad operativa. La creación de particiones ofrece muchas oportunidades para ajustar con precisión
las operaciones, maximizar la eficacia administrativa y minimizar los costes.
• Adaptación del almacén de datos al patrón de uso.
• Mejorar la disponibilidad.
SQL AVANZADO
Eliminar índices
• DROP INDEX idx ON opening_lines
SQL AVANZADO
Diseño de Particionamiento
• Particiones horizontales: En esta estrategia, cada partición es un almacén de datos independiente, pero todas
las particiones tienen el mismo esquema.
SQL AVANZADO
Diseño de Particionamiento
• Particiones verticales. En esta estrategia, cada partición contiene un subconjunto de los campos de elementos del almacén
de datos. Los campos se dividen según su patrón de uso.
SQL AVANZADO
Diseño de Particionamiento
• Creación de particiones funcional. En esta estrategia, los datos se agregan en función de cómo los usa cada contexto limitado
en el sistema. Por ejemplo, un sistema de comercio electrónico puede almacenar los datos de facturas en una partición y los
del inventario de productos en otra.
SQL AVANZADO
Tipos de Particionamiento Horizontal
• RANGE: Este tipo de partición asigna filas a particiones en función de los valores de columna que se encuentran
dentro de un rango establecido.
SQL AVANZADO
Tipos de Particionamiento Horizontal
• HAST: Para definir este tipo de particionado, deberemos de indicarle una columna del tipo integer o una
función de usuario que devuelva un integer. En este caso, se ejecutará una función sobre un determinado
campo que devolverá un valor entero. Según el valor, MySql insertará el registro en una partición distinta.
SQL AVANZADO
Tipos de Particionamiento Horizontal
• LIST: Se realiza según una lista de valores definida sobre una determinada columna de la tabla o expresión. Es
decir, se indica el numero de particiones a crear, y para cada partición, la lista de valores que serán la condición
para insertar en ella, de forma que cuando un registro que se va a introducir en la base de datos tenga un valor
incluido en la lista de valores, el registro se insertara en dicha partición.
SQL AVANZADO
Tipos de Particionamiento Horizontal
• KEY:. similar al HASH, pero la función para el particionado la proporciona MySql automáticamente (con la
función MD5). Se pueden indicar los campos para el particionado, pero siempre han de ser de la clave primaria
de la tabla o de un índice único.
SQL AVANZADO
Funciones
Es una rutina creada para tomar unos parámetros, procesarlos y
retornar en un salida. Se diferencian de los procedimientos en las
siguientes características:
• Solamente pueden tener parámetros de entrada IN y no parámetros
de salida OUT o INOUT
• Deben retornar en un valor con algún tipo de dato definido
• Pueden usarse en el contexto de una sentencia SQL
• Solo retornan un valor individual, no un conjunto de registros.
SQL AVANZADO
Funciones
SQL AVANZADO
Funciones
Un procedimiento o función se considera “determinista” si siempre
produce el mismo resultado para los mismos parámetros de
entrada, y “no determinista” en cualquier otro caso. Si no se da ni
DETERMINISTIC ni NOT DETERMINISTIC por defecto es NOT
DETERMINISTIC.
SQL AVANZADO
Procedimientos Almacenados
Conjunto de comandos que pueden ser ejecutados directamente en el servidor, es decir,
será ejecutado por el servidor de Base de Datos y no por el programa cliente que lo
accede, permitiendo la ejecución de una acción o conjunto de acciones especificas.
Para poder crear un procedimiento almacenado es necesario que tengas
permisos INSERT y DELETE sobre la base de datos.
SQL AVANZADO
Procedimientos Almacenados
IN: Es el tipo de parámetro que se usa por defecto. La aplicación o código que invoque al
procedimiento tendrá que pasar un argumento para este parámetro.
OUT: El valor de este parámetros pude ser cambiado en el procedimiento, y además su
valor modificado será enviado de vuelta al código o programa que invoca el
procedimiento.
INOUT: Es una mezcla de los dos conceptos anteriores. La aplicación o código que invoca
al procedimiento puede pasarle un valor a éste, devolviendo el valor modificado al
terminar la ejecución. En caso de resultarte confuso, echa un ojo al ejemplo que verás
más adelante.
SQL AVANZADO
Procedimientos Almacenados
SQL AVANZADO
Procedimientos Almacenados - Manejo de
errores
• DECLARE CONTINUE HANDLER FOR
https://dev.mysql.com/doc/mysql-errors/8.0/en/server-error-reference.html
SQL AVANZADO
Procedimientos Almacenados - Manejo de
errores
• DECLARE CONTINUE HANDLER FOR SQLSTATE
SQL AVANZADO
Procedimientos Almacenados - Manejo de
errores
• DECLARE CONTINUE HANDLER FOR SQLEXCEPTION
SQL AVANZADO
Disparadores (Triggers)
SQL AVANZADO
Disparadores (Triggers)
• Serie de reglas predefinidas que se asocian a una tabla. Se aplican cuando
se realizan determinadas operaciones en una tabla, ejemplo, al insertar,
actualizar o eliminar registros.
• Su principal función es contribuir a mejorar la gestión de la base de datos.
Ya que se pueden realizar operaciones de forma automática.
• Útiles para aumentar la seguridad e integridad de la información debido a
la programación de restricciones o requerimientos de verificación que
permiten minimizar los errores y sincronizar la información.
SQL AVANZADO
Disparadores (Triggers)
•Sintaxis de CREATE TRIGGER
SQL AVANZADO
Disparadores (Triggers)
• Sintaxis de CREATE TRIGGER
nombre_tabla: Tabla a la que se asocia. Esta debe ser una tabla permanente.
momento_disp: Acción disparadora. BEFORE (antes) o AFTER (después), para
indicar que se ejecute antes o después que la sentencia que lo activa.
evento_disp : Sentencia que activa al disparador. INSERT, UPDATE, o DELETE.
SQL AVANZADO
Disparadores (Triggers)
• Sintaxis de CREATE TRIGGER
• No puede haber dos disparadores en una misma tabla que correspondan al mismo
momento y sentencia.
• sentencia_disp : Sentencia que se ejecuta cuando se activa el disparador. Si se desean
ejecutar múltiples sentencias, deben ir entre BEGIN - END.
• Las columnas de la tabla asociadas pueden referenciarse empleando los alias OLD y NEW.
OLD.nombre_col hace referencia a la columna antes de ser actualizada o borrada.
NEW.nombre_col hace referencia a una columna en una nueva fila a punto de ser insertada,
o en una fila existente luego de que fue actualizada.
SQL AVANZADO
Disparadores (Triggers)
•Sintaxis de DROP TRIGGER
• El nombre de esquema es opcional.
SQL AVANZADO
Disparadores (Triggers)
MOMENTO EVENTO TOMA DE DATOS TIPS
BEFORE INSERT New.campo: campo nuevo
AFTER INSERT New.campo: campo nuevo No se puede trabajar sobre la misma tabla
BEFORE UPDATE New.campo: campo nuevo
old.campo: campo viejo
AFTER UPDATE New.campo: campo nuevo
old.campo: campo viejo
No se puede trabajar sobre la misma tabla
BEFORE DELETE old.campo: campo viejo
AFTER DELETE old.campo: campo viejo
Dirección estratégica
Es una disciplina que integra las distintas estrategias y
tácticas empresariales, analiza decisiones tomadas y
observa sus consecuencias o efectos durante un
periodo de tiempo, aparte de su pretensión de
alcanzar objetivos empresariales a largo plazo.
Es decir, precisa el camino que debería seguir la
compañía para el logro de objetivos. Esto implica una
revisión periódica de las metas trazadas versus los
cambios de la empresa a nivel local, nacional o
internacional, además de realizar los ajustes
necesarios para cumplir con los objetivos trazados.
Dirección estratégica
¿Por qué es necesaria?
• La orientación a la alta gerencia.
• La gestión integral.
• El aumento de la competitividad.
• El aseguramiento una planificación estratégica.
• La aplicación y manejo del ciclo PHVA (planear, hacer, verificar y actuar).
• El establecimiento del Cuadro de Mando Integral o CMI (Balanced
ScoreCard o, BSC).
• La implantación de indicadores de gestión y proceso
Datos, Información y Conocimiento
• Los datos son elementos sin procesar,
sacados de la realidad que a su vez genera
nuevos elementos y que por sí solos no
generan nuevo conocimiento.
• La información es el principio del
conocimiento. Son datos con un significado o
función especial o el resultado de combinar
diferentes datos, es decir, son datos con
contexto.
• El conocimiento es la información analizada
que hace nuevos aportes a un área específica.
Inteligencia de Negocios
• El business intelligence o inteligencia de
negocios, es un proceso de intercambio
para explorar y analizar información
estructurada de la empresa o sobre una
determinada área, para descubrir
tendencias o patrones, a partir de los
cuales derivar ideas y extraer
conocimiento para el mejoramiento de la
empresa.
Inteligencia de Negocios
Inteligencia de Negocios
• Procesos ETL: consisten en la extracción, transformación y carga de los datos en el
data warehouse. Antes de guardarlos ahí, deben ser transformados, limpiados,
filtrados y redefinidos. Como se mencionó anteriormente, la información que
tienen las empresas en los sistemas transaccionales no está preparada para la
toma de decisiones.
• Data warehouse: también llamado almacén de datos, con el metadata o
diccionario de datos. Se busca almacenar los datos de una forma que facilite y
maximice su flexibilidad, facilidad de acceso y administración. Surge como
respuesta a las necesidades de los usuarios que necesitan información
consistente, integrada, histórica y preparada para ser analizada y apoyar la toma
de decisiones.
Inteligencia de Negocios
• Herramientas OLAP: para proveer la capacidad de cálculo, consultas,
funciones de planeamiento, pronóstico y análisis de escenarios en grandes
volúmenes de datos. En la actualidad existen otras alternativas tecnológicas
al OLAP. Siguiendo el modelo se deben analizar las tecnologías que
permitirán tratar y visualizar la información que reside en un data
warehouse. En este apartado también se tratarán las herramientas de
visualización, ya que en muchas ocasiones van ligadas. .
Inteligencia de Negocios
Inteligencia de Negocios
BODEGAS DE DATOS (DATAWAREHOUSE)
Ciclo de Vida (Metodología Kimball)
BODEGAS DE DATOS (DATAWAREHOUSE)
Ciclo de Vida (Metodología Kimball)
Este ciclo de vida del proyecto de DW, está basado en cuatro principios básicos:
• Centrarse en el negocio: Hay que concentrarse en la identificación de los
requerimientos del negocio y su valor asociado, y usar estos esfuerzos para desarrollar
relaciones sólidas con el negocio, mejorando el análisis del mismo y la competencia.
• Construir una infraestructura de información adecuada: Diseñar una base de
información única, integrada, fácil de usar, de alto rendimiento donde se reflejará la
amplia gama de requerimientos de negocio identificados en la empresa.
BODEGAS DE DATOS (DATAWAREHOUSE)
Este ciclo de vida del proyecto de DW, está basado en cuatro principios básicos:
• Realizar entregas en incrementos significativos: Crear el almacén de datos (DW) en
incrementos entregables en plazos de 6 a 12 meses. Hay que usa el valor de negocio de
cada elemento identificado para determinar el orden de aplicación de los incrementos.
• Ofrecer la solución completa: proporcionar todos los elementos necesarios para
entregar valor a los usuarios de negocios. También se deberá entregar herramientas de
consulta ad hoc, aplicaciones para informes y análisis avanzado, capacitación, soporte,
sitio web y documentación.
BODEGAS DE DATOS (DATAWAREHOUSE)
Conocido también como el almacén de datos, se busca almacenar datos de forma que
facilite y maximice su flexibilidad, facilidad de acceso y administración. Surge como
respuesta a las necesidades de los usuarios que necesitan información consistente,
integrada, histórica y preparada para ser analizada y poder tomar decisiones.
BODEGAS DE DATOS (DATAWAREHOUSE)
Características
• Orientado a un área: significa que cada parte de la bodega de datos está
construida para resolver un problema de negocio, que ha sido definido por
quienes toman las decisiones. Por ejemplo, entender los hábitos de compra de los
adolescentes, analizar la calidad de los productos, analizar la productividad de
una línea de producción.
• Integrado: la información debe ser convertida en medidas comunes, códigos
comunes y formatos comunes para que pueda ser útil. La integración permite a
las organizaciones implementar la estandarización de conceptos, por ejemplo: la
moneda, las fechas, etc.
BODEGAS DE DATOS (DATAWAREHOUSE)
Características
• Indexado en el tiempo: Significa que la información histórica se mantiene y
se almacena en determinadas unidades de tiempo, tales como horas, días,
semanas, meses, trimestres o años. Ello nos permitirá analizar, por
ejemplo, la evolución de las ventas, los inventarios en los periodos que se
definan.
• No volátil: Esta información no es mantenida por los usuarios, como se
realizaría en los entornos transaccionales. La información se almacena
para la toma de decisiones. La actualización no se realiza de forma
continua, sino periódicamente, como lo defina la empresa.
BODEGAS DE DATOS (DATAWAREHOUSE)
Datamart
• Es un almacén de datos orientado a un área específica, como por
ejemplo, Ventas, Recursos Humanos u otros sectores en una organización.
Por ello, también se le conoce como una base de información
departamental. Este almacén permite que una empresa pueda acceder a
datos claves de un área de forma sencilla, además de realizar diversas
funciones, tales como:
• La organización de información para su posterior análisis.
• La elaboración de indicadores clave de rendimiento (KPI).
• La creación de informes para un aprendizaje automático.
• La evaluación de datos sobre el cumplimiento de objetivos de un sector.
BODEGAS DE DATOS (DATAWAREHOUSE)
Datamart vs Datawarehouse
Datamart Datawarehouse
Tamaño <100 GB +100 GB
Ámbito Un único ámbito Varios ámbitos
Alcance Área de negocio Toda la empresa
Fuentes de datos Pocas fuentes Muchos sistemas de fuentes
Integración de datos
Un único ámbito de actividad
Todos los datos de la
empresa
Tiempo de creación Minutos, semanas, meses De muchos meses a años
BODEGAS DE DATOS (DATAWAREHOUSE)
Tipos de Datamart
• Datamarts dependientes: Se crea a partir de un almacén de datos
empresariales existente. Para formar un almacén de datos, se agrega un
conjunto de datos concreto a partir del almacén, se reestructuran y luego
se cargan al datamart, donde pueden realizarse consultas. Pueden ser una
visión lógica o un subconjunto físico del almacén de datos:
• Visión lógica: una tabla/vista virtual separada lógicamente aunque no
físicamente del almacén de datos
• Subconjunto físico: extracción de datos que constituye una base de datos
separada físicamente del almacén de datos
BODEGAS DE DATOS (DATAWAREHOUSE)
Tipos de Datamart
• Datamarts independientes: Es un sistema autónomo (creado
sin utilizar ningún almacén) que se centra en una única
disciplina o área del negocio. Los datos se extraen de fuentes
internas o externas (o de ambas), se procesan y luego se
cargan al repositorio del datamart, donde se almacenan hasta
que son necesarios para análisis comerciales.
• Datamarts híbridos: Combina datos de un almacén de datos
existente con otros sistemas de fuentes operativas.
BODEGAS DE DATOS (DATAWAREHOUSE)
Modelos Datawarehouse
• Modelo Estrella: Está formado por
una tabla central de hechos y varias
dimensiones, incluida una dimensión
de tiempo. Lo más representativo de
la arquitectura de estrella es que
solo existe una tabla de dimensiones
para cada dimensión.
BODEGAS DE DATOS (DATAWAREHOUSE)
Modelos Datawarehouse
• Modelo Estrella: Es un modelo desnormalizado, ya que lo que se busca es una
mejora en el rendimiento de las consultas. Los join en las bases de datos
relacionales pueden ser muy pesados. Ventajas y desventajas de este modelo:
• Simple y rápido para un análisis multidimensional. Permite consultar datos
agregados y detalles.
• Permite implementar la funcionalidad de los datos multidimensionales y a la
vez las ventajas de una base de datos relacional.
• En cuanto a rendimiento es la mejor opción, ya que permite indexar las
dimensiones de forma individualizada sin que el rendimiento de la base de
datos se vea afectado.
BODEGAS DE DATOS (DATAWAREHOUSE)
Modelos Datawarehouse
• Copo de Nieve: En este modelo la tabla
de hechos ya no es la única que se relaciona
con otras tablas ya que existen otras tablas
que se relacionan con las dimensiones y que
no tienen relación directa con la tabla de
hechos. El modelo fue concebido para
facilitar el mantenimiento de las
dimensiones, sin embargo esto permite que
se vinculen más tablas a las secuencias SQL.
BODEGAS DE DATOS (DATAWAREHOUSE)
Modelos Datawarehouse
• Copo de Nieve: Ventajas y desventajas de este modelo:
• Algo positivo de este esquema es que al estar normalizado se evita la
redundancia de datos.
• El tiempo de respuesta es muy elevado, por lo que si es necesaria una
respuesta rápida y es crítico para el sistema, puede no ser la mejor
opción.
Bibliografia
• Mohammadhossein-Barkhordari, M. N. (2017). Atrak: a MapReduce-based data
warehouse for big data. The Journal of Supercomputing, 4596-4610.
• Sebastian-Busch, V. N. (2017). Automatic classification of data-warehouse-data for
information lifecycle management using machine learning techniques. Information
Systems Frontiers; New York, 1085-1099.
• Ramos, S. (2016). Proceso de negocio, data mart, data warehouse. En Business
Intelligence (BI) y Analytics: el arte de convertir los datos en conocimiento. Alicante:
SolidQ Press.
• Cano, J. L. (2007). Business Intelligence: competir con información (pp. 392). Madrid:
ESADE Business School. Recuperado de:
http://itemsweb.esade.edu/biblioteca/archivo/Business_Intelligence_competir_con_i
nformacion.pdf

Más contenido relacionado

Similar a Bases de Datos Masivas Corte I.pptx

Similar a Bases de Datos Masivas Corte I.pptx (20)

3. introducción a sql 2007
3. introducción a sql 20073. introducción a sql 2007
3. introducción a sql 2007
 
Manejo De Sentencias De Definicion
Manejo De Sentencias De DefinicionManejo De Sentencias De Definicion
Manejo De Sentencias De Definicion
 
Base de datos - Clase 2
Base de datos - Clase 2Base de datos - Clase 2
Base de datos - Clase 2
 
Sentencias SQL.pptx
Sentencias SQL.pptxSentencias SQL.pptx
Sentencias SQL.pptx
 
Alumno valoracion 1.1 de programacion
Alumno valoracion 1.1 de programacionAlumno valoracion 1.1 de programacion
Alumno valoracion 1.1 de programacion
 
SQL 2016 Column Store Index
SQL 2016 Column Store IndexSQL 2016 Column Store Index
SQL 2016 Column Store Index
 
Fundamentos sql
Fundamentos sqlFundamentos sql
Fundamentos sql
 
Sentencias
SentenciasSentencias
Sentencias
 
Técnicas avanzadas de consultas con sql server 2014
Técnicas avanzadas de consultas con sql server 2014Técnicas avanzadas de consultas con sql server 2014
Técnicas avanzadas de consultas con sql server 2014
 
Expo
ExpoExpo
Expo
 
Data warehouse
Data warehouseData warehouse
Data warehouse
 
Pres17BDII.ppt
Pres17BDII.pptPres17BDII.ppt
Pres17BDII.ppt
 
Lenguaje transact sql
Lenguaje transact sqlLenguaje transact sql
Lenguaje transact sql
 
Sesión 4
Sesión 4Sesión 4
Sesión 4
 
Desnormalizacion bases datos 2
Desnormalizacion bases datos 2Desnormalizacion bases datos 2
Desnormalizacion bases datos 2
 
Vistazo a SQL Server 2016
Vistazo a SQL Server 2016Vistazo a SQL Server 2016
Vistazo a SQL Server 2016
 
DDL
DDLDDL
DDL
 
Ddl
DdlDdl
Ddl
 
Curso Developer SQL 2012 enfocado a la Certificación 70-641
Curso Developer SQL 2012 enfocado a la Certificación 70-641Curso Developer SQL 2012 enfocado a la Certificación 70-641
Curso Developer SQL 2012 enfocado a la Certificación 70-641
 
SQL 2016 Mejoras en InMemory OLTP y Column Store Index
SQL 2016 Mejoras en InMemory OLTP y Column Store IndexSQL 2016 Mejoras en InMemory OLTP y Column Store Index
SQL 2016 Mejoras en InMemory OLTP y Column Store Index
 

Último

Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónXimenaFallaLecca1
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023RonaldoPaucarMontes
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOFritz Rebaza Latoche
 
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotencialesUNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotencialesElianaCceresTorrico
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptCRISTOFERSERGIOCANAL
 
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptx
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptxCONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptx
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptxBrayanJavierCalle2
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaAlexanderimanolLencr
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMONICADELROCIOMUNZON1
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMarceloQuisbert6
 
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxCARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxvalenciaespinozadavi1
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASDOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASPersonalJesusGranPod
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxMarcelaArancibiaRojo
 
clasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias localesclasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias localesMIGUELANGEL2658
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxJuanPablo452634
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacajeremiasnifla
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrialGibranDiaz7
 

Último (20)

Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcción
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
 
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdfVALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
VALORIZACION Y LIQUIDACION MIGUEL SALINAS.pdf
 
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotencialesUNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
 
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptx
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptxCONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptx
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptx
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiología
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptx
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principios
 
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxCARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASDOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docx
 
clasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias localesclasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias locales
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpaca
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrial
 

Bases de Datos Masivas Corte I.pptx

  • 1. Bases de Datos Masivas Corte I Diana Quiroga
  • 2. Reglas • PORCENTAJES POR CORTE ❖Corte 1 = 35% ❖Corte 2 = 35% ❖Corte 3 = 30% • CORTE I ❖Proyecto Integrador (40%) (20% Documento , 60% Sustentación) ❖Parcial (30%) ❖Trabajos en clase, estudio de casos y talleres (30%)
  • 4. BASES DE DATOS Característica Base de datos SQL Base de datos NoSQL Desempeño (performance) Bajo Alto Availability (disponibilidad) Pobre Buena Fiabilidad (reliability) Buena Pobre Consistencia (consistency) Buena Pobre Almacenamiento (data storage) Tamaño medio Optimizado para grandes datos Escalabilidad (scalability) Alta pero cara Alta
  • 5. SQL AVANZADO Vistas: Tabla virtual generada a partir de la ejecución de varias consultas sobre una o más tablas. Una vista tiene la misma estructura de filas y columnas que cualquier otra tabla MySQL, se almacenan del mismo modo y no es posible que existan dos con el mismo nombre. CREATE [OR REPLACE] VIEW nombre_vista [lista_columnas] AS consulta
  • 6. SQL AVANZADO Índices: Son punteros a una fila de una determinada tabla de nuestra base de datos. • Permiten localizar y devolver registros de una forma sencilla y rápida. Son especialmente útiles cuando se quiere buscar elementos de entre los millones y hasta billones de registros que puede contener una tabla. • OJO: La creación de índices implica un aumento en el tiempo de ejecución sobre aquellas consultas de inserción, actualización y eliminación. Del mismo modo, los índices necesitan un espacio para almacenarse, por lo que también tienen un coste adicional en forma de espacio en disco.
  • 8. SQL AVANZADO Índices para que se usan: • Encontrar las filas que cumplen la condición WHERE de la consulta cuyas columnas estén indexadas. • Recuperar las filas de otras tablas cuando se emplean operaciones de tipo JOIN. • Disminuir el tiempo de ejecución de las consultas con ordenación o agrupamiento si todas las columnas presentes en los criterios forman parte de un índice. • Si la consulta emplea una condición simple cuya columna de la condición está indexada, las filas serán recuperadas directamente a partir del índice, sin pasar a consular la tabla.
  • 9. SQL AVANZADO ¿Qué tipos de índices hay? • INDEX (NON-UNIQUE): Índice normal, no único. Esto implica que admite valores duplicados para la columna (o columnas) que componen el índice. No aplica ninguna restricción especial a los datos de la columna (o columnas) que componen el índice sino que se emplea simplemente para mejorar el tiempo de ejecución de las consultas. CREATE INDEX T_IE1 ON T (B); CREATE INDEX T_IE1 ON T (B); CREATE INDEX T_IE1 ON T (B);
  • 10. SQL AVANZADO ¿Qué tipos de índices hay? • UNIQUE: Se refiere a un índice en el que todas las columnas deben tener un valor único. Esto implica que no admite valores duplicados para la columna (o columnas) que componen el índice. CREATE UNIQUE INDEX index_name ON table_name(column_1,column_2);
  • 11. SQL AVANZADO ¿Qué tipos de índices hay? • PRIMARY: este tipo de índice se refiere a un índice en el que todas las columnas deben tener un valor único (al igual que en el caso del índice UNIQUE) pero con la limitación de que sólo puede existir un índice PRIMARY en cada una de las tablas. ALTER TABLE table_name ADD PRIMARY KEY(column_list); CREATE TABLE roles( role_id INT AUTO_INCREMENT, role_name VARCHAR(50), PRIMARY KEY(role_id) );
  • 12. SQL AVANZADO ¿Qué tipos de índices hay? • FULLTEXT: estos índices se emplean para realizar búsquedas sobre texto (CHAR, VARCHAR y TEXT). Estos índices se componen por todas las palabras que están contenidas en la columna (o columnas) que contienen el índice. Este tipo de índices sólo están soportados por InnoDB y MyISAM en MySQL 5.7. CREATE FULLTEXT INDEX idx ON opening_lines(opening_line);
  • 13. SQL AVANZADO Particionamiento Particionar es el proceso donde tablas muy grandes son divididas en múltiples partes más pequeñas. Al separar una tabla grande en tablas individuales más pequeñas, las consultas que acceden sólo a una fracción de los datos pueden correr más rápido porque hay menos datos que escanear.
  • 14. SQL AVANZADO Particionamiento • Mejorar la escalabilidad. • Mejorar el rendimiento. Las operaciones de acceso a datos en cada partición se realizan en un volumen de datos menor. Si se realiza correctamente, la creación de particiones puede aumentar la eficiencia del sistema. • Mejorar la seguridad. En algunos casos, puede separar los datos confidenciales y no confidenciales en particiones distintas y aplicar controles de seguridad distintos a los primeros. • Proporcionan flexibilidad operativa. La creación de particiones ofrece muchas oportunidades para ajustar con precisión las operaciones, maximizar la eficacia administrativa y minimizar los costes. • Adaptación del almacén de datos al patrón de uso. • Mejorar la disponibilidad.
  • 15. SQL AVANZADO Eliminar índices • DROP INDEX idx ON opening_lines
  • 16. SQL AVANZADO Diseño de Particionamiento • Particiones horizontales: En esta estrategia, cada partición es un almacén de datos independiente, pero todas las particiones tienen el mismo esquema.
  • 17. SQL AVANZADO Diseño de Particionamiento • Particiones verticales. En esta estrategia, cada partición contiene un subconjunto de los campos de elementos del almacén de datos. Los campos se dividen según su patrón de uso.
  • 18. SQL AVANZADO Diseño de Particionamiento • Creación de particiones funcional. En esta estrategia, los datos se agregan en función de cómo los usa cada contexto limitado en el sistema. Por ejemplo, un sistema de comercio electrónico puede almacenar los datos de facturas en una partición y los del inventario de productos en otra.
  • 19. SQL AVANZADO Tipos de Particionamiento Horizontal • RANGE: Este tipo de partición asigna filas a particiones en función de los valores de columna que se encuentran dentro de un rango establecido.
  • 20. SQL AVANZADO Tipos de Particionamiento Horizontal • HAST: Para definir este tipo de particionado, deberemos de indicarle una columna del tipo integer o una función de usuario que devuelva un integer. En este caso, se ejecutará una función sobre un determinado campo que devolverá un valor entero. Según el valor, MySql insertará el registro en una partición distinta.
  • 21. SQL AVANZADO Tipos de Particionamiento Horizontal • LIST: Se realiza según una lista de valores definida sobre una determinada columna de la tabla o expresión. Es decir, se indica el numero de particiones a crear, y para cada partición, la lista de valores que serán la condición para insertar en ella, de forma que cuando un registro que se va a introducir en la base de datos tenga un valor incluido en la lista de valores, el registro se insertara en dicha partición.
  • 22. SQL AVANZADO Tipos de Particionamiento Horizontal • KEY:. similar al HASH, pero la función para el particionado la proporciona MySql automáticamente (con la función MD5). Se pueden indicar los campos para el particionado, pero siempre han de ser de la clave primaria de la tabla o de un índice único.
  • 23. SQL AVANZADO Funciones Es una rutina creada para tomar unos parámetros, procesarlos y retornar en un salida. Se diferencian de los procedimientos en las siguientes características: • Solamente pueden tener parámetros de entrada IN y no parámetros de salida OUT o INOUT • Deben retornar en un valor con algún tipo de dato definido • Pueden usarse en el contexto de una sentencia SQL • Solo retornan un valor individual, no un conjunto de registros.
  • 25. SQL AVANZADO Funciones Un procedimiento o función se considera “determinista” si siempre produce el mismo resultado para los mismos parámetros de entrada, y “no determinista” en cualquier otro caso. Si no se da ni DETERMINISTIC ni NOT DETERMINISTIC por defecto es NOT DETERMINISTIC.
  • 26. SQL AVANZADO Procedimientos Almacenados Conjunto de comandos que pueden ser ejecutados directamente en el servidor, es decir, será ejecutado por el servidor de Base de Datos y no por el programa cliente que lo accede, permitiendo la ejecución de una acción o conjunto de acciones especificas. Para poder crear un procedimiento almacenado es necesario que tengas permisos INSERT y DELETE sobre la base de datos.
  • 27. SQL AVANZADO Procedimientos Almacenados IN: Es el tipo de parámetro que se usa por defecto. La aplicación o código que invoque al procedimiento tendrá que pasar un argumento para este parámetro. OUT: El valor de este parámetros pude ser cambiado en el procedimiento, y además su valor modificado será enviado de vuelta al código o programa que invoca el procedimiento. INOUT: Es una mezcla de los dos conceptos anteriores. La aplicación o código que invoca al procedimiento puede pasarle un valor a éste, devolviendo el valor modificado al terminar la ejecución. En caso de resultarte confuso, echa un ojo al ejemplo que verás más adelante.
  • 29. SQL AVANZADO Procedimientos Almacenados - Manejo de errores • DECLARE CONTINUE HANDLER FOR https://dev.mysql.com/doc/mysql-errors/8.0/en/server-error-reference.html
  • 30. SQL AVANZADO Procedimientos Almacenados - Manejo de errores • DECLARE CONTINUE HANDLER FOR SQLSTATE
  • 31. SQL AVANZADO Procedimientos Almacenados - Manejo de errores • DECLARE CONTINUE HANDLER FOR SQLEXCEPTION
  • 33. SQL AVANZADO Disparadores (Triggers) • Serie de reglas predefinidas que se asocian a una tabla. Se aplican cuando se realizan determinadas operaciones en una tabla, ejemplo, al insertar, actualizar o eliminar registros. • Su principal función es contribuir a mejorar la gestión de la base de datos. Ya que se pueden realizar operaciones de forma automática. • Útiles para aumentar la seguridad e integridad de la información debido a la programación de restricciones o requerimientos de verificación que permiten minimizar los errores y sincronizar la información.
  • 35. SQL AVANZADO Disparadores (Triggers) • Sintaxis de CREATE TRIGGER nombre_tabla: Tabla a la que se asocia. Esta debe ser una tabla permanente. momento_disp: Acción disparadora. BEFORE (antes) o AFTER (después), para indicar que se ejecute antes o después que la sentencia que lo activa. evento_disp : Sentencia que activa al disparador. INSERT, UPDATE, o DELETE.
  • 36. SQL AVANZADO Disparadores (Triggers) • Sintaxis de CREATE TRIGGER • No puede haber dos disparadores en una misma tabla que correspondan al mismo momento y sentencia. • sentencia_disp : Sentencia que se ejecuta cuando se activa el disparador. Si se desean ejecutar múltiples sentencias, deben ir entre BEGIN - END. • Las columnas de la tabla asociadas pueden referenciarse empleando los alias OLD y NEW. OLD.nombre_col hace referencia a la columna antes de ser actualizada o borrada. NEW.nombre_col hace referencia a una columna en una nueva fila a punto de ser insertada, o en una fila existente luego de que fue actualizada.
  • 37. SQL AVANZADO Disparadores (Triggers) •Sintaxis de DROP TRIGGER • El nombre de esquema es opcional.
  • 38. SQL AVANZADO Disparadores (Triggers) MOMENTO EVENTO TOMA DE DATOS TIPS BEFORE INSERT New.campo: campo nuevo AFTER INSERT New.campo: campo nuevo No se puede trabajar sobre la misma tabla BEFORE UPDATE New.campo: campo nuevo old.campo: campo viejo AFTER UPDATE New.campo: campo nuevo old.campo: campo viejo No se puede trabajar sobre la misma tabla BEFORE DELETE old.campo: campo viejo AFTER DELETE old.campo: campo viejo
  • 39. Dirección estratégica Es una disciplina que integra las distintas estrategias y tácticas empresariales, analiza decisiones tomadas y observa sus consecuencias o efectos durante un periodo de tiempo, aparte de su pretensión de alcanzar objetivos empresariales a largo plazo. Es decir, precisa el camino que debería seguir la compañía para el logro de objetivos. Esto implica una revisión periódica de las metas trazadas versus los cambios de la empresa a nivel local, nacional o internacional, además de realizar los ajustes necesarios para cumplir con los objetivos trazados.
  • 40. Dirección estratégica ¿Por qué es necesaria? • La orientación a la alta gerencia. • La gestión integral. • El aumento de la competitividad. • El aseguramiento una planificación estratégica. • La aplicación y manejo del ciclo PHVA (planear, hacer, verificar y actuar). • El establecimiento del Cuadro de Mando Integral o CMI (Balanced ScoreCard o, BSC). • La implantación de indicadores de gestión y proceso
  • 41. Datos, Información y Conocimiento • Los datos son elementos sin procesar, sacados de la realidad que a su vez genera nuevos elementos y que por sí solos no generan nuevo conocimiento. • La información es el principio del conocimiento. Son datos con un significado o función especial o el resultado de combinar diferentes datos, es decir, son datos con contexto. • El conocimiento es la información analizada que hace nuevos aportes a un área específica.
  • 42. Inteligencia de Negocios • El business intelligence o inteligencia de negocios, es un proceso de intercambio para explorar y analizar información estructurada de la empresa o sobre una determinada área, para descubrir tendencias o patrones, a partir de los cuales derivar ideas y extraer conocimiento para el mejoramiento de la empresa.
  • 44. Inteligencia de Negocios • Procesos ETL: consisten en la extracción, transformación y carga de los datos en el data warehouse. Antes de guardarlos ahí, deben ser transformados, limpiados, filtrados y redefinidos. Como se mencionó anteriormente, la información que tienen las empresas en los sistemas transaccionales no está preparada para la toma de decisiones. • Data warehouse: también llamado almacén de datos, con el metadata o diccionario de datos. Se busca almacenar los datos de una forma que facilite y maximice su flexibilidad, facilidad de acceso y administración. Surge como respuesta a las necesidades de los usuarios que necesitan información consistente, integrada, histórica y preparada para ser analizada y apoyar la toma de decisiones.
  • 45. Inteligencia de Negocios • Herramientas OLAP: para proveer la capacidad de cálculo, consultas, funciones de planeamiento, pronóstico y análisis de escenarios en grandes volúmenes de datos. En la actualidad existen otras alternativas tecnológicas al OLAP. Siguiendo el modelo se deben analizar las tecnologías que permitirán tratar y visualizar la información que reside en un data warehouse. En este apartado también se tratarán las herramientas de visualización, ya que en muchas ocasiones van ligadas. .
  • 48. BODEGAS DE DATOS (DATAWAREHOUSE) Ciclo de Vida (Metodología Kimball)
  • 49. BODEGAS DE DATOS (DATAWAREHOUSE) Ciclo de Vida (Metodología Kimball) Este ciclo de vida del proyecto de DW, está basado en cuatro principios básicos: • Centrarse en el negocio: Hay que concentrarse en la identificación de los requerimientos del negocio y su valor asociado, y usar estos esfuerzos para desarrollar relaciones sólidas con el negocio, mejorando el análisis del mismo y la competencia. • Construir una infraestructura de información adecuada: Diseñar una base de información única, integrada, fácil de usar, de alto rendimiento donde se reflejará la amplia gama de requerimientos de negocio identificados en la empresa.
  • 50. BODEGAS DE DATOS (DATAWAREHOUSE) Este ciclo de vida del proyecto de DW, está basado en cuatro principios básicos: • Realizar entregas en incrementos significativos: Crear el almacén de datos (DW) en incrementos entregables en plazos de 6 a 12 meses. Hay que usa el valor de negocio de cada elemento identificado para determinar el orden de aplicación de los incrementos. • Ofrecer la solución completa: proporcionar todos los elementos necesarios para entregar valor a los usuarios de negocios. También se deberá entregar herramientas de consulta ad hoc, aplicaciones para informes y análisis avanzado, capacitación, soporte, sitio web y documentación.
  • 51. BODEGAS DE DATOS (DATAWAREHOUSE) Conocido también como el almacén de datos, se busca almacenar datos de forma que facilite y maximice su flexibilidad, facilidad de acceso y administración. Surge como respuesta a las necesidades de los usuarios que necesitan información consistente, integrada, histórica y preparada para ser analizada y poder tomar decisiones.
  • 52. BODEGAS DE DATOS (DATAWAREHOUSE) Características • Orientado a un área: significa que cada parte de la bodega de datos está construida para resolver un problema de negocio, que ha sido definido por quienes toman las decisiones. Por ejemplo, entender los hábitos de compra de los adolescentes, analizar la calidad de los productos, analizar la productividad de una línea de producción. • Integrado: la información debe ser convertida en medidas comunes, códigos comunes y formatos comunes para que pueda ser útil. La integración permite a las organizaciones implementar la estandarización de conceptos, por ejemplo: la moneda, las fechas, etc.
  • 53. BODEGAS DE DATOS (DATAWAREHOUSE) Características • Indexado en el tiempo: Significa que la información histórica se mantiene y se almacena en determinadas unidades de tiempo, tales como horas, días, semanas, meses, trimestres o años. Ello nos permitirá analizar, por ejemplo, la evolución de las ventas, los inventarios en los periodos que se definan. • No volátil: Esta información no es mantenida por los usuarios, como se realizaría en los entornos transaccionales. La información se almacena para la toma de decisiones. La actualización no se realiza de forma continua, sino periódicamente, como lo defina la empresa.
  • 54. BODEGAS DE DATOS (DATAWAREHOUSE) Datamart • Es un almacén de datos orientado a un área específica, como por ejemplo, Ventas, Recursos Humanos u otros sectores en una organización. Por ello, también se le conoce como una base de información departamental. Este almacén permite que una empresa pueda acceder a datos claves de un área de forma sencilla, además de realizar diversas funciones, tales como: • La organización de información para su posterior análisis. • La elaboración de indicadores clave de rendimiento (KPI). • La creación de informes para un aprendizaje automático. • La evaluación de datos sobre el cumplimiento de objetivos de un sector.
  • 55. BODEGAS DE DATOS (DATAWAREHOUSE) Datamart vs Datawarehouse Datamart Datawarehouse Tamaño <100 GB +100 GB Ámbito Un único ámbito Varios ámbitos Alcance Área de negocio Toda la empresa Fuentes de datos Pocas fuentes Muchos sistemas de fuentes Integración de datos Un único ámbito de actividad Todos los datos de la empresa Tiempo de creación Minutos, semanas, meses De muchos meses a años
  • 56. BODEGAS DE DATOS (DATAWAREHOUSE) Tipos de Datamart • Datamarts dependientes: Se crea a partir de un almacén de datos empresariales existente. Para formar un almacén de datos, se agrega un conjunto de datos concreto a partir del almacén, se reestructuran y luego se cargan al datamart, donde pueden realizarse consultas. Pueden ser una visión lógica o un subconjunto físico del almacén de datos: • Visión lógica: una tabla/vista virtual separada lógicamente aunque no físicamente del almacén de datos • Subconjunto físico: extracción de datos que constituye una base de datos separada físicamente del almacén de datos
  • 57. BODEGAS DE DATOS (DATAWAREHOUSE) Tipos de Datamart • Datamarts independientes: Es un sistema autónomo (creado sin utilizar ningún almacén) que se centra en una única disciplina o área del negocio. Los datos se extraen de fuentes internas o externas (o de ambas), se procesan y luego se cargan al repositorio del datamart, donde se almacenan hasta que son necesarios para análisis comerciales. • Datamarts híbridos: Combina datos de un almacén de datos existente con otros sistemas de fuentes operativas.
  • 58. BODEGAS DE DATOS (DATAWAREHOUSE) Modelos Datawarehouse • Modelo Estrella: Está formado por una tabla central de hechos y varias dimensiones, incluida una dimensión de tiempo. Lo más representativo de la arquitectura de estrella es que solo existe una tabla de dimensiones para cada dimensión.
  • 59. BODEGAS DE DATOS (DATAWAREHOUSE) Modelos Datawarehouse • Modelo Estrella: Es un modelo desnormalizado, ya que lo que se busca es una mejora en el rendimiento de las consultas. Los join en las bases de datos relacionales pueden ser muy pesados. Ventajas y desventajas de este modelo: • Simple y rápido para un análisis multidimensional. Permite consultar datos agregados y detalles. • Permite implementar la funcionalidad de los datos multidimensionales y a la vez las ventajas de una base de datos relacional. • En cuanto a rendimiento es la mejor opción, ya que permite indexar las dimensiones de forma individualizada sin que el rendimiento de la base de datos se vea afectado.
  • 60. BODEGAS DE DATOS (DATAWAREHOUSE) Modelos Datawarehouse • Copo de Nieve: En este modelo la tabla de hechos ya no es la única que se relaciona con otras tablas ya que existen otras tablas que se relacionan con las dimensiones y que no tienen relación directa con la tabla de hechos. El modelo fue concebido para facilitar el mantenimiento de las dimensiones, sin embargo esto permite que se vinculen más tablas a las secuencias SQL.
  • 61. BODEGAS DE DATOS (DATAWAREHOUSE) Modelos Datawarehouse • Copo de Nieve: Ventajas y desventajas de este modelo: • Algo positivo de este esquema es que al estar normalizado se evita la redundancia de datos. • El tiempo de respuesta es muy elevado, por lo que si es necesaria una respuesta rápida y es crítico para el sistema, puede no ser la mejor opción.
  • 62. Bibliografia • Mohammadhossein-Barkhordari, M. N. (2017). Atrak: a MapReduce-based data warehouse for big data. The Journal of Supercomputing, 4596-4610. • Sebastian-Busch, V. N. (2017). Automatic classification of data-warehouse-data for information lifecycle management using machine learning techniques. Information Systems Frontiers; New York, 1085-1099. • Ramos, S. (2016). Proceso de negocio, data mart, data warehouse. En Business Intelligence (BI) y Analytics: el arte de convertir los datos en conocimiento. Alicante: SolidQ Press. • Cano, J. L. (2007). Business Intelligence: competir con información (pp. 392). Madrid: ESADE Business School. Recuperado de: http://itemsweb.esade.edu/biblioteca/archivo/Business_Intelligence_competir_con_i nformacion.pdf