Ir al contenido principal

UNIDAD 1: PERSPECTIVA DE LA ADMINISTRACION DE BASE DE DATOS.

1.1 Administrador de base de datos.

Un administrador de base de datos (DBA) es el técnico de información responsable de dirigir o realizar todas las actividades relacionadas con el mantenimiento de un entorno de base de datos exitoso. 


Un administrador de bases de datos (o DBA, en inglés) tiene la responsabilidad de mantener y operar las bases de datos que conforman el sistema de información de una compañía.








Funciones de un DBA:


  • Gestión general de una base de datos
  • Modelado de datos y diseño de bases de datos
  • Auditoria 
  • Integración con aplicaciones
  • Resguardo  recuperación de datos
  • Inteligencia de negocios y almacenamiento de datos
  • Planificación de Capacidad

Importancia de un DBA:

El DBA es responsable de comprender y administrar el entorno general de la base de datos. Al desarrollar e implementar un plan estratégico a seguir al implementar bases de datos dentro de su organización, los DBA son fundamentales para la eficacia continua de las aplicaciones modernas que dependen de las bases de datos para el almacenamiento y el acceso a los datos.




1.2 Análisis de los manejadores de base de datos.

Un Sistema Manejador de Bases de Datos (SGBD) o Data Base Management System (DBMS) es una colección de software muy específico, cuya función es servir de interfaz entre la base de datos, el usuario y las distintas aplicaciones utilizadas.

Lo hace mediante una serie de rutinas de software para permitir su uso de una manera segura, sencilla y ordenada. Se trata, en suma, de un conjunto de programas que realizan tareas de forma interrelacionada para facilitar la construcción y manipulación de bases de datos, adoptando la forma de interfaz entre éstas, las aplicaciones y los mismos usuarios.

Su uso permite realizar un mejor control a los administradores de sistemas y, por otro lado, también obtener mejores resultados a la hora de realizar consultas que ayuden a la gestión empresarial mediante la generación de la tan perseguida ventaja competitiva.

Características y funciones

Un sistema SGBD es sinónimo de:

  • · Independencia.
  • · Redundancia mínima.
  • · Consistencia de la información (control de la concurrencia). 
  • · Abstracción de la información sobre su almacenamiento físico. 
  • · Acceso seguro y adopción de las medidas necesarias para garantizar la integridad de los datos.

Los procesos esenciales de un SGBD son la manipulación y construcción de las bases de datos, así como la definición de los mismos. Facilitan el cumplimiento de una serie de funciones relacionadas con muchos de los aspectos apuntados, entre otros la definición de los datos, su fácil manipulación, una rápida gestión, poder representar relaciones complejas entre datos y otros aspectos relacionados con la seguridad y validez de los datos.

Gestores de bases de datos libres.

PostgreSQL: 

Es un Sistema de gestión de base de datos relacional orientada a objetos y libre, publicado bajo la licencia BSD. Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es manejado por una empresa y/o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre y/o apoyados por organizaciones comerciales. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group). Mediante un sistema denominado MVCC (Acceso concurrente multivisión, por sus siglas en inglés) PostgreSQL permite que mientras un proceso escribe en una tabla, otros accedan a la misma tabla sin necesidad de bloqueos. Cada usuario obtiene una visión consistente de lo último a lo que se le hizo commit. Esta estrategia es superior al uso de bloqueos por tabla o por filas común en otras bases, eliminando la necesidad del uso de bloqueos explícitos.




FireBird.

Es un sistema de administración de bases de datos relacional (o RDBMS) (Lenguaje consultas: SQL) de código abierto, basado en la versión 6 de Interbase, cuyo código fue liberado por Borland en 2000. Su código fue reescrito de C a C++. El proyecto se desarrolla activamente, el 18 de abril de 2008 fue liberada la versión 2.1 y el 26 de diciembre de 2009 fue liberada la versión 2.5.0 RC1.

