SlideShare una empresa de Scribd logo
1 de 9
Descargar para leer sin conexión
Sistemas de Gestión de Base de Datos
dfsfsfsf
A d m i n i s t r a c i ó n d e B a s e d e D a t o s
2013
Universidad Peruana de Ciencias e Informática
Sistemas de Gestión de Base de Datos
Administración de base de datos Página 1
Diferencia increible entre Oracle y SQL Server
Hace tiempo encontré un problema con una webtransaction generada con .NET. Era algo muy
sencillo y que funcionaba bien en SQL Server y mal con Oracle, pues no estaba funcionando
correctamente cuando habia uno de los elementos de la clave C(2) que tenia 2 blancos.
Prueba sencilla
create table tabla (Campo Char(2))
insert into tabla values(' ') Inserto un registro con dos blancos.
Base de datos Oracle SQL Server
select * from tabla where campo=’ ‘ –dos blancos 1 registro seleccionado 1 registro seleccionado
select * from tabla where campo=’ ‘ –un blanco 1 registro seleccionado 1 registro seleccionado
select * from tabla where campo=” –sin blancos 0 registro seleccionado 1 registro seleccionado
Diferencias entre Mysql y PostgreSQL
Mysq
Su principal objetivo de diseño fue la VELOCIDAD. Se sacrificaron algunas características
esenciales en sistemas más "serios" con este fin. Otra característica importante es que
consume MUY POCOS RECURSOS, tanto de CPU como de memoria.
Ventajas

Mayor rendimiento. Mayor velocidad tanto al conectar con el servidor
como al servir selects y demás.
 Mejores utilidades de administración (backup, recuperación de errores,
etc).
 Aunque se cuelgue, no suele perder información ni corromper los datos.
Mejor integración con PHP.
Sistemas de Gestión de Base de Datos
Administración de base de datos Página 2
 No hay límites en el tamaño de los registros.
 Mejor control de acceso, en el sentido de qué usuarios tienen acceso a
qué tablas y con qué permisos.
 MySQL se comporta mejor que Postgres a la hora de modificar o añadir
campos a una tabla "en caliente".
Desventajas
 No soporta transacciones, "roll-backs" ni subselects.
 No considera las claves ajenas. Ignora la integridad referencial,
dejándola en manos del programador de la aplicación.
PostgreSQL
Postgres intenta ser un sistena de bases de datos de mayor nivel que MySQL, a la altura
de Oracle, Sybase o Interbase.
Ventajas
 Por su arquitectura de diseño, escala muy bien al aumentar el número de CPUs y
la cantidad de RAM.
 Soporta transacciones y desde la versión 7.0, claves ajenas (con comprobaciones
de integridad referencial).
 Tiene mejor soporte para triggers y procedimientos en el servidor.
 Soporta un subconjunto de SQL92 MAYOR que el que soporta MySQL. Además,
tiene ciertas características orientadas a objetos.
Desventajas
 Consume BASTANTES más recursos y carga más el sistema.
 Límite del tamaño de cada fila de las tablas a 8k!!! (se puede ampliar a 32k
recompilando, pero con un coste añadido en el rendimiento).
 Es de 2 a 3 veces más lenta que MySQL.
