Você está na página 1de 6

Servidores de Bases de Datos SQL

Las Normas de la ISO: SQL 89, SQL-92y SQL3


SQL-89:
Soporta el DDL (Lenguaje de Definicin de Datos) para la creacin de tablas, ndices, vistas y restricciones
de integridad referencial. As mismo soporta privilegios de seguridad de conceder y revocar
(GRANT/REVOKE). El DML (Lenguaje de Manipulacin de Datos) consta de comandos INSERT, SELECT,
UPDATE, DELETE, COMMIT, ROLLBACK. Un mecanismo de cursores brinda navegacin fila por fila. Una
agregacin hecha al SQL-89 define mecanismos para incluir instrucciones de SQL en fortran, COBOL, PLI y
PASCAL.

SQL-92:
Soporta todas las funciones de SQL-89 y adems incorpora:
Agentes de SQL: Se definen como programas o usuarios interactivos que producen instrucciones en
sql.
Conexiones entre clientes y servidores SQL: SQL-92 soporta conexiones o sesiones concurrentes,
pero slo una de ellas puede estar activa en un instante especfico.
Controles de transaccin ms granulares: con el comando para establecer transaccin (SET
TRANSACTION) es posible especificar que una transaccin es de slo lectura, o de lectura y
escritura. Adems es posible establecer el grado de aislamiento ( es decir, de proteccin o bloqueo
automtico) para cierta transaccin en lectura no comprometida, lectura comprometida, lectura
repetible o seriable.
Catlogos normados para describir las estructuras de las bases de datos: Esquemas de sql que
describen una base de datos. Son tablas que describen estructuras de tablas fundamentales, vistas,
restricciones, privilegios etc.
Sql de inclusin soporta los lenguajes nuevos: C, Ada y MUMPS.
Soporte para SQL Dinmico: cursores dinmicos y comandos comunes para generar cdigo sql
durante la ejecucin.
Soporte para nuevos tipos de datos: BLOB, VARCHAR, DATE TIME Y TIMESTAMP.
Soporte para tablas temporales: tablas locales y globales y que se destruyen automticamente al
terminar la sesin.
Soporte para operadores de combinacin:
o Combinacin externa (outer join).
o Combinacin unin (unin) .
o Transcombinacin (all unin).
o Combinacin interna (inner join).
Cdigos de error y diagnsticos normados: entre ellas se encuentran restricciones de dominio
(valores aceptables), afirmaciones y restricciones de tablas fundamentales. Las restricciones son
reglas que definen los usuarios con el propsito de restringir los valores de lo que se coloca en las
columnas de las tablas.

SQL-3:
Incorpora Triggers, Funciones, Consultas recursivas, Conjuntos y SQL orientado a objetos, incluido
los tipos definidos por el usuario (UDT User Define Types). Un UDT es como una clase de C++,
consta de un conjunto de propiedades y mtodos. Estos UDT puede ser pblicos o privados y
pueden recibir herencia mediante mediante la palabra clave UNDER (ejemplo: CREATE TYPE perro
UNDER animal). Los UDT pueden ir en columnas como cualquier otro tipo de datos propio de SQL.
Incorpora Perfiles para grupos de permisos para ser asignados a varios usuarios, en vez de dar
permisos a cada uno por separado.
Define la interfaz de nivel de llamada (CLI) que permite la separacin de la aplicaciones que compila
el cdigo SQL con el motor de base de datos, permitiendo operar a la aplicacin con mltiples
DBMS.
SQL/PSM: (Mdulo de Almacenamiento Persistente): son extensiones de procedimientos SQL
mediante una sintaxis semejante a la de ADA. Es un lenguaje comn para escribir procedimientos
almacenados en SQL (Aunque no todos los motores se acoplaron realmente a la norma).
SQL/ENCUADERNACIONES: Define mecanismos para entrelazar SQL con otros lenguajes mediante
precompiladores, SQL de inclusin y SQL dinmico.
SQL / Transacciones: Define la forma en que las bases de datos SQL participan en transacciones
globales.
SQL/Temporal: Define la forma en que las bases de datos SQL manejan datos en series temporales.
SQL/Med: Define la administracin de datos externos, incluidos los tipos de vinculacin de datos,
los BLOB grandes, las tablas Abstractas, y el soporte para bases de datos federadas.
SQL/OLDB: Define combinaciones entre SQL y lenguajes orientados a objetos. La primera
combinacin es la norma de SQL de inclusin para JAVA conocida como SQLJ.
SQL/Objetos: una ampliacin para la construccin y manipulacin de objetos. La mayor parte de
estas construcciones se han convertido ahora en el principal modelo orientado a objetos de SQL.
SQL/MML: SQL Soporte para multimedia. Datos de texto total, audio digitalizado, videos y datos
espaciales y ssmicos, adems de otros tipos de estructuras de datos de la vida real. SQL/MM usar
UDT para definir las operaciones que se soportan para cada tipo de objeto multimedia. A diferencia
de los BLOB actuales, los UDT ofrecen mtodos para manipular cada uno de los tipos de datos
multimedia.