Existen dos tipos de servidor Firebird para ser instalados: Classic y Super server. Si bien tienen varias diferencias menores entre sí, la principal consiste en que el super server maneja hilos de ejecución individuales para cada conexión. Por lo tanto, para un número reducido de conexiones el recomendado sería el classic porque consumirá menor cantidad de recursos. 

En caso de arquitecturas SMP, se debe utilizar el servidor classic porque el Supersever no tiene soporte para este tipo de arquitectura. 



SQLite:

Es un sistema de gestión de bases de datos relacional compatible con ACID, contenida en una relativamente pequeña (~275 kiB) biblioteca en C. SQLite es un proyecto de dominio público1creado por D. Richard Hipp. A diferencia del sistema de gestión de bases de datos cliente-servidor, el motor de SQLite no es un proceso independiente con el que el programa principal se comunica. En lugar de eso, la biblioteca SQLite se enlaza con el programa pasando a ser parte integral del mismo. 

El programa utiliza la funcionalidad de SQLite a través de llamadas simples a subrutinas y funciones. Esto reduce la latencia en el acceso a la base de datos, debido a que las llamadas a funciones son más eficientes que la comunicación entre procesos. El conjunto de la base de datos (definiciones, tablas, índices, y los propios datos), son guardados como un sólo fichero estándar en la máquina host. Este diseño simple se logra bloqueando todo el fichero de base de datos al principio de cada transacción. En su versión 3, SQLite permite bases de datos de hasta 2 Terabytes de tamaño, y también permite la inclusión de campos tipo BLOB. El autor de SQLite ofrece formación, contratos de soporte técnico y características adicionales como compresión y cifrado.



DB2 Express-C: 

DB2 express-C es un motor de base de datos perteneciente a la empresa IBM, conteniendo parte de las funcionalidades de la versión de pago DB2 propiedad también de la empresa IBM, este motor de base de datos es gratuita pero no libre (como aquellas que tienen licencia GPL) y cuenta con la ventaja de no tener límite de crecimiento en sus archivos de base de datos. 

 


Apache Derby:

Es un sistema gestor de base de datos relacional escrito en Java que puede ser empotrado en aplicaciones Java y utilizado para procesos de transacciones online. Tiene un tamaño de 2 MB de espacio en disco. Inicialmente distribuido como IBM Cloudscape, Apache Derby es un proyecto open sourcelicenciado bajo la Apache 2.0 License. Actualmente se distribuye como Sun Java DB.



Gestores de bases de datos no libres:

MySQL:

Es un sistema de gestión de base de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones. MySQL AB —desde enero de 2008 una subsidiaria de Sun Microsystems y ésta a su vez de Oracle Corporation desde abril de 2009— desarrolla MySQL como software libre en un esquema de licenciamiento dual. Por un lado, se ofrece bajo la GNU GPL para cualquier uso compatible con esta licencia, pero para aquellas empresas que quieran incorporarlo en productos privativos deben comprar a la empresa una licencia específica que les permita este uso. Está desarrollado en su mayor parte en ANSI C. 

Al contrario de proyectos como Apache, donde el software es desarrollado por una comunidad pública y el copyright del código está en poder del autor individual, MySQL es patrocinado por una empresa privada, que posee el copyright de la mayor parte del código.



dBase: 

BASE fue el primer Sistema de gestión de base de datos usado ampliamente para microcomputadoras, publicado por Ashton-Tate para CP/M, y más tarde para Apple II, Apple Macintosh, UNIX, VMS, e IBM PC bajo DOS donde con su legendaria versión III Plus se convirtió en uno de los títulos de software más vendidos durante un buen número de años. dBASE nunca pudo superar exitosamente la transición a Microsoft Windows y terminó siendo desplazado por productos más nuevos como Paradox, Clipper, y FoxPro. Incorporaba un lenguaje propio interpretado y requería un LAN PACK para funcionar sobre red local. 

En 1988 llegó finalmente la versión IV. dBASE fue vendido a Borland en 1991. Al poco tiempo promovió una casi intrascendente versión 5, de la que llegó a haber versión para Windows. Luego vendió los derechos de la línea de productos en 1999 a dataBased Intelligence, Inc. (dBI) que sigue comercializando nuevas versiones, llamadas dBASE Plus, desde 1999. 