Diferencias entre comandos para PostgreSQL y
MySQL
Sistemas de Gestión de Base de Datos
Administración de base de datos Página 3
PostgresSQL
josealopez@josealopez-laptop:~ $ sudo su - postgres
MySQL
josealopez@josealopez-laptop:~ $ mysql -u root -p
Una vez que nos hemos conectado, para poder ver todas las bases de datos
PostgreSQL
postgres@josealopez-laptop:~$ psql
postgres=# l
MySQL
mysql> show databases;
Para usar una u otra base de datos
PostgresSQL:
postgres@josealopez-laptop:~$ psql database_name
MySQL
mysql> use database_name
Para crear un campo autoincremental también se hace de forma distinta, de hecho, en MySQL
no se usan los elementos del tipo sequence que pueden ser mapeados con JPA. Por lo tanto lo
que para PosrgreSQL es: create sequence mi_seq que luego es empleado en una table
como clave primaria con id int default nextval('mi_seq') primary
key,para MySQL es id int not null primary key auto_increment.
Por lo tanto, para crear una tabla que use campo autoincrementales
PostgreSQL
CREATE SEQUENCE mi_seq;
CREATE TABLE "mi_tabla" (
id int default nextval('mi_seq') primary key,
"nombre" varchar (50),
"login" varchar(10)
);
MySQL
CREATE TABLE mi_tabla (
id int not null primary key auto_increment,
nombre varchar(50),
login varchar(10))
Sistemas de Gestión de Base de Datos
Administración de base de datos Página 4
Oracle vs Postgre SQL2. SQL Server vs MySQL3. Access vs Base (Open Office)
Oracle. surge a finales de los 70 bajo el nombre de Software a partir de un estudio sobreSGBD
(Sistemas Gestores de Base de Datos) de George Koch. Computer World definióeste estudio
como uno de los más completos jamás escritos sobre bases de datos. Este artículo incluía una
comparativa de productos que erigía a Relational Software como elmás completo desde el
punto de vista técnico. Esto se debía a que usaba la filosofía delas bases de datos relacionales,
algo que por aquella época era todavía desconocido. Enla actualidad, Oracle (Nasdaq: ORCL)
todavía encabeza la lista. La tecnología Oracle seencuentra prácticamente en todas las
industrias alrededor del mundo y en las oficinas de98 de las 100 empresas Fortune 100. Oracle
es la primera compañía de software quedesarrolla e implementa software para empresas 100
por ciento activado por Internet através de toda su línea de productos: base de datos,
aplicacionescomerciales y herramientas de desarrollo de aplicaciones y soporte de decisiones.
Oraclees el proveedor mundial líder de software para administración de información, y
lasegunda empresa de software. Oracle a partir de la versión 10g Release 2, cuenta con
6ediciones: Oracle Database Enterprise Edition(EE). Oracle Database Standard Edition(SE).
Oracle Database Standard Edition One (SE1). Oracle Database Express Edition(XE). Oracle
Database Personal Edition (PE). Oracle Database Lite Edition (LE).
PostGreSQL (llamado también Postgres95) fue derivado del proyectoPostgres, como ya se
ha comentado. A sus espaldas, este proyecto lleva másde una década de desarrollo, siendo
hoy en día, el sistema libre másavanzado con diferencia, soportando la gran mayoría de las
transaccionesSQL, control concurrente, teniendo a su disposición varios "languagebindings"
como por ejemplo C, C++, Java, Python, PHP y muchos más.La implementación de Postgres
DBMS comenzó en 1986, y no hubo unaversión operativa hasta 1987. La versión 1.0 fue
liberada en Junio de 1989 aunos pocos usuarios, tras la cual se liberó la versión 2.0 en Junio de
1990debido a unas críticas sobre el sistema de reglas, que obligó a sureimplementación. La
versión 3.0 apareció en el año 1991, e incluyó una seriede mejoras como una mayor eficiencia
en el ejecutor de peticiones. El restode versiones liberadas a partir de entonces, se centraron
en la portabilidad delsistema. El proyecto se dio por finalizado en con la versión 4.2, debido al
granauge que estaba teniendo, lo cual causó la imposibilidad de mantenimientopor parte de
los desarrolladores.En 1996, los desarrolladores decidieron cambiar el nombre a al DBMS, y
lollamaron PostGreSQL (versión 6.0) para reflejar la relación entre Postgres ylas versiones
recientes de SQL. Se crearon nuevas mejoras y modificaciones,que repercutieron en un 20-
40% más de eficiencia, así como la incorporacióndel estándar SQL92.
Oracle Postgre SQL Las entidades complejas.Es SGBD relacional Open del mundo real y la
lógica se Source. pueden modelar fácilmente, Tiene un sistema de reglas lo que permite
reutilizar consistente en modificar las objetos. consultas. los programadores de Posee manejo
y control de aplicaciones pueden transacciones para asegurar acceder directamente a tipos la
consistencia de los datos.Ventajas de objetos. Soporta los tipos de datos, Las aplicaciones que
cláusulas, funciones y utilizan objetos de comandos de tipo Oracle son fáciles de
estándarSQL92/SQL99 y entender y mantener. extendidos propios de Tiene buen rendimiento
y PostgreSQL. hace buen uso de los Para una fácil conectividad recursos. Posee un rico al
servidor PostgreSQL, se diccionario de datos. implementa un ODBC.
Sistemas de Gestión de Base de Datos
Administración de base de datos Página 5
SQL Server MySQL Es un SGBD Relacional. MySQL software es Open (SGBDR). Source Ofrece
una potente forma Velocidad al realizar las de unir SQL e Internet. operaciones. Utiliza una
extensión al Bajo costo en SQL estándar, que se requerimientos para la denomina Transact
SQL. elaboración de bases de Permite olvidarnos un poco datos.Ventajas de los ficheros que
forman Puede ser ejecutado en la base de datos. una maquina con escasos Si trabajamos en
una red recursos sin ningún local nos permite agregar problema. otros servidores de SQL
Facilidad de configuración Server. e instalación. Soporta gran variedad de Sistemas Operativos.
OpenOffice es una suite ofimática avanzada la cual dispone de todas lasherramientas
necesarias para trabajar: editor de texto, editor de imágenesvectoriales, hoja de cálculo, editor
de presentaciones, base de datos, editor defórmulas, integración con correo (Thunderbird u
Outlook), edita PDFs, soporte3d, maneja el estándar internacional ISO, y posee una licencia
ILIMITADA.Está disponible para varias plataformas, tales como Microsoft Windows,GNU/Linux,
BSD, Solaris y Mac OS X. Soporta numerosos formatos dearchivo, incluyendo como
predeterminado el formato estándar ISO/IECOpenDocument (ODF), entre otros formatos
comunes, así como tambiénsoporta más de 110 idiomas, desde febrero del año
2010.OpenOffice.org Base es un programa de base de datos similar a MicrosoftAccess.
OpenOffice.org Base permite la creación y manejo de bases dedatos, elaboración de
formularios e informes que proporcionan a los usuariosfinales un acceso fácil a los datos. Al
igual que Microsoft Access, es capaz detrabajar como un front-end para diversos sistemas de
bases de datos talescomo el de Access (JET), fuente de datos ODBC y MySQL/PostgreSQL.
Baseestá disponible desde la versión 2.0.
Componentes de un SGBD
Motor de la base de datos. Es el programa del SGBD que construye las consultas y
peticiones que se realizan en el sistema para que sean procesadas por el sistema de BD.
Por ejemplo el SGBD PhpMyAdmin consta de un motor de base de datos basado en MySQL
por lo tanto las peticiones y operaciones que se realicen serán procesadas y convertidas a
un formato SQL interpretable por la base de datos gestionada. Con Microsoft Access
sucede lo mismo, el programa en sí mismo es un SGBD que transforma todas las peticiones
y operaciones sobre la base de datos, también en formato SQL no percibido por el usuario.
De esta forma la base de datos interpreta correctamente que el usuario desea insertar una
nueva fila en la tabla o editar una serie de valores.
Sistema de definición de datos. Programa especializado en crear los ficheros inversos,
ficheros diccionarios, realizar los procesos de indexación de campos de las tablas y aplicar
los ficheros de palabras vacías.
Sistema de manipulación y gestión. Es la parte del SGBD dedicada a la manipulación de
registros en las tablas de la base de datos. Hace posible la navegación a través de sus
contenidos, la inserción de nuevos registros, su modificación, eliminación, importación o
exportación mediante un interfaz sencillo destinado al usuario, evitándole la programación
de sus consultas, sustituyendo procesos complejos por funciones almacenadas en un
botón o un enlace.
Sistema de herramientas y aplicaciones. Lo constituyen todas las herramientas y
subprogramas orientados a facilitar la creación de interfaces de edición y consulta en la
Sistemas de Gestión de Base de Datos
Administración de base de datos Página 6
base de datos. Esto significa que el SGBD ayuda a construir aplicaciones para manipular de
forma eficiente las tablas de la base de datos, permitiendo al usuario diseñar los
formularios de entrada de datos, las pantallas de visualización de registros, las pantallas de
búsqueda y recuperación, etc. Por ejemplo Microsoft Access y Filemaker son SGBD que
integran tales herramientas con las que es posible construir una aplicación un sistema de
información especializado con un interfaz adaptado a las necesidades del usuario. En el
caso de MySQL y PhpMyAdmin esto no es así, ya que el interfaz personalizado por el
usuario debe ser desarrollado por él mismo en forma de formularios web basados en un
servidor Apache y programados en lenguaje PHP. Este aspecto que a priori podría ser una
desventaja, hace posible que sea el método de diseño de interfaz más avanzado,
personalizado y profesional, dado que es posible modificar todos los parámetros de
funcionamiento del sistema, aspecto que a diferencia de SGBD no es posible encontrar,
debido a la limitación de las herramientas que proporcionan.
Administración. Lo constituye aquella parte del programa destinada a gestionar las
funciones de almacenamiento, los procesos generales del sistema, los privilegios de acceso
a la base de datos, gestionar las operaciones de mantenimiento con las bases de datos
creadas, modificar las propiedades del interfaz, editar la configuración de los demás
componentes del SGBD.
Funciones
Capacidad para almacenar datos en la BD, acceder a ellos, insertar otros nuevos,
modificarlos y eliminarlos.
El SGBD oculta a ojos del usuario la apariencia real de las tablas de la BD, mostrando un
interfaz sencillo. La apariencia real lo constituye un conjunto de códigos fuente sobre los
que se almacenan las cadenas de datos que componen la información del registro.
Debe automatizar las funciones de consulta, de forma tal que las peticiones del usuario
sean transformadas a un lenguaje identificable y entendible por la BD, generalmente este
lenguaje es SQL.
El SGBD y especialmente la base de datos gestionada deben asegurar el acceso de
múltiples usuarios manipulando o editando sus contenidos mediante un control de la
concurrencia. Esto es que el sistema debe proporcionar un orden de prioridad en los
procesos que se llevan a cabo en el sistema. Al conjunto de procesos que llevan a cabo
múltiples usuarios se le denomina "transacciones".
Un SGBD debe permitir la gestión de los privilegios de acceso al sistema para gestionar el
acceso y las restricciones del mismo a diversos tipos de usuarios.
Debe proporcionar las herramientas de mantenimiento necesarias para mantener la
consistencia de los datos de la base de datos, esto es el proceso de compactación y
desfragmentación de los datos, la optimización de las tablas, su reparación, la eliminación
de residuos o información residual en cache como resultado de una transacción finalizada
con algún tipo de error, etc.
Sistemas de Gestión de Base de Datos
Administración de base de datos Página 7
Objetivos SGBD
Existen distintos objetivos que deben cumplir los SGBD:
Abstracción de la información. Los SGBD ahorran a los usuarios detalles acerca del
almacenamiento físico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de
archivos, este hecho se hace transparente al usuario. Así, se definen varios niveles de
abstracción.
Independencia. La independencia de los datos consiste en la capacidad de modificar el
esquema (físico o lógico) de una base de datos sin tener que realizar cambios en las
aplicaciones que se sirven de ella.
Consistencia. En aquellos casos en los que no se ha logrado eliminar la redundancia, será
necesario vigilar que aquella información que aparece repetida se actualice de forma
coherente, es decir, que todos los datos repetidos se actualicen de forma simultánea. Por otra
parte, la base de datos representa una realidad determinada que tiene determinadas
condiciones, por ejemplo que los menores de edad no pueden tener licencia de conducir. El
sistema no debería aceptar datos de un conductor menor de edad. En los SGBD existen
herramientas que facilitan la programación de este tipo de condiciones.
Seguridad. La información almacenada en una base de datos puede llegar a tener un gran
valor. Los SGBD deben garantizar que esta información se encuentra segura de permisos a
usuarios y grupos de usuarios, que permiten otorgar diversas categorías de permisos.
Manejo de transacciones. Una transacción es un programa que se ejecuta como una sola
operación. Esto quiere decir que luego de una ejecución en la que se produce una falla es el
mismo que se obtendría si el programa no se hubiera ejecutado. Los SGBD proveen
mecanismos para programar las modificaciones de los datos de una forma mucho más simple
que si no se dispusiera de ellos.
Tiempo de respuesta. Lógicamente, es deseable minimizar el tiempo que el SGBD demora en
proporcionar la información solicitada y en almacenar los cambios realizados.
Ventajas
Proveen facilidades para la manipulación de grandes volúmenes de datos (ver objetivos). Entre
éstas:
Simplifican la programación de equipos de consistencia.
Manejando las políticas de respaldo adecuadas, garantizan que los cambios de la base serán
siempre consistentes sin importar si hay errores correctamente, etc.
Organizan los datos con un impacto mínimo en el código de los programas.
Disminuyen drásticamente los tiempos de desarrollo y aumentan la calidad del sistema
desarrollado si son bien explotados por los desarrolladores.
Usualmente, proveen interfaces y lenguajes de consulta que simplifican la recuperación de los
datos.
Sistemas de Gestión de Base de Datos
Administración de base de datos Página 8
Inconvenientes
Típicamente, es necesario disponer de una o más personas que administren la base de datos,
de la misma forma en que suele ser necesario en instalaciones de cierto porte disponer de una
o más personas que administren los sistemas operativos. Esto puede llegar a incrementar los
costos de operación en una empresa. Sin embargo hay que balancear este aspecto con la
calidad y confiabilidad del sistema que se obtiene.
Si se tienen muy pocos datos que son usados por un único usuario por vez y no hay que
realizar consultas complejas sobre los datos, entonces es posible que sea mejor usar una hoja
de cálculo.
Complejidad: los software muy complejos y las personas que vayan a usarlo deben tener
conocimiento de las funcionalidades del mismo para poder aprovecharlo al máximo.
Tamaño: la complejidad y la gran cantidad de funciones que tienen hacen que sea un software
de gran tamaño, que requiere de gran cantidad de memoria para poder correr.
Coste del hardware adicional: los requisitos de hardware para correr un SGBD por lo general
son relativamente altos, por lo que estos equipos pueden llegar a costar gran cantidad de
dinero.