Arquitecturas de Bases de Datos SQL.
Arquitectura de proceso por cliente: ofrece la mayor proteccin al dar a cada cliente de la base de datos su
propio espacio de direcciones de proceso. La ventaja de sta arquitectura es protege a cada usuario de los
dems, as como al administrador de la base de datos de todos ellos. Adems, es posible asignar sin los los
procesos a distintos procesadores en una mquina SMP multiprocesador. Depende del S.O. local para
prestar sus servicios multitarea. Un S.O. que soporte SMP puede asignar de forma transparente procesos
del servidor sql al conjunto de procesadores que est disponible en la mquina. La desventaja es que
consume ms memoria y recrusos del CPU que los otros esquemas y puede ser ms lento debido a los
cambios de contexto del proceso y el sobreflujo de las comunicaciones que se establecen entre procesos.
No obstante, estos problemas pueden superarse mediante un monitor TP que maneje por sondeo un grupo
de procesos. DB2, Informix y Oracle 6 implementan esta arquitectura.




Arquitecturas MultiHiladas: ofrecen el mejor desempeo al ejecutar todas las conexiones, aplicaciones y
bases de datos del usuario en el mismo espacio de direcciones. Esta arquitectura proporciona su propio
planificador interno y no depende de los esquemas de asignacin de tareas y proteccin del S.O. local. La
ventaja es que conserva memoria y ciclos de CPU al no requerir frecuentes cambios de contexto. Son ms
portables debido a que no necesitan demasiados servicios del SO. para funcionar. La desventaja es que una
aplicacin de usuario mal intencionada puede tirar todo el motor de base de datos y todas sus tareas.
Adems las consultas grandes pueden acaparar los recursos del servidor. Sybase, SQL Server, utilizan esta
arquitectura.



Arquitecturas Hbridas:
Constan de 3 componentes:
Atendedores de red multihilado: que participan en la tarea de conexin inicial mediante la
asignacin del cliente a un despachador.
Tareas del despachador: ponen los mensajes en una cola interna y luego desencolan la respuesta
para enviarla al cliente.
Procesos Compartidos de trabajo de servidor reciclables: sacan un trabajo especfico de la cola, lo
ejecutan y lo ponen en la cola de salida. La ventaja de esta arquitectura es que ofrece un entorno
protegido para ejecutar las tareas del usuario sin asignar un proceso permanente a cada usuario. La
desventaja son los retrasos por la cola. Oracle 7 y Oracle 8 la implementan.


Procedimientos Almacenados
Hoy da existe una norma comn para escribir en Java componentes del lado servidor llamados beans
empresariales de java (EJB Enterprise java beans). En teora Ud. Puede escribir procedimientos
almacenados en SQLJ como un beans empresarial de un solo mtodo. Y tambin puede ocupar
cualquier herramienta EJB para desarrollar y empacar su procedimiento. La herramienta debe
permitirle establecer, mediante declaraciones, la transaccin y los atributos de seguridad de un EJB.
Con base en la info. que Ud. proporcione la herramienta incluye el EJB dentro de un archivo Jar, el cual
tambin incluye un descriptor de despliegue estndar que describe la calidad de servicio que necesita el
EJB de un contenedor.
Entonces Ud. debe poder ejecutar su EJB en varios contenedores, entre ellos, los motores de bases de
datos, servidores de aplicaciones web, monitores de TP y monitores de transaccin de objetos.

Gatillos y Reglas.
Los gatillos son acciones especiales definidas por los usuarios, casi siempre en forma de procedimientos
almacenados, que el servidor llama de manera automtica con base a eventos de datos relacionados.
Una regla es un tipo especial de gatillo que sirve para realizar revisiones sencillas en los datos.

MiddleWare de SQL y Bases de datos confederadas
Las bases de datos confederadas las conforman el middleware que permiten a clientes y servidores sql que
funcionan en redes heterogneas de bases de datos de varios fabricantes comunicarse y trabajar en
conjunto.
Primera solucin de MiddleWare: la interfaz comn de SQL.
La idea es crear un API de SQL comn que sea la que utilicen todas las aplicaciones y despus dejar que los
distintos controladores de bases de datos se encarguen de las diferencias entre servidores.


Segunda solucin de MiddleWare: la compuerta abierta de SQL.
A fin de mejorar el entorno de base de datos confederada se introduce la compuerta abierta de SQL. La
idea es estandarizar con base en uno o dos FAP (Formatos y Protocolos) de industria abierta, ofrecer un
controlador comn de clientes para el FAP y desarrollar un receptor de compuerta abierta por cada
servidor. Este receptor atrapar los mensajes de FAP entrantes y los traducir a la interfaz de SQL nativa
del servidor local. Existen dos FAP comunes para elegir: DRDA de IBM y EDA/SQL aunque ninguno de ellos
es estndar.

Tercera solucin de MiddleWare: el nirvana confederado.
Sumando las APIS y APIS comunes, eliminamos los receptores de compuerta, lo que mejora el desempeo
del servidor, reduce los costos y hace ms sencillo el mantenimiento. Adems se incorpora una sola
interfaz de administracin de bases de datos.
Para eliminar los receptores de la compuerta, el FAP comn debe soportar un superconjunto de todos los
dialectos de SQL o tolerar los dialectos nativos de ese lenguaje ( es decir, debe permitir el paso libre).

Você também pode gostar