Durante la primera mitad de los '80s muchas otras compañías produjeron sus propios dialectos o variaciones del producto y lenguaje. Estos incluyeron FoxPro (ahora Visual FoxPro), Quick-Silver, Clipper, Xbase++, FlagShip, y Harbour. Todos ellos son llamados informalmente como xBase o XBase. El formato subyacente de dBASE, el archivo dbf, es ampliamente utilizado en muchas otras aplicaciones que necesitan un formato simple para almacenar datos estructurados. dBASE fue licenciado a los usuarios por un plazo de quince años basado en el inconcebible evento de que un usuario utilizara su copia de dBASE por tan largo período.



Microsoft Access: 

Es un programa, utilizado en los sistemas operativos Microsoft Windows, para la gestión de bases de datos creado y modificado por Microsoft y orientado a ser usado en entornos personal o en pequeñas organizaciones. Es un componente de la suite Microsoft Office. Permite crear ficheros de bases de datos relacionales que pueden ser fácilmente gestionadas por una interfaz gráfica sencilla. Además, estas bases de datos pueden ser consultadas por otros programas. Dentro de un sistema de información, entraría dentro de la categoría de gestión, y no en la de ofimática, como podría pensarse. Este programa permite manipular los datos en forma de tablas (formadas por filas y columnas), crear relaciones entre tablas, consultas, formularios para introducir datos e informes para presentar la información.

 


Microsoft SQL Server: 

Microsoft SQL Server es un sistema para la gestión de bases de datos producido por Microsoft basado en el modelo relacional. Sus lenguajes para consultas son T-SQL y ANSI SQL. Microsoft SQL Serverconstituye la alternativa de Microsoft a otros potentes sistemas gestores de bases de datos como son Oracle o PostgreSQL o MySQL.
Este sistema incluye una versión reducida, llamada MSDE con el mismo motor de base de datos, pero orientado a proyectos más pequeños, que en sus versiones 2005 y 2008 pasa a ser el SQL Express Edition, que se distribuye en forma gratuita.

 


Oracle: 

es un sistema de gestión de base de datos relacional (o RDBMS por el acrónimo en inglés de Relational Data Base Management System), desarrollado por Oracle Corporation. Se considera a Oracle como uno de los sistemas de bases de datos más completo se considera a Oracle como uno de los sistemas de bases de datos más completos.



1.3 Consideraciones para elegir un SGDB.

Registrar los datos con precisión, actualizar y rastrear la información de manera eficiente y regular, mediante un gestor de base de datos permite a las empresas lograr sus objetivos, potenciar su negocio de manera estratégica y hacer frente a nuevos desafíos.

Tras recopilar los datos, la información se utiliza para preparar informes contables, calcular estimaciones de ventas, crear facturas para los clientes, etc. Una de las mejores formas de manejar las relaciones entre los distintos elementos de la base de datos es usar un gestor de base de datos relacional.

Hoy en día, los sistemas de gestión de base de datos son necesarios y muy importantes en la creación y gestión de los datos de una organización. Almacenan la información de manera organizada y permiten acceder a la información de forma ágil.

Criterios de selección de un gestor de base de datos.

1.- Facilidad de uso del gestor de base de datos. Es muy importante que sea fácil de utilizar desde el punto de vista de todos los empleados (el equipo de TI, el departamento de marketing, desarrolladores, …) que deban hacer uso del gestor.

2.- Visualización y presentación de informes. También es muy necesario que el gestor de bases de datos sea capaz de mostrar y analizar los datos almacenados.

3.- Seguridad. Los datos guardados en la base de datos son de gran importancia para la organización. Es imprescindible que se almacenen de forma segura y que estén protegidos de cualquier tipo de pérdida o daño.

4.- Funcionalidad. Es importante que el gestor de base de datos seleccionado sea capaz de cumplir con las necesidades y objetivos de la empresa.

