• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Smb ds
 

Smb ds

on

  • 1,396 views

 

Statistics

Views

Total Views
1,396
Views on SlideShare
1,396
Embed Views
0

Actions

Likes
1
Downloads
20
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft Word

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Smb ds Smb ds Document Transcript

    • 23 Universidad Veracruzana Lic. Sistemas Computacionales Administrativos. Alumnos: Díaz Rosas Marcos Alberto Padilla Bautista Gisela Armas Molina Andrés Alejandro Investigación: Sistemas manejadores de bases de datos (SMBD) Materia: Bases de datos. Catedrático: Dr. Carlos Arturo Torres Gastelú. 30 de agosto de 2010. SMBD Equipo 1
    • Índice Índice.........................................................................................................................2 Introducción...............................................................................................................3 1.1.- El lenguaje de definición de datos (DDL)......................................................................4 1.2.- El lenguaje de manipulación de datos (DML)...............................................................4 1.3.- El lenguaje Estructurado de consulta (SQL).................................................................4 1.4.-Objetivos de un SMBD..................................................................................................5 2.- Sistemas Manejadores de Bases de Datos de Código Abierto................................6 23 2.1.- SQLite..........................................................................................................................6 2.2.- MySQL.........................................................................................................................8 2.3.- Firebird......................................................................................................................10 2.4.- Postgre SQL................................................................................................................12 3.- Sistemas Manejadores de Bases de Datos Propietarios.......................................14 3.1.- Microsoft SQL Server.................................................................................................14 3.2.- Oracle........................................................................................................................16 3.3.-Interbase....................................................................................................................17 3.4.- PervasiveSQL.............................................................................................................18 4.- Sistemas Manejadores de Bases de Datos en Web..............................................19 4.1.- Apache Derby.............................................................................................................19 5.- Sitios web que ofrecen versiones gratuitas y/o académicas................................20 Conclusión...............................................................................................................21 Bibliografía..............................................................................................................22 SMBD Equipo 1
    • Introducción. Después de los 60’s en las tecnologías de la información se dio un giro en la manera en que los sistemas de archivos, los cuales se limitaban a la estructuración del almacenamiento físico de los datos. Con los sistemas manejadores de bases de datos se crea el concepto de administración de los datos, por medio de actividades integradas que permiten verlos físicamente en un solo almacenamiento pero lógicamente se manipulan a través de esquemas compuesto por estructuras donde se establecen 23 vínculos de integridad, métodos de acceso y organización física sobre los datos, permitiendo así obtener valores agregados de utilización tales como: manejo de usuarios, seguridad, atomicidad e independencia física y lógica de los datos, entre otros. Las bases de datos son sistemas que guardan la información de una o más empresas para que estas puedan ser utilizadas cuando el usuario así lo desee, y son de gran relevancia porque automatizan la prevención de errores y son eficaces en el tiempo. Los sistemas manejadores de base de datos) se han incrementado en los últimos años de forma drástica, pues claro está que cada vez más empresas requieren de software para registrar sus datos. Los sistemas manejadores de bases de datos presentan además una interfaz razonable y comprensible para cualquier usuario, debemos mencionar que hay distintos gestores de base de datos, entre ellos se encuentran los de código libre, es decir, pueden ser usados de forma gratuita, los que requieren una licencia comercial, así como los que se pueden usar en forma de software de instalación, u otros que su utilizan desde un navegador predeterminado. A continuación describiremos algunos de los sistemas manejadores de bases de datos más relevantes. SMBD Equipo 1
    • 1.-Sistemas Manejadores de Bases de Datos El sistema manejador de bases de datos es esencial para el adecuado funcionamiento y manipulación de los datos contenidos en la base. Se puede definir como: "El Conjunto de programas, procedimientos, lenguajes, etc. que suministra, tanto a los usuarios no informáticos como a los analistas, programadores o al administrador, los medios necesarios para describir, recuperar y manipular los datos almacenados en la base, manteniendo su integridad, confidencialidad y seguridad". Se compone de un lenguaje de definición de datos (DDL: Data Definition Language), de un lenguaje de manipulación de datos (DML: Data Manipulation 23 Language) y de un lenguaje de consulta (SQL: Structured Query Language). 1.1.- El lenguaje de definición de datos (DDL) Es utilizado para describir todas las estructuras de información y los programas que se usan para construir, actualizar e introducir la información que contiene una base de datos. El DDL permite al administrador de la base especificar los elementos de datos que la integran , su estructura y las relaciones que existen entre ellos, las reglas de integridad, los controles a efectuar antes de autorizar el acceso a la base. 1.2.- El lenguaje de manipulación de datos (DML) Es utilizado para escribir programas que crean, actualizan y extraen información de las bases de datos. Siempre de acuerdo con las especificaciones y las normas de seguridad dictadas por al administrador. Un lenguaje de manipulación de datos es un lenguaje que permite a los usuarios acceder o manipular los datos organizados mediante el modelo de datos apropiado. Hay dos tipos básicamente: • DMLs procedimentales. Requieren que el usuario especifique qué datos se necesitan y cómo obtener esos datos. • DMLs declarativos (o no procedimentales). Requiere que el usuario especifique qué datos se necesitan sin especificar cómo obtener esos datos. 1.3.- El lenguaje Estructurado de consulta (SQL) Sublenguaje de base de datos utilizado en la consulta, actualización y gestión de base de datos relacionales. Es el estándar de facto para los productos de base de datos. Una consulta es una instrucción de solicitud para recuperar información. La parte de un DML se llama lenguaje de consultas. Ejemplo: Select nombre, dirección SMBD Equipo 1
    • From cliente Where id cliente = 2 La secuencia conceptual de operaciones que ocurren para acceder cierta información que contiene una base de datos es la siguiente:} • El usuario solicita cierta información contenida en la base de datos. • El DBMS intercepta este requerimiento y lo interpreta. • El DBMS realiza las operaciones necesarias para acceder y/o actualizar la información solicitada. El sistema manejador de bases de datos es la porción más importante del 23 software de un sistema de base de datos. Un SMBD es una colección de numerosas rutinas de software interrelacionadas, cada una de las cuales es responsable de alguna tarea específica. 1.4.-Objetivos de un SMBD. • 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 tarda en darnos la información solicitada y en almacenar los cambios realizados. También debe permitir: SMBD Equipo 1
    • • Definir una base de datos: especificar tipos, estructuras y restricciones de datos. • Construir la base de datos: guardar los datos en algún medio controlado por el mismo SGBD • Manipular la base de datos: realizar consultas, actualizarla, generar informes. 23 2.- Sistemas Manejadores de Bases de Datos de Código Abierto. 2.1.- SQLite SQLite es un sistema de gestión de bases de datos relacional compatible con ACID, y que está SMBD Equipo 1
    • contenida en una relativamente pequeña (~225 kB1 ) biblioteca en C. SQLite. Es un proyecto de dominio público creado por D. Richard Hipp. A diferencia de los sistemas de gestión de base 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 23 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. La biblioteca implementa la mayor parte del estándar SQL-92, incluyendo transacciones de base de datos atómicas, consistencia de base de datos, aislamiento, y durabilidad (ACID), triggers y la mayor parte de las consultas complejas. SQLite usa un sistema de tipos inusual. En lugar de asignar un tipo a una columna como en la mayor parte de los sistemas de bases de datos SQL, los tipos se asignan a los valores individuales. Por ejemplo, se puede insertar un string en una columna de tipo entero (a pesar de que SQLite tratará en primera instancia de convertir la cadena en un entero). Algunos usuarios consideran esto como una innovación que hace que la base de datos sea mucho más útil, sobre todo al ser utilizada desde un lenguaje de scripting de tipos dinámicos. Otros usuarios lo ven como un gran inconveniente, ya que la técnica no es portable a otras bases de datos SQL. SQLite no trataba de transformar los datos al tipo de la columna hasta la versión 3. Varios procesos o hilos pueden acceder a la misma base de datos sin problemas. Varios accesos de lectura pueden ser servidos en paralelo. Un acceso de escritura sólo puede ser servido si no se está sirviendo ningún otro acceso concurrentemente. En caso contrario, el acceso de escritura falla devolviendo un código de error (o puede automáticamente reintentarse hasta que expira un timeout configurable). Esta situación de acceso concurrente podría cambiar cuando se está trabajando con tablas temporales. Sin embargo, podría producirse un deadlock debido al multithread. Autor(es) D. Richard Hipp Versión estable 3.6.18 / 2009-09-11 Lenguaje de C programación Sistema operativo MULTIPLATAFORMA SMBD Equipo 1
    • Sitio web www.sqlite.org 2.2.- MySQL 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 23 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 propietario y está patrocinado por una empresa privada, que posee el copyright de la mayor parte del código. Esto es lo que posibilita el esquema de licenciamiento anteriormente mencionado. Además de la venta de licencias privativas, la compañía ofrece soporte y servicios. Para sus operaciones contratan trabajadores alrededor del mundo que colaboran vía Internet. MySQL AB fue fundado por David Axmark, Allan Larsson y Michael Widenius. Lenguajes de programación Existen varias APIs que permiten, a aplicaciones escritas en diversos lenguajes de programación, acceder a las bases de datos MySQL, incluyendo C, C++, C#, Pascal, Delphi (via dbExpress), Eiffel, Smalltalk, Java (con una implementación nativa del driver de Java), Lisp, Perl, PHP, Python, Ruby,Gambas, REALbasic (Mac), (x)Harbour (Eagle1), FreeBASIC, y Tcl; cada uno de estos utiliza una API específica. También existe un interfaz ODBC, llamado MyODBC que permite a cualquier lenguaje de programación que soporte ODBC comunicarse con las bases de datos MySQL. También se puede acceder desde el sistema SAP, lenguaje ABAP. Aplicaciones MySQL es muy utilizado en aplicaciones web, como Drupal o phpBB, en plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por herramientas de seguimiento de errores como Bugzilla. Su popularidad como aplicación web está muy ligada a PHP, que a menudo aparece en combinación con MySQL. MySQL es una base de datos muy rápida en la lectura cuando utiliza el motor no transaccional MyISAM, pero puede provocar problemas de integridad en entornos de alta concurrencia en la modificación. En aplicaciones SMBD Equipo 1
    • web hay baja concurrencia en la modificación de datos y en cambio el entorno es intensivo en lectura de datos, lo que hace a MySQL ideal para este tipo de aplicaciones. Especificaciones Plataformas MySQL funciona sobre múltiples plataformas, incluyendo:  AIX  BSD  FreeBSD  HP-UX 23  GNU/Linux  Mac OS X  NetBSD  Novell Netware  OpenBSD  OS/2 Warp  QNX  SGI IRIX  Solaris  SunOS  SCO OpenServer  SCO UnixWare  Tru64  eBD  Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP, Windows Vista, Windows 7 y Windows Server (2000, 2003 y 2008).  OpenVMS9 Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP, Windows Vista y otras versiones de Windows. Características distintivas Las siguientes características son implementadas únicamente por MySQL: Múltiples motores de almacenamiento (MyISAM, Merge, InnoDB, BDB, Memory/heap, MySQL Cluster, Federated, Archive, CSV, Blackhole y Example en 5.x), permitiendo al usuario escoger la que sea más adecuada para cada tabla de la base de datos. Agrupación de transacciones, reuniendo múltiples transacciones de varias conexiones para incrementar el número de transacciones por segundo. Tipos de compilación del servidor Hay tres tipos de compilación del servidor MySQL: Estándar SMBD Equipo 1
    • Los binarios estándar de MySQL son los recomendados para la mayoría de los usuarios, e incluyen el motor de almacenamiento InnoDB. Max Los binarios incluyen características adicionales que no han sido lo bastante probadas o que normalmente no son necesarias. MySQL-Debug Son binarios que han sido compilados con información de depuración extra. No debe ser usada en sistemas en producción porqué el código de depuración 23 puede reducir el rendimiento. Autor(es) MySQL AB Versión estable 5.1.38 (2009-09-04) Lenguaje de C, C++ programación Sistema operativo MULTIPLATAFORMA Sitio web www.mysql.com 2.3.- Firebird Firebird es un sistema de administración de base 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 y el 18 de abril de 2008 fue liberada la versión 2.1. A finales de la década de 1990, Borland decidió liberar el código de Interbase. Diversos integrantes de la plantilla crearon una nueva empresa denominada IBPhoenix, y junto a otros desarrolladores independientes, crearon el fork ahora conocido como Firebird. Más tarde, Borland decidiría volver a privatizar Interbase y comercializar sus licencias. Sin embargo, Firebird sigue siendo un proyecto de código abierto bajo una licencia similar a la MPL (Mozilla Public License). Características principales de Firebird: SMBD Equipo 1
    • • Es multiplataforma, y actualmente puede ejecutarse en los sistemas operativos: Linux, HP-UX, FreeBSD, Mac OS, Solaris y Microsoft Windows. • Ejecutable pequeño, con requerimientos de hardware bajos. • Arquitectura Cliente/Servidor sobre protocolo TCP/IP y otros (embedded). • Soporte de transacciones ACID y claves foráneas. • Es medianamente escalable. • Buena seguridad basada en usuarios/roles. • Diferentes arquitecturas, entre ellas el Firebird incrustado (embedded server) que permite ejecutar aplicaciones mono usuario en ordenadores sin instalar el software Firebird. • Bases de datos de sólo lectura, para aplicaciones que corran desde 23 dispositivos sin capacidad de escritura, como cd-roms. • Existencia de controladores ODBC, OLEDB, JDBC, PHP, Perl, .net, etc. • Requisitos de administración bajos, siendo considerada como una base de datos libre de mantenimiento, al margen de la realización de copias de seguridad. • Pleno soporte del estándar SQL-92, tanto de sintaxis como de tipos de datos. • Completo lenguaje para la escritura de disparadores y procedimientos almacenados denominado PSQL. • Capacidad de almacenar elementos BLOB (Binary Large OBjects). • Soporte de User-Defined Functions (UDFs). Existen dos tipos de servidor Firebird para ser instalados: Classic y Super server. Si bien tienen varias diferencias menores entre si, 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. Los propios desarrolladores de Firebird recomiendan lo siguiente a la hora de decidirse por uno de estos servidores: • En plataformas Windows seleccionar el Superserver. • En Linux simplemente elegir cualquiera, según las conexiones estimadas. En la mayoría de las situaciones no se notará diferencias en la ejecución. Podría considerarse un tercer tipo, el Embedded. Éste consiste en una única bibliotéca de enlace dinámico DLL (de unos 2 MB de tamaño) que contiene todo el servidor. De esta forma se puede tener un DBMS completo disponible y distribuíble junto con aplicaciones de usuario sin requerir que este se instale por separado. En abril de 2003, la Fundación Mozilla decidió renombrar su navegador web de Phoenix a Firebird. Esta decisión causó gran preocupación en lo que se refería al proyecto para bases de datos Firebird, debido a que se asumía que los SMBD Equipo 1
    • usuarios se confundirían entre la base de datos y el navegador web porque estos llevarían el mismo nombre. La disputa continuó hasta que los desarrolladores de Mozilla firmaron una constancia dejando en claro que el nombre Firebird era en realidad Mozilla Firebird. La constancia también dejaba en claro que el nombre Mozilla Firebird era el nombre código del proyecto. El 9 de febrero del 2004, Mozilla renombró a su navegador como Mozilla Firefox, para así evitar cualquier tipo de confusión. 23 Autor(es) Firebird Project Versión estable 2.1.3 / 2009-09-08 Lenguaje de C++ programación Sistema operativo MULTIPLATAFORMA Sitio web http://www.firebirdsql.org/ 2.4.- Postgre SQL PostgreSQL es un sistema de gestión de base de datos relacional orientada a objetos de software libre, publicado bajo la licencia BSD. Como muchos otros proyectos open source, el desarrollo de PostgreSQL no es manejado por una sola compañía sino que es dirigido por una comunidad de desarrolladores y organizaciones comerciales las cuales trabajan en su desarrollo. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group). El uso de caracteres en mayúscula en el nombre PostgreSQL puede confundir a algunas personas a primera vista. Las distintas pronunciaciones de "SQL" pueden llevar a confusión. Los desarrolladores de PostgreSQL lo pronuncian /poːst ɡɹɛs kjuː ɛl/;. Es también común oír abreviadamente como simplemente "Postgres", el que fue su nombre original. Debido a su soporte del estándar SQL entre la mayor parte de bases de datos relacionales, la comunidad consideró cambiar el nombre al anterior Postgres. Sin embargo, el PostgreSQL Core Team anunció en 2007 que el producto seguiría llamándose PostgreSQL. El nombre hace referencia a los orígenes del proyecto como la base de datos "post-Ingres", y los autores originales también desarrollaron la base de datos Ingres. SMBD Equipo 1
    • PostgreSQL ha tenido una larga evolución, la cual se inicia en 1982 con el proyecto Ingres en la Universidad de Berkeley. Este proyecto, liderado por Michael Stonebraker, fue uno de los primeros intentos en implementar un motor de base de datos relacional. Después de haber trabajado un largo tiempo en Ingres y de haber tenido una experiencia comercial con el mismo, Michael decidió volver a la Universidad en 1985 para trabajar en un nuevo proyecto sobre la experiencia de Ingres, dicho proyecto fue llamado post-ingres o simplemente POSTGRES. El proyecto post-ingres pretendía resolver los problemas con el modelo de base de datos relacional que habían sido aclarados a comienzos de los años 1980. El principal de estos problemas era la incapacidad del modelo relacional de 23 comprender "tipos", es decir, combinaciones de datos simples que conforman una única unidad. Actualmente estos son llamados objetos. Se esforzaron en introducir la menor cantidad posible de funcionalidades para completar el soporte de tipos. Estas funcionalidades incluían la habilidad de definir tipos, pero también la habilidad de describir relaciones - las cuales hasta ese momento eran ampliamente utilizadas pero mantenidas completamente por el usuario. En Postgres la base de datos «comprendía» las relaciones y podía obtener información de tablas relacionadas utilizando reglas. Postgres usó muchas ideas de Ingres pero no su código. Mediante un sistema denominado MVCC (Acceso concurrente multiversió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. PostgreSQL provee nativamente soporte para: • Números de precisión arbitraria. • Texto de largo ilimitado. • Figuras geométricas (con una variedad de funciones asociadas) • Direcciones IP (IPv4 e IPv6). • Bloques de direcciones estilo CIDR. • Direcciones MAC. • Arrays. Adicionalmente los usuarios pueden crear sus propios tipos de datos, los que pueden ser por completo indexables gracias a la infraestructura GiST de PostgreSQL. Algunos ejemplos son los tipos de datos GIS creados por el proyecto PostGIS. SMBD Equipo 1
    • Autor(es) PostgreSQL Global Development Group Versión estable 8.4.1 / 2009-09-08 Lenguaje de C programación Sistema operativo MULTIPLATAFORMA Sitio web http://www.postgresql.org/ 23 3.- Sistemas Manejadores de Bases de Datos Propietarios. 3.1.- 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 Server constituye la alternativa de Microsoft a otros potentes sistemas gestores de bases de datos como son Oracle, Sybase ASE, PostgreSQL, Interbase, Firebird o MySQL. SMBD Equipo 1
    • Características de Microsoft SQL Server • Soporte de transacciones. • Escalabilidad, estabilidad y seguridad. • Soporta procedimientos almacenados. • Incluye también un potente entorno gráfico de administración, que permite el uso de comandos DDL y DML gráficamente. • Permite trabajar en modo cliente-servidor, donde la información y datos se alojan en el servidor y los terminales o clientes de la red sólo acceden 23 a la información. • Además permite administrar información de otros servidores de datos. 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 versiónes 2005 y 2008 pasa a ser el SQL Express Edition, que se distribuye en forma gratuita. Es común desarrollar completos proyectos complementando Microsoft SQL Server y Microsoft Access a través de los llamados ADP (Access Data Project). De esta forma se completa la base de datos (Microsoft SQL Server), con el entorno de desarrollo (VBA Access), a través de la implementación de aplicaciones de dos capas mediante el uso de formularios Windows. En el manejo de SQL mediante líneas de comando se utiliza el SQLCMD Para el desarrollo de aplicaciones más complejas (tres o más capas), Microsoft SQL Server incluye interfaces de acceso para varias plataformas de desarrollo, entre ellas .NET, pero el servidor sólo está disponible para Sistemas Operativos Windows. Programación T-SQL. T-SQL (Transact-SQL) es el principal medio de programación y administración de SQL Server. Expone las palabras clave para las operaciones que pueden realizarse en SQL Server, incluyendo creación y modificación de esquemas de la base de datos, introducir y editar datos en la base de datos, así como supervisión y gestión del propio servidor. Las aplicaciones cliente, ya sea que consuman datos o administren el servidor, aprovechan la funcionalidad de SQL Server mediante el envío de consultas de T-SQL y declaraciones que son procesadas por el servidor y los resultados (o errores) regresan a la aplicación cliente. SQL Server permite que sean administrados mediante T-SQL. Para esto, expone tablas de sólo lectura con estadísticas del servidor. La funcionalidad para la administración se expone a través de procedimientos almacenados definidos por el sistema que se pueden invocar desde las consultas de T-SQL para realizar la operación de administración. También es posible crear servidores vinculados (Linked Servers) mediante T-SQL. Los SMBD Equipo 1
    • servidores vinculados permiten el funcionamiento entre múltiples servidores con una consulta.. Cliente Nativo de SQL Cliente Nativo de SQL es la biblioteca de acceso a datos para los clientes de Microsoft SQL Server versión 2005 en adelante. Implementa nativamente soporte para las características de SQL Server, incluyendo la ejecución de la secuencia de datos tabular, soporte para bases de datos en espejo de SQL Server, soporte completo para todos los tipos de datos compatibles con SQL Server, conjuntos de operaciones asincrónas, las notificaciones de consulta, soporte para cifrado, así como recibir varios conjuntos de resultados en una sola sesión de base de datos. Cliente Nativo de SQL se utiliza como extensión 23 de SQL Server plug-ins para otras tecnologías de acceso de datos, incluyendo ADO u OLE DB. Cliente Nativo de SQL puede también usarse directamente, pasando por alto las capas de acceso de datos genéricos. Desventajas • MSSQL usa Address Windowing Extensión (AWE) para hacer el direccionamiento de 64-bit. Esto le impide usar la administración dinámica de memoria y sólo le permite alojar un máximo de 64GB de memoria compartida. • MSSQL no maneja compresión de datos (en SQL Server 2005 y 2000, solamente la versión 2008 Enterprise Edition incluye esta característica), por lo que ocupa mucho espacio en disco. • MSSQL está atado a la plataforma del sistema operativo sobre la cual se instala. 3.2.- Oracle 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 completos,[cita requerida] destacando: • soporte de transacciones, • estabilidad, • escalabilidad y • Soporte multiplataforma. Ha sido criticada por algunos especialistas la seguridad de la plataforma, y las políticas de suministro de parches de seguridad, modificadas a comienzos de SMBD Equipo 1
    • 2005 y que incrementan el nivel de exposición de los usuarios. En los parches de actualización provistos durante el primer semestre de 2005 fueron corregidas 22 vulnerabilidades públicamente conocidas, algunas de ellas con una antigüedad de más de 2 años. Aunque su dominio en el mercado de servidores empresariales ha sido casi total hasta hace poco, recientemente sufre la competencia del Microsoft SQL Server de Microsoft y de la oferta de otros RDBMS con licencia libre como PostgreSQL, MySql o Firebird. Las últimas versiones de Oracle han sido certificadas para poder trabajar bajo GNU/Linux. Oracle surge a finales de los 70 bajo el nombre de Relational Software a partir de un estudio sobre SGBD (Sistemas Gestores de Base de Datos) de George Koch. Computer World definió este estudio como uno de los más completos 23 jamás escritos sobre bases de datos. Este artículo incluía una comparativa de productos que erigía a Relational Software como el más completo desde el punto de vista técnico. Esto se debía a que usaba la filosofía de las bases de datos relacionales, algo que por aquella época era todavía desconocido. En la actualidad, Oracle (Nasdaq: ORCL) todavía encabeza la lista. La tecnología Oracle se encuentra prácticamente en todas las industrias alrededor del mundo y en las oficinas de 98 de las 100 empresas Fortune 100. Oracle es la primera compañía de software que desarrolla e implementa software para empresas 100 por ciento activado por Internet a través de toda su línea de productos: base de datos, aplicaciones comerciales y herramientas de desarrollo de aplicaciones y soporte de decisiones. Oracle es el proveedor mundial líder de software para administración de información, y la segunda empresa de software. Oracle a partir de la versión 10g Release 2, cuenta con 6 ediciones: • 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). La única edición gratuita es la Express Edition, que es compatible con las demás ediciones de Oracle Database 10gR2 y Oracle Database 11g. 3.3.-Interbase InterBase es un Sistema de Administración de Base de Datos Relacionales (RDBMS) desarrollado y comercializado por la compañía Borland Software Corporation y actualmente desarrollado por su filial CodeGear. InterBase se destaca de otros DBMS's por su bajo consumo de recursos, su casi nula necesidad de administración y su arquitectura multi-generacional. InterBase corre en plataformas Linux, Microsoft Windows y Solaris. InterBase es un RDBMS que acepta el estándar SQL-92 y soporta varias interfaces de acceso como JDBC, ODBC y ADO.NET. Sin embargo, ciertas características técnicas lo distinguen de otros productos. InterBase también utiliza su arquitectura multi-generacional para implementar la recuperación frente a fallas (rollback). La mayoría de los DBMS's utilizan logs SMBD Equipo 1
    • para realizar esta operación, lo que puede tomar mucho tiempo e incluso necesitar de intervención manual. En cambio, la recuperación en InterBase es casi instantánea y nunca falla. Entre 1986 y 1991 el producto fue gradualmente vendido a Ashton-Tate, creadores del famoso dBASE, quienes en ese entonces se encontraban comprando varias compañías de base de datos con el fin de ampliar su catálogo. La compañía cayó rápidamente y Borland la compró en 1991, adquiriendo InterBase como parte del trato. A principios del año 2000, la compañía Borland anunció que el código de InterBase sería liberado (código libre) en la versión 6.0 y comenzó las negociaciones para que una empresa separada se encargara del nuevo producto. Cuando los responsables de esta nueva empresa y Borland no 23 llegaron a un acuerdo de separación, InterBase permaneció como un producto de Borland y el código fuente de InterBase 6 se liberó bajo una variante de la “Mozilla Public License” a mediados del 2000. Con la división de InterBase en Borland, la compañía liberó una versión propietaria de InterBase 6 y luego 6.5. Borland liberó varias actualizaciones para la versión libre antes de anunciar que ya no participaría activamente en el desarrollo de este proyecto. De aquí nació una nueva rama de desarrollo libre basada en el código abierto de InterBase 6 conocida como Firebird, que aún se encuentra en desarrollo activo. A finales de 2002, Borland lanzó InterBase versión 7, incluyendo soporte para SMP, soporte mejorado para monitorear y controlar los servidores, y más. Borland lanzó la versión 7.1 en junio de 2003, 7.5 en diciembre de 2004 y 7.5.1 el 1 de junio de 2005. 3.4.- PervasiveSQL. Motor de base de datos embebible que sustenta la integridad de los datos, el alto rendimiento, flexibilidad, escalabilidad y un bajo coste total de propiedad. Resumen de características • Rendimiento de Btrieve - API transactional para un acceso más rápido a los datos. • Optimizador de SQL - proporciona un mayor rendimiento SQL. ODBC, JDBC, ADO / OLE DB y PDAC... todos se aprovechan de estas mejoras. • Turbo Write Accelerator - maximiza la eficacia de las E/S del disco. • Compatibilidad retroactiva completa - aplicaciones y bases de datos heredadas. • Capacidad de incrustación: Biblioteca de desarrollo de clase. • Caja de herramientas de instalación completa • Operaciones continuas.- • Tecnología de reconexión automática. Evita problemas menores de red porque es capaz de reconectar perfectamente puestos de trabajo a un motor de servidor cuando se produce un error en la red • Parámetros dinámicos en plataformas cruzadas - no es necesario volver a actualizar el entorno de la base de datos en cada plataforma. SMBD Equipo 1
    • • Integridad en plataformas cruzadas - el comportamiento igual en todas las versiones y plataformas simplifica la distribución y administración en plataformas cruzadas. • Independencia de versión de servidor y cliente - Simplifica de forma extraordinaria las tareas de distribución. Evolución Pervasive SQL ha crecido en el tiempo desde las raíces del motor Btrieve, del cual aún se mantiene el soporte técnico para sus bibliotecas API. Aún en la última versión lanzada se garantiza la compatibilidad de funcionamiento con todas las versiones anteriores incluso con Btrieve 6.15 capacidad de lectura de 23 archivos Btrieve 5.x. Esto significa que la reciente versión de PSQL es compatible con aplicaciones y datos creados hace más de diez años. Quienes hayan invertido en adquirir las nuevas versiones podrán fácilmente ganar en rendimiento convirtiendo sus archivos desde 6.x a la última versión, con un simple programa asistente. 4.- Sistemas Manejadores de Bases de Datos en Web. Muchos de los SMBD presentan su interfaz por medio de un navegador web, tal es el caso de los ya mencionados Oracle, Microsoft SQL Server, MySQL, PostgreSQL, Firebird, SQLite, pero para fines didácticos dejamos a Apache Derby para esta sección. 4.1.- Apache Derby Apache Derby es un sistema gestor de base de datos relacional escrito en Java que puede ser embebido 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 source licenciado bajo la Apache 2.0 License. Actualmente se distribuye como Sun Java DB. Apache Derby tiene su origen en la empresa Cloudscape Inc, en Oakland, California que se fundó en 1996 para desarrollar una tecnología de base de datos para Java. La primera versión del motor de base de datos, que por entonces se llamó JBMS, tuvo lugar en 1997. Posteriormente el producto fue renombrado como Cloudscape y aparecieron versiones nuevas cada seis meses. En 1999 Informix Software, Inc., adquirió Cloudscape, Inc. En 2001 IBM adquirió los activos de Informix Software, incluyendo Cloudscape. El motor de SMBD Equipo 1
    • base de datos fue renombrado a IBM Cloudscape y continuaron apareciendo versiones, enfocadas principalmente a usos embebidos en productos Java de IBM y middleware. En agosto de 2004 IBM cedió el código a la Apache Software Foundation para Derby, un proyecto patrocinado por el proyecto Apache DB. En julio de 2005 el proyecto Derby continuó desarrollándose como subproyecto base de datos de alto nivel en Apache. Sun se unió al proyecto Derby con el objetivo de utilizar como componente en sus propios productos, y con el lanzamiento de Java 6 en diciembre de 2006, Sun comenzó a empaquetar Derby en el JDK llamado Java DB. En marzo de 2007 IBM anunció que podría comenzar a hacer marketing y dar soporte para el producto Cloudscape, pero que continuaría contribuyendo con 23 el proyecto Apache Derby. Derby está escrito en Java y no tiene bindings para otros lenguajes (no tendría mucho sentido) por lo que limita al programador a utilizarlo mediante la máquina virtual de Java y en programas escritos en ese lenguaje o lenguajes de scripting que se ejecuten sobre JVM (Jython, JRuby, Jacl, etc.). Esto por otro lado hace que las aplicaciones sean altamente portables. Derby hace uso de una mayor cantidad de memoria y su rendimiento y compatibilidad SQL es inferior que otras alternativas como puede ser la base de datos gratuita y de código libre H2 por lo que su uso carece de poco sentido. En su modo embebido sólo soporta un único proceso que tenga abierta la base de datos. Sin embargo en su modo de cliente/servidor soporta el acceso de varios procesos simultáneos mediante bloqueo de filas. 5.- Sitios web que ofrecen versiones gratuitas y/o académicas. http://www.zonagratuita.com/a- programacion/bases_de_datos_programacion.htm http://www.microsoft.com/mexico/academicos/ http://www.programas-gratis.net/descargar-bajar/programas-base- de-datos http://www.softonic.com/windows/programacion-bases-de-datos- gratis http://www.oracle.com/webapps/dialogue/dlgpage.jsp? p_ext=Y&p_dlg_id=7837545&src=6817296&Act=5&sckw=LADMK0 9057554MPP002.GCM.8081.100 http://www.geomundos.com/descargas/desarrollo-base-de- datos_10.html http://es.software.emule.com/sc/bases-de-datos/ http://es.kioskea.net/telecharger/logiciel-20-base-de-datos SMBD Equipo 1
    • 23 Conclusión. En la elaboración de este trabajo se planteó principalmente la investigación de algunos sistemas manejadores de bases de datos (SMBD), sin embargo no se podía comenzar a hacer mención de estos sin primero especificar que es un SMBD, cuales son las características que deben de tener y con qué objetivo se utilizan en la elaboración de una base de datos. También se hizo una breve explicación sobre los lenguajes a los que recurren la mayoría de estos como son el lenguaje de definición de datos, el lenguaje de manipulación de datos y el lenguaje estructurado de consulta. Una vez que se dio una breve explicación sobre lo que son los SMBD se continuo a describir algunos de estos, y se clasificaron en los que son de código abierto y los que necesitan licencia, así como sus ventajas y desventajas ya que algunos presentan mejor entorno gráfico, pero hay otro que presenta una mejor estructura lógica, sin embargo puede existir uno que tenga ambas, pero como cada SMBD Equipo 1
    • usuario tiene necesidades diferentes existe una amplia gama de SMBD con diferentes características de las cuales podemos elegir. Finalmente nos gustaría concluir nuestro trabajo recordando que un sistema manejador de bases de datos es la porción más importante del software de un sistema de base de datos. 23 Bibliografía. http://www.cavsi.com http://www.monografias.com http://www.mailxmail.com http://www.error500.net http://es.wikipedia.org SMBD Equipo 1
    • 23 SMBD Equipo 1