Professional Documents
Culture Documents
Durante las dcadas de los 60 y 70 surge el concepto de las bases de datos; sin embargo, el
objetivo principal siempre ha sido la administracin ptima de la informacin y el uso que
se le puede dar a la misma. Hoy, las necesidades de las empresas han cambiado y la
necesidad de interactuar con diversas fuentes de informacin ha desafiado a las bases de
datos. Lo anterior ha provocado que los volmenes de informacin sean mayores, su
formato muy diverso lo que incrementa as los tiempos de respuesta para analizar la
informacin y tomar decisiones.
2 Comentarios
Jorge Daniel Anguiano Morales, Consultor Certificado IM DB2 para LUW, IBM Mxico
30-06-2014
Tabla de contenidos
Comience su
prueba gratuita
Existe mucha informacin acerca de las bases de datos, por lo tanto el objetivo de este
artculo no es hacerlo un experto en el tema sino solo ser una gua de los conceptos que se
manejan actualmente, conocer brevemente las caractersticas de las bases de datos y las
soluciones que existen hoy en da.
Volver arriba
Tipos de bases de datos
Existen muchas empresas con diferentes giros y dependiendo del giro ser el tipo de
procesamiento que se le dar a la informacin, esto determinar el tipo de base de datos a
utilizar. Existen diferentes tipos de bases de datos pero las ms comunes son las OLTP y
OLAP.
Las bases de datos de tipo OLTP (On Line Transaction Processing) tambin son llamadas
bases de datos dinmicas lo que significa que la informacin se modifica en tiempo real, es
decir, se insertan, se eliminan, se modifican y se consultan datos en lnea durante la
operacin del sistema. Un ejemplo es el sistema de un supermercado donde se van
registrando cada uno de los artculos que el cliente est comprando y a su vez el sistema va
actualizando el Inventario.
Figura 1.
Las bases de datos de tipo OLAP (On Line Analytical Processing) tambin son llamadas
bases de datos estticas lo que significa que la informacin en tiempo real no es afectada, es
decir, no se insertan, no se eliminan y tampoco se modifican datos; solo se realizan
consultas sobre los datos ya existentes para el anlisis y toma de decisiones. Este tipo de
bases de datos son implementadas en Business Intelligence para mejorar el desempeo de
las consultas con grandes volmenes de informacin.
Figura 2.
http://www-01.ibm.com/software/data/db2/linux-unix-windows/db2-blu-acceleration/
Volver arriba
Figura 3.
Los tipos de datos que se pueden almacenar son diversos, pero los ms comunes son de tipo
Numrico, Decimales y tipo Texto. Conforme han evolucionado las bases de datos se han
expandido los tipos de datos que pueden almacenar. Por mencionar algunos tipos estn los
CLOB (Character Large Object) y BLOB (Binary Large Object). Los CLOB son utilizados
para almacenar documentos y los BLOB para almacenar una imagen o video.
Otro tipo de dato relevante hoy en da es el tipo de dato XML. Este es un tipo de dato
jerrquico porque parte de un nodo inicial o raz, y a su vez puede tener n niveles y
subniveles. Muchos manejadores de bases de datos puede manipular este tipo de dato; sin
embargo, no de forma nativa como lo hace DB2, es decir, el documento es almacenado
como un CLOB. La desventaja de almacenarlo como un CLOB implica dividir el
documento y guardarlo en diferentes reas (como si fuera un rompecabezas), y para
consultarlo se debe armar para mostrar su informacin (lo cual implica problemas de
desempeo).
Una ventaja competitiva que tiene DB2 es que los documentos XML se almacenan de
forma nativa, es decir, el documento se almacena dentro de la base de datos, lo que permite
consultar la informacin de forma directa y con mucho mejor desempeo. Incluso se
pueden crear ndices a nivel documento XML para consultar un nodo en especfico, y as
acceder ms rpido a la informacin. Otra ventaja es la compresin de documento XML lo
cual incrementa el ahorro en almacenamiento.
Figura 4.
Existen otras bases de datos que permiten almacenar diferentes tipos de documento, como
por ejemplo: Cloudant, el cual se vera ms adelante.
http://www.ibm.com/developerworks/ssa/local/im/que-es-big-data/
Otra de las ventajas competitivas que tiene las bases de datos como DB2 e Informix es que
permite hacer la explotacin de la informacin que viene de diferentes fuentes permitiendo
as la integracin con otros sistemas y lenguajes que utilizan sentencias SQL y NoSQL.
https://www.ibm.com/developerworks/ssa/library/bd-datos-sql-y-nosql-en-db2/
Volver arriba
Volver arriba
Qu es HADR?
Sus siglas en ingls significan High Availability Disaster Recovery. Es una caracterstica de
replicacin de datos que brinda una solucin de Alta Disponibilidad cuando surge una falla
parcial o total en uno de los servidores principales. Es una solucin que soporta un Servidor
como Primario y hasta tres Servidores como Secundarios. Si el servidor primario falla, uno
de los servidores secundarios tomar el control y pasar a ser ahora el servidor primario. La
replicacin de la informacin se hace a travs de los archivos log de transacciones.
Ventajas
Figura 5.
Volver arriba
Qu es PureScale?
Es una arquitectura basada en Clster. Un Clster es un conjunto de varios ordenadores
unidos por una red de alta velocidad, de tal forma que es visto como un solo computador
ms potente. Es una caracterstica de DB2 que reduce el riesgo y los costos del crecimiento
del negocio al proporcionar capacidad extrema, disponibilidad continua y transparente para
el aplicativo. Capacidad extrema significa que puede crecer su sistema como sea necesario.
Ventajas
Figura 6.
La implementacin de HADR o PureScale depender de las necesidades y capacidades de
cada empresa.
Otras soluciones han sido implementadas a nivel base de datos para hacer frente a los
problemas de performance. DB2 ofrece una gran variedad de alternativas para hacer frente
a los problemas de performance.
Una de las ventajas de estas caractersticas es que se hace un aprovechamiento del poder de
mltiples procesadores en mltiples nodos fsicos. Los datos que son consultados o
modificados son descompuestos automticamente y ejecutados en cada una de las
particiones. El uso de esta caracterstica es transparente para el usuario que ejecuta
sentencias SQL.
Ventajas
Volver arriba
Figura 7.
1. Discos compartidos.
2. Discos dedicados.
3. Permite el uso de particiones lgicas y fsicas.
4. Los comandos para la administracin de la base de datos son ejecutados en cada una
de las particiones de forma automtica y transparente.
5. Es transparente para el aplicativo.
Figura 8.
Volver arriba
Qu es Table Partitioning?
Es el mismo concepto que DPF solo que esto aplica para tablas dentro de una base de datos,
es decir, es el particionamiento de los datos de una tabla en un subconjunto de datos. En la
mayora de los casos las bases de datos conservan informacin de muchos aos atrs
(histricos) lo que provoca que al ejecutar consultas sobre esa tabla el desempeo se vea
afectado y el consumo de los recursos sea mucho mayor.
Por ejemplo, si se ejecuta una consulta sobre un milln de registros tardar ms que si se
realiza sobre 100,000 registros. Supongamos que tenemos la tabla de Ventas la cual
contiene 10 millones de registros correspondiente a las ventas de 10 aos (2004,
2005...2014). Si consultamos informacin del ao 2005 probablemente el tiempo de espera
para mostrar la informacin ser alto. En cambio si se hace un particionamiento de las
ventas por ao, al consultar la informacin del ao 2005 el manejador de la base de datos
solo consultar sobre un milln de registros y no sobre los 10 millones de registros. Dicho
de otra manera el motor de la base de datos consultar solo la particin donde se encentran
las ventas del ao 2005.
Figura 9.
Ventajas
Volver arriba
Ventajas
Figura 10.
Es importante mencionar que podemos hacer una combinacin de todas estas caractersticas
para enfrentar a los problemas que nos enfrentamos cuando hacemos consultas sobre
grandes volmenes de informacin. Hoy en da ya existen otras optimizaciones que se han
hecho al motor de DB2, el cual se podr ver ms adelante.
El segundo punto importante son los problemas comunes a los que se enfrentan las bases de
datos y las empresas, el incremento de los volmenes de informacin. Del lado de las bases
de datos implica problemas de desempeo al hacer consultas sobre grandes volmenes de
informacin y del lado de la compaa implica incrementos en los costos de
almacenamiento. De aqu surge la necesidad de implementar nuevos mecanismos para
reducir los tiempos y costos, y es aqu donde surge el tema de la compresin de datos.
Volver arriba
Qu es la Compresin de datos?
Es bsicamente la reduccin del volumen de informacin utilizando la menor cantidad
posible de espacio. Hay muchas tcnicas y algoritmos que se han implementando en las
bases de datos, sin embargo una ventaja competitiva de DB2 es que adicionalmente incluye
la compresin de los distintos tipos de objetos.
1. Compresin de registros.
2. Compresin de tablas.
3. Compresin de ndices.
4. Compresin de tablas temporales.
5. Compresin de objetos e imgenes.
6. Compresin de documentos XML.
7. Compresin de Log de transacciones.
8. Compresin de backup.
En este tema se ha avanzado mucho pero DB2 tiene el liderazgo. Ahora con el nuevo
concepto de bases de datos en memoria y con almacenamiento por columnas se puede
lograr mayores tasas de compresin, mejores a las que ya se venan obteniendo en
versiones previas.
http://www.ibm.com/developerworks/ssa/data/library/DB2BLU/
Ventajas
Figura 11.
Uno de los costos ms altos y relevantes es cuando consultamos informacin con acceso a
discos. Dependiendo de las caractersticas del disco ser la velocidad con que los datos
sern recuperados por la base de datos y devueltos al usuario final. Al comprimir datos se
reducen las Entradas/Salidas al disco, debido a que con menos acceso al disco se obtendrn
mayores volmenes de informacin. Existen diferentes tipos de discos, los discos duros o
tambin llamados discos rgidos que son discos de almacenamiento de datos no voltil que
emplean un sistema de grabacin magntica para almacenar datos digitales; y los discos de
estado slido conocidos como SSD (Solid State Disk) que es un dispositivo de
almacenamiento de datos que puede estar construido con memoria voltil y no voltil. Estos
discos son muy rpidos y consumen menos energa y la tendencia indica que en un futuro
sustituirn a los discos duros. Su principal inconveniente es que son caros.
Volver arriba
Qu es un Data Warehouse?
Es un almacn de datos que es utilizado para explotar grandes volmenes de informacin
(entre ellos informacin histrica) para efectos de anlisis que ayuden a la toma de
decisiones en las grandes empresas. Las bases de datos orientadas a Data Warehouse no
contienen datos actuales, es decir, no es una base de datos transaccional OLTP, es un tipo
de base de datos OLAP. Se ha mencionado que las bases de datos tienen muchos retos y
uno de ellos es que no se puede utilizar la misma base de datos para transacciones y para
efectos de anlisis. Esto no se puede realizar por las limitantes que se pueden tener con el
Hardware, Software, Memoria, dispositivos de almacenamiento, procesadores, etc. Debido
a lo anterior se debe especificar qu tipo de base de datos debemos utilizar (OLTP u
OLAP).
Con las nuevas necesidades y el avance tecnolgico se han modificado las bases de datos y
tambin se han creado nuevas arquitecturas de solucin (DB2 10.5 with BLU Acceleration,
Informix, PureData for Analytics entre otros).
Las empresas cuando toman la decisin de crear un Data Warehouse deben realizar un
profundo anlisis de la informacin que desean analizar y conocer cuales sern los datos a
migrar. Los datos que alimentan a un Data Warehouse pueden venir de diferentes fuentes e
incluso de diferentes proveedores de bases de datos. Para hacer la integracin de la
informacin se requieren de herramientas que nos permitan hacer la concentracin de la
informacin en el Data Warehouse. Las herramientas son variadas y existen diferentes
proveedores, estas son conocidas como herramientas ETL.
Volver arriba
Qu es un ETL?
Sus siglas en ingls significan Extract Transform Load. Extract es el proceso de extraer la
informacin que puede venir de diferentes fuentes de datos o bases de datos de distintos
proveedores. Por ejemplo, consolidar los presupuestos de Mxico y Canad, cuya
informacin est almacenada en una base de datos Informix y MySQL respectivamente. A
travs de una conexin va ODBC puede hacer la extraccin de la informacin para
concentrarla en el Data Warehouse.
Transform es el proceso de transformar los datos que se estn extrayendo antes de ser
almacenados en el Data Warehouse. Tomando el ejemplo anterior, la transformacin sera
hacer los clculos de los presupuestos de Mxico y Canad por ao, mes y regin.
Por ltimo, el Load es el proceso de la carga de los datos ya transformados hacia el Data
Warehouse. En el ejemplo anterior estamos almacenando los presupuestos ya calculados de
las regiones Mxico y Canad por ao, mes y regin.
Figura 12.
Una herramienta que ayuda en este tipo de actividades es el producto de IBM InfoSphere
DataStage.
http://www-03.ibm.com/software/products/en/ibminfodata/
Volver arriba
Qu es un Data Mart?
Es simplemente un subconjunto de datos de un Data Warehouse para un rea especfica. En
un Data Warehouse se tiene la informacin concentrada de una empresa y de todos los
departamentos. Los Data Mart nos permiten hacer una separacin de los datos para
funciones especficas, usuarios especficos y reas especficas. La informacin que alimenta
a un Data Mart tambin pueden provenir de una base datos transaccional. Esta es una de las
nuevas caractersticas del producto DB2 10.5 with BLU Acceleration. La administracin
simple de DB2 10.5 with BLU Acceleration permite generar Data Mart de una forma rpida
para ser capaz de reaccionar a los requerimientos del negocio. DB2 tambin permite la
ejecucin de reportes analticos en tiempo real para ayudar a la toma de decisiones.
Figura 13.
http://www-01.ibm.com/software/data/db2/linux-unix-windows/db2-blu-acceleration/
Volver arriba
Qu modelo de datos se utiliza en un Data Warehouse o
Data Mart?
El modelo de datos que se utiliza en una base de datos de tipo OLTP es un modelo
relacional donde existe una relacin de datos de cero a uno, de uno a uno y de uno a
muchos. Para relacionar y explotar la informacin en un modelo relacional se requiere de la
creacin de ndices primarios y compuestos que en un ambiente Data Warehouse no es
viable por el volumen de informacin que se utiliza. Los bases de datos para Data
Warehouse o Data Mart manejan muchos volmenes de informacin y dependiendo del
diseo de cada una de estas, los datos ya estarn calculados o precalculados lo que permite
que los tiempos de respuestas sean mucho mejor. Uno de los modelos comnmente
utilizados es el modelo Star Schema o un esquema en estrella. Un esquema en estrella es
aquel que tiene una tabla de hechos tambin llamada Fact Table y alrededor sus
dimensiones. Las dimensiones estn relacionadas a la tabla de hechos a travs de una llave
primaria. Este tipo de esquema es ideal para bases de datos de tipo OLAP y Data Mart por
su simplicidad y la velocidad para hacer anlisis. DB2 tiene muchas optimizaciones
internas para hacer el uso de este tipo de esquemas. Por ejemplo ha implementado el uso
del nuevo mtodo Zigzag.
Figura 14.
Volver arriba
Informix Warehouse Accelerator - IWA
Sus siglas en ingls son Informix Warehouse Accelerator el cual es un optimizador de
cargas de trabajo que permite la integracin en los procesos operacionales para
conducir estrategias ganadoras. Acelera las consultas con tiempos de respuestas sin
precedentes. El IWA es una tecnologa de vanguardia para mejorar el performance y
ofrece las siguientes capacidades:
Figura 15.
Volver arriba
Existen tres familias de PureSystem los cuales estn diseados para dar solucin a los
problemas que enfrentan los diferentes tipos de cargas de trabajo, cambiando la economa y
la experiencia de las tecnologas de la informacin.
Figura 16.
Sistemas PureData para Hadoop
Este dispositivo est optimizado para almacenar, catalogar, analizar y transformar grandes
volmenes de informacin en muchos formatos diferentes. Tambin se puede utilizar para
mantener mayores datos relacionados que se acceden con menor frecuencia desde un Data
Warehouse, por lo tanto mantiene un fcil acceso sin ocupar espacio y recursos en el Data
Warehouse. Optimizado tambin para el analizar archivos en lnea.
http://www-01.ibm.com/software/data/puredata/hadoop/
Este dispositivo est diseado para el comercio electrnico, comercio Web transaccional.
Como por ejemplo, las aplicaciones puntos de venta donde se escanea un cdigo y a travs
de ese l se determina su precio. Tambin conocido como servicios de cluster de bases de
datos optimizado para el rendimiento y escalabilidad transaccional.
http://www-01.ibm.com/software/data/puredata/transactions/
Este dispositivo tiene una optimizacin diferente debido a que hay una interaccin con la
base de datos, con la memoria, y optimiza de forma diferente las cargas de trabajo para
anlisis y Data Warehouse. Esto es para aplicaciones como el anlisis de clientes, anlisis
predictivo, alta velocidad de anlisis en datos (petabyte) con la mxima simplicidad. Esto
est desarrollado con la Tecnologa de Netezza. El sistema N200x sigue ofreciendo:
http://www-01.ibm.com/software/data/puredata/analytics/
Este dispositivo da una solucin como mezcla de la informacin de lo que usted tiene, lo
que usted sabe y los anlisis, pero usted tiene bsquedas puntuales. Por ejemplo, si usted
esta buscando la deteccin de un fraude en tiempo real en el que est haciendo profundas
exploraciones a muchos datos e identifica que puede haber problema en algunos registros,
usted luego realiza una bsqueda puntual a esos registros. Est optimizado para equilibrar
el alto rendimiento para el anlisis de datos y optimizado para equilibrar el rendimiento
operativo en tiempo real.
http://www-01.ibm.com/software/data/puredata/operationalanalytics/
Volver arriba
Para hacer frente al mejor uso de la memoria y entregar mejores resultados en bases de
datos OLAP, en DB2 e Informix se han agregado nuevas caractersticas que permiten no
solo tener los datos en memoria sino que tambin permite obtener mayores tasas de
compresin de datos, lo cual permite manipular mayores volmenes de informacin. La
tendencia es tener ms datos en memoria de manera comprimida, con lo anterior se reduce
el acceso a disco y se incrementa el desempeo para el anlisis de la informacin.
http://www-01.ibm.com/common/ssi/cgi-bin/ssialias
Volver arriba
Tipos de OLAP
ROLAP
Sus siglas en ingls significan Relational OLAP. En ROLAP los datos son almacenados en
un Star Schema con tablas de Hechos y Dimensiones. Las consultas SQL analticas tienen
un gran nmero de Joins, Scan y enormes cantidades de datos agregados. Por ejemplo DB2
Cube Views y Cognos Framework Manager with Relational Datasource.
Figura 17.
MOLAP
Figura 18.
HOLAP
Sus siglas en ingls significan Hybrid OLAP. Como sus siglas lo indican es una
combinacin de ROLAP Y MOLAP. Combina muchas de las caractersticas de ROLAP Y
MOLAP donde no existe lmite del tamao de datos como ROLAP y proporciona todas las
capacidades para obtener detalles de la informacin, con una alta concurrencia y alto
rendimiento para los datos solicitados. Si los datos solicitados estn en cache no se realiza
la consulta en la base de datos, de lo contrario la consulta se ejecutar en la base de datos.
Ejemplos Cognos 10.1.1 DMR y Cognos Dynamic Cubes.
Figura 19.
Volver arriba
http://bluforcloud.com/
Volver arriba
Qu es Cloudant?
Es una base de datos de como servicio (DBaaS) la cual permite centrarse en el desarrollo
rpido de aplicaciones en Internet y aplicaciones mviles en lugar de preocuparse por la
expansin y gestin de la base de datos por su cuenta. Tiene alta disponibilidad, es duradera
y contiene amplias funciones. El almacn de datos se construye para la escalabilidad y est
optimizada para lecturas y escritura de datos simultneas. Maneja tambin una ampla
variedad de tipos de datos estructurados y no estructurados entre ellos JSON, textos
completos y geoespacial.
Figura 20.
https://cloudant.com/
Figura 21.
Volver arriba
Qu es JSON?
Sus nomenclaturas en ingls significan JavaScript Object Notation, el cual es un formato
ligero para el intercambio de datos. JSON est basado en un subconjunto del lenguaje de
programacin JavaScript. Su simplicidad ha hecho que su uso se est ampliando, algo
similar al manejo de datos tipo XML donde es fcil de implementar, de leer y de utilizar.
Tambin es independiente del lenguaje de programacin ya que muchos lenguajes tienen
caractersticas para mapear con JSON. Se emplea en ambientes donde el flujo de los datos
es de vital importancia como por ejemplo Google, Yahoo, etc. que atienden a millones de
usuarios. JSON est soportado en DB2 10.5 e Informix 12.1 con el cual se permite guardar,
consultar y actualizar documentos. Combina datos desde otros sistemas con datos
tradicionales en la misma base de datos, como por ejemplo las aplicaciones Web o mviles.
JSON da el poder a los programadores de reducir la dependencia de las tecnologas de la
informacin, es decir, no se necesitan crear esquemas y tampoco tablas. Ejemplo de un
simple documento:
{
"nombre" :"Daniel",
"apellido" :"Anguiano",
"edad" : "40",
"direccion":
{
"calle" :"Prados 100",
"ciudad :"Mexico",
"cp" :"52034"
},
"telefono" :
[
{
"tipo" :"celular",
"numero" :"5564239823"
}
{
"tipo" :"trabajo",
"numero" :"5553706234"
}
]
}
1. Cadena (String)
2. Numrico
3. Booleano
4. Valores especiales como el valor nulo
5. Objetos
6. Arreglos
Volver arriba
1. Los datos son generados de diferentes sistemas, con formatos complejos, diferentes
fuentes y tipos de datos, estructurados, no estructurados y vienen de diferentes
contextos.
2. Son difciles de analizar por el volumen de informacin, requieren ms
procesamiento, modelado de datos, anlisis complejo de textos y correlacin de
datos a travs de los distintos.
3. Usted necesita ser capaz de visualizar la informacin para actuar sobre ella. Se
requieren sofisticados algoritmos de bsqueda para tomar decisiones.
Volver arriba
Figura 22.
Volver arriba
Conclusin
El tema de bases de datos es muy amplio de explorar y difcil de seleccionar cul es la
mejor arquitectura a utilizar. Normalmente se separan las bases de datos para operaciones
Transaccionales y para Analticos. Es necesario hacer un buen anlisis del tipo de operacin
que se va a ejecutar en la base de datos para poder elegir la arquitectura ms adecuada y as
realizar un buen uso de las capacidades de las bases de datos para obtener los mejores
resultados. Para las compaas es difcil mantener un equilibrio entre invertir en Hardware
y Software. Ya hemos visto diferentes tipos de soluciones que se adaptan a los distintos
giros de empresas. La compresin de datos, el manejo de grandes volmenes de
informacin (Estructurados y No Estructurados), datos en memoria, lenguajes de
programacin que utilizan sentencias SQL y NoSQL, sistemas hbridos (Transaccionales y
Analticos), reduccin de costos de almacenamiento y los tiempos mnimos de respuesta
para obtener un resultado han sido los motivos para el desarrollo de nuevas arquitecturas a
nivel Software y Hardware.
Volver arriba
Referencias
Information Center DB2 10.5
DB2 PureScale
PureSystem
Comentarios
Ingrese o regstrese para publicar un comentario.
Agregar comentario :
Reportar abusos
Una redaccin muy clara y til. Muchas gracias
Reportar abusos
Volver arriba