Más contenido relacionado

La actualidad más candente

Introducción a SQL sobre Oracle
Introducción a SQL sobre OracleIntroducción a SQL sobre Oracle
Introducción a SQL sobre Oracle
Raúl Galíndez
 
sql server
sql serversql server
sql server
Pcentro
 
Administracion de base de datos oracle tarea#02
Administracion de base de datos oracle tarea#02Administracion de base de datos oracle tarea#02
Administracion de base de datos oracle tarea#02
Celso
 

La actualidad más candente (20)

Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...
Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...
Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...
 
Introducción a SQL sobre Oracle
Introducción a SQL sobre OracleIntroducción a SQL sobre Oracle
Introducción a SQL sobre Oracle
 
sql server
sql serversql server
sql server
 
Administracion de base de datos oracle tarea#02
Administracion de base de datos oracle tarea#02Administracion de base de datos oracle tarea#02
Administracion de base de datos oracle tarea#02
 
Exposicion oracle
Exposicion oracleExposicion oracle
Exposicion oracle
 
Que es una base de datos
Que es una base de datosQue es una base de datos
Que es una base de datos
 
Curso sql server 2012 clase 2
Curso sql server 2012 clase 2Curso sql server 2012 clase 2
Curso sql server 2012 clase 2
 
Curso sql server 2012 clase 3
Curso sql server 2012 clase 3Curso sql server 2012 clase 3
Curso sql server 2012 clase 3
 