5.- Disponibilidad de servicios de soporte y desarrollo. Los servicios de soporte deben estar disponibles en todas las horas requeridas. Es importante que existan distintas formas de contactar con el proveedor para recibir ese soporte: correo electrónico y teléfono, como mínimo. Por otro lado, en lo referido al desarrollo, se debe conocer el plan de desarrollo para los sistemas seleccionados para estar seguros de que están en línea con las últimas tendencias y que se realizan actualizaciones de forma regular.

6.- Capacidad de integración. Puede que en un futuro quieras integrar tu sistema de gestión de base de datos con otros sistemas que estéis utilizando. Asegúrate de que tu sistema tiene la capacidad de integrarse con ellos, por ejemplo, con un sistema de CRM, o de e-mail marketing.

7.- Soporte y Desarrollo. Piensa en el servicio de soporte que la compañía de software ofrece para su sistema de gestión de base de datos.

Asegúrate de que existe un plan de desarrollo para el software seleccionado de modo que puedas estar seguro que a medida que aparecen nuevas tecnologías éste crecerá con ellas. Confirma que vas a recibir las actualizaciones mientras utilizas el software.

8.- Escalabilidad. Asegúrate de que el SGBD seleccionado tiene capacidad para crecer con tus datos y tu empresa. Recuerda que seguirás añadiendo datos todo el tiempo, por lo que a pesar de que tu requisito actual puede no ser enorme, esto puede cambiar muy rápidamente. Piensa que puedas gestionar millones de registros de datos para estar seguro.

9.- Coste e Idoneidad. El coste es un factor importante, pero debes asegurarte que tu decisión está basada sobre todo en que el SGBD que seleccionas sea el adecuado para tu empresa. Si escoges uno barato pensando solo en el precio podrías cometer un error todavía mayor ya que podrías verte obligado a invertir pronto en uno nuevo asumiendo otra vez los costes del software y su implementación. Tampoco elijas el más caro si no vas a utilizar la mayor parte de su funcionalidad.


Para elegir el sistema gestor de base de datos correcto, las empresas también deben tener en cuenta que el sistema esté integrado con otro software, que sea escalable y capaz de crecer con las demandas que tenga la empresa, y que además sea sostenible y rentable.

Por esa razón, la elección adecuada de ese sistema de gestión de base de datos (SGBD) es muy importante. Seleccionar el correcto permite a la empresa aprovechar toda su información de una manera rápida, precisa y segura.

Checa el Post Creativo:


SGBD Animation





1.4 Nuevas tecnologías y aplicaciones de los sistemas de bases de datos.

Computación GPU

Hace mucho tiempo, las tarjetas de video se construían para dibujar escenas elaboradas para los juegos de niños, pero ahora las llamadas unidades de procesamiento de gráficos están haciendo mucho procesamiento no gráfico. La búsqueda a través de datos es solo una de las mejores operaciones no gráficas que deben abordar.

Las mayores victorias no están en responder cada consulta (que obviamente son mucho más rápidas), sino en el trabajo de preparación, porque hay poca necesidad de pre procesamiento. Muchas bases de datos ahorran tiempo manteniendo un índice, que es efectivamente un resultado precalculado de cada búsqueda posible. Si este índice es destruido o dañado, reconstruirlo puede tardar horas, días o incluso meses. Sin embargo, si los datos pueden caber dentro de la memoria del GPU, por lo general podrá seguir sin el índice. Si los datos están cambiando rápidamente y la mayor parte del índice no se utiliza nunca, saltarse el pre procesamiento puede ser muy eficaz.

Blockchain

La palabra blockchain puede estar enredada con unas complicadas economía y política de Bitcoin, pero debajo de toda esa charla sobre el dinero, hay un almacén de datos distribuidos sumamente estable y práctico. Todos tienen la oportunidad de actualizar los datos y todos llegan a compartir la respuesta. La gran emoción es el hecho de que todos compartan las mismas respuestas. Es perfecto para los negocios que son frenemies.

Algunos desarrolladores llevan esto aún más lejos y hablan sobre los “contratos inteligentes”, que es otra manera de decir que los bits en la base de datos son lo suficientemente confiables como para que la gente base las cuestiones legales, tales como la propiedad, sobre ellos. 

