Sistema de base de datos relacionales – "Teradata database" (página 4)
Enviado por Sanchez Guerra, Rudy Wilson
LA DECLARACIÓN EXPLAIN
Teradata SQL provee una muy poderosa sentencia EXPLAIN que permite ver el plan de ejecución de una consulta.
La sentencia EXPLAIN no sólo explica cómo una sentencia será procesada, proporciona una estimación del número de las filas implicadas y del impacto en el funcionamiento de la consulta.
Ejemplo de EXPLAIN con un simple "Join Index"
CREATE TABLE customer (
c_custkey INTEGER,
c_name CHAR(26),
c_address VARCHAR(41),
c_nationkey INTEGER,
c_phone CHAR(16),
c_acctbal DECIMAL(13,2),
c_mktsegment CHAR(21),
c_comment VARCHAR(127)
)
UNIQUE PRIMARY INDEX( c_custkey );
CREATE TABLE orders (
o_orderkey INTEGER NOT NULL,
o_custkey INTEGER,
o_orderstatus CHAR(1),
o_totalprice DECIMAL(13,2) NOT NULL,
o_orderdate DATE FORMAT 'yyyy-mm-dd' NOT NULL,
o_orderpriority CHAR(21),
o_clerk CHAR(16),
o_shippriority INTEGER,
o_commment VARCHAR(79)
)
UNIQUE PRIMARY INDEX(o_orderkey);
CREATE TABLE lineitem (
l_orderkey INTEGER NOT NULL,
l_partkey INTEGER NOT NULL,
l_suppkey INTEGER,
l_linenumber INTEGER,
l_quantity INTEGER NOT NULL,
l_extendedprice DECIMAL(13,2) NOT NULL,
l_discount DECIMAL(13,2),
l_tax DECIMAL(13,2),
l_returnflag CHAR(1),
l_linestatus CHAR(1),
l_shipdate DATE FORMAT 'yyyy-mm-dd',
l_commitdate DATE FORMAT 'yyyy-mm-dd',
l_receiptdate DATE FORMAT 'yyyy-mm-dd',
l_shipinstruct VARCHAR(25),
l_shipmode VARCHAR(10),
l_comment VARCHAR(44)
)
PRIMARY INDEX( l_orderkey );
La siguiente instrucción define un "join index" sobre estas tablas:
CREATE JOIN INDEX order_join_line AS SELECT (
l_orderkey, o_orderdate, o_custkey, o_totalprice
), (
l_partkey, l_quantity, l_extendedprice, l_shipdate
)
FROM lineitem
LEFT JOIN orders ON l_orderkey = o_orderkey
ORDER BY o_orderdate
PRIMARY INDEX (l_orderkey);
La siguiente demostración de EXPLAIN muestra como el optimizador usó el recientemente creado "join index" order_join_line, aun cuando allí no es ninguna referencia al índice en el texto SQL.
EXPLAIN
SELECTo_orderdate, o_custkey, l_partkey, l_quantity,
l_extendedprice
FROM lineitem , orders
WHERE l_orderkey = o_orderkey;
Explanation
————————————————————–
1) First, we lock a distinct LOUISB."pseudo table" for read on a Row Hash to prevent global deadlock for LOUISB.order_join_line.
2) Next, we lock LOUISB.order_join_line for read.
3) We do an all-AMPs RETRIEVE step from join index table LOUISB.order_join_line by way of an all-rows scan with a condition of ("NOT (LOUISB.order_join_line.o_orderdate IS NULL)") into Spool 1, which is built locally on the AMPs. The input table will not be cached in memory, but it is eligible for synchronized scanning. The result spool file will not be cached in memory. The size of Spool 1 is estimated to be 1,000,000 rows. The estimated time for this step is 4 minutes and 27 seconds.
4) Finally, we send out an END TRANSACTION step to all AMPs involved in processing the request.
DESARROLLO THIRD-PARTY
La base de datos de Teradata soporta muchos productos de software de tercera persona. Los dos componentes generales de productos soportados incluyen los de la serie de Transparency y los productos nativos de interfaz.
Productos TS/API
El producto de la serie Transparency / Application Program Interface (TS/API) proporciona una entrada entre los productos DB2 (MVS/TSO) y SQL/DS (VM/CMS) y la base de datos de Teradata.
TS/API permite una declaración del SQL formulada para que DB2 o SQL/DS sea traducido a Teradata SQL para permitir que DB2 o SQL/DS tengan acceso a los datos almacenados en una base de datos de Teradata.
Capítulo VI: Distribución de los Datos y Métodos de Acceso
ÍNDICES DE TERADATA
Un índice es un mecanismo físico usado para almacenar y acceder a las filas de una tabla. Los índices en una base de datos relacional son muy parecidos al índice de un libro – aceleran el acceso a la información.
Teradata soporta los siguientes tipos de índices:
- Primario
- Secundario
- Join
- Hash
ÍNDICES PRIMARIOS
Teradata sólo requiere un índice primario para cada tabla. El método más eficiente de acceso es a través de los índices primarios.
Los índices primarios:
- Afectan la distribución de filas.
- No tienen subtablas.
- Pueden ser únicos o no únicos.
- Pueden ser particionados o no.
Índices primarios y Claves primarias
Los valores escogidos para un índice primario de una tabla son frecuentemente los mismos valores identificados como claves primarias durante la fase de modelamiento de datos, pero no siempre es así.
Clave primaria | Índice Primario |
Las restricciones son usadas para asegurar la integración referencial | Un mecanismo físico de acceso |
Requeridos por Teradata si la comprobación de integridad referencial es implementada | Requerido por Teradata |
Debe ser única | Puede ser única |
Los valores no pueden cambiar si se desea mantener la integridad de los datos | Los valores pueden cambiar |
No puede ser nula | Puede ser nula |
No implica un path de acceso | Implica paths de acceso |
Causa que un índice primario unico deba ser creado |
Tabla N° 36 Indices Primarios
ÍNDICES SECUNDARIOS
Permiten el acceso a la información en una tabla por caminos alternos, caminos menos frecuentes; para incrementar el rendimiento, evitando así las búsquedas completas en las tablas.
Los índices secundarios se agregan a la tabla, implica procesamiento auxiliar, pueden ser eliminados. Los índices secundarios:
- No afectan la distribución de filas
- Pueden ser únicos o no
- Son usados por el Optimizador para incrementar el rendimiento
El sistema construye subtablas para todos los índices secundarios, esta subtabla contiene las filas que son asociadas con el valor del índice.
Índices Primarios vs Índices Secundarios
Característica | Primario | Secundario |
¿Es requerida o no? | Ambos | No |
Puede ser única o no única | Ambos | Ambos |
¿Afecta la distribución de las columnas? | Si | No |
¿Es creada y eliminada dinámicamente? | No | Si |
¿Mejora el acceso? | Si | Si |
¿Es creado usando muchas definiciones de datos? | Si | Si |
¿Requiere una estructura física separada? | No | Si |
¿Requiere procesamiento extra? | No | Si |
Tabla N° 37 Tabla IP vs. IS
ÍNDICES "JOIN"
Es una estructura de indexación que contiene columnas de una o más tablas. Algunas consultas pueden ser satisfechas con solo examinar el índice "join". Son muy parecido a los índices secundarios, los índices "join" imponen procesamiento adicional en operaciones de inserción, eliminación o actualización.
- Índice "join" de tabla-única, replica algunas o todas las columnas en otra tabla
- Índice "join" de tabla-múltiple
- Índice "join" agregado, ofrecen eficiencia extrema para cierto tipo de consultas.
ÍNDICES HASH
Proveen una estructura de eficiencia-espacio con relación a otros índices. Tiene las características similares a un índice join de tabla-única con un identificador por fila que provee acceso transparente a la tabla base.
ESPECIFICACIÓN DE ÍNDICES
Todas las tablas requieren un índice primario. Si no se especifica una columna o un set de columnas como el índice primario para la tabla, entonces CREATE TABLE especifica un índice primario por defecto.
Creando Índices
Para especificar un… | Se usa la declaración… | Y la cláusula… |
Índice único primario UPI | CREATE TABLE | UNIQUE PRIMARY INDEX |
Índice no-único primario NUPI | CREATE TABLE | PRIMARY INDEX |
Índice único secundario USI | CREATE TABLE | INDEX |
CREATE INDEX | ||
Índice "join" | CREATE JOIN INDEX | |
Índice hash | CREATE HASH INDEX |
Tabla N° 38 Especificación de Índices
Los índices también son creados cuando las restricciones PRIMARY KEY y UNIQUE son especificadas.
FORTALEZAS Y DEBILIDADES DE LOS ÍNDICES
Teradata no requiere que los usuarios le especifiquen que índice debe de usar.
El Optimizador de Teradata selecciona la alternativa más apropiada.
Los índices:
- Pueden tener un impacto directo en todo el rendimiento de Teradata.
- No es un proceso simple de realizar.
- Es basado en parte en expectativas de uso.
Método de acceso | Fortalezas | Debilidades |
Índice único primario UPI |
|
|
Índice no único primario NUPI |
|
|
Índice único secundario USI |
|
|
Índice no único secundario NUSI |
|
|
Búsqueda completa de tabla |
|
|
Tabla N° 39 Fortalezas y Debilidades de los índices
HASHING
Teradata usa hashing para distribuir los datos en el disco y usa índices para acceder a dichos datos. Debido a que la arquitectura de Teradata es masivamente paralela, requiere un medio eficiente de distribución y recuperación de información. Este método es el hashing.
Todos los índices en teradata son basados (o parcialmente basados) en filas-hash.
Capítulo VII: Objetos de la Base de Datos
VISTAS
Actualmente son tablas virtuales que pueden usarse para obtener datos definiendo columnas de vistas subyacentes y/o tablas.
Las vistas integran el Diccionario de Datos porque las definiciones de las vista son almacenadas allí. Las vistas simplifican el acceso a la información en Teradata.
Declaraciones SQL relacionadas con las Vistas
LA FUNCIÓN… | PARA… |
CREATE VIEW | * Nombrar la vista y las columnas en la vista * Definir un SELECT sobre una o más columnas de otras tablas y/o vistas |
REPLACE VIEW | Alterar las características de una vista existente |
Tabla N° 40 Declaraciones SQL Relacionadas a Vistas
PROCEDIMIENTOS ALMACENADOS
Son ejecutados en el espacio del servidor Teradata, es una combinación de declaraciones SQL, y declaraciones de control.
Usando los procedimientos almacenados, se pueden construir grandes y complejas aplicaciones de base de datos.
Los procedimientos almacenados pueden contener:
- Entrada múltiple y parámetros de salida
- Variables locales y cursores
- SQL DDL, DCL, DML y SELECT.
Las aplicaciones basadas en procedimientos almacenados proveen los siguientes beneficios:
- Reducen el tráfico cliente-servidor, ya que los procedimientos almacenados residen en el servidor.
- Permiten encapsulación y cumplimiento de las reglas en el servidor, contribuyendo al mantenimiento de las aplicaciones.
- Proveen mejor control transaccional.
- Proveen mejor seguridad.
- Proveen un mecanismo manejador de excepciones.
Elementos de un procedimiento almacenado
Este elemento… | Incluye … |
Declaraciones de control de SQL | Declaraciones compuestas anidadas o no anidadas |
Declaraciones de control | DECLARE HANDLER para terminación y condiciones de excepción. Pueden ser:
Declaraciones de cursor DECLARE CURSOR. Declaraciones de variables DECLARE. |
Declaraciones SQL para transacciones | DDL, DCL, DML y SELECT |
Modificadores LOCKING | Soporta todas las declaraciones SQL excepto CALL |
Corchetes y comentarios simples |
Tabla N° 41 Procedimientos Almacenados
MACROS
Las macros consisten en una o más sentencias SQL que pueden ser ejecutadas con solo ejecutar una sentencia. Cada vez que la macro es ejecutada, una o más filas pueden ser retornadas.
Declaraciones SQL relacionadas con las macros
Use esta declaración… | Para… |
CREATE MACRO | Incorporar código SQL frecuentemente usado dentro de una macro |
EXECUTE | Correr una macro. * Una macro también puede contener EXECUTE |
DROP MACRO | Elimina una macro |
Tabla N° 42 Declaraciones SQL relacionadas con las macros
A pesar del número de sentencias en una macro, Teradata las trata como un pedido simple. Cuando se ejecuta una macro, el sistema procesa todas las sentencias SQL, o no procesa ninguna. Si la macro falla, el sistema aborta, y retorna la base de datos a su estado original.
TRIGGERS
El trigger se dispara cuando otro evento ocurre. Este objeto es almacenado en el Diccionario de Datos, asociado a una tabla llamada tabla subject. Teradata cumple con las especificaciones ANSI SQL3 sobre triggers.
Los triggers se ejecutan automáticamente cuando una de las siguientes operaciones se ejecuta:
- DELETE
- INSERT
- UPDATE
¿En qué momento se disparan?
Si se especifica… | Acción del trigger… |
BEFORE | Se ejecuta antes del evento que disparó el trigger. |
AFTER | Se ejecuta después de que el evento que disparó el trigger termine. |
Tabla N° 43 Triggers
A veces una sentencia puede disparar un trigger, que en su turno, dispara otro trigger. Teradata procesa y optimiza en paralelo para maximizar el rendimiento del sistema.
Declaraciones SQL relacionadas a los triggers
Use esta declaración… | Para… |
CREATE TRIGGER | Crear un trigger. |
REPLACE TRIGGER | Cambiar la definición de un trigger si necesidad de borrarlo y volverlo a crear. |
DROP TRIGGER | Eliminar la definición de un trigger de una tabla subject |
HELP TRIGGER | Muestra los atributos del trigger especificado |
SHOW TRIGGER | Muestra el texto usado para crear un trigger |
ALTER TRIGGER | Activa, desactiva, o modifica el tiempo de creación de un trigger * Es una extensión de SQL a las especificaciones ANSI |
RENAME TRIGGER | Cambia el nombre de un trigger |
Tabla N° 44 Declaraciones SQL Relacionadas Con Triggers
Elementos de un trigger
Elemento | Comentario |
Nombre del Trigger | Debe ser único dentro de una base de datos, esto significa que un trigger y cualquier otro objeto de la base de datos no deben de tener el mismo nombre. |
Activo/Desactivo | Cuando se deshabilita un trigger, la definición permanece en el Diccionario de Datos. Para activar un trigger deshabilitado: ALTER TRIGGER nombre_trigger ENABLED * Es una extensión de Teradata |
Nombre de la Tabla | El nombre de la tabla subject debe ser el nombre de una tabla base existente, no una vista, ni una tabla temporal, ni un índice join o un índice hash. |
Momento de ejecución del Tigger | * BEFORE * AFTER |
Evento disparador | El evento es identificado por el tipo de sentencia que causa que el trigger se dispare: Si el tipo de sentencia es… Entonces la sentencia disparadora puede ser… INSERT
UPDATE
DELETE
|
Nombre de la columna | Sólo aplicable cuando el evento disparador es un UPDATE |
Orden | Cuando se definen múltiples triggers, se puede especificar el orden en que se ejecutarán. Los valores del orden son enteros de 1 a 32567. |
Tabla de transición y Filas de transición | La tabla de transición es una tabla temporal que contiene las filas de transición. Las filas de transición almacenan los viejos y nuevos valores para las columnas de las cuales los datos serán modificados. No son almacenadas en el Diccionario de Datos. |
Cláusula REFERENCING | La cláusula realiza:
Las reglas AFTER y BEFORE son:
|
Acción del trigger |
|
Sentencia SQL | Generalmente comprende una sola sentencia o un bloque de sentencias. |
Tabla N° 45 Elementos de Un Trigger
Restricciones de los triggers
Restricción | Comentario |
Un cursor no dispara un trigger | Se recibiría un mensaje de error |
No se puede definir triggers, índices join o índices hash en la misma tabla | |
El límite para la recursividad de un trigger es de 16 niveles | Se recibiría un mensaje de error |
Tabla N° 46 Relaciones de los triggers
EL DICCIONARIO DE DATOS
Es un set de tablas del sistema que contienen datos acerca de las bases de datos, de los usuarios y las propiedades de éstos, también contiene información administrativa acerca de la base de datos Teradata.
El Diccionario de Datos contiene definiciones actuales, información de control y información general acerca de:
- Bases de datos
- Usuarios finales
- Roles
- Reglas
- Perfiles
- Cuentas
- Tablas
- Vistas
- Columnas
- Índices
- Restricciones
- Sesiones y atributos de sesión
- Triggers
- Derechos de acceso
- Espacio de disco
- Eventos
- Uso de recursos
- Macros
- Procedimientos almacenados
- Logs
- Traducciones
- Set de caracteres
- Estadísticas
- Procedimientos almacenados extendidos
- Autorizaciones
- Funciones definidas por el Usuario – UDF
- Tipos Definidos por el Usuario – UDT
- Métodos Definidos por el Usuario – UDM
A continuación se detalla acerca de que información es almacenada:
Cuando creas … | En el Diccionario de Datos se almacena… |
una tabla |
|
una base de datos |
* permanente * contenido en la base de datos * temporal
|
un usuario |
* permanente * contenido en la base de datos * temporal
|
una vista o macro |
|
un procedimiento almacenado |
|
un trigger |
* tabla * trigger * base de datos y tabla subject * usuario que creó los triggers * usuario que actualizó últimamente los triggers
* el estado del trigger (activo) * los eventos que disparan el trigger * el orden de disparo del trigger
|
una función definida por usuario UDF |
|
un método definido por usuario UDM |
|
un tipo de dato definido por usuario UDT |
|
Tabla N° 47 Listado de diccionario de datos almacenables
VISTAS DEL DICCIONARIO DE DATOS
Se puede examinar la información en las tablas de sistema en la base de datos DBC directamente o a través de una serie de vistas.
El administrador de la base de datos controla quien tiene acceso a las vistas.
La siguiente tabla define la información necesitada por varios tipos de usuarios:
Este tipo de usuario… | Necesita saber… |
Final |
|
Supervisor |
|
Administrador de la Base de Datos |
|
Administrador de seguridad |
|
Control de operaciones |
|
Tabla N° 48 Vistas del diccionario de datos
Acceso SQL al Diccionario de Datos
Cada vez que se ingresa a la base de datos Teradata, o se usa una consulta SQL, o se escribe un password, se usa el Diccionario de Datos.
Por razones de seguridad, sólo se puede usar la declaración SELECT. No se puede modificar de ninguna manera el Diccionario de Datos.
CONTROL DE CONCURRENCIA Y RECUPERACIÓN DE LAS TRANSACCIONES
El control de concurrencia previene que varios procesos de forma incorrecta inserten, borren o modifique los mismos datos. Se mantiene un control de concurrencia a través de dos mecanismos:
- Transacciones
- Locks
TRANSACCIONES
Son obligatorios para mantener la integridad de la base de datos mientras se efectúan muchas operaciones concurrentes.
Una transacción es una unidad lógica de trabajo y una unidad de recuperación. Las transacciones son atómicas: una transacción parcial no existe.
Teradata soporta:
- Semántica de transacciones ANSI
- Transacciones Teradata
TRANSACCIONES ANSI
Todas las transacciones ANSI son implícitas. Cualquiera de los siguientes eventos abre una transacción ANSI:
- Ejecución de la primera sentencia SQL en una sesión.
- Ejecución de la primera sentencia luego de cerrar una transacción previa.
La transacción se cierra cuando se ejecuta una sentencia COMMIT, ROLLBACK o ABORT.
En el modo ANSI, el sistema da vuelta atrás a la transacción entera si el pedido actual:
- Resulta en un punto muerto
- Ejecuta una sentencia DDL que aborta
- Ejecuta una sentencia explícita: ROLLBACK o ABORT.
TRANSACCIONES TERADATA
Las transacciones pueden ser implícitas o explícitas. Una macro es un ejemplo de una transacción implícita.
SENTENCIAS BEGIN TRANSACTION / END TRANSACTION
Una transacción explícita es cuando varias sentencias están delimitadas con BEGIN TRANSACTION / END TRANSACTION. Todas las demás transacciones son implícitas.
BEGIN TRANSACTION;
DELETE FROM Employee
WHERE Name = ‘Smith T’
;
UPDATE Department
SET EmpCount=EmpCount-1
WHERE DeptNo=500
;
END TRANSACTION;
Si ocurre un error durante el procesamiento del DELETE o el UPDATE, el sistema restaura ambas tablas a sus estados anteriores. Si un error ocurre durante una transacción Teradata, el sistema vuelve atrás la transacción entera.
LOCKS
Un lock es un medio de petición de derechos a algún recurso. Teradata puede asegurar muchos diferentes tipos de recursos de diferentes formas. Se puede anular algunos locks haciendo ciertas operaciones. El requerimiento de integridad de datos decide que tipos de lock el sistema va a usar.
La siguiente figura muestra un ejemplo de por qué se necesitan los locks.
Figura N° 8 Necesidad de Locks
Este ejemplo demuestra el problema más común encontrado en el proceso de transacciones sin locks.
Teradata permite asegurar los siguientes objetos:
Objeto | Descripción |
Base de Datos | Asegura todas las filas de todas las tablas en la base de datos |
Tabla | Asegura todas las filas en la tabla y cualquier índice en las tablas fallback |
Fila hash | Asegura la copia primaria de una fila y todas las filas que tienen el mismo código hash dentro de la misma tabla. |
Tabla N° 49 Aseguramiento de de objetos
Un usuario puede asegurar (lock):
- Base de datos
- Tabla
- Fila hash
Tipos de seguros (lock)
Existen cuatro:
Tipo de lock | Descripción |
Exclusivo | El proceso que lo pide tiene derechos exclusivos sobre el recurso asegurado. Cualquier otro proceso no puede leer, escribir, o acceder al recurso asegurado. |
Escribir | El proceso que lo pidió tiene derechos exclusivos sobre el recurso asegurado, excepto para lecturas. |
Leer | Durante éste el sistema no permite la modificación de ese recurso. |
Acceder | Permite las modificaciones de los datos mientras la operación SELECT está en progreso. |
Tabla N° 50 Tipos de Locks
La siguiente tabla muestra de mejor manera estos tipos de lock:
Pedido de lock | Tipo de lock | ||||
Ninguno | Acceder | Leer | Escribir | Exclusivo | |
Acceder | Concedido | Concedido | Concedido | Concedido | NO |
Leer | Concedido | Concedido | Concedido | NO | NO |
Escribir | Concedido | Concedido | NO | NO | NO |
Exclusivo | Concedido | NO | NO | NO | NO |
Tabla N° 51 Manipulación de Locks
NIVELES DE LOCK EN LA BASE DE DATOS
Sentencia SQL | Nivel de lock por el tipo de acceso | Modo de lock | |
UPI/NUPI/USI | NUSI/Busq. completa | ||
SELECT | Row hash | Tabla | Leer |
UPDATE | Row hash | Tabla | Escribir |
DELETE | Row hash | Tabla | Escribir |
INSERT | Row hash | No aplicable | Escribir |
CREATE DATABASE DROP DATABASE MODIFY DATABASE | No aplicable | Database | Exclusivo |
CREATE TABLE DROP TABLE ALTER TABLE | No applicable | Tabla | Exclusivo |
Tabla N° 52 Niveles de Locks
DEADLOCKS Y RESOLUCIÓN
Un deadlock se produce cuando una transacción 1 pone un lock sobre un recurso A, y entonces necesita poner un lock a un recurso B. Pero este recurso ya ha tiene puesto un lock por una transacción 2, quien a su turno necesita poner un lock al recurso A. A este estado se denomina deadlock y se resuelve abortando una de las dos transacciones y haciendo un ROLL BACK para esa transacción.
Las transacciones juegan un rol muy importante en el proceso porque son usadas para "retroceder hacia atrás" una serie de actualizaciones a la base de datos.
RECUPERACIÓN DE MEDIOS Y DE SISTEMA
Restarts
Se produce por una de las siguientes razones:
- AMP o falla de disco
- Falla en el software
- Error de paridad
Recuperación de Transacción
Dos tipos de una recuperación automática de transacción:
- Recuperación de una transacción
- Recuperación de la Base de Datos
HERRAMIENTAS DE ANÁLISIS DE CONSULTA DE TERADATA
TERADATA VISUAL EXPLAIN
Es una herramienta visual que describe el plan de ejecución de complejas sentencias SQL de una manera simplificada.
Cuando se especifica el modificador EXPLAIN en la sentencia SQL, Teradata Visual EXPLAIN presenta una vista gráfica de las sentencias rotas en pasos discretos mostrando el flujo de datos durante la ejecución.
El plan de ejecución primero debe ser capturado con Query Capture Database (QCD) por medio de Query Capture Facility (QCF).
TERADATA STATISTICS WIZARD
Es una herramienta gráfica que ha sido desarrollada para mejorar el rendimiento de las consultas y de la base de datos haciendo pruebas estadísticas de los resultados de cada operación.
Se puede… | Descripción |
Seleccionar un workload | Analiza y recibe recomendaciones basadas en los resultados |
Seleccionar una base de datos, o varias tablas, índices o columnas | Analiza y recibe recomendaciones basadas en los resultados |
Aplazar | El programa para recolectar estadísticas |
Mostrar y modificar estadísticas | De una columna o un índice |
Recibir recomendaciones | Los análisis están basados en heurísticas |
Tabla N°53 Asistente de Estadísticas
RECOMENDACIONES
El presente trabajo fue desarrollado usando como referencia la información encontrada en el sitio web de Teradata () bajo la versión V6 Release 6.1; este no es un trabajo integramente completo que describe el comportamiento del sistema, sino por el contrario, es solo un resumen.
BIBLIOGRAFÍA
Teradata Library
http://www.teradata.com/t/go.aspx/?id=114
Fecha de acceso 2/Junio/2006
Wikipedia
http://en.wikipedia.org/wiki/Main_Page
Fecha de acceso 2/Junio/2006
TRABAJO REALIZADO POR LOS ESTUDIANTES:
Sanchez Guerra, Rudy Wilson
Mamani Humpiri, Luis Miguel
Universidad Nacional del Altiplano Puno – Peru
Escuela Profesional de Ingeniería de Sistemas
Asignatura: Fundamentos de Base de Datos.
Página anterior | Volver al principio del trabajo | Página siguiente |