Administracion de Base de Datos Oracle
Administracion de Base de Datos OracleAdministracion de Base de Datos Oracle
Administracion de Base de Datos Oracle
 
Taller2
Taller2Taller2
Taller2
 
Versiones de sql
Versiones de sqlVersiones de sql
Versiones de sql
 
Crear Base de Datos en Oracle
Crear Base de Datos en OracleCrear Base de Datos en Oracle
Crear Base de Datos en Oracle
 
Access contra MySQL
Access contra MySQLAccess contra MySQL
Access contra MySQL
 
Tarea4 bd
Tarea4 bdTarea4 bd
Tarea4 bd
 
Estructura de Almacenamiento en Oracle. TableSpaceZ052 07
Estructura de Almacenamiento en Oracle. TableSpaceZ052 07Estructura de Almacenamiento en Oracle. TableSpaceZ052 07
Estructura de Almacenamiento en Oracle. TableSpaceZ052 07
 
Administración de Oracle - Tema 4 - Interacción con la Base de Datos
Administración de Oracle - Tema 4 - Interacción con la Base de DatosAdministración de Oracle - Tema 4 - Interacción con la Base de Datos
Administración de Oracle - Tema 4 - Interacción con la Base de Datos
 
Introducción a base de datos Oracle
Introducción a base de datos OracleIntroducción a base de datos Oracle
Introducción a base de datos Oracle
 
Ejemplo Base de Datos SQLite (Android)
Ejemplo Base de Datos SQLite (Android)Ejemplo Base de Datos SQLite (Android)
Ejemplo Base de Datos SQLite (Android)
 
Programación con sql server
Programación con sql serverProgramación con sql server
Programación con sql server
 
BASE DE DATOS
BASE DE DATOSBASE DE DATOS
BASE DE DATOS
 

Similar a Sistemas de gestión de base de datos

Tres gestores de bases de datos
Tres gestores de bases de datosTres gestores de bases de datos
Tres gestores de bases de datos
satakin_armando7
 
Sistema gestor de base de datos
Sistema gestor de base de datosSistema gestor de base de datos
Sistema gestor de base de datos
karlaaponte
 
Sistemasgestoresdebasededatossgbd 120614221206-phpapp02 (1)
Sistemasgestoresdebasededatossgbd 120614221206-phpapp02 (1)Sistemasgestoresdebasededatossgbd 120614221206-phpapp02 (1)
Sistemasgestoresdebasededatossgbd 120614221206-phpapp02 (1)
Andres del Valle
 
Taller de base de datos
Taller de base de datosTaller de base de datos
Taller de base de datos
Base de Datos
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQL
brobelo
 