Bases de datos en la Nube

Uno de los principales cambios radica en la forma en la que compramos el software de base de datos. En el pasado, comprábamos nuestras propias máquinas y firmábamos acuerdos de licencia para ejecutar el software en ellas. Ahora las empresas de nube están ofreciendo servicios que almacenan blobs de datos en algún lugar que no podemos ni ver ni tocar. Lo único que nos dicen es que los datos van a estar ahí para cuando los queramos.

Las ventajas son evidentes. No hay necesidad de mantener el servidor que la sostiene ni de preocuparse por la concesión de licencias, la configuración o instalación de parches. Otro se ocupa de todo ese quebradero de cabeza. La solución es más barata también -especialmente si no tiene una tonelada de datos que almacenar. 

Sin embargo, los peligros, si es que hay alguno, están en las sombras. ¿Alguien más tiene acceso a los datos? ¿El servidor está protegido de las sobretensiones eléctricas, las tormentas o las inundaciones? ¿Los datos tienen una copia de seguridad en una ubicación externa confiable? Necesita confiar totalmente en el proveedor de nube.

Memoria no Volatil (NVRAM)

Los programadores novatos hace cincuenta años la tenían fácil. No tenían que hacer malabares con los datos entre la RAM y el disco con protocolos elaborados para asegurar la consistencia. Eso se debe a que la memoria en ese entonces tenía núcleo de hierro, y no se borraba cuando se apagaba la energía. Esos buenos tiempos podrían regresar pronto, porque los fabricantes de chips están discutiendo para reemplazar la RAM con NVRAM o memoria no volátil.

Este es un gran cambio de juego para los programadores de bases de datos, porque uno de sus mayores desafíos (e incluso su mayor razón para vivir) está desapareciendo. Algunos sugieren que las bases de datos pueden ser mucho más rápidas, porque la semántica de las transacciones puede ser más sencilla. Otros tienen la idea de construir el registro de recuperación después de que los datos sean escritos en los medios, no antes.

Inteligencia Artificial

Las soluciones de inteligencia artificial que ofrece es que no tiene que saber lo que está buscando. Puede simplemente agitar su mano y pedir algo nebuloso como la “más interesante” o “más cercana”. No hay necesidad de la clave correcta, el número de referencia infernal que los del servicio al cliente siempre le piden que escriba.

La mala noticia es que no sabrá si obtuvo la respuesta correcta, debido a que no especificó con precisión la pregunta. ¿Esa publicación en el blog es realmente la más interesante? El más grande secreto del éxito de Google es que no hay una respuesta correcta absoluta. Si está en el estadio, nadie se puede quejar.

Carga en curso: se subieron 3795 de 3795 bytes.

Aplicaciones

  • Líneas aéreas: información de Clientes, horarios, vuelos, destinos, etc. (1ras bases distribuidas geográficamente).

  • Universidades: información de Estudiantes (perfiles estudiantiles), carreras, horarios, materias, etc
  • En bancos: transacciones de tarjeta de crédito: para comprar con tarjetas de crédito y la generación de los extractos mensuales.

  • Telecomunicaciones: para guardar registros de llamadas realizadas, generar facturas mensuales, mantener el saldo de las tarjetas, telefónicas de prepago y almacenar información sobre las redes.

  • En las oficinas de patentes, fecha de registro de la patente, datos del desarrollador, planos del producto, etc.

  • Bibliotecas, clasificación de libros, posición o lugar donde se encuentran, cantidad de tomos, cantidad de respaldos, etc.

  • Tienda/mercados: clasificación del productos manejados, cantidades, precio, etc.




Comentarios

Entradas populares de este blog

UNIDAD 2.- ARQUITECTURA E INSTALACIÓN DE UN SGBD.

UNIDAD 3: CONFIGURACIÓN Y ADMINISTRACIÓN DEL ESPACIO EN DISCO.

UNIDAD 6: MONITOREO Y AUDITORIA.