Bd T1 Eq6 Investigacionsgbd
Bd T1 Eq6 InvestigacionsgbdBd T1 Eq6 Investigacionsgbd
Bd T1 Eq6 Investigacionsgbd
guestf6889fe
 
Dbms más utilizados
Dbms más utilizadosDbms más utilizados
Dbms más utilizados
jro1007
 

Similar a Sistemas de gestión de base de datos (20)

Tres gestores de bases de datos
Tres gestores de bases de datosTres gestores de bases de datos
Tres gestores de bases de datos
 
Sistema gestor de base de datos
Sistema gestor de base de datosSistema gestor de base de datos
Sistema gestor de base de datos
 
Sistemasgestoresdebasededatossgbd 120614221206-phpapp02 (1)
Sistemasgestoresdebasededatossgbd 120614221206-phpapp02 (1)Sistemasgestoresdebasededatossgbd 120614221206-phpapp02 (1)
Sistemasgestoresdebasededatossgbd 120614221206-phpapp02 (1)
 
Obvios herramientas de un SGDB
Obvios herramientas de un SGDBObvios herramientas de un SGDB
Obvios herramientas de un SGDB
 
Taller de base de datos
Taller de base de datosTaller de base de datos
Taller de base de datos
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQL
 
Base de datos ventajas y desventajas
Base de datos ventajas y desventajasBase de datos ventajas y desventajas
Base de datos ventajas y desventajas
 
Instalación de sgbd en diferentes plataformas de windows
Instalación de sgbd en diferentes plataformas de windowsInstalación de sgbd en diferentes plataformas de windows
Instalación de sgbd en diferentes plataformas de windows
 
Base de datos3
Base de datos3Base de datos3
Base de datos3
 
Diapositivas de sql server 2012
Diapositivas de sql server 2012Diapositivas de sql server 2012
Diapositivas de sql server 2012
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Tarea 1 bd
Tarea 1 bdTarea 1 bd
Tarea 1 bd
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Comparación entre microsoft sql server express edition 2012 y oracle
Comparación entre microsoft sql server express edition 2012 y oracleComparación entre microsoft sql server express edition 2012 y oracle
Comparación entre microsoft sql server express edition 2012 y oracle
 
Clase de investigacion presentacion 1
Clase de investigacion presentacion 1Clase de investigacion presentacion 1
Clase de investigacion presentacion 1
 
SGBD Postgresql
SGBD PostgresqlSGBD Postgresql
SGBD Postgresql
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQL
 
Bd T1 Eq6 Investigacionsgbd
Bd T1 Eq6 InvestigacionsgbdBd T1 Eq6 Investigacionsgbd
Bd T1 Eq6 Investigacionsgbd
 
Dbms más utilizados
Dbms más utilizadosDbms más utilizados
Dbms más utilizados
 
Bases de datos por jesus j felix rodriguez lopez
Bases de datos por jesus j felix rodriguez lopezBases de datos por jesus j felix rodriguez lopez
Bases de datos por jesus j felix rodriguez lopez
 

Más de Américo Uriarte Quispe (12)

Ejemplo de Formulación y evaluación de proyectos
Ejemplo de Formulación y evaluación de proyectosEjemplo de Formulación y evaluación de proyectos
Ejemplo de Formulación y evaluación de proyectos
 
modelos empresariales
modelos empresarialesmodelos empresariales
modelos empresariales
 
Seguridad de medios fisicos, biometria y telemetria
Seguridad de medios fisicos, biometria y telemetriaSeguridad de medios fisicos, biometria y telemetria
Seguridad de medios fisicos, biometria y telemetria
 
Gestión de proyecto de software
Gestión de proyecto de softwareGestión de proyecto de software
Gestión de proyecto de software
 
La Calidad de Software
La Calidad de SoftwareLa Calidad de Software
La Calidad de Software
 
Proyecto del Aeropuerto Internacional Chinchero CUSCO
Proyecto del Aeropuerto Internacional Chinchero CUSCOProyecto del Aeropuerto Internacional Chinchero CUSCO
Proyecto del Aeropuerto Internacional Chinchero CUSCO
 
Sociedad informática eLAC 2015
Sociedad informática eLAC 2015 Sociedad informática eLAC 2015
Sociedad informática eLAC 2015
 
Clonezilla Server linux
Clonezilla Server linuxClonezilla Server linux
Clonezilla Server linux
 
Introducción Sistemas SAP R/3
Introducción Sistemas SAP R/3Introducción Sistemas SAP R/3
Introducción Sistemas SAP R/3
 
Tipos de dato de postgreSQL
Tipos de dato de postgreSQLTipos de dato de postgreSQL
Tipos de dato de postgreSQL
 
Sistema de Administración de base de datos
Sistema de Administración de base de datosSistema de Administración de base de datos
Sistema de Administración de base de datos
 
MongoDB
MongoDBMongoDB
MongoDB
 

Sistemas de gestión de base de datos

  • 1. Sistemas de Gestión de Base de Datos dfsfsfsf A d m i n i s t r a c i ó n d e B a s e d e D a t o s 2013 Universidad Peruana de Ciencias e Informática
  • 2. Sistemas de Gestión de Base de Datos Administración de base de datos Página 1 Diferencia increible entre Oracle y SQL Server Hace tiempo encontré un problema con una webtransaction generada con .NET. Era algo muy sencillo y que funcionaba bien en SQL Server y mal con Oracle, pues no estaba funcionando correctamente cuando habia uno de los elementos de la clave C(2) que tenia 2 blancos. Prueba sencilla create table tabla (Campo Char(2)) insert into tabla values(' ') Inserto un registro con dos blancos. Base de datos Oracle SQL Server select * from tabla where campo=’ ‘ –dos blancos 1 registro seleccionado 1 registro seleccionado select * from tabla where campo=’ ‘ –un blanco 1 registro seleccionado 1 registro seleccionado select * from tabla where campo=” –sin blancos 0 registro seleccionado 1 registro seleccionado Diferencias entre Mysql y PostgreSQL Mysq Su principal objetivo de diseño fue la VELOCIDAD. Se sacrificaron algunas características esenciales en sistemas más "serios" con este fin. Otra característica importante es que consume MUY POCOS RECURSOS, tanto de CPU como de memoria. Ventajas  Mayor rendimiento. Mayor velocidad tanto al conectar con el servidor como al servir selects y demás.  Mejores utilidades de administración (backup, recuperación de errores, etc).  Aunque se cuelgue, no suele perder información ni corromper los datos. Mejor integración con PHP.
  • 3. Sistemas de Gestión de Base de Datos Administración de base de datos Página 2  No hay límites en el tamaño de los registros.  Mejor control de acceso, en el sentido de qué usuarios tienen acceso a qué tablas y con qué permisos.  MySQL se comporta mejor que Postgres a la hora de modificar o añadir campos a una tabla "en caliente". Desventajas  No soporta transacciones, "roll-backs" ni subselects.  No considera las claves ajenas. Ignora la integridad referencial, dejándola en manos del programador de la aplicación. PostgreSQL Postgres intenta ser un sistena de bases de datos de mayor nivel que MySQL, a la altura de Oracle, Sybase o Interbase. Ventajas  Por su arquitectura de diseño, escala muy bien al aumentar el número de CPUs y la cantidad de RAM.  Soporta transacciones y desde la versión 7.0, claves ajenas (con comprobaciones de integridad referencial).  Tiene mejor soporte para triggers y procedimientos en el servidor.  Soporta un subconjunto de SQL92 MAYOR que el que soporta MySQL. Además, tiene ciertas características orientadas a objetos. Desventajas  Consume BASTANTES más recursos y carga más el sistema.  Límite del tamaño de cada fila de las tablas a 8k!!! (se puede ampliar a 32k recompilando, pero con un coste añadido en el rendimiento).  Es de 2 a 3 veces más lenta que MySQL. Diferencias entre comandos para PostgreSQL y MySQL
  • 4. Sistemas de Gestión de Base de Datos Administración de base de datos Página 3 PostgresSQL josealopez@josealopez-laptop:~ $ sudo su - postgres MySQL josealopez@josealopez-laptop:~ $ mysql -u root -p Una vez que nos hemos conectado, para poder ver todas las bases de datos PostgreSQL postgres@josealopez-laptop:~$ psql postgres=# l MySQL mysql> show databases; Para usar una u otra base de datos PostgresSQL: postgres@josealopez-laptop:~$ psql database_name MySQL mysql> use database_name Para crear un campo autoincremental también se hace de forma distinta, de hecho, en MySQL no se usan los elementos del tipo sequence que pueden ser mapeados con JPA. Por lo tanto lo que para PosrgreSQL es: create sequence mi_seq que luego es empleado en una table como clave primaria con id int default nextval('mi_seq') primary key,para MySQL es id int not null primary key auto_increment. Por lo tanto, para crear una tabla que use campo autoincrementales PostgreSQL CREATE SEQUENCE mi_seq; CREATE TABLE "mi_tabla" ( id int default nextval('mi_seq') primary key, "nombre" varchar (50), "login" varchar(10) ); MySQL CREATE TABLE mi_tabla ( id int not null primary key auto_increment, nombre varchar(50), login varchar(10))
  • 5. Sistemas de Gestión de Base de Datos Administración de base de datos Página 4 Oracle vs Postgre SQL2. SQL Server vs MySQL3. Access vs Base (Open Office) Oracle. surge a finales de los 70 bajo el nombre de Software a partir de un estudio sobreSGBD (Sistemas Gestores de Base de Datos) de George Koch. Computer World definióeste estudio como uno de los más completos jamás escritos sobre bases de datos. Este artículo incluía una comparativa de productos que erigía a Relational Software como elmás completo desde el punto de vista técnico. Esto se debía a que usaba la filosofía delas bases de datos relacionales, algo que por aquella época era todavía desconocido. Enla actualidad, Oracle (Nasdaq: ORCL) todavía encabeza la lista. La tecnología Oracle seencuentra prácticamente en todas las industrias alrededor del mundo y en las oficinas de98 de las 100 empresas Fortune 100. Oracle es la primera compañía de software quedesarrolla e implementa software para empresas 100 por ciento activado por Internet através de toda su línea de productos: base de datos, aplicacionescomerciales y herramientas de desarrollo de aplicaciones y soporte de decisiones. Oraclees el proveedor mundial líder de software para administración de información, y lasegunda empresa de software. Oracle a partir de la versión 10g Release 2, cuenta con 6ediciones: Oracle Database Enterprise Edition(EE). Oracle Database Standard Edition(SE). Oracle Database Standard Edition One (SE1). Oracle Database Express Edition(XE). Oracle Database Personal Edition (PE). Oracle Database Lite Edition (LE). PostGreSQL (llamado también Postgres95) fue derivado del proyectoPostgres, como ya se ha comentado. A sus espaldas, este proyecto lleva másde una década de desarrollo, siendo hoy en día, el sistema libre másavanzado con diferencia, soportando la gran mayoría de las transaccionesSQL, control concurrente, teniendo a su disposición varios "languagebindings" como por ejemplo C, C++, Java, Python, PHP y muchos más.La implementación de Postgres DBMS comenzó en 1986, y no hubo unaversión operativa hasta 1987. La versión 1.0 fue liberada en Junio de 1989 aunos pocos usuarios, tras la cual se liberó la versión 2.0 en Junio de 1990debido a unas críticas sobre el sistema de reglas, que obligó a sureimplementación. La versión 3.0 apareció en el año 1991, e incluyó una seriede mejoras como una mayor eficiencia en el ejecutor de peticiones. El restode versiones liberadas a partir de entonces, se centraron en la portabilidad delsistema. El proyecto se dio por finalizado en con la versión 4.2, debido al granauge que estaba teniendo, lo cual causó la imposibilidad de mantenimientopor parte de los desarrolladores.En 1996, los desarrolladores decidieron cambiar el nombre a al DBMS, y lollamaron PostGreSQL (versión 6.0) para reflejar la relación entre Postgres ylas versiones recientes de SQL. Se crearon nuevas mejoras y modificaciones,que repercutieron en un 20- 40% más de eficiencia, así como la incorporacióndel estándar SQL92. Oracle Postgre SQL Las entidades complejas.Es SGBD relacional Open del mundo real y la lógica se Source. pueden modelar fácilmente, Tiene un sistema de reglas lo que permite reutilizar consistente en modificar las objetos. consultas. los programadores de Posee manejo y control de aplicaciones pueden transacciones para asegurar acceder directamente a tipos la consistencia de los datos.Ventajas de objetos. Soporta los tipos de datos, Las aplicaciones que cláusulas, funciones y utilizan objetos de comandos de tipo Oracle son fáciles de estándarSQL92/SQL99 y entender y mantener. extendidos propios de Tiene buen rendimiento y PostgreSQL. hace buen uso de los Para una fácil conectividad recursos. Posee un rico al servidor PostgreSQL, se diccionario de datos. implementa un ODBC.
  • 6. Sistemas de Gestión de Base de Datos Administración de base de datos Página 5 SQL Server MySQL Es un SGBD Relacional. MySQL software es Open (SGBDR). Source Ofrece una potente forma Velocidad al realizar las de unir SQL e Internet. operaciones. Utiliza una extensión al Bajo costo en SQL estándar, que se requerimientos para la denomina Transact SQL. elaboración de bases de Permite olvidarnos un poco datos.Ventajas de los ficheros que forman Puede ser ejecutado en la base de datos. una maquina con escasos Si trabajamos en una red recursos sin ningún local nos permite agregar problema. otros servidores de SQL Facilidad de configuración Server. e instalación. Soporta gran variedad de Sistemas Operativos. OpenOffice es una suite ofimática avanzada la cual dispone de todas lasherramientas necesarias para trabajar: editor de texto, editor de imágenesvectoriales, hoja de cálculo, editor de presentaciones, base de datos, editor defórmulas, integración con correo (Thunderbird u Outlook), edita PDFs, soporte3d, maneja el estándar internacional ISO, y posee una licencia ILIMITADA.Está disponible para varias plataformas, tales como Microsoft Windows,GNU/Linux, BSD, Solaris y Mac OS X. Soporta numerosos formatos dearchivo, incluyendo como predeterminado el formato estándar ISO/IECOpenDocument (ODF), entre otros formatos comunes, así como tambiénsoporta más de 110 idiomas, desde febrero del año 2010.OpenOffice.org Base es un programa de base de datos similar a MicrosoftAccess. OpenOffice.org Base permite la creación y manejo de bases dedatos, elaboración de formularios e informes que proporcionan a los usuariosfinales un acceso fácil a los datos. Al igual que Microsoft Access, es capaz detrabajar como un front-end para diversos sistemas de bases de datos talescomo el de Access (JET), fuente de datos ODBC y MySQL/PostgreSQL. Baseestá disponible desde la versión 2.0. Componentes de un SGBD Motor de la base de datos. Es el programa del SGBD que construye las consultas y peticiones que se realizan en el sistema para que sean procesadas por el sistema de BD. Por ejemplo el SGBD PhpMyAdmin consta de un motor de base de datos basado en MySQL por lo tanto las peticiones y operaciones que se realicen serán procesadas y convertidas a un formato SQL interpretable por la base de datos gestionada. Con Microsoft Access sucede lo mismo, el programa en sí mismo es un SGBD que transforma todas las peticiones y operaciones sobre la base de datos, también en formato SQL no percibido por el usuario. De esta forma la base de datos interpreta correctamente que el usuario desea insertar una nueva fila en la tabla o editar una serie de valores. Sistema de definición de datos. Programa especializado en crear los ficheros inversos, ficheros diccionarios, realizar los procesos de indexación de campos de las tablas y aplicar los ficheros de palabras vacías. Sistema de manipulación y gestión. Es la parte del SGBD dedicada a la manipulación de registros en las tablas de la base de datos. Hace posible la navegación a través de sus contenidos, la inserción de nuevos registros, su modificación, eliminación, importación o exportación mediante un interfaz sencillo destinado al usuario, evitándole la programación de sus consultas, sustituyendo procesos complejos por funciones almacenadas en un botón o un enlace. Sistema de herramientas y aplicaciones. Lo constituyen todas las herramientas y subprogramas orientados a facilitar la creación de interfaces de edición y consulta en la
  • 7. Sistemas de Gestión de Base de Datos Administración de base de datos Página 6 base de datos. Esto significa que el SGBD ayuda a construir aplicaciones para manipular de forma eficiente las tablas de la base de datos, permitiendo al usuario diseñar los formularios de entrada de datos, las pantallas de visualización de registros, las pantallas de búsqueda y recuperación, etc. Por ejemplo Microsoft Access y Filemaker son SGBD que integran tales herramientas con las que es posible construir una aplicación un sistema de información especializado con un interfaz adaptado a las necesidades del usuario. En el caso de MySQL y PhpMyAdmin esto no es así, ya que el interfaz personalizado por el usuario debe ser desarrollado por él mismo en forma de formularios web basados en un servidor Apache y programados en lenguaje PHP. Este aspecto que a priori podría ser una desventaja, hace posible que sea el método de diseño de interfaz más avanzado, personalizado y profesional, dado que es posible modificar todos los parámetros de funcionamiento del sistema, aspecto que a diferencia de SGBD no es posible encontrar, debido a la limitación de las herramientas que proporcionan. Administración. Lo constituye aquella parte del programa destinada a gestionar las funciones de almacenamiento, los procesos generales del sistema, los privilegios de acceso a la base de datos, gestionar las operaciones de mantenimiento con las bases de datos creadas, modificar las propiedades del interfaz, editar la configuración de los demás componentes del SGBD. Funciones Capacidad para almacenar datos en la BD, acceder a ellos, insertar otros nuevos, modificarlos y eliminarlos. El SGBD oculta a ojos del usuario la apariencia real de las tablas de la BD, mostrando un interfaz sencillo. La apariencia real lo constituye un conjunto de códigos fuente sobre los que se almacenan las cadenas de datos que componen la información del registro. Debe automatizar las funciones de consulta, de forma tal que las peticiones del usuario sean transformadas a un lenguaje identificable y entendible por la BD, generalmente este lenguaje es SQL. El SGBD y especialmente la base de datos gestionada deben asegurar el acceso de múltiples usuarios manipulando o editando sus contenidos mediante un control de la concurrencia. Esto es que el sistema debe proporcionar un orden de prioridad en los procesos que se llevan a cabo en el sistema. Al conjunto de procesos que llevan a cabo múltiples usuarios se le denomina "transacciones". Un SGBD debe permitir la gestión de los privilegios de acceso al sistema para gestionar el acceso y las restricciones del mismo a diversos tipos de usuarios. Debe proporcionar las herramientas de mantenimiento necesarias para mantener la consistencia de los datos de la base de datos, esto es el proceso de compactación y desfragmentación de los datos, la optimización de las tablas, su reparación, la eliminación de residuos o información residual en cache como resultado de una transacción finalizada con algún tipo de error, etc.
  • 8. Sistemas de Gestión de Base de Datos Administración de base de datos Página 7 Objetivos SGBD Existen distintos objetivos que deben cumplir los SGBD: Abstracción de la información. Los SGBD ahorran a los usuarios detalles acerca del almacenamiento físico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este hecho se hace transparente al usuario. Así, se definen varios niveles de abstracción. Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (físico o lógico) de una base de datos sin tener que realizar cambios en las aplicaciones que se sirven de ella. Consistencia. En aquellos casos en los que no se ha logrado eliminar la redundancia, será necesario vigilar que aquella información que aparece repetida se actualice de forma coherente, es decir, que todos los datos repetidos se actualicen de forma simultánea. Por otra parte, la base de datos representa una realidad determinada que tiene determinadas condiciones, por ejemplo que los menores de edad no pueden tener licencia de conducir. El sistema no debería aceptar datos de un conductor menor de edad. En los SGBD existen herramientas que facilitan la programación de este tipo de condiciones. Seguridad. La información almacenada en una base de datos puede llegar a tener un gran valor. Los SGBD deben garantizar que esta información se encuentra segura de permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categorías de permisos. Manejo de transacciones. Una transacción es un programa que se ejecuta como una sola operación. Esto quiere decir que luego de una ejecución en la que se produce una falla es el mismo que se obtendría si el programa no se hubiera ejecutado. Los SGBD proveen mecanismos para programar las modificaciones de los datos de una forma mucho más simple que si no se dispusiera de ellos. Tiempo de respuesta. Lógicamente, es deseable minimizar el tiempo que el SGBD demora en proporcionar la información solicitada y en almacenar los cambios realizados. Ventajas Proveen facilidades para la manipulación de grandes volúmenes de datos (ver objetivos). Entre éstas: Simplifican la programación de equipos de consistencia. Manejando las políticas de respaldo adecuadas, garantizan que los cambios de la base serán siempre consistentes sin importar si hay errores correctamente, etc. Organizan los datos con un impacto mínimo en el código de los programas. Disminuyen drásticamente los tiempos de desarrollo y aumentan la calidad del sistema desarrollado si son bien explotados por los desarrolladores. Usualmente, proveen interfaces y lenguajes de consulta que simplifican la recuperación de los datos.
  • 9. Sistemas de Gestión de Base de Datos Administración de base de datos Página 8 Inconvenientes Típicamente, es necesario disponer de una o más personas que administren la base de datos, de la misma forma en que suele ser necesario en instalaciones de cierto porte disponer de una o más personas que administren los sistemas operativos. Esto puede llegar a incrementar los costos de operación en una empresa. Sin embargo hay que balancear este aspecto con la calidad y confiabilidad del sistema que se obtiene. Si se tienen muy pocos datos que son usados por un único usuario por vez y no hay que realizar consultas complejas sobre los datos, entonces es posible que sea mejor usar una hoja de cálculo. Complejidad: los software muy complejos y las personas que vayan a usarlo deben tener conocimiento de las funcionalidades del mismo para poder aprovecharlo al máximo. Tamaño: la complejidad y la gran cantidad de funciones que tienen hacen que sea un software de gran tamaño, que requiere de gran cantidad de memoria para poder correr. Coste del hardware adicional: los requisitos de hardware para correr un SGBD por lo general son relativamente altos, por lo que estos equipos pueden llegar a costar gran cantidad de dinero.