nuevas funciones en adaptive server versión 12.5

170
Lo nuevo en Sybase Adaptive Server Enterprise Adaptive Server Enterprise 12.5

Upload: axel-hernandez

Post on 20-Jan-2016

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Nuevas funciones en Adaptive Server versión 12.5

Lo nuevo en Sybase AdaptiveServer Enterprise

Adaptive Server Enterprise

12.5

Page 2: Nuevas funciones en Adaptive Server versión 12.5

ID de documento : 32961-01-1250-01Última revisión : Junio De 2001

Copyright © 1989-2001, Sybase Inc. Reservados todos los derechos.

Esta publicación forma parte del software de gestión de base de datos Sybase y a cualquier versión posterior, hasta que se indique locontrario en nuevas ediciones o notas técnicas. La información contenida en este documento puede sufrir modificaciones sin previo aviso.El software aquí descrito está cubierto por un acuerdo de licencia y sólo puede utilizarse o copiarse según los términos de ese acuerdo.

Para solicitar documentación adicional, los clientes de los EE.UU. y Canadá deben contactar con Customer Fulfillment en el número deteléfono (800) 685-8225, fax (617) 229-9845.

Los clientes de otros países con un acuerdo de licencia de EE.UU. pueden contactar con Customer Fulfillment en el número de faxanterior. El resto de clientes de otros países deben contactar con su distribuidor de software o delegación de Sybase más cercana. Lasactualizaciones sólo se proporcionan en intervalos regulares según los lanzamientos de software. Ninguna parte de esta publicaciónpuede reproducirse, transmitirse o traducirse de ninguna forma ni por ningún medio, ya sea electrónico, mecánico, manual, óptico ocualquier otro sin el permiso expreso escrito de Sybase Inc.

Sybase, el logotipo de Sybase, ADA Workbench, Adaptable Windowing Environment, Adaptive Component Architecture, AdaptiveServer, Adaptive Server Anywhere, Adaptive Server Enterprise, Adaptive Server Enterprise Monitor, Adaptive Server EnterpriseReplication, Adaptive Server Everywhere, Adaptive Server IQ, Adaptive Warehouse, AnswerBase, Anywhere Studio, ApplicationManager, AppModeler, APT Workbench, APT-Build, APT-Edit, APT-Execute, APT-FORMS, APT-Translator, APT-Library, BackupServer, ClearConnect, Client-Library, Client Services, Data Pipeline, Data Workbench, DataArchitect, Database Analyzer, DataExpress,DataServer, DataWindow, DB-Library, dbQueue, Developers Workbench, Direct Connect Anywhere, DirectConnect, DistributionDirector, E-Anywhere, E-Whatever, Embedded SQL, EMS, Enterprise Application Studio, Enterprise Client/Server, Enterprise Connect,Enterprise Data Studio, Enterprise Manager, Enterprise SQL Server Manager, Enterprise Work Architecture, Enterprise Work Designer,Enterprise Work Modeler, EWA, Financial Fusion, Financial Fusion Server, Gateway Manager, ImpactNow, InfoMaker, InformationAnywhere, Information Everywhere, InformationConnect, InternetBuilder, iScript, Jaguar CTS, jConnect for JDBC, KnowledgeBase,MainframeConnect, Maintenance Express, MAP, MDI Access Server, MDI Database Gateway, media.splash, MetaWorks, MySupport,Net-Gateway, Net-Library, ObjectConnect, ObjectCycle, OmniConnect, OmniSQL Access Module, OmniSQL Toolkit, Open Client,Open ClientConnect, Open Client/Server, Open Client/Server Interfaces, Open Gateway, Open Server, Open ServerConnect, OpenSolutions, Optima++, PB-Gen, PC APT Execute, PC DB-Net, PC Net Library, Power++, power.stop, PowerAMC, PowerBuilder,PowerBuilder Foundation Class Library, PowerDesigner, PowerDimensions, PowerDynamo, PowerJ, PowerScript, PowerSite,PowerSocket, Powersoft, PowerStage, PowerStudio, PowerTips, Powersoft Portfolio, Powersoft Professional, PowerWare Desktop,PowerWare Enterprise, ProcessAnalyst, Report Workbench, Report-Execute, Replication Agent, Replication Driver, Replication Server,Replication Server Manager, Replication Toolkit, Resource Manager, RW-DisplayLib, RW-Library, S-Designor, SDF, Secure SQLServer, Secure SQL Toolset, Security Guardian, SKILS, smart.partners, smart.parts, smart.script, SQL Advantage, SQL Anywhere, SQLAnywhere Studio, SQL Code Checker, SQL Debug, SQL Edit, SQL Edit/TPU, SQL Everywhere, SQL Modeler, SQL Remote, SQLServer, SQL Server Manager, SQL SMART, SQL Toolset, SQL Server/CFT, SQL Server/DBM, SQL Server SNMP SubAgent, SQLStation, SQLJ, STEP, SupportNow, Sybase Central, Sybase Client/Server Interfaces, Sybase Financial Server, Sybase Gateways, SybaseMPP, Sybase SQL Desktop, Sybase SQL Lifecycle, Sybase SQL Workgroup, Sybase User Workbench, SybaseWare, Syber Financial,SyberAssist, SyBooks, System 10, System 11, System XI (logo), SystemTools, Tabular Data Stream, Transact-SQL, Translation Toolkit,UNIBOM, Unilib, Uninull, Unisep, Unistring, URK Runtime Kit for UniCode, Viewer, Visual Components, VisualSpeller, VisualWriter,VQL, WarehouseArchitect, Warehouse Control Center, Warehouse Studio, Warehouse WORKS, Watcom, Watcom SQL, Watcom SQLServer, Web Deployment Kit, Web.PB, Web.SQL, WebSights, WebViewer, WorkGroup SQL Server, XA-Library, XA-Server y XPServer son marcas comerciales de Sybase Inc.

Unicode y el logotipo de Unicode son marcas comerciales registradas de Unicode Inc.

Todos los demás nombres de compañías y productos utilizados pueden ser marcas comerciales o marcas comerciales registradas de susrespectivas compañías.

Use, duplication, or disclosure by the government is subject to the restrictions set forth in subparagraph (c)(1)(ii) of DFARS 52.227-7013for the DOD and as set forth in FAR 52.227-19(a)-(d) for civilian agencies.

Sybase Inc., 6475 Christie Avenue, Emeryville, CA 94608.

Page 3: Nuevas funciones en Adaptive Server versión 12.5

Contenido

iii

Prefacio.......................................................................................................................................... ix

CAPÍTULO 1 Nuevas funciones en Adaptive Server versión 12.5 .................... 1Nuevas características de la versión 12.5........................................ 1Límites de servidor flexibles ............................................................. 2

Varios tamaños de páginas lógicas........................................... 2Número de columnas y tamaños de columnas ......................... 3Longitud máxima de expresiones, variables y argumentos

de procedimientos almacenados........................................ 3Número de logins ...................................................................... 4Consecuencias sobre el rendimiento de los nuevos límites...... 4

Reconfiguración dinámica................................................................ 4Asignación dinámica de memoria ............................................. 5Cambios en el modo de asignar la memoria............................. 5

Procedimientos almacenados y funciones SQLJ (Java) .................. 6XML en la base de datos ................................................................. 6El operador union en las vistas ........................................................ 7Servicios de directorio de Internet (LDAP)....................................... 7Secure Socket Layer (SSL).............................................................. 8Enterprise Java Beans (EJB Server)................................................ 9Compatibilidad con sistema externo de archivos ............................. 9Control de acceso en el nivel de fila .............................................. 10Suspensión y reanudación de actualizaciones a bases de datos .. 11Compatibilidad con Java.net .......................................................... 11Copias de seguridad comprimidas................................................. 12Compatibilidad con Unichar ........................................................... 13Modificaciones a CIS ..................................................................... 13Utilidad de depuración de SQL ...................................................... 14Utilidad de conversión.................................................................... 14

CAPÍTULO 2 Cambios de sistema en Adaptive Server versión 12.5 .............. 17Cambios de sistema de la versión 12.5 ......................................... 17

Cambios en los parámetros de configuración ......................... 17

Page 4: Nuevas funciones en Adaptive Server versión 12.5

Contenido

iv

Cambios en los comandos de Transact-SQL.......................... 20Procedimientos de sistema nuevos y modificados.................. 22Nuevos programas de utilidades............................................. 23Cambios en los programas de utilidades actuales.................. 23Cambios en las bases de datos y tablas de sistema .............. 23Nuevas palabras reservadas................................................... 26Variables globales nuevas ...................................................... 27Cambios en la documentación ................................................ 27

Cambios que pueden afectar a las aplicaciones ya instaladas...... 28Palabras clave de Transact-SQL nuevas................................ 28Columnas anchas y truncado de datos ................................... 28Cambios que pueden afectar a las aplicaciones

cliente-servidor ................................................................. 29Número máximo de expresiones en una instrucción select .... 30

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0 ............................................................................. 31Nuevas funciones de la versión 12 ................................................ 32Sybase Failover para entornos de alta disponibilidad.................... 33Reconstrucción de índices ............................................................. 35Nuevas funciones de Backup Server ............................................. 35

Copia de seguridad y restauración de alto rendimiento .......... 35Cintas sin rebobinado.............................................................. 36

Compatibilidad con el sistema de archivos UNIX .......................... 36Modificación del esquema de una tabla existente con alter table.. 37Suspensión de actualizaciones de base de datos con quiesce

database........................................................................... 37Desconexión de los motores de Adaptive Server .......................... 38Información de procesos configurable por el usuario .................... 38Rango de números de identificación para tablas ........................... 39Base de datos de diagnóstico ........................................................ 39Uso de Java en Adaptive Server Enterprise .................................. 40

Posibilidades del uso de Java en Adaptive Server ................. 40Número de tablas en una consulta ................................................ 41Mejoras en el procesamiento y optimización de las consultas ...... 42

Uniones de fusión.................................................................... 42Mejoras en el coste de las consultas ...................................... 43

Uniones ANSI................................................................................. 43Ejecución dinámica de Transact-SQL............................................ 44Mejoras de los tipos de datos text e image.................................... 45Planes abstractos........................................................................... 45Desactivación de disparadores ...................................................... 46Particiones de caché ...................................................................... 47Administración de transacciones distribuidas ................................ 47

Page 5: Nuevas funciones en Adaptive Server versión 12.5

Contenido

v

Mejoras en Component Integration Services (CIS)........................ 48Seguridad de red............................................................................ 49

Consideraciones de rendimiento............................................. 49Funciones de seguridad admitidas en Adaptive Server 12 ..... 50

Seguridad de login definido por el usuario..................................... 50Aumento del número máximo de usuarios e logins ................ 51Definición y cambio del número máximo de intentos de login 51Bloqueo y desbloqueo de logins y funciones .......................... 52Visualización de la información de contraseña ....................... 52Comprobación de las contraseñas en un carácter al menos .. 53Definición y cambio de la longitud mínima de la contraseña .. 53Definición del intervalo de caducidad para una contraseña.... 54

Identificación concreta ................................................................... 54Cambios del sistema en la versión 12 ........................................... 55

Cambios en los parámetros de configuración ......................... 55Modificaciones en los comandos de Transact-SQL ................ 57Procedimientos del sistema nuevos y modificados................. 59Nuevos programas de utilidades............................................. 60Modificaciones introducidas en las bases de datos

y las tablas del sistema .................................................... 61Nuevas palabras reservadas................................................... 63Cambios en la documentación ................................................ 63Cambios que pueden afectar a las aplicaciones existentes.... 64

CAPÍTULO 4 Nuevas funciones en Adaptive Server versión 11.9.2............... 65Nuevos esquemas de bloqueo....................................................... 66Cambios en el bloqueo de nivel de tabla ....................................... 67Cambios en la optimización de estadísticas y consultas ............... 67Mejoras del comando create index ................................................ 68Cambios y adiciones en la sintaxis de Transact-SQL.................... 69

Nueva opción de simultaneidad readpast ............................... 69Nuevo comando lock table ...................................................... 69Especificación del tiempo de espera para los bloqueos ......... 69Aislamiento de la transacción de lectura repetible .................. 70

Orden configurable de recuperación de bases de datos ............... 70Verificación de error para los fallos de dbcc checkstorage............ 70Control de utilización de licencia.................................................... 70Afinidad tarea-motor....................................................................... 71Mejoras de rendimiento de Dynamic SQL ..................................... 71Actualizaciones directas por medio de uniones ............................. 71Cambios de Component Integration Services................................ 72Cambios del juego de caracteres................................................... 72Cambios que pueden afectar a las aplicaciones existentes .......... 72

Efectos de cambiar al bloqueo sólo de datos.......................... 73

Page 6: Nuevas funciones en Adaptive Server versión 12.5

Contenido

vi

Cambios en la optimización de consultas y planes de consulta forzados ........................................................ 74

Ordenación de los resultados con tablas de bloqueo sólo de datos .................................................................... 75

Retardo de compilación de cursores hasta el cursor abierto .. 75

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5................... 77Nuevas características de la versión 11.5 ..................................... 77Recuperación previa asíncrona ..................................................... 78Mejoras en el sistema de auditoría ................................................ 80

Nuevos procedimientos de sistema ........................................ 80Expresión CASE ............................................................................ 82Servicios de integración de componentes ..................................... 82

Comandos nuevos .................................................................. 84Nuevos procedimientos de sistema ........................................ 84Procedimientos de sistema modificados ................................. 85

Mejoras en create index................................................................. 85Mejoras de dbcc............................................................................. 86

Ventajas de utilizar dbcc checkstorage ................................... 86Procedimientos almacenados y de sistema para

la creación de dbccdb....................................................... 87Procedimientos almacenados para el mantenimiento

de dbccdb ......................................................................... 87Procedimientos almacenados para la generación

de informes en dbccdb ..................................................... 88Optimización de exploración con índice descendente ................... 89Servicios de directorio.................................................................... 89Afinidad de motor y precedencia de ejecución .............................. 90

Nuevos procedimientos de sistema ........................................ 91Registro ampliado de errores......................................................... 92

Nuevos procedimientos de sistema ........................................ 92Procedimientos de sistema modificados ................................. 93

Procedimientos almacenados extendidos (ESP) ........................... 93XP Server ................................................................................ 94Procedimientos ESP definidos por el sistema......................... 95Nuevos procedimientos de sistema para ESP........................ 95Comandos compatibles........................................................... 96

Límites de integridad referencial aumentados ............................... 96Administración de caché de metadatos ......................................... 97Control del acceso a texto SQL por lotes....................................... 97

Asignación de memoria para texto por lotes ........................... 98Nuevas columnas en sysprocesses ........................................ 98

Copia masiva paralela.................................................................... 99Consultas paralelas y particiones mejoradas............................... 100

Page 7: Nuevas funciones en Adaptive Server versión 12.5

Contenido

vii

Recuperación a un momento dado .............................................. 101Autorización proxy........................................................................ 102Aislamiento de fallos de recuperación ......................................... 103

Nuevos procedimientos de sistema ...................................... 104Efectos secundarios del aislamiento de fallos

de recuperación.............................................................. 105Política de sustitución de caché LRU flexible .............................. 105Límites de recursos...................................................................... 106

Nuevos procedimientos de sistema ...................................... 107Comandos compatibles......................................................... 107

Verificación y cifrado de texto fuente ........................................... 108Sybase Central............................................................................. 108sp_sysmon ................................................................................... 109Mejoras de ejecución en dos fases.............................................. 109

spt_comittab ha pasado a sybsystemdb ............................... 110El identificador de la ejecución ha cambiado a

un valor aleatorio ............................................................ 110Roles definidos por el usuario...................................................... 111Integración de Registro de eventos de Windows NT ................... 111

Procedimientos de sistema y procedimientos almacenados extendidos compatibles .................................................. 112

Compatibilidad con la interfaz MAPI de Windows NT.................. 112Procedimientos de sistema y procedimientos almacenados

extendidos compatibles .................................................. 113Integración del Monitor de rendimiento de Windows NT ............. 113

Procedimiento de sistema compatible................................... 114

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0........................ 115Nuevas funciones de la versión 11.0 ........................................... 115

Cachés definidos por el usuario ............................................ 116Cambios en el almacenamiento de datos ............................. 119Cambios del diario de transacciones .................................... 122Nivel 0 de aislamiento ........................................................... 123Cambios del administrador de bloqueos ............................... 124Tarea housekeeper ............................................................... 126Configuración de SQL Server ............................................... 127Promoción de bloqueos......................................................... 128Motores múltiples de red ....................................................... 128Mejoras introducidas en showplan ........................................ 128Cambios introducidos en las consultas y la modificación

de datos.......................................................................... 130Actualización de los volcados de base de datos................... 130Determinación del dispositivo de cinta por Backup Server ... 131Cambios en la columna IDENTITY ....................................... 132

Page 8: Nuevas funciones en Adaptive Server versión 12.5

Contenido

viii

Nuevas variables globales text e image................................ 133Cambios del sistema en la versión 11.0 ...................................... 133

Nuevo comando online database ......................................... 134Cambios introducidos en los comandos existentes .............. 134Nuevas opciones set ............................................................. 135Nuevos procedimientos del sistema...................................... 135Cambios introducidos en los procedimientos del sistema..... 136Nuevas tablas del sistema .................................................... 136Cambios introducidos en las tablas del sistema existentes .. 137

Cambios que pueden afectar a las aplicaciones existentes ........ 138Nuevas palabras de Transact-SQL en la versión 11.0.......... 138Cambios introducidos en la configuración de SQL Server.... 139Cambios introducidos en las subconsultas ........................... 142Cambios introducidos en la salida showplan

en la versión 11.0 ........................................................... 147Las nuevas estrategias de caché pueden afectar

el rendimiento ................................................................. 147Actualización de los volcados de base de datos................... 148Particiones y posición física de los datos.............................. 148

Index ........................................................................................................................................... 149

Page 9: Nuevas funciones en Adaptive Server versión 12.5

ix

Prefacio

Destinatarios Este manual está pensado para aquellos clientes que vayan a actualizarAdaptive Server™ a la versión 12.5.

Utilización de estemanual

Lo nuevo enAdaptive Server Enterprise es una introducción a lascaracterísticas nuevas de Sybase® Adaptive Server Enterprise y loscomandos, procedimientos de sistema, tablas de sistema y documentaciónque las complementan.

Este manual también trata las características nuevas añadidas y los cambiosrealizados al sistema en las versiones 11.0, 11.5, 11.9.2 y 12.0. Estainformación se proporciona para los usuarios que vayan a actualizarversiones anteriores de Adaptive Server a la versión 12.5.

Este manual contiene los siguientes capítulos:

• El capítulo 1, "Nuevas funciones en Adaptive Server versión 12.5"describe las características añadidas en la versión 12.5.

• El capítulo 2, "Cambios de sistema en Adaptive Server versión 12.5"describe las características añadidas y los cambios realizados alsistema en la versión 12.5, así como el modo en que éstos puedenafectar a las aplicaciones ya instaladas.

• El capítulo 3, "Nuevas funciones y cambios del sistema en AdaptiveServer versión 12.0" describe los cambios realizados al sistema paraactivar las nuevas características. También explica el modo en que lasadiciones y cambios pueden afectar a las aplicaciones ya instaladas.

• El capítulo 4, "Nuevas funciones en Adaptive Server versión 11.9.2"describe las características añadidas y los cambios realizados alsistema en la versión 11.9.2.

• El capítulo 5, "Nuevas funciones en Adaptive Server versión 11.5"describe las características añadidas y cambios realizados al sistemaen la versión 11.5, así como el modo en que estos pueden afectar a lasaplicaciones ya instaladas.

• El capítulo 6, "Nuevas funciones de SQL Server versión 11.0"describe las características añadidas y cambios realizados al sistemaen la versión 11.0.

Page 10: Nuevas funciones en Adaptive Server versión 12.5

x

Documentosrelacionados

Los siguientes manuales forman parte de la documentación de SybaseAdaptive Server Enterprise:

• El Boletín de lanzamiento para cada plataforma: contiene información deúltima hora que no pudo incluirse en los manuales.

También es posible encontrar una versión más reciente del boletín en elWorld Wide Web. Utilice la Sybase Technical Library para ver la últimainformación de la documentación o actualizaciones críticas añadidasdespués del lanzamiento del producto en CD.

• La documentación de instalación de Adaptive Server para cada plataforma:describe la instalación, actualización y configuración de todos los productosAdaptive Server y Sybase relacionados.

• Lo nuevo en Adaptive Server Enterprise: describe las nuevascaracterísticas de la versión 12 de Adaptive Server, los cambios añadidosal sistema para activar estas características y los cambios que puedenafectar a las aplicaciones ya instaladas.

• Manual del usuario de Transact-SQL: los documentos de la versiónmejorada del lenguaje de base de datos relacional de Sybase, Transact-SQL.Este manual sirve de libro de consulta para usuarios nuevos de este sistemade administración de base de datos. Contiene además las descripciones delas bases de datos de ejemplo pubs2 y pubs3.

• Manual de administración del sistema: proporciona información detalladasobre la administración de servidores y bases de datos. Este manual incluyeinstrucciones y directrices para la administración de recursos físicos, laseguridad, las bases de datos de usuario y del sistema y detalles sobre laconversión de caracteres, los idiomas adicionales y las opciones deordenación.

• Manual de referencia de Adaptive Server: contiene información detalladasobre los comandos, las funciones, los procedimientos y los tipos de datosde Transact-SQL. Este manual también contiene una lista de las palabrasreservadas de Transact-SQL y las definiciones de las tablas del sistema.

• Manual de rendimiento y mejoras: explica cómo mejorar Adaptive Serverpara obtener el máximo rendimiento. Este manual incluye informaciónsobre temas relacionados con el diseño de bases de datos que afectan alrendimiento, la optimización de consultas, la forma de mejorar AdaptiveServer para bases de datos de gran tamaño, problemas de disco y caché,y los efectos sobre el rendimiento de bloqueos y cursores.

• Manual de utilidades: documentación de las utilidades de Adaptive Server,como isql y bcp, que se ejecutan en el nivel de sistema operativo.

Page 11: Nuevas funciones en Adaptive Server versión 12.5

Prefacio

xi

• Manual de mensajes de error y resolución de problemas: explica la formade resolver los mensajes de error más habituales y muestra solucionesa problemas de sistema que pueden surgir.

• Manual del usuario de Component Integration Services: explica cómoutilizar la característica de servicios de integración de componentes(Component Integration Services) de Adaptive Server para conectarse conbases de datos remotas, ya sean bases de datos Sybase u otras.

• Uso de Java en Adaptive Server Enterprise: describe la forma de instalary utilizar clases de Java como tipos de datos y funciones definidas por elusuario en la base de datos de Adaptive Server.

• Utilización de Sybase Failover en un sistema de alta disponibilidad:proporciona instrucciones sobre cómo utilizar Failover de Sybase paraconfigurar Adaptive Server como servidor acompañante en un sistema dealta disponibilidad.

• Utilización de las características de la Administración de transaccionesdistribuidas (DTM) en Adaptive Server: explica cómo configurar, utilizary resolver los problemas de las características DTM de Adaptive Server enentornos de procesamiento de transacciones distribuidas.

• Manual de integración de la interfaz XA para CICS, Encina y TUXEDO:proporciona instrucciones de uso de la interfaz DTM XA de Sybase conlos administradores de transacciones X/Open XA.

• Glosario de Adaptive Server: define los términos técnicos utilizados en ladocumentación de Adaptive Server.

Otras fuentes deinformación

Utilice el CD de la Sybase Technical Library y el sitio Web de los manuales deproducto para obtener más información sobre su producto.

• El CD Technical Library contiene los manuales de producto y se incluyeen el software. El explorador DynaText (que puede descargar en Product Manuals en http://www.sybase.com/detail/1,3693,1010661,00.html) lepermite obtener acceso a la información técnica sobre su producto en unformato fácil de utilizar.

Consulte las instrucciones sobre instalación e inicio de Technical Libraryen el Manual de instalación de Technical Library de su documentación.

• El sitio Web Technical Library Product Manuals es una versión HTML delCD Technical Library al que puede tener acceso mediante un explorador deWeb estándar. Además de los manuales de producto, dispone de vínculos conel sitio Web Technical Documents (anteriormente denominado Tech InfoLibrary), la página Solved Cases y grupos de noticias de Sybase y Powersoft.

Para obtener acceso al sitio Web Technical Library Product Manuals, vayaa Product Manuals en http://www.sybase.com/support/manuals/.

Page 12: Nuevas funciones en Adaptive Server versión 12.5

xii

Certificados deSybase en el WorldWide Web

La documentación técnica del sitio Web de Sybase se actualiza conregularidad.

❖ Para ver la última información sobre certificados de productos

1 En el explorador de Web, seleccione Technical Documents en http://www.sybase.com/support/techdocs/.

2 En la barra de navegación de la izquierda, seleccione Products(Productos).

3 Seleccione un producto de la lista.

4 Seleccione el filtro Certification Report (Informe de certificados),especifique un intervalo de fechas y haga clic en Go (Continuar).

5 Haga clic en un título de Certification Report (Informe de certificados)para abrirlo.

❖ Para ver la última información sobre correcciones y actualizaciones

1 En el explorador de Web, seleccione Technical Documents en http://www.sybase.com/support/techdocs/.

2 Seleccione EBFs/Updates (Correcciones/Actualizaciones). Escriba elnombre de usuario y contraseña, si el sistema lo solicita (cuenta Webdefinida) o genere una cuenta nueva (servicio gratuito).

3 Especifique un intervalo de fechas y haga clic en Go (Continuar).

4 Seleccione un producto.

5 Haga clic en un título de EBF/Updates (Correcciones/Actualizaciones)para abrirlo.

❖ Para crear una vista personalizada del sitio Web de Sybase (incluidaslas páginas de asistencia técnica)

Defina un perfil MySybase. MySybase es un servicio gratuito que le permitecrear una vista personalizada de las páginas Web de Sybase.

1 En el explorador de Web, seleccione Technical Documents en http://www.sybase.com/support/techdocs/

2 Haga clic en MySybase y cree un perfil MySybase.

Si necesita ayuda Cada instalación de Sybase que ha adquirido un contrato de soporte técnico,cuenta con una o más personas autorizadas a ponerse en contacto con el equipode soporte técnico de Sybase. Si no puede resolver un problema mediante losmanuales o la ayuda en línea, pida a la persona autorizada que se ponga en contactocon el equipo de soporte técnico de Sybase o la oficina de Sybase más cercana.

Page 13: Nuevas funciones en Adaptive Server versión 12.5

Prefacio

xiii

Convenciones En este manual se utilizan las siguientes convenciones de estilo:

• En una pantalla de ejemplo, los comandos que debe escribir exactamentecomo aparecen están en:

esta fuente

• En una pantalla de ejemplo, las palabras que debe sustituir con el valorcorrespondiente a su instalación están en:

esta fuente

• En el texto habitual de este documento, los nombres de archivos y directoriosestán en cursiva:

/usr/u/sybase

• Los nombres de programas, utilidades, procedimientos y comandos estánen negrita:

bcp

• Este documento especifica los comandos tanto para el shell C como parael shell Bourne, si son diferentes. El archivo de inicialización del shell Cse denomina .cshrc. El archivo de inicialización del shell Bourne sedenomina .profile. Si utiliza otro shell, por ejemplo el shell Korn, consultela sintaxis correcta de comando en la documentación correspondiente.

Las convenciones para las instrucciones de sintaxis utilizadas en este manualson las siguientes:

Tabla 1: Convenciones de sintaxis SQL

Clave Definición

comando Los nombres de comandos, opciones de comandos, utilidades,indicadores de utilidades y otras palabras clave se muestran en lafuente Arial negrita.

variable Las variables o palabras que corresponden a valores que debeespecificar el usuario, se muestran en cursiva.

{ } Los símbolos de llave indican que debe elegir como mínimo una delas opciones delimitadas por éstas. No incluya llaves en la opción.

[ ] Los corchetes indican que puede elegir una o más de las opcionesdelimitas por estos. No incluya corchetes en la opción.

( ) Los paréntesis forman parte del comando.

| La barra vertical indica que debe seleccionar sólo una de las opcionesmostradas.

, La coma indica que puede elegir tantas opciones como desee y quedebe escribirlas en el comando separadas por comas.

Page 14: Nuevas funciones en Adaptive Server versión 12.5

xiv

Si necesita ayuda Cada instalación de Sybase que ha adquirido un contrato de soporte técnico,cuenta con una o más personas autorizadas a ponerse en contacto con el equipode soporte técnico de Sybase. Si no puede resolver un problema mediante losmanuales o la ayuda en línea, pida a la persona autorizada que se ponga en contactocon el equipo de soporte técnico de Sybase o la oficina de Sybase más cercana.

Page 15: Nuevas funciones en Adaptive Server versión 12.5

1

C A P Í T U L O 1 Nuevas funciones en AdaptiveServer versión 12.5

Este capítulo describe las nuevas funciones y los cambios realizados alsistema en la versión 12.5 de Sybase Adaptive Server Enterprise.

Además de admitir varios tamaños de páginas lógicas, columnas másanchas y un número mayor de filas, Adaptive Server versión 12.5introduce varias funciones nuevas con licencia para uso especializado.Son las siguientes:

• Extended Full-Text Search Engine (motor de búsqueda de textoampliada)

• Protocolo SSL (Secure Sockets Layer)

• Extended File System

• Java

• EJB Server

Para utilizar estas funciones, debe adquirir la licencia correspondientey configurar la función mediante el sistema de administración de licenciasSySAM. Consulte el Manual de instalación para obtener instrucciones.Para adquirir una o más de las funciones con licencia, póngase en contactocon su comercial.

Nuevas características de la versión 12.5Las nuevas características de Adaptive Server versión 12.5 son:

Nombre

"Límites de servidor flexibles", en la página 2

"Reconfiguración dinámica", en la página 4

"Procedimientos almacenados y funciones SQLJ (Java)", en la página 6

"XML en la base de datos", en la página 6

"El operador union en las vistas", en la página 7

Page 16: Nuevas funciones en Adaptive Server versión 12.5

Límites de servidor flexibles

2

Límites de servidor flexiblesAdaptive Server versión 12.5 incluye incrementos de los siguientes límites:

• Número de tamaños de páginas lógicas disponibles

• Número de columnas y tamaños de columnas

• Número de argumentos para procedimientos almacenados

• Número de expresiones en una instrucción select

• Número de usuarios por base de datos

• Número de logins por servidor

Varios tamaños de páginas lógicasAdaptive Server versión 12.5 no utiliza el comando binario buildmaster paragenerar el dispositivo master. En lugar de esto, Sybase ha incorporado lafunción buildmaster en el comando binario dataserver.

"Servicios de directorio de Internet (LDAP)", en la página 7

"Secure Socket Layer (SSL)", en la página 8

"Enterprise Java Beans (EJB Server)", en la página 9

"Compatibilidad con sistema externo de archivos", en la página 9

"Control de acceso en el nivel de fila", en la página 10

"Suspensión y reanudación de actualizaciones a bases de datos", en lapágina 11

"Compatibilidad con Java.net", en la página 11

"Copias de seguridad comprimidas", en la página 12

"Compatibilidad con Unichar", en la página 13

"Utilidad de depuración de SQL", en la página 14

"Utilidad de conversión", en la página 14

Nombre

Page 17: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 1 Nuevas funciones en Adaptive Server versión 12.5

3

El comando dataserver le permite crear dispositivos master y bases de datoscon tamaños de páginas lógicas de 2 K, 4 K, 8 K o 16 K. Las páginas lógicasde mayor tamaño le permiten crear filas de mayor tamaño, que a su vez mejoranel rendimiento porque Adaptive Server tiene acceso a más datos cada vez quelee una página. Por ejemplo, una página de 16 K puede almacenar 8 veces lacantidad de datos que una página de 2 K, una página de 8 K almacena 4 veceslos datos de una página de 2 K, etc.

Número de columnas y tamaños de columnasEl número máximo de columnas que se pueden crear en una tabla es:

• 1.024 para columnas de longitud fija tanto en tablas con bloqueo all-pages(APL) como tablas con bloqueo sólo de datos (DOL)

• 254 para columnas de longitud variable en una tabla APL

• 1.024 para columnas de longitud variable en una tabla DOL

El tamaño máximo de una columna depende de:

• Si la tabla incluye columnas de longitud variable o fija.

• El tamaño de página lógica de la base de datos. Por ejemplo, en una basede datos con páginas lógicas de 2 K, el tamaño máximo de una columnaen una tabla APL puede ser igual al de una fila, unos 1.962 bytes, menosel espacio general correspondiente al formato de la fila. De igual modo,en una base de datos con páginas lógicas de 4 K, el tamaño máximo de unacolumna en una tabla APL puede ser de unos 4.010 bytes, menos el espaciogeneral correspondiente al formato de la fila. Consulte la tabla 1-1 paraobtener más información.

Longitud máxima de expresiones, variables y argumentosde procedimientos almacenados

El tamaño máximo de expresiones, variables y argumentos para procedimientosalmacenados es 16.384 bytes (16 K), para cualquier tamaño de página. Estosdatos pueden ser binarios o de carácter. Puede insertar variables y literales hastaeste tamaño máximo en columnas de texto sin utilizar el comando writetext.

Page 18: Nuevas funciones en Adaptive Server versión 12.5

Reconfiguración dinámica

4

Número de loginsLa tabla 1-1 muestra los límites del número de logins, usuarios y grupos paraAdaptive Server.

Tabla 1-1: Límite del número de login, usuarios y grupos

Consecuencias sobre el rendimiento de los nuevos límitesLos nuevos límites de Adaptive Server significan que el servidor puede tenerque gestionar grandes volúmenes de datos para una sola consulta, operaciónDML (Data Manipulation Language, lenguaje de tratamiento de datos) o comando.Por ejemplo, si utiliza una tabla con bloqueo sólo de datos con una columna decaracteres (2000), Adaptive Server debe asignar memoria para realizar la copiade la columna mientras explora la tabla. El aumento de peticiones de memoriadurante la ejecución de una consulta o comando supone una posible reduccióndel rendimiento.

Reconfiguración dinámicaAdaptive Server 12.5 modifica el modo en que Adaptive Server asignamemoria.

Elemento Límite de la versión 12.0 Límite de la versión 12.5 Nuevo intervalo

Número de loginspor servidor (SUID)

64 K 2 mil millones más 32 K De –32.768 a 2 milmillones

Número de usuariospor base de datos

48 K 2 mil millones menos1.032.193

De –32.768 a 16.383; de1.048.577 a 2 mil millones

Número de grupospor base de datos

16 K 1032193 De 16.384 a 1.048.576

Page 19: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 1 Nuevas funciones en Adaptive Server versión 12.5

5

Asignación dinámica de memoriaAdaptive Server versión 12.5 le permite asignar la memoria física total deforma dinámica. La mayoría de los parámetros de configuración que consumenmemoria eran estáticos en las versiones anteriores de Adaptive Server y elservidor tenía que reiniciarse cuando era necesaria más memoria. Por ejemplo,cuando se modificaba el parámetro number of user connections (número deconexiones de usuario), tenía que reiniciar el servidor para que el cambiotuviera efecto. La mayoría de los parámetros de configuración que afectan a lamemoria son ahora dinámicos y no es necesario reiniciar el servidor para queéstos tengan efecto. Para ver una lista completa de los parámetros de configuraciónque han pasado de estáticos a dinámicos consulte la Tabla en el capítulo 2,"Cambios de sistema en Adaptive Server versión 12.5".

Cambios en el modo de asignar la memoriaEn versiones anteriores de Adaptive Server, el tamaño del caché deprocedimientos se basaba en un porcentaje de la memoria disponible. Una vezconfigurado el caché de datos, se asignaba el resto al caché de procedimientos.En Adaptive Server 12.5, se especifican ambos cachés de datos y deprocedimientos como valores absolutos. Los tamaños de los cachés no varíana menos que los vuelva a configurar.

El nuevo parámetro de configuración, max memory (memoria máxima), lepermite definir un valor máximo, que no puede superar la configuración dememoria física total de Adaptive Server.

Si actualiza Adaptive Server a la versión 12.5 o posterior, se utilizan los valoresde configuración de la versión anterior de Adaptive Server para calcular losnuevos valores para el parámetro procedure cache size (tamaño de caché deprocedimientos). Adaptive Server calcula el tamaño del caché de datospredeterminado durante la actualización y escribe este valor en el archivo deconfiguración. Si los tamaños calculados de los cachés de datos o deprocedimientos son inferiores a los tamaños predeterminados, se restablecenlos valores predeterminados. Durante la actualización, se define el valor totallogical memory (memoria lógica total) especificado en el archivo deconfiguración para el parámetro max memory.

Page 20: Nuevas funciones en Adaptive Server versión 12.5

Procedimientos almacenados y funciones SQLJ (Java)

6

Procedimientos almacenados y funciones SQLJ (Java)Adaptive Server versión 12.0 permite instalar clases de Java en la base de datosy hacer referencia a éstas como tipos de datos en SQL. La versión 12.0 tambiénpermite invocar métodos estáticos de Java directamente desde SQL.

Adaptive Server versión 12.5 amplía estas capacidades. En esta versión puedeajustar métodos estáticos de Java en nombres SQL y generar procedimientosalmacenados o funciones SQLJ que puede utilizar como si fuesen procedimientosalmacenados Transact-SQL o funciones incorporadas. Estas nuevas funciones:

• Permiten a los métodos de Java devolver parámetros de salida y conjuntosde resultados al entorno de llamada.

• Permiten aprovechar las funciones de la sintaxis SQL tradicional,metadatos y permisos.

• Cumplen con la Parte 1 de la especificación del estándar ANSI SQLJ.

• Le permiten utilizar métodos de Java como procedimientos y funcionesSQLJ en el servidor, cliente y en cualquier base de datos de terceroscompatible con el estándar SQLJ.

XML en la base de datosAdaptive Server versión 12.5 suministra una introducción de XML, el lenguajede marcado extensible, adecuado para el intercambio de datos por ser máscompleto y ordenado que SGML. XML le permite definir sus propias etiquetasorientadas a aplicaciones. Esta función, escrita en Java en su totalidad, tambiénincluye métodos para el almacenamiento de documentos XML y su generacióna partir de datos SQL. Puede:

• Seleccionar datos sin formato de Adaptive Server, mediante XQL ymostrarlos como documento XML. También puede almacenardocumentos XML y los datos extraídos de estos en Adaptive Server, asícomo utilizar Adaptive Server para buscar documentos XMLalmacenados en el World Wide Web.

• Utilizar el analizador XML de Java que proporciona Sybase, que lepermite instalar el motor de consulta como programa independiente odentro de Adaptive Server. También puede utilizar cualquier motor deconsultas compatible con SAX 2.0.

Page 21: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 1 Nuevas funciones en Adaptive Server versión 12.5

7

• Utilizar las consultas de ejemplo de la clase OrderXML, una aplicación Javade ejemplo suministrada por Sybase, que utiliza documentos XML paraconsultar, analizar y guardar información sobre pedidos de clientes. Laclase OrderXML se ha escrito con el fin específico de procesar documentosXML para buscar información sobre pedidos.

• Utilice la clase ResultSetXML, una subdivisión de la clase JXml, que Sybasesuministra para ayudarle a generar un documento XML que represente unconjunto de resultados SQL. También puede tener acceso y actualizardocumentos XML que representen conjuntos de resultados SQL. Puedegenerar un ResultSet tanto en el entorno cliente como dentro de AdaptiveServer, así como buscarlo y almacenarlo.

El operador union en las vistasLas versiones anteriores de Adaptive Server, no admitían los operadores unionen las instrucciones select que definan vistas. Adaptive Server versión 12.5elimina esta restricción.

Puede utilizar esta función, por ejemplo, para dividir una tabla de gran tamañoen subtablas. Los datos pueden dividirse entre las subtablas en función de losintervalos de valores de datos de una de las columnas. A continuación, puededefinir una vista que utilice union all para combinar selects de todas las subtablasen un solo grupo de resultados. Después puede ejecutar instrucciones select enla vista que contiene el operador union.

Por ejemplo, puede crear vistas que hagan referencia a tablas de Oracle, DB2e Informix; además de tablas locales.

Servicios de directorio de Internet (LDAP)El protocolo ligero de acceso a directorios (LDAP, Lightweight DirectoryAccess Protocol) es un estándar del sector para el acceso a servicios de directorio,que permite a los componentes consultar información de un servidor LDAPque almacena y gestiona información de servidor, usuario y software utilizadaen toda la empresa o en una red.

Page 22: Nuevas funciones en Adaptive Server versión 12.5

Secure Socket Layer (SSL)

8

Los directorios LDAP constituyen una infraestructura que proporciona:

• Una alternativa basada en red del archivo de interfaces tradicional deSybase.

• Una única vista jerárquica de información que incluye usuarios, software,recursos, redes, archivos, etc.

Los archivos libtcl.cfg y libtcl64.cfg sirven para especificar un nombre deservidor LDAP, número de puerto, DIT base, nombre de usuario y contraseñapara autenticar la conexión a un servidor LDAP. LDAP define el protocolo decomunicación y el contenido de los mensajes intercambiados entre los clientesy servidores.

Secure Socket Layer (SSL)SSL es un estándar del sector para el envío de datos cifrados en el nivel de cableo socket mediante conexiones de redes seguras.

La implantación del protocolo SSL por parte de Adaptive Server aporta variosniveles de seguridad.

• El servidor se autentica, es decir, se comprueba que es el servidor con elque intenta conectar y se inicia una sesión SSL cifrada antes de transmitirlos datos.

• Una vez establecida la sesión SSL, el cliente que solicita una conexiónpuede enviar su nombre de usuario y contraseña a través de la conexiónsegura cifrada.

• Una comparación de la firma digital del certificado del servidor puededeterminar si los datos recibidos por el cliente se modificaron antes dealcanzar el destinatario correspondiente.

Adaptive Server implementa el protocolo SSL en formato de filtro que seañade a las líneas master y query del archivo de interfaces. La direccióny números de puerto donde Adaptive Server acepta conexiones se puedenconfigurar de modo que pueda especificar varias redes, protocolos distintosy puertos alternativos.

Page 23: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 1 Nuevas funciones en Adaptive Server versión 12.5

9

Enterprise Java Beans (EJB Server)Sybase proporciona Enterprise JavaBean (EJB) Server, un servidor de transacciónde componentes, con la versión 12.5 de Adaptive Server. EJB Server suministrael marco para la creación, lanzamiento y gestión de la lógica empresarial denivel medio en formato de EJB en un entorno de varios niveles.

En un entorno de tres niveles, el cliente proporciona la lógica de interfaz deusuario, las normas empresariales se separan en el nivel medio y la base dedatos es el depósito de información. El cliente no tiene acceso directo a la basede datos. En vez de esto, el cliente llama al servidor EJB Server en el nivelmedio que, a su vez, obtiene acceso a la base de datos.

EJB Server se ha diseñado con el fin de que resida en el mismo equipo quela base de datos a la que sirve. Si los servidores están en el mismo equipo,EJB Server puede comunicarse con la base de datos mediante el controladorJDBC de gran velocidad y memoria compartida de Adaptive Server. Esteenfoque garantiza:

• Comunicaciones y transferencias de datos de gran velocidad, incluso paragrandes volúmenes de datos

• Transmisiones de datos seguras porque la transferencia de información dela base de datos al nivel medio no tiene lugar en la red

Compatibilidad con sistema externo de archivosAdaptive Server permite el acceso de SQL a directorios de sistema de archivosy sus archivos subyacentes. La sintaxis admitida es:

create [existing] table nombre_archivoexternal file at "ruta_directorio" column delimiter "delimitador"

La ruta del directorio debe hacer referencia al directorio del sistema dearchivos que sea visible y en el que pueda buscar Adaptive Server. Una tablaproxy establece la correspondencia de nombres de columnas a atributos dearchivos que existen en el directorio. Cada columna, excepto la última, estádelimitada por el delimitador especificado en la sintaxis de creación de la tabla.Puede especificar un máximo de 16 bytes. Si no especifica ninguno, se utilizael carácter tabulador como predeterminado.

Page 24: Nuevas funciones en Adaptive Server versión 12.5

Control de acceso en el nivel de fila

10

Control de acceso en el nivel de filaLos propietarios de bases de datos y tablas pueden restringir el acceso a las filasde datos de una tabla mediante la definición de reglas de acceso y la vinculaciónde dichas reglas a la tabla. El acceso a los datos se puede controlar todavía másmediante la definición de contextos de aplicación y creación de disparadoresde login.

Estas funciones se pueden agrupar bajo el concepto de control de acceso en elnivel de fila. El control de acceso en el nivel de fila permite al propietario de labase de datos o tabla controlar las filas de una tabla a las que pueden teneracceso los usuarios, en función de su identificación o perfil y los privilegiosque tiene el usuario del nivel de aplicación. Adaptive Server requiere controlde acceso en el nivel de fila para todos los lenguajes de tratamiento de datos(DML), que evitan que los usuarios omitan el control de acceso para llegara los datos.

Las reglas de dominio permiten a los propietarios de tablas controlar losvalores que pueden especificar los usuarios en una columna concreta queutiliza un tipo de datos base o cualquier columna que utiliza un tipo de datosdefinido por el usuario. Las reglas se aplican durante inserciones yactualizaciones.

Adaptive Server activa la protección en el nivel de fila mediante reglas deacceso. Las reglas de acceso se aplican en operaciones select, update y delete.Adaptive Server aplica las reglas de acceso en todas las columnas que se leenen una consulta, incluso si las columnas no se incluyen en la lista select. Dichode otro modo, en una consulta dada, Adaptive Server aplica la regla de dominioen la tabla que se actualiza y la regla de acceso en las tablas que se leen. Lautilización de reglas de acceso no supone ningún deterioro del rendimiento.

Page 25: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 1 Nuevas funciones en Adaptive Server versión 12.5

11

Suspensión y reanudación de actualizaciones a basesde datos

El comando quiesce database ...hold le permite retrasar las actualizacionesa una o más bases de datos mientras lleva a cabo un comando disk unmirrorringo copia externa de cada base de datos. Durante este tiempo no se realizanoperaciones de escritura, por lo tanto, la copia externa (la segunda imagen) dela base de datos es idéntica a la imagen principal. Mientras la base de datos estáen el estado de inactividad, pueden realizarse transacciones de lectura de labase de datos. Para reanudar las actualizaciones a la base de datos, ejecute elcomando quiesce database...release. Puede ejecutar el comando quiesce databasedesde una conexión isql y, a continuación, iniciar otra conexión isql y ejecutarel comando quiesce database...release.

La sintaxis del comando quiesce database es:

quiesce database nombre_etiqueta hold nombre_basededatos[, nombre_basededatos][for external copy]

oquiesce database nombre_etiqueta release

Donde nombre_etiqueta es una etiqueta definida por el usuario que identificaa la lista de bases de datos que desea retener o liberar y nombre_basededatoses el nombre de la base de datos para la que va a suspender las actualizaciones.

Compatibilidad con Java.netCon java.net, Adaptive Server versión 12.5 le permite crear aplicaciones deredes Java en el equipo cliente desde el servidor. Puede crear una aplicacióncliente de red Java que se conecte a cualquier servidor, lo que permitea Adaptive Server funcionar como un cliente para los servidores externos.Puede:

• Descargar documentos desde cualquier dirección URL en el World WideWeb.

• Enviar mensajes de correo electrónico desde el servidor.

• Conectar a un servidor externo para guardar o editar un documento.

• Tener acceso a documentos en XML.

Sybase admite ciertas clases java.net y suministra ejemplos que le permitenconfigurar java.net como proceso cliente o servidor.

Page 26: Nuevas funciones en Adaptive Server versión 12.5

Copias de seguridad comprimidas

12

Copias de seguridad comprimidasAdaptive Server Enterprise versión 12.5 proporciona una función que lepermite comprimir bases de datos y diarios de transacciones mediante elservidor Backup Server. Esta nueva función forma parte del comando dumpa través de su nueva opción compress.

La sintaxis parcial para el comando dump database ... compress y dumptransaction ... compress es la siguiente:

dump database nombrebdto [compress::[nivel_compresión::]]dispositivo_extracción…[stripe on [compress::[nivel_compresión::]]dispositivo_extracción] …

dump database nombrebdto [compress::[nivel_compresión::]]dispositivo_extracción…[stripe on [compress::[nivel_compresión::]]dispositivo_extracción] …

El nivel predeterminado de compresión es 1. No obstante, puede utilizar lavariable nivel_compresión para especificar un nivel máximo de compresión 9a fin de ajustarse a los distintos requisitos y especificaciones.

Adaptive Server también le permite cargar bases de datos y diarios detransacciones volcados con la opción dump ... compress, mediante la opciónload ... compress.

La sintaxis parcial para el comando load database .. compress y load transaction.. compress es la siguiente:

load database nombrebdfrom [compress::]dispositivo_extracción…[stripe on compress::dispositivo_extracción]…

load transaction nombrebdfrom [compress::]dispositivo_extracción…[stripe on compress::dispositivo_extracción]…

Page 27: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 1 Nuevas funciones en Adaptive Server versión 12.5

13

Compatibilidad con UnicharAdaptive Server versión 12.5 añade dos tipos de datos nuevos que utilizan lacodificación UTF-16 de caracteres Unicode. Los nuevos tipos de datos unichary univarchar son independientes de los tipos de datos ya existentes char yvarchar, aunque su comportamiento es idéntico. Unichar es un tipo de datos deancho fijo, que no acepta valores nulos (al igual que char) y univarchar es untipo de datos de ancho variable que acepta valores nulos (al igual que varchar).El conjunto de funciones de cadenas incorporadas que funcionan en char yvarchar también funcionarán en unichar y univarchar.

No obstante, tenga en cuenta que, a diferencia de char y varchar, los nuevostipos de datos unichar y univarchar sólo almacenan caracteres UTF-16 y notienen ninguna relación con el identificador de grupo de caracteres u ordende clasificación predeterminado de la opción de configuración de ASE. Parautilizar estos tipos de datos nuevos, debe definirse UTF-8 como juego decaracteres predeterminado para el servidor.

La principal ventaja de estos nuevos tipos de datos es su eficacia. Los tipos decaracteres UTF-16 hacen un uso del espacio aproximadamente un 33% máseficaz que UTF-8 para caracteres asiáticos.

Cada carácter unichar/univarchar requiere dos bytes para su almacenamiento;una columna de unichar/univarchar está formada por valores Unicode de16 bits. El siguiente comando crea una tabla con una columna unichar paravalores Unicode que requiere 20 bytes para su almacenamiento:

Create table unitbl (unicol unichar (10))

La longitud de una columna unchar/univarchar está limitada por el tamaño deuna página de datos en Adaptive Server, al igual que ocurre en las columnaschar/varchar.

Modificaciones a CISAdaptive Server Enterprise versión 12.5 incluye muchas mejoras a ComponentIntegration Services.

Component Integration Services es totalmente compatible con las nuevasfunciones de Adaptive Server Enterprise descritas en este manual.

• Optimización de consultas distribuidas

• Administración de transacciones

• Acceso a datos ampliado

Page 28: Nuevas funciones en Adaptive Server versión 12.5

Utilidad de depuración de SQL

14

• Asignación de nombres/contraseñas de login a sistemas remotos

• XNL: nuevos límites ampliables

• Compatibilidad con Unicode: tipos de datos nuevos que admiten el juegode caracteres Unicode

• LDAP

• SSL

• El operador union en las vistas

Para obtener más información sobre la utilización de estas funciones con CIS,consulte el Manual del usuario de Component Integration Services.

Utilidad de depuración de SQLsqldbgr es una utilidad de línea de comandos que depura procedimientosalmacenados y disparadores. Puede:

• conectar sqldbgr a una tarea

• definir, activar y desactivar puntos de interrupción

• pasar por una tarea línea a línea

• entrar y salir de procedimientos

• separar sqldbgr de los procedimientos almacenados o disparadores una vezllevada a cabo la depuración.

Utilidad de conversiónAdaptive Server versión 12.5 amplía el tamaño de página de las bases de datosde usuario de 2 K a 4 K, 8 K o 16 K. Puede utilizar la utilidad de conversiónpara convertir los datos de un servidor 12.5 con un tamaño de página lógica aotro servidor 12.5 con un tamaño distinto. La utilidad de conversión conviertetodos los datos de tablas de usuario y los siguientes objetos al servidor dedestino:

• valores predeterminados

• tipos de datos definidos por el usuario

• reglas

Page 29: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 1 Nuevas funciones en Adaptive Server versión 12.5

15

• tablas

• vistas

• disparadores

• índices

• procedimientos almacenados

• procedimientos almacenados extendidos

• usuarios

• logins

• roles

• servidores remotos

Page 30: Nuevas funciones en Adaptive Server versión 12.5

Utilidad de conversión

16

Page 31: Nuevas funciones en Adaptive Server versión 12.5

17

C A P Í T U L O 2 Cambios de sistema en AdaptiveServer versión 12.5

Este capítulo describe los cambios de sistema introducidos en AdaptiveServer versión 12.5.

Incluye los siguientes temas:

Cambios de sistema de la versión 12.5Este apartado resume los cambios de la versión 12.5:

• "Cambios en los parámetros de configuración", en la página 17

• "Cambios en los comandos de Transact-SQL", en la página 20

• "Procedimientos de sistema nuevos y modificados", en la página 22

• "Cambios en las bases de datos y tablas de sistema", en la página 23

• "Nuevas palabras reservadas", en la página 26

• "Cambios en la documentación", en la página 27

Cambios en los parámetros de configuraciónEste apartado describe los parámetros de configuración nuevos y modificadosde la versión 12.5.

Cambios de sistema de la versión 12.5 17

Cambios que pueden afectar a las aplicaciones ya instaladas 28

Page 32: Nuevas funciones en Adaptive Server versión 12.5

Cambios de sistema de la versión 12.5

18

Parámetros de configuración nuevos

La tabla 2-1 resume los parámetros de configuración nuevos.

Tabla 2-1: Parámetros de configuración nuevos

Parámetro Función

allocate max shared memory Determina si Adaptive Server asigna toda la memoria especificada por elcomando max memory al iniciar o sólo la cantidad de memoria requeridapor el parámetro de configuración.

cis bulk insert array size Controla el tamaño de la matriz cuando realiza una transferencia masiva dedatos de un servidor Adaptive Server a otro. Durante la transferencia, CIScoloca las filas en el buffer de forma interna y pide a Bulk Library de OpenClient que las transfiera en bloque.

dynamic allocation on demand Determina cuándo se asigna la memoria para los cambios en losparámetros de configuración de memoria dinámica.

enable enterprise java beans Activa o desactiva EJB Server.

enable file access Activa o desactiva el acceso mediante tablas proxy al Sistema externo dearchivos. Requiere una licencia para ASE_XFS.

enable full-text search Activa o desactiva los servicios Enhanced Full-Text Search. Requiere unalicencia para ASE_EFTS.

enable row level access control Activa o desactiva el control de acceso en el nivel de fila.

enable ssl Activa o desactiva la seguridad basada en sesión SSL (Secure Sockets Layer).

enable surrogate processing Activa o desactiva el procesamiento y mantiene la integridad de paressubrogados en datos Unicode.

enable unicode normalization Activa o desactiva la normalización de caracteres Unilib.

heap memory per user Especifica la memoria de pila por usuario para Adaptive Server.

max memory Especifica la cantidad máxima de total logical memory (memoria lógicatotal) que puede configurar para que la asigne Adaptive Server.

number of engines at startup Especifica el número de motores que se muestran en línea durante el inicio.

number of java sockets Especifica la cantidad máxima de memoria física total que puedeconfigurar para que la asigne Adaptive Server.

procedure cache size Especifica el tamaño del caché de procedimientos en páginas de 2 K.

total logical memory Especifica la cantidad de memoria configurada para que Adaptive Serverla utilice.

total physical memory Muestra la cantidad de memoria utilizada por Adaptive Server en unmomento determinado.

Page 33: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 2 Cambios de sistema en Adaptive Server versión 12.5

19

Cambios en los parámetros de configuración

La tabla 2-2 resume los cambios en los parámetros de configuración existentes.

Tabla 2-2: Parámetros de configuración modificados

La tabla 2-3 enumera los parámetros de configuración que eran estáticos enversiones anteriores y son dinámicos en la versión actual.

Tabla 2-3: Parámetros de configuración modificados de estáticosa dinámicos

Parámetro Modificación

procedure cache percent Eliminado de Adaptive Server versión 12.5. En esta versión, el tamaño del caché deprocedimientos se determina con procedure cache size.

total memory Muestra la memoria lógica total para la configuración actual de Adaptive Server.

size of process object heap Parámetro general del servidor y no asignado a una tarea concreta.

max cis remote connections Eliminado de Adaptive Server versión 12.5. El número máximo se determinamediante el número máximo de descriptores de archivos disponibles para un únicoproceso en un sistema operativo concreto.

Parámetro de configuración Parámetro de configuraciónaddition network memory number of pre-allocated extents

audit queue size number of user connections

cpu grace time number of worker processes

deadlock pipe max messages open index hash spinlock ratio

default database size open index spinlock ratio

default fill factor percent open object spinlock ratio

disk i/o structures partition groups

errorlog pipe max messages partition spinlock ratio

max cis remote connections permission cache entries

memory per worker process plan text pipe max messages

number of alarms print recovery information

number of aux scan descriptors process wait events

number of devices size of global fixed heap

number of dtx participants size of process object heap

number of java sockets size of shared class heap

number of large i/o buffers size of unilib cache

number of locks sql text pipe max messages

number of mailboxes statement pipe max messages

number of messages tape retention in days

number of open databases time slice

number of open indexes user log cache spinlock ratio

number of open objects

Page 34: Nuevas funciones en Adaptive Server versión 12.5

Cambios de sistema de la versión 12.5

20

Cambios en los comandos de Transact-SQLEste apartado describe los comandos de Transact-SQL nuevos y modificadosen la versión 12.5.

Comandos de Transact-SQL nuevos

La tabla 2-4 resume los comandos de Transact-SQL nuevos.

Tabla 2-4: Comandos nuevos

Comandos de Transact-SQL modificados

La tabla 2-5 resume los cambios realizados en los comandos de Transact-SQLexistentes.

Tabla 2-5: Comandos modificados

Comando Función

create function(SQLJ)

Crea una función SQLJ, que corresponde a un método Javacon un nombre SQL.

drop function Elimina una función SQLJ de la base de datos.

Comando Modificación

disk init Permite utilizar los siguientes especificadores de unidad para el tamaño de dispositivo:"k" o "K" (kilobytes), "m" o "M" (megabytes) y "g" o "G" (gigabytes).

disk reinit Permite utilizar los siguientes especificadores de unidad para el tamaño de dispositivo:"k" o "K" (kilobytes), "m" o "M" (megabytes) y "g" o "G" (gigabytes).

create table Admite el nuevo parámetro size_in_bytes, que le permite especificar el tamaño de unacolumna Java-SQL dentro de una fila.

alter table Permite utilizar los siguientes especificadores de unidad para el tamaño de dispositivo:"k" o "K" (kilobytes), "m" o "M" (megabytes) y "g" o "G" (gigabytes).

alter database Permite utilizar los siguientes especificadores de unidad para el tamaño de dispositivo:"k" o "K" (kilobytes), "m" o "M" (megabytes) y "g" o "G" (gigabytes).

set Puede actualizar un máximo de 1.024 columnas en la cláusula set mediante literales,variables o expresiones devueltas de una subconsulta.

select...for browse No puede utilizar la opción select...for browse en tablas que contengan más de 255 columnas.

select select_listinto...at pathname

Le permite especificar una tabla proxy como destino de un comando select into. La secciónat indica que la tabla nueva es una tabla proxy.

compute Si una cláusula compute incluye una cláusula group by:

• La cláusula compute no puede contener más de 255 añadidos.

• La cláusula group by no puede contener más de 255 columnas.

Las columnas incluidas en una cláusula compute no pueden ser superiores a 255 bytes.

like La cadena de caracteres indicada por la clave like no puede ser superior a 255 bytes.

Page 35: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 2 Cambios de sistema en Adaptive Server versión 12.5

21

Opciones nuevas y modificadas del comando setLa tabla 2-6 resume las opciones nuevas y modificadas para el comando set.

Tabla 2-6: Opciones nuevas y modificadas del comando set

Funciones de Transact-SQL nuevas

La tabla 2-7 resume las funciones de Transact-SQL nuevas.

Tabla 2-7: Funciones de Transact-SQL nuevas

declare cursor Puede incluir un máximo de 1.024 columnas en una cláusula update de una instruccióndeclare cursor de un cliente.

+ operator Devuelve cadenas de resultados de un tamaño máximo de 16.384 bytes.

dump database Incluye sintaxis de compresión para la realización de un volcado comprimido.

load database Incluye sintaxis de compresión para la carga de un volcado comprimido.

dump transaction Incluye sintaxis de compresión para la realización de un volcado comprimido.

load transaction Incluye sintaxis de compresión para la carga de un volcado comprimido.

print statement La longitud total de la cadena de formato + el resultado no puede exceder 1 K. No obstante,Adaptive Server no genera un mensaje de error si supera esta longitud.

create procedure(SQLJ)

Crea un procedimiento almacenado SQLJ, que corresponde a un método Java con un nombreSQL. Adaptive Server ejecuta un procedimiento almacenado SQLJ del mismo modo queejecuta un procedimiento almacenado de Transact-SQL.

create access rule Le permite crear una regla que determine cómo se conecta un usuario a un servidor.

union in view Ya está permitido utilizar el comando union en una vista.

Comando Modificación

Opción set Descripción

stringsize Limita el número de bytes presentados cuando Adaptive Serverdevuelve una representación imprimible de un objeto Java. Elvalor predeterminado es 50 bytes.

Función Descripción

lockscheme() Devuelve el esquema de bloqueo del objeto especificado enformato de cadena.

pagesize() Devuelve el tamaño de página, en bytes, para el objetoespecificado.

Page 36: Nuevas funciones en Adaptive Server versión 12.5

Cambios de sistema de la versión 12.5

22

Procedimientos de sistema nuevos y modificadosEste apartado describe los procedimientos de sistema nuevos y lasmodificaciones realizadas a procedimientos existentes.

Nuevos procedimientos de sistema

La tabla 2-8 resume los procedimientos de sistema nuevos.

Tabla 2-8: Nuevos procedimientos de sistema

Procedimientos de sistema modificados

La tabla 2-9 resume los cambios realizados a los procedimientos de sistemaexistentes.

Tabla 2-9: Procedimientos de sistema modificados

Procedimiento desistema Función

sp_ssladmin Añade, elimina o presenta una lista de certificados deservidor para Adaptive Server.

sp_extengine Le permite iniciar o parar EJB Server, o ver información deestado sobre EJB Server, desde la línea de comandos.

Procedimiento Modificación

sp_addserver Añade funciones para los nuevos límites de AdaptiveServer.

sp_dropserver Añade funciones para los nuevos límites de AdaptiveServer.

sp_havrfy Añade funciones para los nuevos límites de AdaptiveServer.

sp_helpjava Admite la nueva palabra clave depends, que le permitever una lista de objetos de base de datos que dependende la clase Java o JAR especificada.

sp_configure sp_configure le permite especificar el valor de losparámetros de configuración en especificadores deunidad. Los especificadores de unidad son p o P parapáginas, m o M para megabytes y g o G para gigabytes.

sp_serveroption Admite la nueva cláusula external engine auto start, queactiva o desactiva el inicio automático de EJB servercada vez que se inicia Adaptive Server. El valorpredeterminado es true.

Page 37: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 2 Cambios de sistema en Adaptive Server versión 12.5

23

Nuevos programas de utilidadesLa tabla 2-10 resume los nuevos programas de utilidades añadidos a AdaptiveServer versión 12.5.

Tabla 2-10: Nuevos programas de utilidades

Cambios en los programas de utilidades actualesLa tabla 2-11 resume los programas de utilidades modificados en AdaptiveServer versión 12.5.

Tabla 2-11: Cambios en los programas de utilidades

Cambios en las bases de datos y tablas de sistemaEste apartado describe las modificaciones realizadas a las bases de datos ytablas de sistema para hacerlas compatibles con las funciones de la versión 12.5.

Bases de datos nuevas

No hay bases de datos nuevas para esta versión de Adaptive Server.

Utilidad Función

ddlgen Herramienta basada en Java que genera definiciones para objetos de nivel de servidory base de datos en Adaptive Server.

certpk12 Exporta o importa un archivo PKCS #12 a un archivo de certificados y una claveprivada.

certreq Crea una petición de certificado de servidor y la clave privada correspondiente. Estautilidad se puede utilizar en modo interactivo o puede suministrar todos los parámetrosopcionales en la línea de comandos.

dataxtr Herramienta de conversión de datos GUI para transferir datos y esquemas de base dedatos desde las bases de datos de versiones anteriores de Adaptive Server a las basesde datos de la versión 12.5.

certauth Convierte una petición de certificado de servidor en un certificado firmado por unaautoridad de certificado (CA).

pwdcrypt Crea e imprime una contraseña LDAP cifrada en el archivo libtcl.cfg.

sqldbgr Le permite depurar texto de sql que se esté ejecutando en Adaptive Server.

Utilidad Modificación

optdiag optdiag y Adaptive Server deben ser de la misma versión. Esdecir, no puede utilizar la utilidad optdiag de la versión 12.0con la versión 12.5 de Adaptive Server.

Page 38: Nuevas funciones en Adaptive Server versión 12.5

Cambios de sistema de la versión 12.5

24

Tablas de sistema nuevas

No hay tablas de sistema nuevas para esta versión de Adaptive Server.

Tablas de sistema modificadas

La tabla 2-12 resume las tablas de sistema que se han modificado en estaversión.

Tabla 2-12: Tablas de sistema modificadas

Para obtener información sobre las tablas de sistema, consulte el Manual dereferencia volumen 4: tablas de sistema.

Cambios en la tabla sysobjects

La tabla 2-13 describe los cambios realizados a la tabla sysobjects. Consulte"sysobjects" en el capítulo de tablas de sistema del Manual de referencia deAdaptive Server Enterprise para obtener más información sobre las columnasutilizadas en sysobjects.

Tabla Modificación

syscolumns Nueva columna status2. Indica el modo de parámetro de un procedimiento almacenado SQLJy el tipo de devolución de una función SQLJ.

Nueva columna accessrule. El identificador de objeto de la regla de acceso en sysprocedures.Consulte "Control de acceso en el nivel de fila" para obtener más información.

sysconstraints Nueva columna spare1. No es para uso de los clientes.syslogins Nueva columna procid. Almacena el disparador de login registrado con la opción login script

en sp_modifylogin.

sysprocesses Nueva columna loggedindatetime. Muestra la hora y fecha de conexión del cliente a AdaptiveServer. Consulte "Control de acceso en el nivel de fila" para obtener más información.

Nueva columna ipaddr. Dirección IP del cliente donde se realiza el inicio de conexión.Consulte "Control de acceso en el nivel de fila" para obtener más información.

sysservers Nueva columna srvcost. Proporciona el coste de la red en milisegundos por el acceso a unservidor mediante una red. Utilizado sólo por el optimizador de consultas de Adaptive Serverpara la evaluación del coste de una consulta cuando se tiene acceso a una tabla proxy, sedefine un valor predeterminado de 1.000 ms.

systypes Nueva columna accessrule. El identificador de objeto de la regla de acceso en sysprocedures.Consulte "Control de acceso en el nivel de fila" para obtener más información.

Page 39: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 2 Cambios de sistema en Adaptive Server versión 12.5

25

Tabla 2-13: Cambios en la tabla sysobjects

Estados modificados en las columnas existentes

La tabla 2-14 resume los cambios realizados a columnas de tablas de sistemaexistentes en esta versión:

Tabla 2-14: Estados modificados en las columnas existentes

Nombre de columna Tipo de datos Descripción

type char(2) F = función SQLJ

sysstat2 int Se han añadido:

• Nuevo bit (0x2000000) que representa un procedimientoalmacenado SQLJ.

• Nuevo bit (0x01000000) que representa una regla de acceso.

• Nuevo bit (0x04000000) que representa una regla de acceso OR.

Nombre de tabla Nombre de columna Tipo de datos antiguo Tipo de datos nuevo

sysalternates altsuid smallint int

suid smallint int

syscolumns colid tinyint smallint

length tinyint int

syscomments colid tinyint smallint

colid2 tinyint smallint

sysconfigures status tinyint int

sysconstraints colid tinyint int

syscurconfigs status smallint int

sysdatabases suid smallint int

sysloginroles srid smallint int

suid smallint int

syslogins suid smallint int

sysobjects uid smallint int

sysprocedures sequence smallint int

sysprocesses gid smallint int

suid smallint int

uid smallint int

sysprotects uid smallint int

sysqueryplans uid smallint int

sysreferences fokey1 ... 16 tinyint smallint

refkey1 ... 16 tinyint smallint

sysremotelogins suid smallint int

Page 40: Nuevas funciones en Adaptive Server versión 12.5

Cambios de sistema de la versión 12.5

26

Nuevas palabras reservadasLas siguientes son las palabras reservadas añadidas en la versión 12.5 deAdaptive Server:

• deterministic

• func

• function

• inout

• new

• out

• output

• returns

• stringsize

• syb_terminate

Debe modificar todos los nombres de bases de datos que correspondan apalabras reservadas nuevas para poder actualizar el servidor desde una versiónanterior. Puede modificar los nombres de tablas, vistas y columnas o utilizaridentificadores delimitados. Una vez que pase a la versión 12.5, no puedeutilizar objetos de base de datos cuyos nombres correspondan a palabrasreservadas nuevas hasta que modifique los procedimientos, los archivos desecuencias de comandos SQL y las aplicaciones.

El Manual de referencia volumen 1: conceptos básicos enumera todas laspalabras reservadas de la versión 12.5. Las palabras reservadas no puedenutilizarse como nombres de objetos o columnas.

sysroles id smallint int

syssrvroles lrid smallint int

systypes uid smallint int

length tinyint int

sysusermessages uid smallint int

sysusers gid smallint int

uid smallint int

suid smallint int

Nombre de tabla Nombre de columna Tipo de datos antiguo Tipo de datos nuevo

Page 41: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 2 Cambios de sistema en Adaptive Server versión 12.5

27

Variables globales nuevasLa tabla 2-15 resume las variables globales para los límites de logins, usuariosy grupos del servidor.

Tabla 2-15: Variables globales nuevas

Cambios en la documentaciónSe han realizado los siguientes cambios en la documentación de AdaptiveServer:

• Administración y control de Adaptive Server Enterprise ya no estádisponible.

• El Manual de utilidades ya no está formado por dos volúmenes, uno paraUNIX y otro para Windows NT. Ha pasado a ser un manual genérico queincluye todas las utilidades con independencia de la plataforma.

Nombre de la variable Lo que presenta Valor

@@minuserid Id de usuario mínimo –32768

@@maxuserid Id de usuario máximo 2147483647

@@invaliduserid Id de usuario incorrecto –1

@@invalidusid Id de usuario de servidor incorrecto –2

@@guestuserid Id de usuario guest 2

@@maxsuid Id de usuario de servidor máximo 2147483647

@@minsuid Id de usuario de servidor mínimo –32768

@@guestsuid Id de usuario de servidor guest –1

@@mingroupid Id de grupo mínimo 16384

@@maxgroupid Id de grupo máximo 1048576

@@probesuid Id de usuario de servidor sonda 2

@@maxpagesize Muestra el tamaño de página del servidor 2.048, 4.096, 8.128, o 16.384

Page 42: Nuevas funciones en Adaptive Server versión 12.5

Cambios que pueden afectar a las aplicaciones ya instaladas

28

Cambios que pueden afectar a las aplicacionesya instaladas

Este apartado describe los cambios de sistema introducidos en Adaptive Serverversión 12.5 que pueden afectar a las aplicaciones ya instaladas si va a actualizaruna versión anterior. Los temas tratados son los siguientes:

• "Palabras clave de Transact-SQL nuevas", en la página 28

• "Columnas anchas y truncado de datos", en la página 28

• "Cambios que pueden afectar a las aplicaciones cliente-servidor", en lapágina 29

• "Número máximo de expresiones en una instrucción select", en lapágina 30

Palabras clave de Transact-SQL nuevasConsulte las palabras reservadas añadidas en la versión 12.5 de AdaptiveServer en "Nuevas palabras reservadas", en la página 26.

Columnas anchas y truncado de datosLas versiones anteriores de Adaptive Server tenían un límite de caracteres decolumna de 255 bytes. La versión 12.5 de Adaptive Server le permite crearcolumnas mediante char, varchar, binary y varbinary que pueden tener una longitudmáxima de 16.294 bytes, en función del tamaño de página lógica que utilice elservidor. Debido a esto, los datos truncados en el carácter 255 en versionesanteriores de Adaptive Server ya no lo están. Si la aplicación dependía de estetruncado, el conjunto de resultados recibido puede no ser exacto. En el siguienteejemplo, col1 y col2 tienen 200 caracteres cada uno y col3 tiene 255 caracteres.

select * from t1 where col1 + col2 = col3

Si col1 y col2 tienen 200 caracteres cada uno, el resultado de su concatenaciónes una cadena de 400 caracteres. Las versiones anteriores de Adaptive Servertruncaban esta cadena en 255 caracteres y la suma de col1 y col2 podríacorresponder a col3. No obstante, en la versión 12.5 de Adaptive Server, elproducto de col1 y col2 es 400 caracteres y nunca correspondería a col3, quetiene una longitud de 255 caracteres.

Page 43: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 2 Cambios de sistema en Adaptive Server versión 12.5

29

Las expresiones binarias y de caracteres pueden generar un resultado con unmáximo de 16.384 bytes de longitud. Los datos que superan esta longitud setruncan.

Cambios que pueden afectar a las aplicaciones cliente-servidor

Uso de Open Client con los nuevos límites de Adaptive Server

Adaptive Server y Open Client interactúan en función de cómo determine lascapacidades de Open Client. La capacidades corresponden a funciones queadmiten una conexión cliente-servidor. En concreto, hacen referencia a lostipos de peticiones que envía una aplicación en una conexión concreta y lostipos de respuestas de servidor que devuelve un servidor en una conexiónconcreta. Para poder utilizar Open Client con los límites más amplios quepermite Adaptive Server 12.5, debe activar la capacidad Open Client paradichos límites. Consulte la información sobre activación de capacidad de tablasanchas en la documentación de Open Client.

DB Library no puede utilizar los límites más amplios de Adaptive Server 12.5

En función de la versión de Open Client que utilice, puede que tenga que seguirlos pasos que se detallan a continuación:

Adaptive Server yOpen Client utilizan laversión 12.5

No debería experimentar ningún problema si tanto la versión de AdaptiveServer como de Open Client es 12.5. Siga los siguientes pasos para utilizarOpen Client 12.5 con Adaptive Server 12.5:

1 Vuelva a vincular la aplicación Open Client con las bibliotecas 12.5.

2 Defina el nuevo número de versión con CS_VERSION.

3 Si utiliza JConnect, vuelva a conectar los controladores.

Adaptive Server12.5 con versionesanteriores de OpenClient

• Si utiliza una versión anterior de la aplicación Open Client con AdaptiveServer 12.5 y ha vuelvo a vincular su aplicación con Open Client 12.5,aunque no ha modificado la versión de las bibliotecas, las funciones de laversión anterior funcionarán correctamente pero los nuevos límites noestarán activados. Adaptive Server envía los datos según los límitesanteriores a la versión 12.5 y truncará los datos que sean superiores a éstos.

• Si utiliza una versión anterior de Open Client con Adaptive Server 12.5pero no ha vuelvo a vincular las bibliotecas, Adaptive Server envía losdatos en función de la versión anterior, con las mismas restricciones quese detallaron anteriormente.

Page 44: Nuevas funciones en Adaptive Server versión 12.5

Cambios que pueden afectar a las aplicaciones ya instaladas

30

Open Clientconectado a unservidor AdaptiveServer remoto

Si se conecta a un servidor Adaptive Server de la forma que se describe acontinuación, Open Client no recibe datos anchos:

Figura 2-1: Open Client conectado a un servidor Adaptive Serverremoto

En este ejemplo, Open Client se conecta a Adaptive Server 12.5 mediantecapacidades 12.5, aunque dado que la base de datos que se consulta estáubicada en un servidor 12.0, los datos devueltos utilizan los límites de laversión 12.0 y los que los superen quedarán truncados.

Si utiliza una versión anterior de Open Client con Adaptive Server

Las versiones anteriores de Open Client no podían recibir más de 255 bytespor columna de Adaptive Server. Si utiliza versiones anteriores de Open Clientcon Adaptive Server versión 12.5, Adaptive Server truncará los datos hasta los255 bytes y generará un aviso.

Las versiones anteriores de Open Client funcionan correctamente conAdaptive Server versión 12.5 si no utiliza los límites nuevos (columnas y filasmás anchas, tamaños de páginas lógicas superiores, etc.)

Número máximo de expresiones en una instrucción selectAdaptive Server versión 12.5 no tiene un límite explícito de número de expresionesen una instrucción select. El límite lo define la memoria de sistema disponible.

Open Client12.5

AdaptiveServer 12.5

AdaptiveServer 12.0

Page 45: Nuevas funciones en Adaptive Server versión 12.5

31

C A P Í T U L O 3 Nuevas funciones y cambiosdel sistema en Adaptive Serverversión 12.0

Este capítulo explica las nuevas funciones y cambios del sistemaintroducidos con Sybase Adaptive Server Enterprise versión 12.

Además de mejorar la facilidad de uso y el rendimiento generales,Adaptive Server versión 12 introduce varias nuevas funciones autorizadaspara uso especializado. Entre éstas se incluyen:

• Uso de Java en Adaptive Server Enterprise

• Sybase Failover para entornos de alta disponibilidad

• Administración de transacciones distribuidas

• Seguridad avanzada

Antes de utilizar cualquiera de estas funciones, debe adquirir la licenciade la función y configurar dicha función con el sistema de administraciónde licencias SySAM (consulte el Manual de instalación para obtenerinstrucciones detalladas). Para adquirir una o más funciones autorizadas,póngase en contacto con su representante de ventas local.

Page 46: Nuevas funciones en Adaptive Server versión 12.5

Nuevas funciones de la versión 12

32

Nuevas funciones de la versión 12Las nuevas funciones y cambios del sistema en Adaptive Serverversión 12 son:

Categoría Nombre

Disponibilidad y facilidad de uso "Sybase Failover para entornos de alta disponibilidad", en la página 33

"Reconstrucción de índices", en la página 35

"Copia de seguridad y restauración de alto rendimiento", en la página 35

"Cintas sin rebobinado", en la página 36

"Compatibilidad con el sistema de archivos UNIX", en la página 36

"Modificación del esquema de una tabla existente con alter table", en lapágina 37

"Suspensión de actualizaciones de base de datos con quiesce database", en lapágina 37

"Desconexión de los motores de Adaptive Server", en la página 38

"Información de procesos configurable por el usuario", en la página 38

"Rango de números de identificación para tablas", en la página 39

"Base de datos de diagnóstico", en la página 39

Rendimiento y productividad "Uso de Java en Adaptive Server Enterprise", en la página 40

"Número de tablas en una consulta", en la página 41

"Mejoras en el procesamiento y optimización de las consultas", en lapágina 42

"Uniones ANSI", en la página 43

"Ejecución dinámica de Transact-SQL", en la página 44

"Mejoras de los tipos de datos text e image", en la página 45

"Planes abstractos", en la página 45

"Desactivación de disparadores", en la página 46

"Particiones de caché", en la página 47

Procesamiento distribuido "Administración de transacciones distribuidas", en la página 47

"Mejoras en Component Integration Services (CIS)", en la página 48

Seguridad "Seguridad de red", en la página 49

"Seguridad de login definido por el usuario", en la página 50

"Identificación concreta", en la página 54

Cambios del sistema "Cambios del sistema en la versión 12", en la página 55

Page 47: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

33

Sybase Failover para entornos de alta disponibilidadUn cluster de alta disponibilidad incluye dos equipos que están configuradosde manera que si uno de los equipos (o aplicación) se colapsa, el segundoequipo asume la carga de trabajo de ambos. Cada uno de estos equiposrecibe el nombre de nodo del cluster de alta disponibilidad. Generalmente,se utiliza un cluster de alta disponibilidad en un entorno que debe estarsiempre disponible, por ejemplo, un sistema bancario al que se debanconectar los clientes constantemente los 365 días del año.

El producto Sybase Failover permite que Adaptive Server funcione en uncluster de alta disponibilidad en una configuración activo-activo. Es decir,ambos nodos del cluster incluyen los servidores Adaptive Serveradministrando cargas de trabajo independientes y son capaces de asumirla carga de trabajo del otro en el caso de error. El servidor Adaptive Serverque asume la carga de trabajo se denomina nodo secundario y el servidorAdaptive Server que falla es el nodo primario. Juntos se les conoce comoservidores acompañantes. El movimiento de un nodo al otro se llamaconmutación por error. Una vez que el nodo primario está preparadopara reanudar su carga de trabajo, se le mueve a su nodo original. Estemovimiento se conoce como conmutación por recuperación. Losclientes conectados al servidor Adaptive Server que falla restablecenautomáticamente las conexiones de red por medio del segundo equipo.

Puede configurar Sybase Failover para una configuración asimétricao simétrica. En una configuración asimétrica, el servidor Adaptive Serverprimario realiza el trabajo de las operaciones diarias, mientras que el servidorAdaptive Server secundario está preparado para asumir el trabajo duranteun error del sistema o un mantenimiento programado. El nodo secundarioes un servidor Adaptive Server independiente y puede tener sus propiasaplicaciones en ejecución. La figura 3-1 describe una configuraciónasimétrica:

Page 48: Nuevas funciones en Adaptive Server versión 12.5

Sybase Failover para entornos de alta disponibilidad

34

Figura 3-1: Configuración asimétrica en un sistema de altadisponibilidad

Una configuración simétrica consiste en dos servidores Adaptive Servertotalmente funcionales en ejecución en dos equipos independientes, consus propios dispositivos del sistema, bases de datos del sistema, bases dedatos de usuario e logins de usuarios. No obstante, en el caso de unaconmutación por error, cualquiera de los servidores Adaptive Server actúacomo nodo primario o secundario del otro Adaptive Server. La figura 3-2describe una configuración simétrica:

Figura 3-2: Configuración simétrica en un sistema de altadisponibilidad

Para obtener información sobre cómo ejecutar Sybase Failover en unsistema de alta disponibilidad, consulte Cómo utilizar Sybase Failoveren un sistema de alta disponibilidad.

Page 49: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

35

Reconstrucción de índicesEn Adaptive Server 12, puede utilizar el comando reorg rebuild parareconstruir los índices individuales mientras que la tabla es accesible a lasactividades de lectura y actualización. Para obtener detalles, consulte elManual de administración del sistema y la descripción de reorg en elManual de consulta de Adaptive Server.

Nuevas funciones de Backup ServerLas siguientes funciones son nuevas para Backup Server:

• Copia de seguridad y restauración de alto rendimiento

• Cintas sin rebobinado

Copia de seguridad y restauración de alto rendimientoCuando inicie Backup Server con el comando de la utilidad backupserver,puede utilizar el parámetro -m para mejorar el rendimiento de los comandosde volcado y carga al configurar más memoria compartida para BackupServer. El parámetro -m especifica la cantidad máxima de memoriacompartida utilizada por Backup Server. También debe configurar elsistema operativo para garantizar que la cantidad de memoria compartidaestá disponible para Backup Server. Tras completar una operación devolcado o carga, se liberan los segmentos de memoria compartida.

Nota: La configuración de más memoria compartida mejora el rendimientodel volcado y la carga sólo si no se alcanzan los límites de rendimiento dela configuración del hardware. El aumento del valor de -m puede noprovocar la mejora del rendimiento cuando se realice un volcado a undispositivo de cinta lento, como QIC, pero puede mejorarlo visiblementecuando se realice el volcado a un dispositivo más rápido, como DLT.

Para obtener detalles sobre la utilización de Backup Server, consulte el elmanual de utilidades para su plataforma y el Manual de administración delsistema.

Page 50: Nuevas funciones en Adaptive Server versión 12.5

Compatibilidad con el sistema de archivos UNIX

36

Cintas sin rebobinadoEn las versiones anteriores de Adaptive Server, Backup Server rebobinabala cinta antes de realizar cada operación de volcado. En la versión 12, lacinta se coloca al final de los datos válidos de volcado, lo que ahorratiempo cuando se quiere realizar varias operaciones de volcado. Paraobtener más detalles, consulte el Manual de administración del sistema.

Compatibilidad con el sistema de archivos UNIXCon las versiones anteriores de Adaptive Server, Sybase no recomendabala colocación de dispositivos de bases de datos en archivos del sistemaoperativo UNIX. No se podía garantizar la integridad de los datos en talesdispositivos, porque la escritura en el archivo se almacenaba en el bufferdel sistema de archivos UNIX. Adaptive Server no podía saber cuándo unaactualización se reflejaba en el medio físico, por lo que no podía recuperarlas bases de datos en el dispositivo en determinados casos de error delsistema. Por esta razón, se necesitaban las particiones originales UNIXpara garantizar la integridad de los dispositivos de bases de datos.

Adaptive Server versión 12 introduce un nuevo valor dsync para los archivosde dispositivo de bases de datos, que controla si la escritura en esos archivosse almacena en buffer. Cuando el valor dsync está activado, Adaptive Serverabre un archivo de dispositivo de bases de datos con el indicador UNIXdsync. El indicador dsync garantiza que la escritura en el archivo deldispositivo ocurre directamente en el medio físico de almacenamiento,y Adaptive Server puede recuperar los datos del dispositivo en el caso deun error de sistema.

Para obtener más información sobre el indicador dsync, vea las entradas enel Manual de consulta para disk init, disk reinit, sp_deviceattr o sp_helpdevice.

Page 51: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

37

Modificación del esquema de una tabla existente conalter table

Adaptive Server 12 incluye nueva sintaxis para alter table que le permiteañadir, eliminar o modificar las columnas de una tabla. alter table...modifyle permite modificar el tipo de datos, longitud, esquema de bloqueo o valorpredeterminado de una columna. alter table también le permite añadir,eliminar o modificar una columna IDENTITY y añadir una columna nullo non-null.

alter table incluye la siguiente sintaxis para modificar el esquema de una tabla:

alter table table_name[add column_name datatype [identity | null |

not null] [, column_name datatype [identity |null | not null]]][drop column_name [, column_name]

[modify column_name {[data_type][[null] | [not null]]}[, column_name datatype [null | not null]]]

Donde table_name es la tabla que desea modificar y datatype es el tipo dedatos de la columna modificada. Lo siguiente cambia el tipo de datos de lacolumna type de la tabla titles de char(12) a varchar(20) y hace que aceptevalores NULL:

alter table titlesmodify type varchar(20) null

Suspensión de actualizaciones de base de datos conquiesce database

Adaptive Server versión 12 le proporciona el nuevo comando quiescedatabase para suspender temporalmente las actualizaciones de las bases dedatos. Es posible que desee suspender las actualizaciones de las bases dedatos para usar una utilidad externa de copia de seguridad de bases dedatos o para separar una base de datos de sus reflejos por motivos deinformes.

Para obtener más información sobre esta función, vea las páginas dequiesce database en el Manual de consulta.

Page 52: Nuevas funciones en Adaptive Server versión 12.5

Desconexión de los motores de Adaptive Server

38

Desconexión de los motores de Adaptive ServerPuede cambiar dinámicamente el número de motores en uso por AdaptiveServer con el comando dbcc engine para desconectar o conectar un motor.Esto le permite al administrador del sistema reconfigurar los recursos dela CPU según fluctúen los requisitos de procesamiento en el tiempo.

Para obtener información sobre la utilización de dbcc engine (offline), veael Capítulo 16, "Administración de servidores multiprocesador", en elManual de administración del sistema.

Información de procesos configurable por el usuarioEl comando set incluye opciones que le permiten asignar a cada cliente unnombre individual, el nombre del equipo y el nombre de la aplicación.Esto resulta útil para diferenciar entre los clientes de un sistema en el quemuchos clientes se conectan a Adaptive Server utilizando igual nombre,nombre del equipo o nombre de la aplicación. La sintaxis parcial para elcomando set es:

set [clientname client_name | clienthostname host_name |clientapplname application_name]

Donde client_name es el nombre que se le asigna al cliente, host_name esel nombre del equipo desde el que se conecta el cliente y application_namees la aplicación que se conecta a Adaptive Server. Estos parámetros sealmacenan en las columnas clientname, clienthostname, clientapplname dela tabla sysprocesses.

Para obtener más información, consulte el capítulo "Administración delogins y usuarios de bases de datos de Adaptive Server" del Manual deadministración del sistema.

Page 53: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

39

Rango de números de identificación para tablasLa columna identity contiene un número de identificación único, generadopor Adaptive Server, para cada fila de una tabla. Debido a la manerapredeterminada en la que el servidor genera los números de identificación,puede encontrar amplios intervalos en ellos. El parámetro identity_gap leproporciona control sobre los números de identificación, y los posiblesintervalos entre ellos, para una tabla específica.

Se puede utilizar este parámetro al crear una tabla con create table o selectinto. Para cambiar el rango de identificación, utilice identity_gap consp_chgattribute. Para cambiar la configuración del rango de identificaciónde una tabla, utilice sp_help.

Para obtener detalles sobre la utilización de identity_gap, consulte elManual de administración del sistema y las descripciones de loscomandos y procedimientos del sistema en el Manual de consulta deAdaptive Server.

Base de datos de diagnósticoEl Soporte técnico de Sybase puede crear la base de datos sybdiagdb en susistema por motivos de depuración. Esta base de datos contiene datos deconfiguración de diagnóstico. Los clientes no deben utilizarla.

Se han añadido las siguientes opciones configname a sp_helpconfig para suutilización con la base de datos sybdiagdb:

• number of ccbs es el número de bloques de control de punto de acciónconfigurable disponibles para ayudar en la depuración.

• caps per ccb es el número máximo de puntos de acción configurablesque pueden definirse de forma simultánea dentro de un punto deacción configurable.

• average cap size es una estimación de la cantidad de bytes dememoria que serán necesarios para almacenar la informaciónasociada con un punto de acción configurable típico.

Nota: Se pueden utilizar las nuevas opciones con el Soporte técnico deSybase, sólo por razones de depuración, con la base de datos sybdiagdb.

Page 54: Nuevas funciones en Adaptive Server versión 12.5

Uso de Java en Adaptive Server Enterprise

40

Uso de Java en Adaptive Server EnterpriseAdaptive Server versión 12 proporciona un entorno de tiempo deejecución para Java, lo que significa que puede ejecutar código Java en elservidor. La capacidad de Adaptive Server para Java le proporcionanuevas y eficaces maneras de administrar y almacenar datos y lógica,utilizando un lenguaje que es portátil y ampliamente disponible.

• Puede utilizar el lenguaje de programación Java como parte integralde Transact-SQL.

• Puede reutilizar el código Java en las diferentes capas de la aplicación(cliente, nivel medio o servidor) y utilizarlas de la manera que leresulte más razonable.

• Java le proporciona un lenguaje más eficaz que los procedimientosalmacenados para crear la lógica en la base de datos.

• Las clases de Java se convierten en tipos de datos enriquecidos definidospor usuario.

• Los métodos de las clases de Java proporcionan nuevas funcionesa las que se puede acceder desde SQL.

• Se puede utilizar Java en la base de datos sin poner en peligro laintegridad, seguridad y robustez de la misma. La utilización de Javano altera el comportamiento de las instrucciones SQL existentesu otros aspectos del comportamiento relacional de la base de datosajenos a Java.

Posibilidades del uso de Java en Adaptive ServerEl uso de Java en Adaptive Server le proporciona:

• Funciones definidas por el usuario en Java (UDF)

• Clases de Java como tipos de datos en SQL

Funciones definidas por el usuario en Java

Puede instalar las clases de Java en la base de datos de Adaptive Servery llamar después a los métodos de éstas, tanto desde el sistema de SQLcomo desde los sistemas cliente.

Page 55: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

41

Los métodos de un lenguaje orientado a objetos se corresponden con lasfunciones de un lenguaje de procedimiento. Puede llamar a los métodosde Java como UDF en, por ejemplo, las listas select y las cláusulas where.Puede utilizar los métodos de otras fuentes, así como los que haya creadoy probado.

Clases de Java como tipos de datos

Puede instalar clases puras de Java en un sistema de SQL y después utilizarlasde manera natural como tipos de datos en SQL. Esta posibilidad añade unmecanismo completo de extensión de tipos de datos orientados a objetosen SQL. Los objetos que se crean y almacenan con este dispositivo sepueden transferir fácilmente a cualquier entorno que tenga Java habilitado,ya sea otro sistema de SQL o un entorno Java independiente.

Esta posibilidad de utilizar clases de Java en la base de datos tiene dos usosdiferentes pero que se complementan:

• Proporciona un mecanismo de extensión de tipos para SQL, quepuede utilizar para datos creados y procesados con SQL.

• Proporciona una posibilidad de datos persistentes para Java, quepuede utilizar para almacenar datos en SQL que se crean y procesanprincipalmente en Java. El uso de Java en Adaptive Server le proporcionauna ventaja distintiva comparado con los dispositivos tradicionales deSQL: No necesita asignar los objetos de Java en tipos de datosescalares de SQL, ni almacenarlos como cadenas binarias sin tipo.

Número de tablas en una consultaHa aumentado el número de tablas de usuario y tablas de trabajo que sepuede utilizar en una consulta sobre las versiones anteriores de AdaptiveServer. En las versiones anteriores, una consulta y las vistas utilizadas enella podían hacer referencia a un máximo de 16 tablas de usuario, y elnúmero de tablas de trabajo que se podían crear era de 12. El nuevo límitees de 50 tablas de usuario y 14 tablas de trabajo. Los límites en el númerode comprobaciones permitidas de la integridad referencial (192) y el númerode subconsultas permitidas en una consulta (16) no han cambiado.

Page 56: Nuevas funciones en Adaptive Server versión 12.5

Mejoras en el procesamiento y optimización de las consultas

42

Puede que necesite restablecer el número del parámetro de configuraciónde los descriptores auxiliares de búsqueda si aumenta el número de lastablas referenciadas en las consultas.

Para obtener información sobre cómo optimizar las consultas cuando seincluye un gran número de tablas, consulte el Capítulo 7, "Métodos deacceso y cálculo de costes de las consultas para uniones y subconsultas",en el Manual de rendimiento y mejoras.

Para obtener información sobre el restablecimiento de los descriptores debúsqueda, consulte el número de descriptores auxiliares de búsqueda en elCapítulo 17, "Definición de los parámetros de configuración", en elManual de administración del sistema.

Mejoras en el procesamiento y optimizaciónde las consultas

Adaptive Server versión 12 introduce varias mejoras en el procesamientode las consultas.

Uniones de fusiónLas versiones anteriores de Adaptive Server realizan todas las consultas deunión utilizando uniones de bucle anidado. La versión 12 añade las unionesde fusión como método de ejecución de consultas para uniones de igualdad.Las uniones de fusión pueden reducir notablemente los tiempos de ejecuciónde la consulta, especialmente para las uniones que implican varias tablasgrandes. Como valor predeterminado, las uniones de fusión no estánactivadas. Pueden habilitarse para todo el servidor o para una sesiónindividual.

Para obtener información sobre la configuración de las uniones de fusión,consulte enable sort-merge joins and JTC en el Capítulo 17, "Definición delos parámetros de configuración", del Manual de administración delsistema. Para obtener información sobre las uniones de fusión y elprocesamiento de las consultas, consulte el Capítulo 7, "Métodos deacceso y cálculo de costes de las consultas para uniones y subconsultas",en el Manual de rendimiento y mejoras.

Page 57: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

43

Mejoras en el coste de las consultasLos siguientes cambios ayudan a mejorar la exactitud del coste deloptimizador y proporcionan rutas adicionales para la ejecución de lasconsultas:

• Se puede aplicar el cierre transitivo a las uniones

• La factorización y transformación del predicado puede mejorar elcoste de las consultas que utilizan or

• Optimización especial para los caracteres comodines de apertura enlas cadenas

Estas características se describen en el Capítulo 5, "Definición deloptimizador de consultas", del Manual de rendimiento y mejoras.

Uniones ANSILas versiones anteriores de Adaptive Server sólo proporcionaban la sintaxispara una unión Transact-SQL, que incluía los símbolos =* y *= paraespecificar una unión derecha o izquierda respectivamente. AdaptiveServer 12 incluye sintaxis ANSI para unir tablas o vistas, lo que le permiteescribir:

• Uniones internas, en las que la tabla unida incluye sólo las filas de lastablas interna y externa que cumplen las condiciones de la cláusula on.El conjunto de resultados de una consulta que incluye una unióninterna no incluye ninguna fila especificada como nula para las filasde la tabla externa que no cumplan las condiciones de la cláusula on.La sintaxis para una unión interna ANSI es:

select select_listfrom table1 inner join table2on join_condition

Por ejemplo:

select au_id, titles.title_id, title, pricefrom titleauthor inner join titleson titleauthor.title_id = titles.title_idand price > 15

Page 58: Nuevas funciones en Adaptive Server versión 12.5

Ejecución dinámica de Transact-SQL

44

• Uniones externas, en las que la tabla unida incluye sólo las filas de latabla externa cumplan o no las condiciones de la cláusula on. Si unafila no cumple las condiciones de la cláusula on, los valores de la tablainterna se almacenan en la tabla unida como valores nulos. Lacláusula where de una unión externa ANSI limita las filas que seincluyen en el resultado de la consulta. La sintaxis ANSI también lepermite escribir uniones externas anidadas. La sintaxis para una uniónexterna ANSI es:

select select_listfrom table1 {left | right} [outer] join

table2on predicate[join restriction]

Por ejemplo:

select au_fname, au_lname, pub_namefrom authors left join publisherson authors.city = publishers.city

Sybase recomienda que las aplicaciones utilicen uniones externasANSI porque especifican sin ambigüedades si la cláusula on o wherecontiene el predicado, que resulta ambiguo cuando se utilizan unionesexternas de Transact-SQL.

Para obtener más información, consulte el Manual del usuario deTransact-SQL.

Ejecución dinámica de Transact-SQLAdaptive Server versión 12 proporciona una extensión al comandoexecute que permite a los usuarios definir comandos de Transact-SQLdinámicamente en el tiempo de ejecución. Las aplicaciones y procedimientospueden utilizar la nueva sintaxis de execute() en los casos en los que losnombres de las tablas, columnas, etc. resultan desconocidos hasta que seejecuta la aplicación o el procedimiento.

Para obtener más información sobre esta función, vea las páginas deexecute en el Manual de consulta.

Page 59: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

45

Mejoras de los tipos de datos text e imageAdaptive Server versión 12 mejora el formato de almacenamiento para lostipos de datos text e image. Los cambios introducidos en el formato dealmacenamiento son transparentes para las aplicaciones del usuario final,pero permiten que Adaptive Server realice un acceso aleatorio al consultarlos datos. Esto mejora el rendimiento de la consulta con respecto aversiones anteriores, que tenían que acceder a los datos text e image demodo secuencial.

El nuevo formato de almacenamiento para los tipos de datos text e imagetambién permite que Adaptive Server realice una recuperación previa enmodo asíncrono de los datos en una agrupación de buffers existente. Puedeajustar la configuración de recuperación previa para los datos text e imageutilizando el nuevo parámetro sp_configure, text prefetch size. Consulte elManual de administración del sistema para obtener más informaciónsobre text prefetch size.

Planes abstractosAdaptive Server pude capturar el texto de la consulta y guardar un planabstracto para una consulta en una nueva tabla del sistema denominadasysqueryplans. Utilizando un método hash rápido, las consultas SQLentrantes se pueden comparar con el texto de la consulta almacenada,y si se encuentra un valor coincidente, se utiliza el plan abstracto guardadopara ejecutar la consulta.

Un plan abstracto describe el plan de ejecución para una consulta utilizandoun lenguaje creado a tal efecto. Este lenguaje contiene operadores paraespecificar las opciones y acciones que puede generar el optimizador.Por ejemplo, para especificar una búsqueda de índice en la tabla titles,utilizando el índice title_id_ix, el plan abstracto indica:

(i_scan title_id_ix titles)

Los planes abstractos proporcionan una manera de que los administradoresdel sistema y los ajustadores del rendimiento protejan el rendimientogeneral de un servidor ante los cambios en los planes de consulta. Puedensurgir cambios en los planes de consulta debido a:

• Actualizaciones del software de Adaptive Server que afectan a lasopciones del optimizador.

Page 60: Nuevas funciones en Adaptive Server versión 12.5

Desactivación de disparadores

46

• Nuevas funciones de Adaptive Server que cambian los planes deconsulta.

• Cambios en las opciones de mejora como el grado de paralelismo,la partición de tablas o la creación de índices.

Otros usos incluyen:

• La capacidad de buscar determinados tipos de planes, como lasbúsquedas de tabla o los reformateos.

• La capacidad de determinar los planes que utilizan determinadosíndices.

• La capacidad de especificar planes completos o parciales paraconsultas con un rendimiento pobre.

Para obtener información sobre los planes abstractos, consulte elCapítulo 21, "Introducción a los planes abstractos", del Manual derendimiento y mejoras.

Desactivación de disparadoresLa carga de una base de datos desde un volcado anterior hace que losdisparadores definidos en ella se disparen, lo que incrementa la cantidadde tipo necesario para cargar la base de datos. Adaptive Server 12 introducela opción disable trigger del comando alter table para desactivar losdisparadores en una base de datos antes de cargarla, reduciendo el tiemporequerido para la carga de la base de datos. Utilice alter table... enabletrigger para reactivar los disparadores una vez haya completado la cargade la base de datos. alter table... disable trigger utiliza la siguiente sintaxis:

alter table [database_name.[owner_name].]table_name{enable | disable} trigger [trigger_name]

Page 61: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

47

Particiones de cachéEn un entorno de varios motores, cada tarea que necesita acceder al cachéde datos mantiene un spinlock sobre el caché mientras accede a él. Con unnúmero de motores y una velocidad de transacción altos, la contenciónpara el spinlock del caché de buffer puede ralentizar el rendimiento.Adaptive Server versión 12 le permite dividir cada caché en particiones,cada una con su propio spinlock. Consulte "Configuración de cachés dedatos" en el Manual de administración del sistema para obtenerinformación sobre la configuración de las particiones de caché. Consulte"Utilización y rendimiento de la memoria" y "Control del rendimiento consp_sysmon" del Manual de rendimiento y mejoras para obtenerinformación sobre cómo comprobar la contención del spinlock del caché yotras consideraciones a tomar en cuenta cuando se utilizan particiones decaché.

Administración de transacciones distribuidasAdaptive Server versión 12 introduce varias funciones de administraciónde transacciones distribuidas para:

• Hacer que Adaptive Server tenga total compatibilidad con elprotocolo X/Open XA cuando actúa como administrador de recursos,sin requerir servicios adicionales como XA-Server

• Proporcionar compatibilidad para las transacciones distribuidascoordinadas por Microsoft Distributed Transaction Coordinator(MSDTC)

• Garantizar la confirmación o deshacer de modo consistente para todaslas transacciones que actualicen los datos de Adaptive Server versión12 mediante llamadas a procedimientos remotos (RPC) y ComponentIntegration Services (CIS)

• Proporcionar el marco de trabajo para admitir en el futuro protocolosadicionales de administración de transacciones distribuidas

Estas posibilidades están disponibles como una función autorizadaindependiente de Adaptive Server. Consulte Cómo utilizar lascaracterísticas de la Administración de transacciones distribuidas (DTM)en Adaptive Server para obtener más información.

Page 62: Nuevas funciones en Adaptive Server versión 12.5

Mejoras en Component Integration Services (CIS)

48

Mejoras en Component Integration Services (CIS)Adaptive Server versión 12 incluye estas nuevas funciones de ComponentIntegration Services (CIS):

• Nuevos comandos dbcc: dbcc cis showcaps y dbcc cis setcapspermiten examinar y modificar las posibilidades del servidor.

• Bases de datos proxy: una base de datos proxy se crea conteniendotablas proxy. Los metadatos para las tablas proxy se importandirectamente desde la ubicación remota que contiene las tablas reales.Estos metadatos se utilizan entonces para crear tablas proxy dentrode la base de datos proxy.

• Sincronización de las tablas proxy: las tablas proxy de una base dedatos proxy se pueden volver a sincronizar utilizando el comandoalter database.

• Uso de Java en la base de datos

• Compatibilidad para uniones ANSI

• Límite de uniones de 50 tablas

• Nuevas variables globales

• Compatibilidad para logins de servidor remoto

• Administración de transacciones de confirmación en dos fases

• Compatibilidad para ejecutar de inmediato

• Nuevos comandos set

• Bases de datos proxy del sistema para admitir los clusters de altadisponibilidad

• Sintaxis create table

• Sintaxis create existing table

• create proxy_table

• Llamadas a procedimientos remotos (RPC) como tablas proxy

Consulte el Manual del usuario de Component Integration Services paraobtener más información.

Page 63: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

49

Seguridad de redLa seguridad de red para Adaptive Server se consigue a través de la capade control de seguridad (SCL). Las funciones de seguridad compatiblescon Adaptive Server se suministran por medio de uno o más controladoresde seguridad que funcionan con un mecanismo de seguridad determinado.

Las versiones de Adaptive Server anteriores a la 12 sólo podían obtenerinformación de los servicios de red leyendo el archivo de interfaces en eldirectorio de la versión de Sybase. Adaptive Server 12 puede acceder a lainformación de servicios de red, como el nombre de equipo y el númerode puerto, en otras fuentes además del archivo de interfaces. AdaptiveServer envía y recibe esta información de configuración mediante la capade control del directorio (DCL), que define un servicio de directorio genéricopara que las aplicaciones accedan a la información de los servicios de red.

Los controladores para los proveedores de servicios específicos reciben elnombre de controladores de directorio. Si no está instalado ningún controladorde directorio, la DCL obtiene la información de los servicios de red delarchivo de interfaces. Los controladores de directorios son específicospara la plataforma. Por ejemplo, el controlador de directorio DCE seimplementa en varias plataformas UNIX, pero el controlador del Registrode NT sólo se implementa en la plataforma NT.

Consideraciones de rendimientoLa utilización de la DCL no debería tener un impacto significativo en elrendimiento. Puede notar algún cambio en el rendimiento cuando se inicieel servidor y se creen las conexiones. Una vez que se inicia el servidor, noexiste impacto en el rendimiento de los puertos de escucha. En las conexionesservidor a servidor, no existe impacto en el rendimiento una vez que seestablece la conexión del controlador del sitio. El rendimiento de la DCLdepende del rendimiento del controlador del directorio.

Page 64: Nuevas funciones en Adaptive Server versión 12.5

Seguridad de login definido por el usuario

50

Funciones de seguridad admitidas en Adaptive Server 12Dependiendo de los mecanismos de seguridad que elija, Adaptive Serverle permite utilizar uno o varios de los siguientes servicios de seguridad:

• Login unificado: Adaptive Server recibe la credencial previamenteautenticada de un usuario (login y contraseña) desde la aplicacióncliente cuando el cliente hace una solicitud del servidor. EntoncesAdaptive Server verifica la credencial con el mecanismo de seguridad,de manera que el usuario sólo suministra una vez un nombre de loginy una contraseña para ganar acceso a Adaptive Server.

• Integridad: Adaptive Server utiliza un algoritmo de integridad demensajes negociado con la aplicación cliente en el momento del loginpara verificar que las comunicaciones de datos del cliente no han sidoalteradas. Adaptive Server "firma" todas las comunicaciones de datossalientes para que el cliente pueda verificar su integridad.

Para obtener detalles sobre cómo configurar el sistema para utilizar lasfunciones de seguridad, consulte el Capítulo 10, "Uso de la seguridadbasada en red", del Manual de administración del sistema.

Seguridad de login definido por el usuarioLa seguridad de login definido por el usuario (UDLS) le proporcionamayor control sobre las funciones relativas a la seguridad de AdaptiveServer. En Adaptive Server 12, el Oficial de seguridad del sistema puede:

• Añadir un mayor número de logins y roles de usuario que el que eraposible en versiones anteriores

• Especificar un número máximo permitido de veces que se puedeescribir una contraseña no válida para un login o una función antesde que se bloqueen automáticamente

• Bloquear y desbloquear las funciones manualmente

• Garantizar que todas las contraseñas de usuario contienen al menosun dígito

• Especificar la longitud mínima de las contraseñas requerida para todoel servidor o para un login o una función específicos

Page 65: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

51

• Mostrar toda la información relativa a la seguridad de los logins y lasfunciones

• Asociar un valor de caducidad de contraseña con un login o unafunción específicos

• La auditoría forma parte de las funciones de seguridad de AdaptiveServer, pero no se ha actualizado para la versión 12.0, por lo que nohay cambios de documentación para la auditoría.

Las funciones de la UDLS se describen con detalle en el Manual deadministración del sistema y el Manual de consulta de Adaptive Server.

Aumento del número máximo de usuarios e loginsSe ha incrementado el número máximo de usuarios e logins por base dedatos. A resultas de estos cambios, podría notar los nuevoscomportamientos a continuación:

• Se pueden utilizar valores negativos para los Id. de usuario (uid).

• El Id. de usuario de servidor (suid) asociado con un grupo o unafunción en sysusers ya no es equivalente a la negación de su Id. deusuario (uid). En Adaptive Server 12.0, cada suid asociado con ungrupo o una función en sysusers se define como –2 (INVALID_SUID).

Definición y cambio del número máximo de intentos de loginLa configuración del número máximo de intentos permitidos de loginproporciona protección contra los intentos de adivinar las contraseñas "porla fuerza" o basados en diccionario. El Oficial de seguridad del sistemapuede especificar un número máximo de intentos consecutivos permitidosde login, tras el cual se bloquea automáticamente el login o la función.El número de intentos fallidos permitido de login se puede configurar paratodo el servidor o para los logins y las funciones individuales. Lasconfiguraciones individuales tienen prioridad sobre la configuración paratodo el servidor.

El número de logins fallidos se almacena en la columna logincount demaster..syslogins. Un login satisfactorio restablece el número de loginsfallidos a 0.

Page 66: Nuevas funciones en Adaptive Server versión 12.5

Seguridad de login definido por el usuario

52

Puede utilizar los siguientes comandos o procedimientos del sistema paradefinir o cambiar el número máximo de intentos de login:

• create role

• alter role

• sp_addlogin

• sp_modifylogin

• sp_configure

Bloqueo y desbloqueo de logins y funcionesSe puede bloquear un login o una función cuando:

• Caduca la contraseña, o

• Se alcanza el número máximo de intentos fallidos de login, o

• El Oficial de seguridad del sistema bloquea el login o la funciónmanualmente.

Puede utilizar los siguientes comandos o procedimientos del sistema parabloquear o desbloquear los logins y las funciones:

• alter role

• dataserver -u

• sp_locklogin

Visualización de la información de contraseñaSe utiliza el procedimiento del sistema sp_displaylogin para mostrar lainformación de contraseña de los logins y las funciones.

Page 67: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

53

Comprobación de las contraseñas en un carácter al menosEl Oficial de seguridad del sistema le puede indicar al servidor que compruebeal menos un carácter o dígito de una contraseña, utilizando el parámetro deconfiguración para todo el servidor check password for digit. Si se configura,este parámetro no afecta a las contraseñas existentes. La comprobación dedígitos está desactivada de forma predeterminada.

Definición y cambio de la longitud mínima de la contraseñaEn versiones anteriores, la longitud mínima de la contraseña era un valorno configurable y no modificable de seis caracteres. En Adaptive Server12.0, puede personalizar las contraseñas para que se adapten a susnecesidades, como utilizar números de identificación personal (PIN)de cuatro dígitos o logins anónimos con contraseñas NULL.

El Oficial de seguridad del sistema puede especificar:

• Una longitud mínima de contraseña obligatoria globalmente

• Una longitud mínima de contraseña por login o por función

El valor de la longitud mínima de contraseña por login o por función tieneprioridad sobre el valor para todo el servidor. La definición de una longitudmínima de contraseña afecta sólo a las contraseñas que se creen tras suconfiguración. No afecta a las contraseñas existentes.

Puede utilizar los siguientes comandos o procedimientos del sistema paradefinir la longitud mínima de contraseña:

• create role

• alter role

• sp_addlogin

• sp_modifylogin

• sp_configure

Page 68: Nuevas funciones en Adaptive Server versión 12.5

Identificación concreta

54

Definición del intervalo de caducidad para una contraseñaLos administradores del sistema y los oficiales de seguridad del sistemapueden:

• Especificar el intervalo de caducidad de una contraseña de login en elmomento de su creación.

• Cambiar el intervalo de caducidad para una contraseña de login.

• Especificar el intervalo de caducidad de una contraseña de función enel momento de su creación.

• Cambiar el intervalo de caducidad para una contraseña de función.

Cuando la contraseña para un login o una función está a punto de caducar,un mensaje de advertencia le pide al usuario que se ponga en contacto conel Oficial de seguridad del sistema.

La caducidad de la contraseña no afectaba a las funciones en versionesanteriores a Adaptive Server 12.0. Por esta razón, en Adaptive Server 12.0la caducidad de contraseña se desactiva para todas las contraseñas defunciones definidas por el usuario ya existentes. Durante la actualización,todas las contraseñas de funciones definidas por el usuario se fijan con unintervalo de contraseña de 0.

Utilice sp_addlogin para definir el intervalo de caducidad de contraseñapara un login nuevo. Utilice sp_modifylogin para cambiar el intervalo decaducidad de un login existente, añadir un intervalo de caducidad decontraseña a un login que no tuviera uno o para eliminar un intervalo decaducidad de contraseña.

Identificación concretaLa identificación concreta permite que Adaptive Server verifique lascadenas de propiedad entre los procedimientos, vistas y disparadores y losobjetos a los que hacen referencia en otras bases de datos. Adaptive Serveridentifica a los usuarios durante una sesión mediante el nombre de login oel Id. de usuario de servidor (suid). Esta identificación se aplica a todas lasbases de datos en el servidor. Cuando el usuario crea un objeto, el servidorasocia tanto el Id. de usuario de base de datos del propietario (uid) y elnombre de login del creador con el objeto en la tabla sysobjects. Estainformación identifica de manera concreta el objeto como perteneciente aese usuario, lo que permite que el servidor reconozca cuándo se puedenconceder implícitamente los permisos sobre el objeto.

Para obtener más información sobre la identificación concreta, consulte elManual de administración del sistema.

Page 69: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

55

Cambios del sistema en la versión 12Esta sección le proporciona un resumen de los cambios de la versión 12,de la siguiente manera:

• "Cambios en los parámetros de configuración", en la página 55

• "Modificaciones en los comandos de Transact-SQL", en la página 57

• "Procedimientos del sistema nuevos y modificados", en la página 59

• "Modificaciones introducidas en las bases de datos y las tablasdel sistema", en la página 61

• "Nuevas palabras reservadas", en la página 63

• "Cambios en la documentación", en la página 63

Cambios en los parámetros de configuraciónEsta sección describe los parámetros de configuración nuevos y modificadosen la versión 12.

Nuevos parámetros de configuración

La tabla 3-1 resume los parámetros de configuración nuevos:

Tabla 3-1: Nuevos parámetros de configuración

Parámetro Función

check password for digit Configura el servidor para que compruebe almenos un carácter o un dígito en una contraseña.

dtm detach timeout period Define la cantidad máxima de tiempo quepermanecen activas las transaccionesdesconectadas en Adaptive Server.

dtm lock timeout period Define en segundos el tiempo máximo que esperaráuna rama de transacciones distribuidas a que esténdisponibles los recursos de bloqueo.

enable dtm Activa o desactiva la función Administración detransacciones distribuidas.

enable HA Habilita la configuración de Adaptive Server paraSybase Failover en un sistema de altadisponibilidad.

enable java Activa o desactiva el uso de Java en el servidor.

Page 70: Nuevas funciones en Adaptive Server versión 12.5

Cambios del sistema en la versión 12

56

Cambios en los parámetros de configuración

La tabla 3-2 resume los cambios introducidos en parámetros deconfiguración ya existentes.

Tabla 3-2: Parámetros de configuración modificados

enable xact coordination Activa o desactiva los servicios de coordinación detransacciones distribuidas de Adaptive Server.

maximum failed logins Define el número máximo de intentos fallidos delogin para logins y funciones en todo el servidor.

minimum password length Especifica un valor de longitud mínima decontraseña para logins y funciones en todo elservidor.

number of dtx participants Define el número total de transacciones remotas queel servicio de coordinación de transacciones deAdaptive Server puede propagar y coordinar en unmomento dado.

size of global fixed heap Especifica el espacio de memoria para lasestructuras internas de datos.

size of process objectfixed heap

Especifica el espacio de memoria para la máquinavirtual Java para los objetos de Java referenciadosdurante una sesión.

size of shared class heap Especifica el espacio de memoria compartida paratodas las clases de Java llamadas a la máquinavirtual Java.

strict dtm enforcement Determina si los servicios de coordinación detransacciones de Adaptive Server forzaránestrictamente las propiedades ACID de lastransacciones distribuidas.

text prefetch size Limita el número de páginas de datos text e imagede las que se puede realizar una recuperaciónprevia en una agrupación de buffers existente.

txn to pss ratio Determina el número total de descriptores detransacción disponibles para el servidor.

xact coordination level Define la longitud de tiempo entre los intentos deresolver las ramas de transacciones propagadas aservidores remotos.

Parámetro Función

Parámetro Cambio

enable cis El valor predeterminado se ha cambiado de 0(inactivo) a 1 (activo).

Page 71: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

57

Modificaciones en los comandos de Transact-SQLEsta sección describe los comandos de Transact-SQL nuevos ymodificados en la versión 12.

Nuevos comandos de Transact-SQL

La tabla 3-3 resume los comandos nuevos de Transact-SQL.

Tabla 3-3: Comandos nuevos

Comandos modificados de Transact-SQL

La tabla 3-4 resume las modificaciones introducidas en los comandos deTransact-SQL ya existentes.

Tabla 3-4: Comandos modificados

Comando Función

quiesce database Suspende y reanuda las actualizaciones de una listaespecífica de bases de datos.

join Indica que la unión utiliza sintaxis ANSI para la unióninterna o externa.

remove java Elimina una o varias clases, paquetes o JAR de Java dela base de datos.

Comando Cambio

alter role Incluye las nuevas opciones lock, unlock y all overrides para cambiar el estado de bloqueo de unafunción.

Incluye las nuevas opciones passwd expiration, max failed_logins y min passwd length para cambiarel intervalo de caducidad de contraseña, la longitud mínima de contraseña y el número máximo delogins fallidos permitidos para una función especificada.

alter table Incluye las nuevas opciones off row e in row para especificar el almacenamiento para las columnasde Java-SQL.

create role Incluye las nuevas opciones lock, unlock y all overrides para configurar el estado de bloqueo de unafunción.

Incluye las nuevas opciones passwd expiration, min passwd length y max failed_logins paraconfigurar el intervalo de caducidad de contraseña, la longitud mínima de contraseña y el númeromáximo de logins fallidos permitidos para una función especificada.

create table Incluye las nuevas opciones off row e in row para especificar el almacenamiento para las columnasde Java-SQL.

dbcc Incluye comandos nuevos para completar las transacciones distribuidas de manera heurística.

Incluye el nuevo comando rebuild_text para reconstruir o crear estructuras internas de datos paralos datos text o image. Adaptive Server utiliza estas estructuras de datos para realizar accesoaleatorio y recuperación previa asíncrona para consultas contrastadas con los datos text o image.

Page 72: Nuevas funciones en Adaptive Server versión 12.5

Cambios del sistema en la versión 12

58

Opciones nuevas y modificadas del comando setLa siguiente tabla resume las opciones nuevas y modificadas para elcomando set:

Tabla 3-5: Opciones nuevas y modificadas del comando set

Nuevas funciones de Transact-SQL

La tabla 3-6 resume las nuevas funciones de Transact-SQL.

Tabla 3-6: Nuevas funciones de Transact-SQL

disk init Incluye la nueva opción dsync para controlar las escrituras en buffer en los dispositivos.

disk reinit Incluye la nueva opción dsync para controlar las escrituras en buffer en los dispositivos.

execute Incluye la nueva sintaxis execute() para ejecutar dinámicamente los comandos de Transact-SQL.

Comando Cambio

Opción de set Descripción

clientapplname Asigna un nombre individual a una aplicación parala sesión actual.

clienthostname Asigna un nombre individual a un equipo para lasesión actual.

clientname Asigna un nombre individual a un cliente para lasesión actual.

strict_dtm_enforcement Determina si Adaptive Server propagarátransacciones a otros servidores que no admiten losservicios de coordinación de transacciones deAdaptive Server.

transactional_rpc Determina si Adaptive Server coordina lasllamadas a procedimientos remotos y laactualización a los datos del servidor remoto.

Función Descripción

license_enabled Devuelve 1 si la licencia de la función está habilitada, 0si no está habilitada, o un valor vacío si especifica unnombre de licencia no válido.

Page 73: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

59

Procedimientos del sistema nuevos y modificadosEsta sección describe los nuevos procedimientos del sistema añadidosy las modificaciones introducidas en los ya existentes.

Nuevos procedimientos del sistema

La tabla 3-7 resume los procedimientos del sistema nuevos:

Tabla 3-7: Nuevos procedimientos del sistema

Procedimientos del sistema modificados

La tabla 3-8 resume los cambios introducidos en procedimientos delsistema ya existentes.

Tabla 3-8: Procedimientos del sistema modificados

Procedimiento del sistema Función

sp_deviceattr Cambia el valor dsync de un archivo del dispositivo de unabase de datos ya existente.

sp_transactions Ofrece información detallada sobre las transaccionesactivas.

sp_companion Realiza operaciones de cluster, como la configuración deAdaptive Server como nodo secundario en un sistema dealta disponibilidad y el desplazamiento de un servidoracompañante de un modo de conmutación por error a otro.sp_companion se ejecuta desde el nodo secundario.

sp_ha_admin Realiza las tareas administrativas que se ocupan del segundopunto de error en servidores Adaptive Server configuradoscon Sybase Failover en un sistema de alta disponibilidad.

sp_helpjava Muestra información sobre las clases y JAR de Javainstaladas en la base de datos.

Procedimiento Cambio

sp_addlogin Especifica el intervalo de caducidad de la contraseña, lalongitud mínima de la contraseña y el número máximo deintentos fallidos de login para un determinado login en elmomento de su creación.

Page 74: Nuevas funciones en Adaptive Server versión 12.5

Cambios del sistema en la versión 12

60

Nuevos programas de utilidadesLa tabla 3-9 describe los nuevos programas de utilidades añadidos aAdaptive Server versión 12.

Tabla 3-9: Nuevos programas de utilidades

sp_displaylogin Muestra los parámetros relativos a la seguridad de loginconfigurados para un login. La sintaxis no ha cambiado; noobstante, la salida muestra la siguiente informaciónadicional:

• Si la cuenta está bloqueada

• La fecha del último cambio de contraseña

• El intervalo de caducidad de la contraseña

• Si la contraseña ha caducado

• La longitud mínima de la contraseña

• El número máximo de intentos fallidos de loginpermitidos antes de que se bloquee el login

• El número actual de logins fallidos

sp_displayroles Muestra los parámetros relativos a la seguridad de loginconfigurados para una función. La salida se ha modificadode la manera descrita para sp_displaylogin.

sp_helpdevice La salida muestra el nuevo valor dsync en la columna"description".

sp_lock La salida muestra el nuevo campo de Id. de propietario debloqueo (loid).

sp_modifylogin Se utiliza para cambiar el intervalo de caducidad de lacontraseña, la longitud mínima de la contraseña y elnúmero máximo de intentos fallidos de login para undeterminado login ya existente.

sp_monitorconfig Muestra estadísticas adicionales de utilización para losdescriptores de transacciones y los participantes DTX.

sp_who La salida muestra el nuevo campo block_xloid, que indicael Id. del propietario del bloqueo de una transacción debloqueo. El antiguo campo blocked en la salida recibe elnuevo nombre de blk_spid.

Procedimiento Cambio

Procedimientodel sistema Función

extractjava (UNIX)extrjava (Windows NT)

Copia una JAR retenida y las clases de Java quecontiene desde Adaptive Server a un archivo cliente.

Page 75: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

61

Modificaciones introducidas en las bases de datos y las tablasdel sistema

Esta sección describe las modificaciones introducidas en las bases de datosy las tablas del sistema para que admitan las funciones de la versión 12.

Nuevas bases de datos

La tabla 3-10 ofrece una lista de las bases de datos que son nuevas en estaversión:

Tabla 3-10: Nuevas bases de datos

Nuevas tablas del sistema

La tabla 3-11 ofrece una lista de las tablas del sistema que son nuevas enesta versión:

Tabla 3-11: Nuevas tablas del sistema

installjava (UNIX)instjava (Windows NT)

Copia una JAR y las clases de Java que contienedesde un archivo cliente a Adaptive Server.

Procedimientodel sistema Función

Base de datos Función

sybdiagdb Contiene los datos de configuración de diagnóstico para lasfunciones de depuración. Su uso está restringido al personaldel Soporte técnico de Sybase y los clientes no debenutilizarla.

Tabla Función

syscolumns Añade las comunas xtype y xdbid. Estas columnas se utilizan exclusivamente en servidoresAdaptive Server habilitados para Java.

syscoordinations (base de datos sybsystemdb exclusivamente.) Contiene información sobre los servidoresAdaptive Server remotos que participan en transacciones distribuidas (participantes remotos)y su estado de coordinación.

sysdevices La columna status utiliza un nuevo bit de control 0x4000 (16384 decimal) para controlar elvalor dsync para el archivo del dispositivo de la base de datos.

sysjars Contiene una fila por cada archivo de almacenamiento de Java retenido en la base de datos.Esta tabla se utiliza exclusivamente en servidores Adaptive Server habilitados para Java.

syslocks Añade la columna loid.

sysprocesses Añade la columna block_xloid. La columna blocked recibe el nuevo nombre de block_xloid.

Page 76: Nuevas funciones en Adaptive Server versión 12.5

Cambios del sistema en la versión 12

62

Tablas del sistema modificadas

La tabla 3-12 ofrece una lista de las tablas del sistema que se hanmodificado en esta versión:

Tabla 3-12: Tablas del sistema modificadas

Para obtener más información sobre las tablas del sistema, vea el Manualde consulta de Adaptive Server.

sysqueryplans Almacena texto de consulta y planes abstractos para una consulta.

syssessions Contiene una fila para cada cliente que se conecta a Adaptive Server con la propiedad deconmutación por error (por ejemplo, isql -Q). Esta tabla sólo se utiliza para los servidoresAdaptive Server que están configurados para Sybase Failover en un sistema de altadisponibilidad.

systransactions (base de datos master exclusivamente.) Contiene información sobre las transacciones deAdaptive Server.

sysxtypes Contiene una fila para cada tipo de dato extendido de Java-SQL. Esta tabla se utilizaexclusivamente en servidores Adaptive Server habilitados para Java.

Tabla Función

Tabla Cambio

sysattributes Almacena información para los parámetros de configuración que definen o modifican elintervalo de caducidad de la contraseña, el número máximo de intentos fallidos de login y lalongitud mínima de la contraseña.

sysconfigures Almacena los valores para todo el servidor definidos con los parámetros de configuraciónminimum password length y maximum failed logins para los logins y las funciones.

syslogins La nueva columna, logincount, indica el número de logins fallidos. Un login satisfactoriorestablece el número de logins fallidos a 0. El tipo de datos de esta columna es int.

syservroles Se han añadido las siguientes columnas:

• pwdate: graba la fecha y hora del último cambio de la contraseña de una función. El tipode datos de esta columna es datetime.

• status: indica el estado de una función. El tipo de datos de esta columna es smallint. Elestado se muestra como un valor numérico que corresponde a una combinación de losestados de caducidad y bloqueo para la función. Los valores son:

0: la función no ha caducado ni está bloqueada2: la función no ha caducado pero está bloqueada4: la función ha caducado pero no está bloqueada6 : la función ha caducado y está bloqueada

sysusers En versiones anteriores, la tabla del sistema sysusers de cada base de datos tenía un índiceagrupado exclusivo en suid. No obstante, en Adaptive Server 12.0 no existe la exclusividad desysusers.suid, por lo que se ha eliminado este índice agrupado.

Page 77: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 3 Nuevas funciones y cambios del sistema en Adaptive Server versión 12.0

63

Nuevas palabras reservadasEl Manual de consulta de Adaptive Server ofrece una lista de todas laspalabras reservadas para la versión 12. Las palabras reservadas no sepueden utilizar como nombres de objetos o columnas.

Debe cambiar todos los nombres de bases de datos que sean nuevaspalabras reservadas antes de poder actualizarse desde una versión anteriordel servidor. Puede cambiar los nombres de tablas, vistas y columnaso utilizar identificadores delimitados. Una vez se haya actualizado a laversión 12, no podrá utilizar objetos de base de datos cuyos nombres seannuevas palabras reservadas hasta que modifique los procedimientos,archivos de secuencias de comandos SQL y aplicaciones.

Cambios en la documentaciónAdaptive Server versión 12 incluye varios manuales nuevos que describenfunciones autorizadas independientemente de Adaptive Server como Java,Alta disponibilidad y Administración de transacciones distribuidas.Consulte "Documentos relacionados", en la página x para ver una brevedescripción de estos manuales.

La información de los dos manuales siguientes se ha cambiado al Manualde administración del sistema y al Manual de rendimiento y mejoras:

• Manual del usuario de las funciones de seguridad

• Manual de administración de seguridad

La información de Configuración de Adaptive Server Enterprise paraUNIX se ha desplazado al Manual de instalación.

La documentación de Adaptive Server ya no incluye los siguientesdocumentos:

• Adaptive Server Enterprise Getting Started

• Introducing Adaptive Server Enterprise

• Master Index to Adaptive Server Documentation

• Navigating Adaptive Server Enterprise Documentation

• La base de datos sybsyntax y el procedimiento sp_syntax en línea

• Quick Reference Card

Page 78: Nuevas funciones en Adaptive Server versión 12.5

Cambios del sistema en la versión 12

64

Cambios que pueden afectar a las aplicaciones existentesEsta sección describe los cambios del sistema introducidos en laversión 12 que pueden afectar a las aplicaciones si se actualiza desde unaversión anterior.

Nuevas palabras clave de Transact-SQL para 12

Consulte "Nuevas palabras reservadas", en la página 63.

dsync activo de manera predeterminada para los dispositivos de archivos UNIX

A partir de la versión 12, Adaptive Server inicializa los dispositivos delsistema de archivos UNIX con la opción dsync para garantizar larecuperación. Si necesita las características del comportamiento o elrendimiento anteriores, cambie el valor de dsync con sp_deviceattr.Vea disk init y sp_deviceattr en el Manual de consulta de Adaptive Serverpara obtener más información.

Page 79: Nuevas funciones en Adaptive Server versión 12.5

65

C A P Í T U L O 4 Nuevas funciones en AdaptiveServer versión 11.9.2

Este capítulo explica la nueva funcionalidad de la versión 11.9.2. Incluyeentre otros temas:

• "Nuevos esquemas de bloqueo", en la página 66

• "Cambios en el bloqueo de nivel de tabla", en la página 67

• "Cambios en la optimización de estadísticas y consultas", en lapágina 67

• "Mejoras del comando create index", en la página 68

• "Cambios y adiciones en la sintaxis de Transact-SQL", en lapágina 69

• "Orden configurable de recuperación de bases de datos", en lapágina 70

• "Verificación de error para los fallos de dbcc checkstorage", en lapágina 70

• "Control de utilización de licencia", en la página 70

• "Afinidad tarea-motor", en la página 71

• "Mejoras de rendimiento de Dynamic SQL", en la página 71

• "Actualizaciones directas por medio de uniones", en la página 71

• "Cambios de Component Integration Services", en la página 72

• "Cambios del juego de caracteres", en la página 72

• "Cambios que pueden afectar a las aplicaciones existentes", en lapágina 72

Page 80: Nuevas funciones en Adaptive Server versión 12.5

Nuevos esquemas de bloqueo

66

Nuevos esquemas de bloqueoAdaptive Server versión 11.9.2 proporciona dos nuevos esquemas de bloqueopara mejorar la simultaneidad y el rendimiento de Adaptive Server:

• Bloqueo datapages

• Bloqueo datarows, también conocido como bloqueo de nivel de fila

Estos nuevos esquemas de bloqueo reciben el nombre conjunto de bloqueo sólode datos.

El esquema de bloqueo anterior a la versión 11.9.2 continúa siendo compatible;se llama bloqueo allpages y es el esquema de bloqueo predeterminado cuandose instala por primera vez la versión 11.9.2 o se actualiza a ésta. Un administradordel sistema puede especificar cualquier esquema de bloqueo como elpredeterminado para todo el servidor.

Los usuarios pueden especificar un esquema de bloqueo para una tabla denueva creación con el comando create table, y pueden cambiar el esquema debloqueo de una tabla existente a cualquier otro con el comando alter table.

Algunos de los cambios introducidos para admitir estos nuevos esquemas debloqueo incluyen:

• Tipos adicionales de bloqueos

• Cambios en las estructuras de tabla e índice para las tablas que utilicen losnuevos esquemas de bloqueo

• Nuevos parámetros de configuración y cambios en los ya existentes

• Adiciones y cambios en la sintaxis de comandos de Transact-SQL, queincluyen:

• Adiciones a create table y alter table para permitir la especificación delesquema de bloqueo

• El nuevo comando reorg para administrar el espacio en las tablas queutilizan los nuevos esquemas de bloqueo

• Cambios en la sintaxis select into para permitir la especificación delesquema de bloqueo en la tabla creada

• Cambios en los procedimientos de sistema para permitir dar informacióny configurar la nueva funcionalidad

Nota: El número de bloqueos disponibles para todos los procesos del servidorestá limitado por el parámetro de configuración number of locks. El cambio albloqueo sólo de datos afecta al número de bloqueos necesarios durante elproceso de consultas.

Page 81: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 4 Nuevas funciones en Adaptive Server versión 11.9.2

67

Cambios en el bloqueo de nivel de tablaLa realización de un comando update o delete mediante una búsqueda de tablano adquiere un bloqueo exclusivo de nivel de tabla como sucedía en las versionesanteriores. En la versión 11.9.2, la búsqueda adquiere un bloqueo de tabla conpropósito exclusivo cuando comienza la transacción. Cuando la búsquedalocaliza una fila que debe ser actualizada, adquiere un bloqueo exclusivo depágina o fila, según el esquema de bloqueo. La única excepción es un comandoupdate o delete sin índice a una tabla con bloqueo sólo de datos en un nivel 3de aislamiento de transacción; estas actualizaciones adquieren un bloqueo detabla exclusivo. En versiones anteriores, cualquier operación de actualizacióno eliminación que no utilice un índice adquiere un bloqueo exclusivo de nivelde tabla al comienzo de la transacción.

En la mayoría de los casos, la realización de una búsqueda sin utilizar unbloqueo de nivel de tabla incrementa la simultaneidad. No obstante, algunasaplicaciones pueden experimentar los siguientes problemas:

• Las aplicaciones que no se bloqueaban en versiones anteriores puedenexperimentar interbloqueos en la versión 11.9.2.

• Las tareas que actualizan un gran número de filas pueden utilizar un númeroalto de bloqueos si no pueden realizar una promoción de bloqueo debidoa bloqueos incompatibles.

Alternativas:

• Si los interbloqueos le crean problemas, considere la posibilidad de convertirla tabla para que utilice bloqueo datarows.

• Si los interbloqueos o el número excesivo de bloqueos le crean problemas,considere la posibilidad de utilizar el comando lock table para adquirir unbloqueo exclusivo de tabla antes de comenzar la transacción.

Cambios en la optimización de estadísticas y consultasAdaptive Server versión 11.9.2 aumenta la flexibilidad de las estadísticasutilizadas por el optimizador de consultas. Las estadísticas del optimizador seguardan ahora en dos tablas del sistema, systabstats y sysstatistics. Una nuevautilidad, optdiag, puede extraer las estadísticas y permite su edición. optdiagpermite la visualización de muchas de estas estadísticas por primera vez.

Page 82: Nuevas funciones en Adaptive Server versión 12.5

Mejoras del comando create index

68

Las estadísticas se mantienen ahora por columna, en vez de por índice. El costede las consultas en el optimizador se ha mejorado para utilizar estadísticas denivel de columna para argumentos de búsqueda y uniones, aunque no existaníndices en la columna.

El comando update statistics ahora admite el almacenamiento de las estadísticaspara las columnas sin índice. La nueva sintaxis update index statistics facilita lacreación de estadísticas de todas las columnas utilizadas en un índice y updateall statistics genera ahora estadísticas para todas las columnas de una tabla.El nuevo comando delete statistics se puede utilizar para eliminar estadísticasde nivel de columna, porque drop index ya no elimina las estadísticas.

Las nuevas estadísticas se mantienen para admitir los nuevos esquemas debloqueo. Estadísticas adicionales hacen un seguimiento de la agrupación defilas y páginas de datos en el almacenamiento físico y mejoran los cálculos decoste hechos por el optimizador. Algunas consultas en tablas que utilizan losnuevos esquemas de bloqueo se optimizan de diferente manera que las queestán en tablas que utilizan el esquema de bloqueo antiguo.

Mejoras del comando create indexDos mejoras en create index:

• El comando create index permite que el usuario especifique un ordenascendente o descendente para cada columna del índice. En las versionesanteriores, todos los índices se creaban en orden ascendente para todas lascolumnas. Las búsquedas que necesitaban leer los datos en orden inversopodían explorar el índice al revés, pero si el orden requerido era una mezclade orden ascendente y descendente de las claves, la consulta debía realizarun paso de organización. Se puede mejorar el rendimiento haciendo coincidirel orden del índice con el orden utilizado por la mayoría de las consultas.

• Los índices pueden incluir un máximo de 31 columnas de claves, unaumento de 16 con respecto a versiones anteriores. El número máximo debytes permitidos para las claves de índice es de 600.

Page 83: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 4 Nuevas funciones en Adaptive Server versión 11.9.2

69

Cambios y adiciones en la sintaxis de Transact-SQLAdaptive Server versión 11.9.2 proporciona nuevos comandos y opciones queafectan el bloqueo:

• Opción readpast

• Comando lock table

• Opciones de nivel de servidor y nivel de sesión que especifican el tiempoque esperan las tareas por los bloqueos

• Compatibilidad para el nivel de aislamiento de transacción de lecturasrepetibles (nivel 2) para las tablas de bloqueo sólo de datos

Nueva opción de simultaneidad readpastLos comandos select, delete, update, readtext y writetext incluyen ahora laopción readpast. Esta opción permite que el comando omita todas las páginaso filas que no sean de acceso inmediato debido a bloqueos incompatibles.

Nuevo comando lock tableEl nuevo comando lock table bloquea específicamente tablas enteras en modocompartido o exclusivo.

Especificación del tiempo de espera para los bloqueosEn versiones anteriores de Adaptive Server y SQL Server, todos los comandosque no pueden adquirir inmediatamente un bloqueo se bloquean, o esperan,hasta que el bloqueo requerido queda disponible. En la versión 11.9.2, eltiempo máximo de espera de una tarea se puede especificar a nivel de todo elservidor o a nivel de sesión. Los procesos que no pueden adquirir el bloqueoen el periodo de espera especificado dan error con un mensaje de error.

• Para obtener información sobre el nuevo parámetro de configuración lockwait period, consulte el Manual de administración del sistema.

• Para obtener información sobre la nueva opción set, set lock wait, vea elManual de consulta de Adaptive Server.

Page 84: Nuevas funciones en Adaptive Server versión 12.5

Orden configurable de recuperación de bases de datos

70

Aislamiento de la transacción de lectura repetibleLa versión 11.9.2 añade la compatibilidad para las transacciones de lecturarepetible (nivel 2 de aislamiento).

Orden configurable de recuperación de bases de datosAhora puede especificar el orden en el que se recuperan las bases de datos deusuario al iniciar el servidor. Esto le permite recuperar las bases de datos másimportantes en primer lugar.

Verificación de error para los fallosde dbcc checkstorage

El comando dbcc checkstorage, que se introdujo en la versión 11.5 de AdaptiveServer, comprueba la consistencia de los objetos de base de datos sin bloquearel acceso de otras tareas. Como la actividad del usuario puede provocar fallosde software, dbcc checkstorage intenta resolver el fallo mediante una segundacomprobación; si persiste, se registra en la base de datos dbccdb. Como el usointensivo de las bases de datos durante las operaciones de dbcc checkstoragepuede desembocar en largos informes de errores, el comando dbcc checkverifyintroducido en la versión 11.9.2 vuelve a comprobar los errores, mientrasmantiene un bloqueo sobre el objeto, para eliminar algunos errores de softwarede la lista.

Control de utilización de licenciaLos administradores de sistema pueden determinar si la utilización en elsistema Adaptive Server excede los acuerdos de licencia utilizando la funciónde control de licencia. Una vez al día, registra el número máximo de usuariosen una tabla del sistema en la base de datos master.

Page 85: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 4 Nuevas funciones en Adaptive Server versión 11.9.2

71

Afinidad tarea-motorPara servidores que ejecutan varios motores, la afinidad tarea-motor mejora elrendimiento al reducir el número de veces que el contexto de la tarea se tieneque alternar entre los motores. Los únicos efectos visibles de esto se apreciandurante la optimización del sistema. Cuando haya menos tareas en ejecuciónque motores, podrá ver que algunos motores muestran un índice muy alto defuncionamiento, mientras que otros permanecen inactivos durante todo elintervalo. Por ejemplo, en versiones anteriores, mientras una sola tarea ejecutauna consulta select *, podía ver normalmente que cada uno de los 6 motoresrealizaba aproximadamente un 16% del trabajo. En la versión 11.9.2,sp_sysmon podría dar el siguiente informe:

Engine Busy UtilizationEngine 0 97.2 %Engine 1 0.0 %Engine 2 0.0 %Engine 3 0.0 %Engine 4 0.0 %Engine 5 0.0 %

----------- --------------- ----------------Summary Total 97.2 % Average 16.2 %

Para obtener más información, consulte el Manual de rendimiento y mejoras.

Mejoras de rendimiento de Dynamic SQLEn versiones anteriores a la 11.9.2, el uso simultáneo de Dynamic SQL por unnúmero alto de usuarios tiene un rendimiento pobre, en gran parte debido a lacontención en tablas del sistema en tempdb. En la versión 11.9.2, se haneliminado los problemas de contención y se ha mejorado sustancialmente elrendimiento de las instrucciones prepare y deallocate. No hay cambios en lainterfaz de usuario. Todos los cambios son internos, por lo que no se necesitamodificar las aplicaciones.

Actualizaciones directas por medio de unionesEn la versión 11.9.2, se han eliminado muchas de las restricciones que habíasobre cuándo realizar las actualizaciones directas.

Page 86: Nuevas funciones en Adaptive Server versión 12.5

Cambios de Component Integration Services

72

Cambios de Component Integration ServicesComponent Integration Services para Adaptive Server versión 11.9.2 añade lassiguientes mejoras para acceso a tablas remotas:

• Mejora el rendimiento de las consultas que incluyen tablas remotas.

• Simplifica la asignación de tablas proxy locales a tablas remotas.

• Añade nuevas clases de servidor para Adaptive Server Enterprise,Adaptive Server Anywhere™ y Adaptive Server IQ™.

• Añade un nuevo indicador de seguimiento que, cuando está activado,convierte cualquier consulta que sea parte de un comando declare cursor,y que haga referencia a las tablas proxy, en un valor predeterminado desólo lectura.

Cambios del juego de caracteres

Adaptive Server versión 11.9.2 incluye la compatibilidad para el símbolo de ladivisa europea, o "Euro". Adaptive Server también puede realizar conversionesde juego de caracteres que causan un cambio en la longitud de los datos.

Cambios que pueden afectar a las aplicacionesexistentes

Los cambios en la versión 11.9.2 que pueden afectar a las aplicaciones deusuario y la administración del sistema son:

• Los cambios en la optimización de las estadísticas y las consultas puedenprovocar cambios en los planes de consulta, incluso en las tablas en las queno cambia el esquema de bloqueo.

• Se realiza un mayor registro de eventos que en versiones anteriores.

• Se necesita una nueva sintaxis para los servidores en espera o deprocesamiento de informes para hacer un volcado del diario detransacciones para el servidor de producción y poner en línea la base dedatos. Ya no es posible cargar un volcado que contenga transaccionesabiertas, poner en línea la base de datos y, después, cargar un volcadosubsiguiente del diario.

Page 87: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 4 Nuevas funciones en Adaptive Server versión 11.9.2

73

• El comando update statistics puede ejecutarse con mayor lentitud porqueahora realiza una búsqueda de tablas además de las de los índices. Semejora la simultaneidad porque update statistics con nombre de tablao nombre de índice opera a un nivel 0 de aislamiento de transacción entablas de bloqueo sólo de datos y no requiere bloqueos de tabla en lastablas con bloqueo allpages.

• El comando update all statistics genera ahora las estadísticas para todas lascolumnas de una tabla. Realiza una búsqueda de tabla completa para cadacolumna que no es la columna inicial de un índice. Si su sistema ejecutaarchivos de secuencias de comandos que incluyen update all statistics,es posible que desee reemplazar el comando update all statistics con loscomandos update statistics y update partition statistics.

Efectos de cambiar al bloqueo sólo de datosEl cambio de las tablas al bloqueo sólo de datos puede tener los siguientesefectos:

• El número de bloqueos requerido por las aplicaciones puede aumentary podría necesitar cambiar el parámetro de configuración number of locks.

• En las tablas con bloqueo sólo de datos con índices agrupados, elcomportamiento predeterminado de impedir la duplicación de filas y laopción ignore_dup_row no se llevan a efecto durante inserciones yactualizaciones. Esto cambia el comportamiento de los comandos queinsertan las filas duplicadas y podría modificar el comportamiento decreate clustered index si la tabla contiene filas duplicadas.

• En tablas con bloqueo sólo de datos, la opción sorted_data para createindex sólo se puede utilizar inmediatamente después de una operación decopia masiva en una tabla existente. El uso de la opción sorted_data estáprohibido una vez que se han realizado las operaciones de asignación depáginas adicionales para la tabla.

• La copia masiva en tablas de bloqueo sólo de datos requiere la versión debcp y las bibliotecas de copia masiva incluidas con Adaptive Serverversión 11.9.2. Las versiones anteriores de bcp y las bibliotecas de copiamasiva se pueden utilizar todavía para copiar en tablas de bloqueoallpages. Consulte el Boletín de lanzamiento para el número de versiónrequerido.

Page 88: Nuevas funciones en Adaptive Server versión 12.5

Cambios que pueden afectar a las aplicaciones existentes

74

• Cuando utilice la ordenación paralela para tablas de bloqueo de sólo datos,se debe configurar el número de procesos de trabajo para que sea igual omayor que el número de particiones, incluso en las tablas vacías. Laopción de base de datos select into/bulkcopy/pllsort también se debehabilitar.

Cambios en la optimización de consultas y planesde consulta forzados

Los cambios en la optimización de consultas proporcionan mayor exactitudque en versiones anteriores en el coste de algunas consultas, especialmente enlas que realizan búsquedas en índices no agrupados. En la versión 11.9.2, puedecrear estadísticas de índices no agrupados, lo que mejora aún más la optimizaciónde la consulta. Debe revisar todas las consultas que utilicen planes de consultaforzados, especialmente con obligación de índice u orden de uniones, paradeterminar si aún se necesita la obligación o si el optimizador puede proporcionarun plan mejorado.

Obligación de índice y tablas de bloqueo sólo de datos

La opción de índice utilizado para una consulta puede obligarse con la cláusulaindex y un nombre de índice, como en este comando:

select title_id, type, pricefrom titles (index title_id_ix)

Adaptive Server acepta una identificación de índice en lugar de la palabra claveindex y el nombre de índice. La siguiente instrucción obliga a la utilización deun índice agrupado en una tabla de bloqueo allpages:

select title_id, type, pricefrom titles (1)

Cuando convierte una tabla con un índice agrupado en bloqueo sólo de datos,el identificador de índice del índice agrupado cambia. Si ejecuta una consultaque especifica el identificador de índice 1, el optimizador todavía utilizará elíndice agrupado de la tabla. Debería comprobar cuidadosamente todos losplanes de consulta que obligan el identificador de índice 1.

Nota: Sybase recomienda encarecidamente la utilización de nombres de índice,en vez de los identificadores de índice, para obligar la selección de índice.

Page 89: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 4 Nuevas funciones en Adaptive Server versión 11.9.2

75

Rendimiento tras la carga de bases de datos de versiones anteriores a la 11.9

Cuando se cargan bases de datos de versiones anteriores a la 11.9 en laversión 11.9.2 de Adaptive Server, el proceso de actualización inserta filas enlas tablas de estadísticas, basándose en las estadísticas disponibles. El procesode actualización no busca las tablas e índices para generar los tipos nuevos deestadísticas que puede utilizar el optimizador de consultas mejorado. Para lasestadísticas que son nuevas en esta versión, el proceso de actualización insertavalores calculados o mágicos.

Si carga una base de datos de una versión anterior a la 11.9, ejecute updatestatistics en las tablas con la mayor premura posible. Si experimenta problemasde rendimiento tras cargar una base de datos de una versión anterior a la 11.9,ejecute update statistics para las tablas en la aplicación antes de probar otrassoluciones.

Ordenación de los resultados con tablas de bloqueo sólo de datosLos índices agrupados en tablas de bloqueo sólo de datos pueden no devolverlas filas en el orden clave de agrupamiento si no hay una cláusula order by. Nose garantiza que la copia masiva copie una tabla en el orden clave de agrupamiento.

Las consultas en tablas de bloqueo allpages sin particiones con índices agrupadosdevuelven las filas en el orden clave de agrupamiento si la consulta no incluyeuna ordenación (es decir, si no hay cláusulas como order by o distinct). La copiamasiva también copia las filas de las tablas de bloqueo allpages en el ordenclave de agrupamiento para tablas con o sin particiones.

Retardo de compilación de cursores hasta el cursor abiertoEn las versiones anteriores a la 11.9.2 de SQL Server y Adaptive Server, seoptimiza y compila un cursor cuando se declara. Para cursores con variableso parámetros locales, esto puede resultar en un plan de consulta no óptimo, yaque los valores predeterminados se utilizan para calcular el número de filas adevolver. El problema de los planes pobres es más común con los cursorescliente, enviados con Open Client™ Client-Library™ o Embedded SQL™.

En la versión 11.9.2, la optimización de la consulta se pospone hasta que elcursor se abre. Se conocen los valores de las variables en el momento de abrirel cursor y la optimización puede mejorar apreciablemente.

Page 90: Nuevas funciones en Adaptive Server versión 12.5

Cambios que pueden afectar a las aplicaciones existentes

76

Efectos visibles de la optimización retardada del cursor

Además de los planes de consulta mejorados, los únicos cambios visibles parael usuario son los siguientes:

• Si utiliza showplan, el plan ya no se muestra en la instrucción de declararcursor, sino en la instrucción de abrir.

• La consulta se normaliza en la instrucción de declarar cursor, así que losmensajes de error sobre errores de sintaxis, tablas que no se encuentran,etc., se notifican en ese momento.

• Algunos mensajes de error no aparecen hasta que se compila y optimiza laconsulta, incluyendo los mensajes para los cursores que requieren índicesexclusivos. Si aparecen mensajes de error en el momento de abrir el cursor(como la falta de un índice necesario), se debe quitar la asignación delcursor y volver a declararlo. No puede corregir el problema y volver a abrirel cursor.

• En versiones anteriores a la 11.9.2, el cambio de niveles de aislamientoentre el momento de declaración del cursor y el momento de abrirlogeneraba un mensaje de error cuando se abría el cursor. En la versión 11.9.2,la siguiente secuencia de comandos no genera un error y se compila elcursor al nivel 0 de aislamiento de transacción:

/* start at isolation level 1 */declare curs1 cursor forselect t.title_id, au_lnamefrom titles t , authors a, titleauthor tawhere t.title_id = ta.title_idand a.au_id = ta.au_idgoset transaction isolation level 0goopen curs1gofetch curs1go

Nota: La optimización retardada no se aplica a los cursores que se declaran enun procedimiento almacenado (denominados cursores de servidor). Loscursores de servidor se compilan y optimizan cuando se declaran.

Page 91: Nuevas funciones en Adaptive Server versión 12.5

77

C A P Í T U L O 5 Nuevas funciones en AdaptiveServer versión 11.5

Este capítulo describe las características añadidas y los cambios realizadosal sistema de Sybase Adaptive Server Enterprise versión 11.5.

Además de añadir un gran número de funciones nuevas al servidor,Adaptive Server 11.5 proporciona un producto más completo gracias a laincorporación de productos y herramientas anteriores:

• SQL Server Manager™ se ha sustituido por Sybase Central™

Para obtener más información, consulte "Sybase Central", en lapágina 108.

• OmniConnect™ se ha sustituido por Component Integration Services

La mayoría de las características de OmniConnect versión 10.5 se hanincorporado a la característica Component Integration Services (CIS)de Adaptive Server 11.5. Para obtener más información sobre estafunción, consulte "Servicios de integración de componentes", en lapágina 82.

Nuevas características de la versión 11.5Las nuevas características de Adaptive Server versión 11.5 son:

Nombre

"Recuperación previa asíncrona", en la página 78

"Mejoras en el sistema de auditoría", en la página 80

"Expresión CASE", en la página 82

"Servicios de integración de componentes", en la página 82

"Mejoras en create index", en la página 85

"Mejoras de dbcc", en la página 86

"Optimización de exploración con índice descendente", en la página 89

"Servicios de directorio", en la página 89

Page 92: Nuevas funciones en Adaptive Server versión 12.5

Recuperación previa asíncrona

78

Recuperación previa asíncronaLa función de recuperación previa asíncrona mejora el rendimiento ya queprevé las páginas necesarias para algunas clases bien definidas de actividadesde base de datos, cuyos modelos de acceso son predecibles. Las peticiones deE/S para estas páginas se emiten antes de que la consulta las necesite de formaque la mayoría de las páginas están preparadas en el caché cuando el procesode consultas necesita tener acceso a ellas.

La recuperación previa asíncrona puede mejorar el rendimiento para:

• Exploraciones secuenciales, por ejemplo, exploraciones de tabla, de índiceagrupado y de índice no agrupado cubierto

• El comando update statistics

"Afinidad de motor y precedencia de ejecución", en la página 90

"Registro ampliado de errores", en la página 92

"Procedimientos almacenados extendidos (ESP)", en la página 93

"Límites de integridad referencial aumentados", en la página 96

"Administración de caché de metadatos", en la página 97

"Control del acceso a texto SQL por lotes", en la página 97

"Copia masiva paralela", en la página 99

"Consultas paralelas y particiones mejoradas", en la página 100

"Recuperación a un momento dado", en la página 101

"Autorización proxy", en la página 102

"Aislamiento de fallos de recuperación", en la página 103

"Política de sustitución de caché LRU flexible", en la página 105

"Límites de recursos", en la página 106

"Verificación y cifrado de texto fuente", en la página 108

"Sybase Central", en la página 108

"sp_sysmon", en la página 109

"Mejoras de ejecución en dos fases", en la página 109

"Roles definidos por el usuario", en la página 111

"Integración de Registro de eventos de Windows NT", en la página 111

"Compatibilidad con la interfaz MAPI de Windows NT", en la página 112

"Integración del Monitor de rendimiento de Windows NT", en la página 113

Nombre

Page 93: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

79

• Los accesos mediante índices no agrupados

• Algunas comprobaciones dbcc

• Recuperación

La función de recuperación previa asíncrona puede mejorar el rendimiento delas consultas que tienen acceso a un gran número de páginas, por ejemplo,aplicaciones de sistemas de ayuda a la toma de decisiones (DSS, DecisionSupport System), siempre y cuando los subsistemas de E/S del equipo no esténsaturados.

La función de recuperación previa asíncrona no puede ayudar (o puede ayudarsólo ligeramente) si el subsistema de E/S está ya saturado o si Adaptive Serverdepende de la unidad CPU. Puede utilizarse en algunas aplicaciones deprocesamiento de transacciones en línea (OLTP, Online Transaction Processing)aunque en un grado mucho menor, ya que las consultas en las aplicacionesOLTP suelen realizar un número inferior de operaciones de E/S.

Nota: El valor predeterminado de global async prefetch limit (límite global derecuperación previa asíncrona) es 10, lo que significa que la función se activacuando instala o actualiza Adaptive Server a la versión 11.5 y todas lasagrupaciones pueden utilizar un máximo del 10 por ciento de los buffers paralecturas asíncronas.

La tabla 5-1 muestra dónde encontrar más información sobre la función derecuperación previa asíncrona.

Tabla 5-1: Información adicional sobre recuperación previa asíncrona

Para obtenerinformación sobre Consulte

Cómo se pueden beneficiarlas consultas de la funciónde recuperación previaasíncrona

Capítulo 18, "Mejoras de la función de recuperaciónprevia asíncrona", del Manual de rendimiento ymejoras

Configuración de los límitesde agrupaciones

Capítulo 9, "Configuración de cachés de datos", delManual de administración del sistema

Configuración de límitespara servidor

Capítulo 11, "Definición de los parámetros deconfiguración", del Manual de administración delsistema

Mejoras de los límites derecuperación previaasíncrona

Capítulo 24, "Control del rendimiento consp_sysmon" en el Manual de rendimiento y mejoras

Page 94: Nuevas funciones en Adaptive Server versión 12.5

Mejoras en el sistema de auditoría

80

Mejoras en el sistema de auditoríaEl sistema de auditoría cuenta con las siguientes mejoras:

• Compatibilidad con varias tablas de auditoría. Esta característica lepermite archivar y procesar datos de auditoría sin intervención manual nipérdida de registros.

• Nueva interfaz de usuario mejorada para que el oficial de seguridad delsistema pueda controlar la auditoría. La nueva interfaz, que sustituye a lainterfaz de auditoría actual, puede configurar todas las opciones de auditoríamediante un solo procedimiento de sistema, sp_audit.

• Adición de eventos sobre los que puede ejecutarse la auditoría:

• Creación de objetos

• Enlace y desenlace de reglas, valores predeterminados y mensajes

• Todas las acciones de usuarios individuales

• Todas las acciones realizadas con un rol concreto activo

• Un conjunto de eventos para todo el servidor, con importancia para laseguridad

Nuevos procedimientos de sistemaUtilice los procedimientos de sistema de la tabla 5-2 para administrar elproceso de auditoría.

Tabla 5-2: Nuevos procedimientos de sistema para la funciónde auditoría

Procedimiento de sistema Descripción

sp_addauditrecord Añade registros de auditoría definidos por el usuario (comentarios) a la pista deauditoría Los usuarios pueden añadir estos registros sólo si el oficial deseguridad del sistema activa el sistema de auditoría mediante sp_audit.

sp_audit Activa y desactiva todas las opciones de auditoría. Éste es el únicoprocedimiento de sistema necesario para definir los eventos sobre los que se vaa ejecutar la auditoría.

sp_configure

"auditing" Activa o desactiva la función de auditoría en Adaptive Server. Este parámetrotiene efecto inmediatamente después de ejecutar sp_configure. La auditoría sólotiene lugar cuando este parámetro está activado.

"audit queue size" Define el tamaño de la cola de auditoría. Este parámetro afecta a la asignaciónde memoria, por lo tanto, no tiene efecto hasta que se reinicia Adaptive Server.

Page 95: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

81

Nota: Los procedimientos de sistema sp_auditoption, sp_auditdatabase,sp_auditobject, sp_auditsproc y sp_auditlogin son obsoletos. Utilice sp_auditpara configurar las opciones que en versiones anteriores a la versión 11.5definía mediante dichos procedimientos.

La tabla 5-3 muestra los procedimientos de sistema utilizados para configurar lasopciones de auditoría en versiones anteriores a la versión 11.5 y los tipos de opcionesque las sustituyen en Adaptive Server 11.5. Las opciones de auditoría de losgrupos mencionados en la segunda columna de la tabla 5-3 se describen juntocon la información sobre sp_audit en el Manual de consulta de Adaptive Server.

Tabla 5-3: Comparación de opciones previas a 11.5 y de 11.5

Por ejemplo, en versiones anteriores a la versión 11.5, se utilizaba el siguientecomando para ejecutar la auditoría de las acciones de eliminación, actualizacióne inserción de información en la tabla authors de la base de datos pubs2:

sp_auditobject "authors", "pubs2", "both", "dui"

En la versión 11.5, estas acciones quedan cubiertas por las opciones delete,update e insert del grupo específico de objetos. Para obtener los mismosresultados que con los comandos obsoletos anteriores, debe utilizar lossiguientes comandos:

sp_audit "delete", "all", "authors", "on"sp_audit "update", "all", "authors", "on"sp_audit "insert", "all", "authors", "on"

"current audit table" Define la tabla de auditoría actual. Este parámetro tiene efecto inmediatamentedespués de ejecutar sp_configure.

"suspend auditing when full" Controla el comportamiento del proceso de auditoría cuando se llena undispositivo de auditoría. Este parámetro tiene efecto inmediatamente después deejecutar sp_configure.

sp_displayaudit Muestra las opciones de auditoría activas.

Procedimiento de sistema Descripción

Opciones definidas enversiones anteriores a 11.5 Opciones de la versión 11.5

sp_auditoption Opciones globales de auditoría

sp_auditdatabase Opciones de auditoría específicas de base dedatos

sp_auditobject Opciones de auditoría específicas de objetos

sp_auditsproc Opciones de ejecución de auditoría

sp_auditlogin Opciones de auditoría específicas de usuarios

Page 96: Nuevas funciones en Adaptive Server versión 12.5

Expresión CASE

82

Para instalar la función de auditoría, consulte el manual de configuración deAdaptive Server correspondiente a su plataforma. Para obtener más informaciónsobre auditoría, consulte el Capítulo 8, "Auditoría," del Manual deadministración de seguridad.

Expresión CASELa utilización de la expresión CASE simplifica las expresiones estándar deSQL ya que permite una construcción del tipo when...then en vez de unaconstrucción del tipo if...else. Una expresión CASE es más concisa que unainstrucción if...else y el tiempo de respuesta de Adaptive Server es más rápidoya que el optimizador procesa menos líneas de código SQL. Además, lasconsultas escritas con expresiones CASE suelen ser más fáciles de leer ycomprender que aquéllas escritas en lenguaje SQL estándar. Debido a sunaturaleza concisa, las expresiones CASE se permiten en todos los casos en losque se utilizan expresiones de valor.

Las expresiones CASE se escriben mediante la siguiente sintaxis:

case[when condición_búsqueda1 then resultado1][when condición_búsquedan then resultadon]

end

Para obtener más información sobre expresiones CASE, consulte el Manual deconsulta de Adaptive Server.

Para obtener más información y ejemplos de expresiones CASE, consulte elManual del usuario de Transact-SQL.

Servicios de integración de componentesLa función Component Integration Services (CIS, servicios de integración decomponentes) le permite conectar con bases de datos remotas de Sybase y otrosfabricantes. Presenta una vista uniforme de los datos empresariales a lasaplicaciones cliente y proporciona transparencia de ubicación a las fuentes dedatos a las que tiene acceso.

Page 97: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

83

Cuando se obtiene acceso a bases de datos de Sybase y a otras bases de datosen distintos servidores, puede utilizar los archivos de datos del equipo, tablas,disparadores, vistas, llamadas a procedimientos remotos y la mayoría de loscomandos de los sistemas de bases de datos como Adaptive Server, Informix,DB2 y Oracle.

Component Integration Services puede utilizarlo cualquier usuario que necesitetener acceso a varias fuentes de datos o datos heredados. También lo puedeutilizar cualquier usuario que necesite convertir datos de un servidor a otro.

Normalmente se utiliza un solo servidor para tener acceso a los datos en variosservidores externos. Component Integration Services gestiona los datos conindependencia de la ubicación de los servidores externos. La administración delos datos es transparente para la aplicación cliente.

Figura 5-1: CIS se conecta a bases de datos de varios proveedores

La función Component Integration Services le permite:

• Tener acceso a tablas en servidores remotos como si se tratase de tablaslocales.

• Realizar uniones entre tablas de varios servidores remotos heterogéneos.Por ejemplo, puede unir tablas entre Adaptive Server y una base de datosOracle DBMS, entre Adaptive Server y archivos de Record ManagementSystem (RMS) en OpenVMS y entre tablas de varios servidores AdaptiveServer.

• Utilizar el comando select into para transferir el contenido de una tabla a otratabla nueva en cualquier servidor remoto admitido.

Page 98: Nuevas funciones en Adaptive Server versión 12.5

Servicios de integración de componentes

84

• Proporcionar acceso transparente a datos heterogéneos a aplicaciones comoPowerBuilder®, Microsoft Access y DataEase.

• Mantener la integridad referencial entre las fuentes de datos heterogéneas.

• Tener acceso a funciones originales del servidor remoto mediante el modopassthrough de Component Integration Services.

Para obtener más información sobre Component Integration Services, consulteel Manual del usuario de Component Integration Services.

Comandos nuevosLa tabla 5-4 muestra los comandos nuevos para la función ComponentIntegration Services:

Tabla 5-4: Comandos para CIS

Nuevos procedimientos de sistemaLa tabla 5-5 muestra los procedimientos de sistema nuevos para la funciónComponent Integration Services.

Tabla 5-5: Nuevos procedimientos de sistema para CIS

Comando Descripción

connect to...disconnect Conecta con el servidor especificado y desconecta elservidor conectado.

create existing table Crea una tabla proxy, a continuación recupera yalmacena metadatos de una tabla remota y coloca losdatos en la tabla proxy.

set cis_rpc_handling Determina si Component Integration Services gestionapeticiones de llamadas a procedimientos remotos(RPC) de salida de forma predeterminada.

set transactional_rpc Controla la gestión de llamadas a procedimientosremotos.

Procedimientode sistema Descripción

sp_addexternlogin Crea un cuenta y contraseña de login alternativa para utilizarlaen la comunicación con un servidor remoto mediante CIS.

sp_addobjectdef Especifica la correspondencia entre una tabla local y unaubicación de almacenamiento externa. El comandosp_addobjectdef sustituye a sp_addtabledef.

Page 99: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

85

Procedimientos de sistema modificadosLos siguientes procedimientos de sistema se han modificado para hacerloscompatibles con la función Component Integration Services:

• sp_addserver

• sp_dropserver

• sp_help

• sp_helpdb

• sp_helpserver

• sp_serveroption

Mejoras en create indexEn versiones anteriores de SQL Server™, podía utilizar el comando createclustered index...with sorted_data para omitir el paso de ordenación de los datosque ya estaban ordenados. No obstante, create clustered index siempre copiabalas páginas de datos a una nueva ubicación en los dispositivos de datos.

sp_autoconnect Define una conexión

passthrough con un servidor remoto para un usuarioespecífico, que permite a dicho usuario entrar en modopassthrough automáticamente al iniciar la sesión.

sp_configure"enable cis"

Activa o desactiva la función CIS. El valor predeterminado es0 (desactivada).

sp_defaultloc Define una ubicación de almacenamiento predeterminada paralos objetos de una base de datos local.

sp_dropexternlogin Elimina la definición de un identificador de login remotocreado anteriormente por sp_addexternlogin.

sp_dropobjectdef Elimina la correspondencia de almacenamiento externosuministrada para un objeto local.

sp_passthru Permite al usuario transferir un buffer de comando SQL a unservidor remoto.

sp_remotesql Establece una conexión con un servidor remoto, transfiere unbuffer de consulta desde el cliente al servidor remotoy devuelve los resultados al cliente.

Procedimientode sistema Descripción

Page 100: Nuevas funciones en Adaptive Server versión 12.5

Mejoras de dbcc

86

En la versión 11.5, create clustered index...with sorted_data no clasifica o copialas páginas de datos excepto si se especifican ciertas cláusulas opcionales encreate index. Si se especifican estas cláusulas para tablas particionadas, debellevarse a cabo una ordenación paralela.

Para obtener más información, consulte el Capítulo 23, "Actividades demantenimiento y rendimiento", en el Manual de rendimiento y mejoras.

Mejoras de dbccEl comando dbcc ha mejorado su rendimiento en entornos paralelos y ampliadosu modo de detectar, registrar y notificar los errores. El comando dbcc checkstoragele permite comprobar una base datos en uso, con muy poco impacto o ningunosobre el rendimiento. Almacena los resultados de la comprobación en la basede datos dbccdb. Cuando la comprobación ha finalizado, puede utilizar losnuevos procedimientos almacenados dbcc para generar informes basados enlos datos recopilados.

Ventajas de utilizar dbcc checkstorageEl comando dbcc checkstorage:

• Utiliza un caché con nombre, de forma que su ejecución en la base de datosde destino no interfiera con el uso simultáneo de dicha base de datos.

• Escala de forma lineal con el rendimiento de E/S añadido.

• No bloquea tablas o páginas durante largos periodos, lo que permite quedbcc checkstorage localice errores mientras tiene lugar una actividad deactualización simultánea.

• Combina muchas de las comprobaciones suministradas por los demáscomandos dbcc.

• Proporciona una descripción detallada de la utilización del espacio en labase de datos de destino.

• Separa las funciones de comprobación y notificación, lo que permite laevaluación y generación personalizada de informes.

Page 101: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

87

• Registra la actividad dbcc checkstorage y los resultados en la base de datosdbccdb, lo que permite elaborar un análisis de tendencias y una fuente deinformación de diagnóstico precisa para la prestación de soporte técnico.

Para obtener más información sobre dbcc, consulte el Capítulo 18,"Comprobación de la coherencia de bases de datos", en el Manual deadministración del sistema.

Procedimientos almacenados y de sistema para la creaciónde dbccdb

Para poder utilizar dbcc checkstorage, debe configurar la base de datos dbccdb.La tabla 5-6 muestra los procedimientos almacenados y de sistema para lacreación de dbccdb. sp_plan_dbccdb es el único procedimiento de sistema.Reside en sybsytemprocs. sp_dbcc_createws y sp_dbcc_updateconfig sonprocedimientos dbcc almacenados. Residen en dbccdb.

Tabla 5-6: Procedimientos almacenados y de sistema para la creaciónde dbccdb

Procedimientos almacenados para el mantenimiento de dbccdbLa tabla 5-7 muestra los procedimientos almacenados dbcc para elmantenimiento de dbccdb.

Tabla 5-7: Procedimientos almacenados para el mantenimiento de dbccdb

Procedimiento Descripción

sp_dbcc_createws Crea una zona de trabajo del tipo y tamaño especificadoen el segmento y base de datos especificados.

sp_dbcc_updateconfig Actualiza los parámetros de configuración para la basede datos especificada.

sp_plan_dbccdb Recomienda valores para el tamaño de dbccdb, losdispositivos adecuados, los tamaños para las zonas detrabajo scan y text, el tamaño de caché y el número deprocesos de trabajo para un funcionamiento óptimo.

Procedimientoalmacenado Descripción

sp_dbcc_alterws Cambia el tamaño de la zona de trabajo especificada alvalor especificado e inicializa la zona de trabajo.

sp_dbcc_deletedb Elimina toda la información en la base de datosespecificada de dbccdb.

Page 102: Nuevas funciones en Adaptive Server versión 12.5

Mejoras de dbcc

88

Procedimientos almacenados para la generación de informesen dbccdb

La tabla 5-8 muestra los procedimientos almacenados dbcc para la generaciónde informes en dbccdb.

Tabla 5-8: Procedimientos almacenados para la generación de informesen dbccdb

sp_dbcc_deletehistory Elimina los resultados de las operaciones dbcccheckstorage en la base de datos especificada dedbccdb.

sp_dbcc_evaluatedb Recomienda valores para los parámetros deconfiguración, a partir de los resultados de operacionesdbcc previas.

sp_dbcc_runcheck Ejecuta dbcc checkstorage en la base de datosespecificada y genera un informe resumido o el informeque especifique.

Procedimientoalmacenado Descripción

Procedimientoalmacenado Descripción

sp_dbcc_configreport Notifica los parámetros de configuración para la basede datos especificada.

sp_dbcc_differentialreport Compara los resultados de las operaciones dbcccheckstorage realizadas en la fecha1 y fecha2 paranombrebd..nombre_objeto.

sp_dbcc_faultreport Notifica los fallos registrados paranombrebd..nombre_objeto en o antes de la fechaespecificada.

sp_dbcc_fullreport Notifica la información de configuración, estadísticas yfallos para base_datos..nombre_objeto en o antes de lafecha especificada.

sp_dbcc_statisticsreport Notifica la información estadística de la tabladbcc_counters generada por la operación dbcccheckstorage en o antes de la fecha especificada.

sp_dbcc_summaryreport Notifica todas las operaciones dbcc checkstoragerealizadas para nombrebd en o antes de la fechaespecificada.

Page 103: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

89

Optimización de exploración con índice descendenteEsta opción supone una mejora del rendimiento de las consultas que utilizan lapalabra clave desc en los tipos order by para devolver conjuntos de resultadosen orden descendente. En versiones anteriores de SQL Server, para obtenerconjuntos de resultados en orden descendente eran necesarios una tabla detrabajo y una ordenación. En Adaptive Server 11.5, el optimizador puedeutilizar el índice y evitar el paso de ordenación, si de esta forma el coste de laconsulta resulta inferior.

Las exploraciones con índice descendentes pueden agilizar el uso del acceso deíndices agrupados y no agrupados, reducir el espacio de tempdb necesario paralas tablas temporales, ahorrar el tiempo de CPU necesario para realizar laordenación y reducir el tiempo de retención de bloqueos, si las exploracionesdescendentes utilizan holdlock o aislamiento de transacción de nivel 3. Sinembargo, puede dar lugar a un aumento de interbloqueos en algunas aplicaciones.

Consulte el Capítulo 11, "Definición de los parámetros de configuración", enel Manual de administración del sistema para obtener más información sobreel parámetro de configuración allow backward scans, que sirve para desactivaresta función de optimización si los interbloqueos representaran un problema.Las exploraciones descendentes están activadas de forma predeterminada.

Esta función no modifica la sintaxis para la cláusula order by, únicamentemodifica el modo de optimización de las cláusulas order by con la clave desc.

Servicios de directorioPara que Adaptive Server y una aplicación cliente puedan comunicarse entre sí,cada una debe conocer la ubicación de la otra en la red. En las versiones anterioresa Adaptive Server 11.5, la única ubicación para almacenar información deservicio de redes (nombre de servidor, tipo de servicio y protocolo de red,dispositivo y dirección) era el archivo de interfaces de SQL Server.

Adaptive Server 11.5 proporciona una alternativa a la utilización del archivode interfaces tradicional ya que admite la conexión a la información de serviciode red mediante proveedores de servicios de directorio de otros fabricantes.

La ventaja de utilizar un servicio de directorio es que cuando se modifica la red(por ejemplo, cuando se añade un servidor nuevo o se modifica una direcciónde servidor), no necesita actualizar varios archivos de interfaces. Sólo necesitaactualizar el servicio de directorio que utilizan los servidores y clientes.

Page 104: Nuevas funciones en Adaptive Server versión 12.5

Afinidad de motor y precedencia de ejecución

90

La tabla 5-9 muestra el proveedor de servicios de directorio y la plataforma queadmite en Adaptive Server 11.5.

Tabla 5-9: Proveedor de servicios de directorio

Si no configura Adaptive Server de forma que utilice un proveedor de serviciosde directorio, utilizará el archivo de interfaces de Sybase como ubicaciónpredeterminada para obtener información de servicio de red.

Consulte el manual de configuración de Adaptive Server correspondiente a laplataforma que utiliza para obtener información sobre cómo configurarAdaptive Server para que utilice servicios de directorio.

Afinidad de motor y precedencia de ejecuciónEl nuevo Administrador de procesos lógicos de la versión 11.5 le proporcionaun modo de controlar el orden que sigue Adaptive Server en la ejecución depeticiones de conexiones y sesiones. Las dos nuevas funciones, afinidad demotor y precedencia de ejecución, ofrecen procedimientos de sistema que lepermiten especificar a Adaptive Server el equilibrio de rendimiento que deseautilizar en las distintas conexiones y sesiones en entornos de carga de trabajomixtos.

Por ejemplo, puede dar mayor prioridad a una aplicación cliente, logino procedimiento almacenado con respecto a los demás con los procedimientosde sistema mediante la asignación de atributos de ejecución. Adaptive Servertendrá en cuenta las asignaciones realizadas al colocar la entidad en una de trescolas de ejecución de diferente prioridad. Además, puede utilizar afinidad demotor para hacer sugerencias sobre cómo particionar los recursos de motor deAdaptive Server entre conexiones y sesiones.

En un entorno de varias aplicaciones, el hecho de definir una precedencia deejecución puede mejorar el rendimiento de las aplicaciones seleccionadas, asícomo en general de algunos procesos en funcionamiento de Adaptive Server.

Proveedor de servicios de directorio Plataforma

Registro de Windows Microsoft Windows NT

Page 105: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

91

El usuario decide qué aplicaciones cliente, logins y procedimientos almacenadosreciben precedencia de ejecución mediante la creación de una jerarquía entreobjetos de ejecución (aplicaciones cliente, logins y procedimientos almacenados)con un grupo nuevo de procedimientos de sistema de Adaptive Server(consulte la tabla 5-10). Adaptive Server utiliza la jerarquía como guía parala distribución de recursos de procesamiento entre los objetos de ejecución.

Para obtener más información, consulte el Capítulo 22, "Distribución derecursos de motor entre tareas", del Manual de rendimiento y mejoras.

Nuevos procedimientos de sistemaPuede implementar y administrar la jerarquía de ejecución para aplicacionescliente, logins y procedimientos almacenados mediante las cinco categoríasde procedimientos de sistema enumeradas en la tabla 5-10.

Tabla 5-10: Nuevos procedimientos de sistema para la administraciónde precedencia de ejecución

CategoríaProcedimientode sistema Descripción

Clase deejecucióndefinida por elusuario

• sp_addexeclass

• sp_dropexeclass

Crea o elimina una clase definida por elusuario con atributos personalizados,modifica los atributos de una claseexistente.

Enlaces de clasede ejecución

• sp_bindexeclass

• sp_unbindexeclass

Enlaza o desenlaza tanto clasespredefinidas como definidas por elusuario con aplicaciones cliente e logins.

Inmediato • sp_setpsexe

• sp_clearpsexe

Define o elimina atributos de una sesiónactiva sólo.

Motores • sp_addengine

• sp_dropengine

Añade o elimina motores de grupos demotores; crea y elimina grupos demotores.

Notificación • sp_showcontrolinfo

• sp_showexeclass

• sp_showpsexe

Notifica las asignaciones de grupos demotores, enlaces de aplicación yatributos de clase de ejecución.

Page 106: Nuevas funciones en Adaptive Server versión 12.5

Registro ampliado de errores

92

Registro ampliado de erroresLos usuarios pueden ejercer un mayor control sobre los tipos de mensajes quequedan registrados en el diario de errores de Adaptive Server.

Mediante la definición de los parámetros de configuración log audit logonsuccess o log audit logon failure, puede activar o desactivar el registro de loginscorrectos o incorrectos de Adaptive Server.

También puede especificar que un mensaje concreto, identificado por su id demensaje, se registre mediante el parámetro with_log en los procedimientos desistema sp_addmessage o sp_altermessage. Consulte estos procedimientosde sistema en el Manual de consulta de Adaptive Server.

Estas funciones afectan al diario de errores de Adaptive Server en todas lasplataformas, así como al diario de eventos de Windows NT en servidores deWindows NT, si está activada la opción event logging.

Nuevos procedimientos de sistemaLa tabla 5-11 muestra los procedimientos de sistema nuevos para la función deregistro ampliado de errores.

Tabla 5-11: Procedimientos de sistema nuevos para el registroampliado de errores

Procedimientode sistema Descripción

sp_altermessage Activa y desactiva el registro de un mensaje definidopor el sistema o el usuario en el diario de errores deAdaptive Server.

sp_configure

"log audit logon success" Especifica si deben registrarse los logins correctos deAdaptive Server en el diario de errores de AdaptiveServer y de los servidores de Windows NT en elRegistro de eventos de Windows NT, si está activadoel registro de eventos.

"log audit logon failure" Especifica si deben registrarse los logins incorrectosde Adaptive Server en el diario de errores de AdaptiveServer y de los servidores de Windows NT en elRegistro de eventos de Windows NT, si está activadoel registro de eventos.

Page 107: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

93

Procedimientos de sistema modificadosLos siguientes procedimientos de sistema se han modificado para hacerloscompatibles con la función de registro ampliado de errores mediante el uso delparámetro with_log:

• sp_addmessage

• sp_addserver

Procedimientos almacenados extendidos (ESP)Esta versión admite procedimientos almacenados extendidos (ESP) definidospor el usuario y por el sistema.

Los procedimientos ESP proporcionan un método de llamada a las funcionesde lenguaje de procedimientos desde Adaptive Server. El lenguaje deprocedimientos en el que están escritas las funciones debe ser capaz de llamara funciones del lenguaje C y de manipular tipos de datos C.

Los procedimientos ESP permiten a Adaptive Server llevar a cabo una tareafuera de Adaptive Server en respuesta a un evento que tenga lugar dentro deAdaptive Server. Por ejemplo, una tarea de procedimiento fuera del sistema deadministración de base de datos relacional (RDBMS), por ejemplo, lacomunicación de seguridad, puede invocarla un disparador en una tabla de basede datos que se activa cuando el valor de seguridad alcanza un valor determinado.También es posible enviar una notificación de correo electrónico o difusión atoda la red en respuesta a un evento que tenga lugar en el sistema RDBMS.

La interfaz con ESP es similar a la interfaz con los procedimientos de sistemay procedimientos almacenados definidos por el usuario. La diferencia radica enque ESP ejecuta código de lenguaje de procedimientos, en lugar deinstrucciones de Transact-SQL.

Page 108: Nuevas funciones en Adaptive Server versión 12.5

Procedimientos almacenados extendidos (ESP)

94

XP ServerLos procedimientos almacenados extendidos los implementa una aplicaciónOpen Server™ denominada XP Server, que se ejecuta en el mismo equipo queAdaptive Server. La ejecución de procedimientos almacenados extendidos enun proceso independiente protege a Adaptive Server de los fallos de códigoESP erróneo. Adaptive Server y XP Server se comunican mediante llamadasa procedimientos remotos (RPC, remote procedure calls).

La función que implementa el procedimiento ESP se compila y vincula en unabiblioteca de vínculos dinámicos (DLL) o en una biblioteca compartida.Adaptive Server busca la función con el mismo nombre que el procedimientoESP solicitado en las tablas del sistema y transfiere el nombre de la funcióny de la biblioteca DLL a XP Server.

XP Server es el responsable de:

• Cargar la DLL, si no lo está.

• Invocar la función que implementa el procedimiento ESP.

• Transferir el estado de devolución de la función, parámetros de saliday resultados a Adaptive Server.

Adaptive Server transfiere los resultados de la función al cliente.

Adaptive Server inicia XP Server con la primera petición ESP y cierraXP Server cuando se cierra Adaptive Server.

El programa de instalación o configuración de cada plataforma añade laentrada predeterminada <hostname>_XP al archivo de interfaces y la tablasysservers. Para añadir otras entradas de XP Server al archivo de interfaces,debe utilizar dsedit. Las entradas de XP Server en la tabla sysservers debenrealizarse de forma manual. No existe un archivo run_server asociado conXP Server.

Consulte la información relativa a la utilización y desarrollo de procedimientosESP en el Manual del usuario de Transact-SQL.

Para desarrollar sus propios procedimientos ESP, debe adquirir el productoOpen Server.

Page 109: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

95

Procedimientos ESP definidos por el sistemaLa tabla 5-12 enumera los procedimientos ESP definidos por el sistema.

Tabla 5-12: Procedimientos ESP definidos por el sistema

Además, los procedimientos ESP específicos para Windows NT admiten funcionesde Windows NT, por ejemplo, registro de eventos y correo de Adaptive Server.

Para obtener una lista completa de procedimientos ESP de sistema, consulteel Capítulo 5, "Procedimientos almacenados extendidos de sistema", en elManual de referencia de Adaptive Server.

Nuevos procedimientos de sistema para ESPLa tabla 5-13 enumera los procedimientos de sistema para ESP.

Tabla 5-13: Nuevos procedimientos de sistema para ESP

Procedimiento desistema Descripción

xp_cmdshell Ejecuta un comando del sistema operativo original en elsistema servidor que está ejecutando Adaptive Server.

xp_enumgroups Muestra los grupos de un dominio de Windows NTconcreto. (Sólo en Windows NT)

Procedimiento desistema Descripción

sp_addextendedproc Crea un procedimiento ESP.

sp_configure

"esp execution priority" Define la prioridad del subproceso de XP Server parala ejecución ESP.

"esp execution stacksize" Define el tamaño de la pila, en bytes, que se asigna a laejecución ESP.

"esp unload dll" Especifica si las DLL que admiten procedimientosESP deben descargarse automáticamente de lamemoria de XP Server después de completar lallamada ESP.

"xp_cmdshell_context" Define el contexto de seguridad para el comando desistema operativo que se va a ejecutar mediante elprocedimiento de sistema xp_cmdshell.

sp_dropextendedproc Elimina un procedimiento ESP.

sp_freedll Descarga una DLL que se cargó en la memoria de XPServer para admitir la ejecución de un procedimientoESP.

Page 110: Nuevas funciones en Adaptive Server versión 12.5

Límites de integridad referencial aumentados

96

Comandos compatiblesLos siguientes comandos de Transact-SQL se han mejorado para hacerloscompatibles con los procedimientos ESP.

• create procedure

• drop procedure

• execute

Límites de integridad referencial aumentadosLa función de límite flexible de integridad referencial incrementa el númeromáximo de referencias de tablas permitido en una consulta de 16 a 192.El nuevo límite elimina la necesidad de escribir disparadores especiales paracompensar la limitación anterior de 16 tablas.

Si una tabla tiene referencias a otras tablas, Adaptive Server explora las tablasa las que se hace referencia cuando se modifica ésta. Adaptive Server utilizadescriptores de exploración para administrar la exploración de las tablas.Un descriptor de exploración es una estructura de datos interna que administrala exploración de las tablas consultadas. Para hacer un uso eficaz de los recursosde Adaptive Server, puede configurarlo de modo que utilice el número adecuadode descriptores de exploración en su sistema.

Para obtener más información sobre el uso de la integridad referencial,consulte el Manual del usuario de Transact-SQL.

Para obtener información sobre la configuración de descriptores de exploración,consulte el parámetro de configuración number of aux scan descriptors en elCapítulo 11, "Definición de los parámetros de configuración", del Manual deadministración del sistema.

sp_helpextendedproc Muestra los procedimientos ESP en la base de datosactual con sus archivos DLL asociados.

Procedimiento desistema Descripción

Page 111: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

97

Administración de caché de metadatosAdaptive Server le permite administrar cachés de metadatos independientespara:

• Índices de usuario

• Objetos como procedimientos, disparadores, vistas, reglas y valorespredeterminados

• Bases de datos

La administración de cachés de metadatos independientes para estos objetoses beneficiosa para los servidores que contienen un gran número de índices deusuario y objetos, así como los casos en los que hay un alto grado desimultaneidad entre los usuarios.

Un caché de metadatos es una zona reservada de memoria para el seguimientode índices, objetos o bases de datos. Cuando configura un caché de metadatospara los índices, objetos o bases de datos, Adaptive Server obtiene acceso a lainformación directamente desde la estructura de la memoria que los describeen la fila sysindexes, sysobjects o sysdatabases.

Este método mejora el rendimiento porque Adaptive Server omite la realizaciónde llamadas costosas que requieren acceso al disco. La configuración de cachésde metadatos también mejora el rendimiento porque reduce la sincronizacióny los conflictos de spinlock cuando Adaptive Server tiene que recuperarinformación de índices, objetos o bases de datos en el momento de ejecución.

Para obtener más información sobre la configuración de cachés de metadatos,consulte "Cachés de metadatos" en las páginas 11-61 del Manual deadministración del sistema.

Control del acceso a texto SQL por lotesLa función de control de acceso a texto SQL por lotes permite al usuarioadministrador del sistema mostrar el texto SQL por lotes de cualquier comandocliente que esté ejecutándose en Adaptive Server. Aunque puede configurarAdaptive Server de forma que guarde el texto por lotes, los lotes sólo estánvisibles mediante Monitor Server de Adaptive Server.

El control de acceso incluye sp_showplan, que le permite ver el plan de consultaspara la consulta que se está ejecutando. No necesita Monitor Server pararecuperar los planes de consulta.

Page 112: Nuevas funciones en Adaptive Server versión 12.5

Control del acceso a texto SQL por lotes

98

Tanto la función de control de acceso como sp_showplan resultan especialmenteútiles para determinar por qué se cuelga una sesión de cliente o utiliza grancantidad de tiempo de CPU o E/S física.

Asignación de memoria para texto por lotesLa opción control de acceso a texto SQL por lotes está desactivada de formapredeterminada cuando se instala Adaptive Server, por lo tanto, debeconfigurar Adaptive Server de modo que asigne memoria para esta función.Tenga en cuenta la siguiente información para ayudarle a determinar cuántamemoria debe asignar por usuario:

• Los lotes de SQL que superan la cantidad asignada de memoria se truncansin aviso. Por lo tanto, si no asigna memoria suficiente para las instruccionesdel lote, el texto que desea ver puede ser la parte del lote que quedetruncado.

• A mayor cantidad de memoria compartida asignada al texto de SQL,menor es la posibilidad de que la instrucción problemática quede truncadadel lote copiado a la memoria compartida. No obstante, la memoria queasigne al texto SQL reduce la cantidad de memoria disponible para loscachés de datos y procedimientos.

Nuevas columnas en sysprocessesPuede que el procedimiento que desea ver esté anidado en un lote de textoSQL. Para ayudarle a ver el procedimiento anidado, se han añadido columnasa la tabla sysprocesses que especifican el identificador de objeto, número deinstrucción actual y número de línea de la instrucción actual del procedimientoque está ejecutándose.

La tabla 5-14 muestra las columnas nuevas añadidas a la tabla sysprocesses.

Tabla 5-14: Columnas añadidas a sysprocesses

Nombrede columna

Tipode datos Determina

id númeroentero

El identificador del objeto del procedimiento enejecución; si el valor es 0, no se está ejecutando ningúnprocedimiento.

Page 113: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

99

Para obtener más información, consulte "Configuración de Adaptive Serverpara el almacenamiento de texto SQL por lotes" en las páginas 4–17 delManual de administración del sistema.

Copia masiva paralelaLa función de copia masiva paralela le permite copiar datos en paraleloa Adaptive Server desde varios archivos. La copia masiva paralela aumenta elrendimiento de forma considerable durante las sesiones bcp porque las tareasde copia masiva de gran tamaño pueden dividirse en varias sesiones y ejecutarsede forma simultánea.

Para poder copiar datos a la base de datos mediante la función de copia masivaparalela, debe particionar la tabla que contendrá los datos. A continuación podráemitir varias sesiones bcp y cada sesión copiará sus datos de un archivo fuentedistinto a una partición distinta. Si está copiando datos de un archivo de sistemaoperativo de gran tamaño, puede dividir este archivo en varios más pequeñose iniciar varias sesiones de copia masiva paralelas.

La figura 5-2 muestra el funcionamiento de la función de copia masiva paralela.

linenum númeroentero

El número de línea de la instrucción actual dentro delprocedimiento almacenado en ejecución o el númerode línea de la instrucción del lote SQL actual, si no seestá ejecutando ningún procedimiento.

stmtnum númeroentero

El número de instrucción actual dentro delprocedimiento en ejecución o el número de instruccióndel lote SQL, si no se está ejecutando ningúnprocedimiento.

Nombrede columna

Tipode datos Determina

Page 114: Nuevas funciones en Adaptive Server versión 12.5

Consultas paralelas y particiones mejoradas

100

Figura 5-2: Copia de datos en una tabla particionada mediante copiamasiva paralela

También puede utilizar los indicadores -F y -L para designar la primera y últimafila del mismo archivo de equipo para cada una de las sesiones de copia masivaparalela.

Para obtener más información sobre la copia masiva paralela, consulte elcomando bcp en el el manual de utilidades para su plataforma.

Consultas paralelas y particiones mejoradasCuando configura Adaptive Server para la utilización de procesamiento deconsultas paralelas, el optimizador evalúa cada consulta para determinar si sepuede ejecutar de forma paralela. Si es así, la consulta se divide en componentesque se procesan de forma simultánea. Los resultados se combinan y se envíanal cliente en un periodo de tiempo inferior al que supondría procesar lasconsultas en serie como componentes individuales.

A fin de obtener el mismo rendimiento, el procesamiento de una consulta enparalelo requiere que Adaptive Server trabaje más y utilizar recursos adicionalesque el procesamiento de la consulta en serie. También supone evaluar equilibriosde recursos más complejos para obtener un rendimiento óptimo. El procesamientode consultas paralelas completamente activado requiere varios procesos,motores y particiones, lo que tiene como consecuencia un mayor consumogeneral para Adaptive Server, más requisitos de CPU y mayor E/S de disco.

Page 115: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

101

Puede configurar varios niveles de paralelismo, cada uno de los cuales suponeun beneficio de rendimiento y requiere un sacrificio en recursos físicos equivalente.El Capítulo 13, "Introducción al procesamiento de consultas paralelas" delManual de rendimiento y mejoras introduce el modelo de procesamiento deconsultas paralelas de Adaptive Server y sus conceptos. También trata delequilibrio entre recursos y las mejoras de rendimiento para los distintos nivelesde paralelismo.

Para obtener másinformación

En el Manual de rendimiento y mejoras, consulte:

• Capítulo 5, "Bloqueo en Adaptive Server", para obtener información sobreel bloqueo en Adaptive Server para la ejecución de consultas paralelas.

• Capítulo 9, "Planes de consulta", para obtener información sobre losnuevos mensajes showplan añadidos para la ejecución de consultasparalelas.

• Capítulo 14, "Optimización de consultas paralelas", para obtener informaciónsobre cómo determina el optimizador de Adaptive Server la idoneidadpara la ejecución paralela.

• Capítulo 15, "Ordenación paralela", para ver una introducción a los temasde ordenación paralela.

• Capítulo 17, "Control de la ubicación de datos físicos", para obtenerinformación sobre tablas particionadas, creación de índices agrupados entablas particionadas y procesamiento en paralelo.

En el Manual de administración del sistema, consulte:

• Capítulo 11, "Definición de parámetros de configuración", para obtenerinformación sobre cómo configurar varios niveles de paralelismo, cadauno de los cuales supone un beneficio de rendimiento y requiere elsacrificio en recursos físicos equivalente.

Recuperación a un momento dadoLa recuperación a un momento dado le permite recuperar una base de datosmediante la confirmación de un momento dado en su diario de transacciones.Para ello, utilice la opción until_time del comando load transaction.

Page 116: Nuevas funciones en Adaptive Server versión 12.5

Autorización proxy

102

Esta función resulta útil si, por ejemplo, un usuario elimina una tablaimportante de una base de datos por error, ya que puede utilizar la opciónuntil_time para recuperar los cambios realizados a dicha base de datos hasta elmomento justo antes de que se borrara la tabla.

Puede utilizar la recuperación a un momento dado en todas las bases de datosque se pueden cargar y volcar. No obstante, no puede utilizarlo en bases dedatos en las que los datos y diarios estén en el mismo dispositivo, por ejemplo,la base de datos master o cualquier base de datos, por ejemplo tempdb, cuyodiario se haya trucado desde el último dump database.

Para obtener más información sobre la recuperación a un momento dado,consulte "Carga de registros de transacción a un momento dado" en las páginas21–44 del Manual de administración del sistema y el comando load transactionen el Manual de consulta de Adaptive Server.

Autorización proxyAdaptive Server proporciona una función de autorización proxy, que permitea un usuario asumir la identidad de otro para todo el servidor. El oficial deseguridad del sistema puede conceder esta capacidad de asumir el contexto deseguridad de otro usuario a ciertos identificadores de login. Si un identificadorde login tiene permiso para utilizar autorización proxy, puede suplantara cualquier otro en Adaptive Server.

Advertencia: La capacidad de asumir la identidad de otro usuario es unaherramienta muy poderosa y debe limitarse de forma estricta. Los usuarios conesta capacidad podrían asumir la identidad del usuario "sa", lo que les daríapoderes ilimitados dentro de Adaptive Server. Conceda este permiso sólo aadministradores y aplicaciones fiables y supervise su actividad en el servidor.

Un oficial de seguridad o administrador del sistema puede asumir los permisosde otro usuario para verificar que éstos son los adecuados o para realizar tareasde mantenimiento en los objetos de la base de datos del usuario.

Un servidor de aplicaciones puede utilizar la autorización proxy para iniciaruna sesión en Adaptive Server con un identificador genérico, que el servidorutiliza para ejecutar procesos y comandos para varios usuarios.

Page 117: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

103

Un oficial de seguridad del sistema utiliza el comando grant set proxy o grantset session authorization para conceder a un usuario permiso para utilizar laautorización proxy. A continuación, con este permiso, el usuario puede ejecutarlos comandos set proxy o set session authorization para representar a otrousuario. Los usuarios que ejecutan set proxy o set session authorization operancon el identificador de login y servidor correspondiente al usuario al querepresentan. El identificador de login y servidor está activo a lo largo de todoel servidor en todas las bases de datos.

Nota: set proxy y set session authorization son idénticos en funciones y puedenutilizarse de forma intercambiable. La única diferencia entre ellos es que setsession authorization es compatible con SQL92 y set proxy es una extensión deTransact-SQL.

Para obtener más información sobre la autorización proxy, consulte elManual de administración de seguridad.

Aislamiento de fallos de recuperaciónEn las versiones anteriores, cuando la función de recuperación detectaba dañosen una base de datos, dejaba inaccesible toda la base de datos. La base de datosquedaba inaccesible para todos los usuarios hasta que las páginas sospechosasse reparasen o eliminasen de la misma.

Con el aislamiento de fallos de recuperación, el administrador del sistema tienela opción de aislar las páginas dañadas marcadas como sospechosas por larecuperación mientras que el resto de la base de datos está disponible en líneapara todos los usuarios.

El aislamiento de fallos de recuperación aporta al administrador del sistema lacapacidad de:

• Especificar si debe quedar inaccesible toda la base de datos o sólo laspáginas sospechosas cuando la recuperación detecte daños

• Especificar si una base de datos con páginas sospechosas se pone en líneaen modo read_only

• Enumerar las bases de datos con páginas sospechosas

• Enumerar las páginas sospechosas por identificador de página, identificadorde índice y nombre de objeto

Page 118: Nuevas funciones en Adaptive Server versión 12.5

Aislamiento de fallos de recuperación

104

• Poner las páginas sospechosas en línea para el administrador del sistemamientras se reparan

• Poner las páginas sospechosas en línea para todos los usuarios de la basede datos una vez que se hayan reparado

La capacidad de aislar las páginas sospechosas mientras que el resto de la basede datos está disponible en línea aporta un mayor grado de flexibilidad altratamiento de los datos dañados. Los problemas se pueden diagnosticar,y a veces corregir, mientras que la mayor parte de la base de datos sigueestando accesible a los usuarios. El alcance del daño puede evaluarse y puedenplanificarse reparaciones de emergencia para el momento más adecuado.

El administrador del sistema puede hacer que las páginas sin conexión pasena estar en línea de modo temporal, únicamente para su uso, para ayudarle en elanálisis y reparación de las páginas sospechosas.

El aislamiento de fallos de recuperación sólo se aplica a las bases de datos deusuario. Las bases de datos de sistema quedan sin conexión en su totalidad sitienen alguna página sospechosa.

Nuevos procedimientos de sistemaLa tabla 5-15 enumera los nuevos procedimientos de sistema para el aislamientode fallos de recuperación:

Tabla 5-15: Procedimientos de sistema nuevos para el aislamiento defallos de recuperación

Procedimientode sistema Descripción

sp_forceonline_db Proporciona acceso a todas las páginas sospechosasde una base de datos.

sp_forceonline_page Proporciona acceso a una página sospechosa concreta.

sp_listsuspect_db Enumera todas las bases de datos que tienen páginasmarcadas como sospechosas por la recuperación.

sp_listsuspect_page Enumera todas las páginas de una base de datos queestán marcadas como sospechosas por la recuperación.

sp_setsuspect_granularity Muestra y define el modo de aislamiento de fallos derecuperación. Este modo define si la recuperaciónmarca una base de datos como sospechosa en sutotalidad o sólo las páginas dañadas.

sp_setsuspect_threshold Define el número máximo de páginas sospechosasque la recuperación permitirá en una base de datosantes de marcar la base de datos como sospechosa ensu totalidad.

Page 119: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

105

Efectos secundarios del aislamiento de fallos de recuperación• Las transacciones que intenten obtener acceso a los datos sin conexión de

forma directa o indirecta fallarán.

• No puede utilizar el comando dump database en una base de datos quetenga páginas sin conexión. Esto impide a los usuarios volcar una base dedatos dañada.

• No puede utilizar los comandos dump transaction with no_log o dumptransaction with truncate_only en una base de datos con páginas sinconexión.

Para obtener más información sobre el aislamiento de fallos de recuperación,consulte "Aislamiento de fallos durante la recuperación" en las páginas 20–7del Manual de administración del sistema.

Política de sustitución de caché LRU flexibleLa política de sustitución de caché LRU (least recently used, usado menosrecientemente) flexible es una función de mejora del rendimiento diseñada conel fin de reducir los recursos de proceso en los cachés con nombre donde notenga lugar ninguna sustitución de buffer o ésta sea de muy poca importancia.

La política de sustitución LRU flexible elimina el consumo de vínculo delcaché necesario para los cachés mantenidos en modo MRU/LRU (usado másrecientemente/usado menos recientemente) La sustitución LRU flexible estápensada para utilizarse cuando se cumplan las dos condiciones siguientes:

• No existe sustitución de buffers en el caché o ésta es de muy poca importancia.

• Los datos no se actualizan o se actualizan con muy poca frecuencia.

Además de ahorrar los recursos de proceso necesarios para mantener la cadenaMRU/LRU, la política de sustitución LRU flexible puede mejorar el rendimientode la unidad CPU en servidores con varias unidades CPU.

Consulte el Capítulo 9, "Configuración de cachés de datos", en el Manual deadministración del sistema para obtener información sobre la configuración decachés con el fin de utilizar la política de sustitución de caché LRU.

Page 120: Nuevas funciones en Adaptive Server versión 12.5

Límites de recursos

106

Consulte el Capítulo 16, "Utilización y rendimiento de la memoria", en el Manualde rendimiento y mejoras para obtener información sobre cómo seleccionarcachés para los que la política de sustitución LRU flexible pueda mejorar elrendimiento.

Límites de recursosAdaptive Server proporciona límites de recursos para ayudar a los administradoresdel sistema a impedir que las consultas y transacciones monopolicen losrecursos del servidor. Un límite de recurso es un grupo de parámetrosespecificado por un administrador del sistema para impedir que un identificadorde login o aplicación concreta:

• Exceda los costes de E/S estimados o reales, determinados por el optimizador

• Devuelva más de un número concreto de filas

• Supere un tiempo transcurrido determinado

El grupo de parámetros para el límite de recursos incluye la hora del día en laque entra en vigor el límite y el tipo de acción que se va a realizar. Por ejemplo,puede impedir que se ejecuten informes de gran tamaño durante las horascríticas del día o interrumpir una sesión cuya consulta genere productoscartesianos no deseados.

Para especificar horas del día o la semana, puede crear intervalos de tiempoconcretos. Un intervalo de tiempo es un bloque continuo de tiempo dentro delmismo día o a lo largo de uno o más días contiguos de la semana. Lo definensus periodos de inicio y fin. Los días contiguos de la semana pueden abarcar elfinal de una y el comienzo de la siguiente.

Adaptive Server incluye un intervalo de tiempo predefinido, el intervalo "at alltimes", que abarca el periodo de medianoche a medianoche, de lunes a domingo.Puede crear, modificar y eliminar otros intervalos de tiempo necesarios para loslímites de recursos.

Para obtener más información sobre límites de recursos, consulte el Capítulo 12,"Limitación del acceso a los recursos del servidor", del Manual deadministración del sistema.

Page 121: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

107

Nuevos procedimientos de sistemaLos procedimientos de sistema de la tabla 5-16 se han añadido para la funciónde límites de recursos.

Tabla 5-16: Nuevos procedimientos de sistema para límites de recursos

Comandos compatiblesLos siguientes comandos son compatibles con la función de límites derecursos:

• set showplan

• set statistics io

• statistics time

• select @@rowcount

Procedimientode sistema Descripción

sp_add_resource_limit Crea un límite de recursos.

sp_add_time_range Crea un intervalo de tiempo con nombre.

sp_configure

"allow resource limits" Apunta al servidor que asigne memoria interna paraintervalos de tiempo, límites de recursos y alarmasinternas de servidor. También apunta al servidor queasigne internamente los intervalos y límitescorrespondientes a las sesiones de usuario. Cuandoesta opción tiene el valor 1 (activada), sp_configuremuestra el coste estimado del optimizador para unaconsulta. El valor predeterminado es 0 (desactivada).

sp_drop_resource_limit Elimina un límite de recursos.

sp_drop_time_range Elimina un intervalo de tiempo con nombre.

sp_help_resource_limit Muestra los límites de recursos del servidor actual.

sp_modify_resource_limit Modifica un límite de recursos.

sp_modify_time_range Modifica un intervalo de tiempo con nombre.

Page 122: Nuevas funciones en Adaptive Server versión 12.5

Verificación y cifrado de texto fuente

108

Verificación y cifrado de texto fuenteEn versiones anteriores a Adaptive Server 11.5, el texto fuente de los objetoscompilados se guardaba en syscomments, con el fin de que pudiese devolversea un usuario que ejecutara sp_helptext. Dado que ésta era la única razón paraguardar el texto fuente, los usuarios normalmente lo borraban para ahorrarespacio en el disco y eliminar información confidencial de esta zona pública.

En Adaptive Server 11.5, no debe eliminar el texto fuente de syscomments. Laeliminación de texto fuente de syscomments ocasionará problemas a la hora deactualizar a la siguiente versión de Adaptive Server. El proceso de actualizaciónde versiones futuras de Adaptive Server necesitará que el texto fuente de losobjetos compilados esté presente en syscomments en el momento de laactualización. Antes de actualizar a la siguiente versión de Adaptive Server,debe restaurar el texto fuente que falta en syscomments.

Puede utilizar el procedimiento de sistema sp_checksource para verificar queel texto fuente está presente en syscomments por cada objeto compilado. Paraimpedir que otros usuarios puedan ver el texto fuente de syscomments, puedecifrarlo mediante el procedimiento de sistema sp_hidetext.

Para obtener más información, consulte "Objetos compilados" en las páginas 1–3del Manual del usuario de Transact-SQL. Consulte también los procedimientossp_checksource y sp_hidetext en el Manual de consulta de Adaptive Server.

Sybase CentralCon el lanzamiento de Adaptive Server, Sybase ya no suministra SQL ServerManager, que se ha sustituido por Sybase Central™, la interfaz de administracióncomún de Sybase y el complemento Adaptive Server Enterprise para SybaseCentral.

El complemento Adaptive Server para Sybase Central le permite administrarlas instalaciones de Adaptive Server mediante la herramienta gráfica deadministración Sybase Central. Puede administrar los servidores AdaptiveServer que se ejecuten en cualquier plataforma desde un equipo con lossistemas operativos Windows 95 o Windows NT.

Para aprender a utilizar Sybase Central a fin de administrar Adaptive Server,consulte Administración y control de Sybase Adaptive Server Enterprise.

Page 123: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

109

sp_sysmonsp_sysmon es compatible con las nuevas funciones de mejora de rendimientode la versión 11.5, incluidas las siguientes nuevas secciones del informesp_sysmon:

• Administración de cola de aplicaciones

• Uso de recuperación previa asíncrona

• Administración de caché de metadatos

• Control del acceso a SQL en ejecución

• Administración de consultas paralelas

• Administración de procesos de trabajo

La sintaxis para sp_sysmon se ha modificado:

• Puede especificar el intervalo mediante la fórmula "hh:mm:ss".

• Puede utilizar el argumento begin_sample para iniciar sp_sysmon quecontinuará supervisando hasta que utilice end_sample para imprimir elinforme.

• Puede imprimir sólo una sección del informe a la vez. Este ejemploespecifica un intervalo de 15 minutos e imprime sólo la sección deadministración de caché de datos:

sp_sysmon "00:15:00, dcache

Para obtener más información, consulte el Capítulo 24, "Control delrendimiento con sp_sysmon" en el Manual de rendimiento y mejoras.

Mejoras de ejecución en dos fasesEl protocolo de ejecución en dos fases permite a las aplicaciones clientecoordinar las actualizaciones de transacciones en dos o más servidoresAdaptive Server y considera estas transacciones como una sola. La ejecuciónen dos fases garantiza que se actualicen todas o ninguna de las bases de datosen los servidores Adaptive Server que participan.

Page 124: Nuevas funciones en Adaptive Server versión 12.5

Mejoras de ejecución en dos fases

110

Las mejoras de ejecución en dos fases son:

• Mejor administración de espacio y diario: la tabla spt_committab ha pasadode la base de datos master a una base de datos de sistema nueva, sybsystemdb.

• Rendimiento mejorado: puede utilizar un valor aleatorio para elidentificador de la ejecución – commid.

spt_comittab ha pasado a sybsystemdbLa tabla spt_committab en Adaptive Server almacena información y realiza unseguimiento del estado de finalización de todas las transacciones con ejecuciónen dos fases. Todas las actividades realizadas sobre spt_committab quedanregistradas. Antes de la versión 11.5, spt_committab residía en la base de datosmaster. No obstante, la actividad de registro en spt_committab para lastransacciones con ejecución en dos fases puede ocupar el diario detransacciones de master, lo que puede generar problemas frecuentes deadministración de espacio.

En la versión 11.5, la tabla spt_committab reside en una base de datos nuevadenominada sybsystemdb, en vez de la base de datos master. El hecho de quespt_committab cuente con su propia base de datos facilita la administración yrecuperación de espacio para las transacciones con ejecución en dos fases, pordos motivos:

• El comando dump tran puede utilizarse sobre sybsystemdb.

• A diferencia de la base de datos master, la base de datos sybsystemdb esampliable.

El identificador de la ejecución ha cambiado a un valor aleatorioEl valor del identificador de la ejecución, commid en la tabla spt_committab, seha convertido en un valor aleatorio (entre 1 y 2.147.483.647 (231–1), en lugarde ser un valor que se incrementa de forma monótona. Con ello se reducen losconflictos de bloqueo de páginas en la fila donde reside el commid máximocuando varias transacciones distribuidas intentan insertar una entrada en latabla spt_committab. spt_committab sigue teniendo un índice agrupado único.

Para obtener información sobre la configuración de Adaptive Server para lafunción de ejecución en dos fases, consulte la documentación de configuraciónde Adaptive Server correspondiente a su plataforma.

Page 125: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

111

Roles definidos por el usuarioLa función de roles definidos por el usuario permite al oficial de seguridad delsistema simplificar la tarea de conceder e impedir el acceso a los datos.

El oficial de seguridad del sistema puede crear roles, solicitar a los propietariosde objetos que concedan privilegios a cada rol y conceder los roles definidospor el usuario a empleados concretos, según las funciones que desempeñen enla organización. El oficial de seguridad del sistema también puede revocar losroles definidos por el usuario concedidos al empleado.

Para obtener más información sobre los roles definidos por el usuario, consulteel Manual de administración de seguridad.

Integración de Registro de eventos de Windows NTEsta versión ha ampliado las opciones de registro de errores de AdaptiveServer en el Registro de eventos de Windows NT. Esta función se suma alregistro automático en el diario de errores de Adaptive Server. Esta opción sóloestá disponible en servidores de Windows NT.

La opción de Windows NT de registro de eventos de mensajes de AdaptiveServer está activada de forma predeterminada, aunque puede desactivarla sidefine un valor de 0 para el parámetro de configuración event logging. Tambiénpuede especificar que un equipo Windows NT remoto reciba el diario deeventos si define el nombre del equipo remoto como el parámetro deconfiguración event log computer name.

Esta función proporciona un procedimiento almacenado extendido que puedeutilizar para registrar eventos definidos por el usuario en el Registro de eventosde Windows NT desde Adaptive Server. Consulte sp_logdevice en el Manualde consulta de Adaptive Server.

Page 126: Nuevas funciones en Adaptive Server versión 12.5

Compatibilidad con la interfaz MAPI de Windows NT

112

Procedimientos de sistema y procedimientos almacenadosextendidos compatibles

Los siguientes procedimientos ESP de sistema y parámetros sp_configureadmiten la función de integración de registro de eventos de Windows NT.

Tabla 5-17: Compatibilidad de sistema para la integración con elregistro de eventos de Windows NT

Compatibilidad con la interfaz MAPI de Windows NTSybase Adaptive Server Enterprise para Windows NT puede enviar y recibirmensajes de correo electrónico mediante la interfaz MAPI (Message ApplicationProgramming Interface) de Microsoft. Esta función, denominada Sybmail,sólo está disponible para Windows NT en este momento.

Adaptive Server puede enviar mensajes de salida que estén formados por textoo resultados de consultas. Adaptive Server puede recibir consultas comomensajes de entrada.

Para utilizar Sybmail, Adaptive Server debe tener una cuenta de correo deWindows NT y un perfil de correo de Windows NT. Sybmail también debetener un identificador de login en Adaptive Server.

Consulte la información relativa a la configuración y utilización de Sybmail enConfiguración de Adaptive Server para Windows NT.

Procedimiento Descripción

xp_logevent Procedimiento ESP definido por el sistema queregistra un evento definido por el usuario en elRegistro de eventos de Windows NT.

sp_configure

"event log computer name" Especifica el nombre del equipo Windows NT queregistra los mensajes de Adaptive Server en elRegistro de eventos de Windows NT.

"event logging" Activa y desactiva el registro de mensajes deAdaptive Server en el Registro de eventos deWindows NT.

Page 127: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 5 Nuevas funciones en Adaptive Server versión 11.5

113

Procedimientos de sistema y procedimientos almacenadosextendidos compatibles

Los siguientes procedimientos de sistema y ESP de sistema admiten la funciónMAPI de Windows NT:

Tabla 5-18: Compatibilidad con la interfaz MAPI de Windows NT

Para obtener más información sobre los procedimientos ESP definidos por elsistema, consulte el Capítulo 5, "Procedimientos almacenados extendidos desistema", en el Manual de consulta de Adaptive Server.

Integración del Monitor de rendimiento de Windows NTPuede activar y desactivar la posibilidad de controlar las estadísticas deAdaptive Server desde el Monitor de rendimiento de Windows NT mediante ladefinición del parámetro de configuración SQL Perfmon integration. Esteparámetro se aplica sólo a servidores de Windows NT.

Procedimiento Descripción

sp_configure

"start mail session" Activa y desactiva el inicio automático de una sesión decorreo de Adaptive Server cuando se inicia AdaptiveServer.

sp_processmail Lee, envía y elimina mensajes de la bandeja de entrada deAdaptive Server. Disponible sólo en Windows NT.

xp_deletemail Elimina un mensaje de la bandeja de entrada de AdaptiveServer.

xp_findnextmsg Recupera el identificador del siguiente mensaje en labandeja de entrada de Adaptive Server.

xp_readmail Lee un mensaje de la bandeja de entrada de AdaptiveServer.

xp_sendmail Envía un mensaje a los destinatarios especificadosmediante la interfaz MAPI.

xp_startmail Inicia una sesión de correo de Adaptive Server.

xp_stopmail Detiene una sesión de correo de Adaptive Server.

Page 128: Nuevas funciones en Adaptive Server versión 12.5

Integración del Monitor de rendimiento de Windows NT

114

Adaptive Server debe registrarse como servicio NT para admitir la integracióncon el monitor de rendimiento. Esto ocurre de forma automática cuando iniciaAdaptive Server mediante Sybase Central, el Administrador de servicios o laopción Servicios del Panel de control, así como cuando ha configuradoWindows NT para que inicie Adaptive Server como servicio automático.

Para obtener más información sobre el Monitor de rendimiento de Windows NT,consulte el Capítulo 9, "Tareas administrativas y rendimiento y mejoras", en elConfiguración de Adaptive Server para Windows NT.

Procedimiento de sistema compatibleEl siguiente parámetro de configuración sp_configure admite la funciónIntegración del Monitor de rendimiento de Windows NT.

Tabla 5-19: Compatibilidad con el Monitor de rendimientode Windows NT

Procedimiento Descripción

sp_configure

"SQL Perfmon Integration" Activa y desactiva la posibilidad de supervisar lasestadísticas de Adaptive Server desde el Monitor derendimiento de Windows NT.

Page 129: Nuevas funciones en Adaptive Server versión 12.5

115

C A P Í T U L O 6 Nuevas funciones de SQL Serverversión 11.0

En este capítulo se describen las funciones y modificaciones del sistemaintroducidas en SQL Server versión 11.0. Si se actualiza a la versión 11.5desde una versión anterior a la 11.0, estas funciones le resultarán nuevas.

Se cubren los siguientes temas:

• "Nuevas funciones de la versión 11.0", en la página 115

• "Cambios del sistema en la versión 11.0", en la página 133

• "Cambios que pueden afectar a las aplicaciones existentes", en lapágina 138

Nuevas funciones de la versión 11.0Las nuevas funciones de la versión 11.0 son las siguientes:

• "Cachés definidos por el usuario", en la página 116

• "Cambios en el almacenamiento de datos", en la página 119

• "Cambios del diario de transacciones", en la página 122

• "Nivel 0 de aislamiento", en la página 123

• "Cambios del administrador de bloqueos", en la página 124

• "Tarea housekeeper", en la página 126

• "Configuración de SQL Server", en la página 127

• "Promoción de bloqueos", en la página 128

• "Motores múltiples de red", en la página 128

• "Mejoras introducidas en showplan", en la página 128

• "Cambios introducidos en las consultas y la modificación de datos",en la página 130

Page 130: Nuevas funciones en Adaptive Server versión 12.5

Nuevas funciones de la versión 11.0

116

• "Actualización de los volcados de base de datos", en la página 130

• "Determinación del dispositivo de cinta por Backup Server", en lapágina 131

• "Cambios en la columna IDENTITY", en la página 132

• "Nuevas variables globales text e image", en la página 133

Cachés definidos por el usuarioLa versión 11.0 permite que los administradores del sistema dividan el cachéde datos de SQL Server en cachés de datos con nombres diferentes, y enlazarbases de datos u objetos de base de datos a los mismos. Asimismo, losadministradores del sistema pueden crear bancos dentro de los cachés querealizan E/S grande al disco, por lo que mejora el rendimiento de muchasconsultas.

Configuración de cachés

Los cachés de datos con nombre se crean con el nuevo procedimiento delsistema sp_cacheconfig. Los bancos de memoria para E/S grande se configurandentro de los cachés de datos con sp_poolconfig. También se pueden configurarlos cachés y los bancos mediante la edición de un archivo de configuración.

Las entidades se enlazan a los cachés con sp_bindcache y se desenlazan consp_unbindcache o sp_unbindcache_all. El procedimiento del sistema sp_helpcacheproporciona información sobre los cachés y los enlaces de caché. sp_cacheconfigtambién proporciona información sobre los cachés y los bancos dentro de éstos.

Consulte el Capítulo 9, "Configuración de cachés de datos", del Manual deadministración del sistema para obtener instrucciones sobre la configuraciónde cachés con nombre y el enlace de objetos de base de datos a ellos.

Enlace de objetos a cachés definidos por el usuario

En general, puede incrementar el rendimiento al enlazar los siguientes objetosa sus propios cachés con nombre:

• La tabla sysindexes y su índice

Enlace estos dos objetos al mismo caché con nombre. Esta tabla y suíndice son los utilizados con mayor frecuencia. No obstante, no tiene quehacer excesivamente grande su caché con nombre.

Page 131: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

117

• La tabla syslogs

Le ayuda a reducir la contención de los bloqueos de bucle de laadministración del búfer. También debería configurar un banco dememoria de 4 K en el caché con nombre para beneficiarse del tamaño deE/S elevado, como se define en sp_logiosize.

• Base de datos tempdb

Esto le ayuda en el rendimiento si las aplicaciones generan muchas tablastemporales o de trabajo.

Además de los objetos anteriores, las tablas y los índices utilizados con mayorfrecuencia (basado en los diseños de su base de datos y aplicaciones) sonbuenos candidatos para enlazarlos a sus propios cachés. No obstante, si sólotiene una tabla sin índice, no se mejorará el rendimiento al enlazarla con uncaché con nombre.

Nota: En general, no es una buena idea tener demasiados cachés con nombresin aumentar la memoria total disponible para el servidor. Cada caché connombre adicional reduce la cantidad de memoria disponible en el cachépredeterminado.

Estrategias de caché

SQL Server versión 11.0 proporciona nuevas estrategias de optimización ynuevos comandos para controlar la utilización de esas estrategias con losobjetos, sesiones y consultas. La figura 6-1 muestra las dos estrategias decaché.

Figura 6-1: Opciones de estrategia de caché

Page 132: Nuevas funciones en Adaptive Server versión 12.5

Nuevas funciones de la versión 11.0

118

SQL Server puede:

• Leer las páginas al comienzo de la cadena MRU (utilizada más recientemente)para mantener las páginas en caché, de manera que se pueda accedera ellas muchas veces sin realizar E/S adicional

• Leer las páginas cerca del final del caché para que no fuercen otras páginasfuera del caché.

Consulte el Capítulo 16, "Utilización y rendimiento de la memoria", delManual de rendimiento y mejoras para obtener información sobre elrendimiento con las estrategias de caché.

E/S grande

Cuando se crean los cachés, todo el espacio se le asigna a un banco de 2 K. Sepuede dividir este banco para permitir que el caché realice E/S grande, leyendohasta ocho páginas de datos simultáneamente. Como la mayor parte del tiempode E/S se pasa en la realización de operaciones de cola, búsqueda yposicionamiento, una E/S grande puede mejorar apreciablemente el rendimientopara las consultas que buscan tablas enteras o rangos de tablas.

SQL Server puede también realizar E/S grande en el diario de transacciones.

Cambio del tamaño de E/S de diario

Utilizando el nuevo procedimiento del sistema sp_logiosize , puede cambiar eltamaño de E/S de diario que utiliza SQL Server. Esto puede mejorar elrendimiento al reducirse el número de veces que SQL Server escribe páginasdel diario de transacciones en el disco. El valor que especifique para sp_logiosizedebe corresponderse a un banco de memoria existente configurado para elcaché utilizado por el diario de transacciones de la base de datos.

Como valor predeterminado, SQL Server define el tamaño de E/S de diario deuna base de datos como 4 K. Si el diario de transacciones de una base de datosestá enlazado con el caché predeterminado o un caché definido por el usuarioque no contenga un banco de memoria de 4 K, SQL Server define un tamañode E/S de diario de 2 K (en cualquier caché siempre existe un banco dememoria de 2 K). Para la mayoría de las cargas de trabajo, un tamaño de E/Sde diario de 4 K rinde mucho mejor que uno de 2 K, así que cada caché que seutilice en un diario de transacciones debería tener un banco de memoria de 4 K.

Page 133: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

119

Nuevas opciones de mejora de consulta

Las nuevas opciones de mejora de consulta admiten las funciones de los cachéscon nombre y proporcionan control adicional al mejorar las consultas:

• El comando set forceplan on fuerza a que SQL Server una las tablas en unaconsulta en el orden en el que aparecen en la lista de la cláusula from.

• El comando set table count le permite especificar el número de tablas quese consideran cuando se optimizan las uniones.

• El nuevo procedimiento del sistema sp_cachestrategy desactiva yreactiva las estrategias de caché y la E/S grande para objetos individuales.

• Las nuevas cláusulas para los comandos select, delete e insert le permitenespecificar el índice, la estrategia de caché y el tamaño de E/S para unaconsulta.

• El comando set prefetch le permite habilitar o deshabilitar E/S grande parauna sesión.

Consulte el Capítulo 10, "Técnicas de optimización avanzadas", del Manual demejoras y rendimiento para obtener información sobre las opciones deprocesamiento de consulta que controlan las estrategias de caché y el tamañode E/S.

Cambios en el almacenamiento de datosEsta sección describe los cambios en el modo en que SQL Server almacena losdatos.

Número máximo de filas por página

Ahora puede configurar el número máximo de filas por página que se almacenanen una página de datos o en una página de hoja de índice. El valormax_rows_per_page especificado en un comando create table, create indexo alter table restringe el número de filas permitidas en una página de datos, unapágina de hoja de índice agrupado o una página de hoja de índice no agrupado.Esto reduce la contención de bloqueo y mejora la concurrencia para tablas a lasque se accede con frecuencia.

El valor max_rows_per_page se aplica a las páginas de datos de una tabla siníndice o a las páginas de hojas de un índice. El valor de max_rows_per_pagese almacena en la columna maxrowsperpage de sysindexes. (La columnamaxrowsperpage se denominaba rowpage en versiones anteriores de SQL Server.)

Page 134: Nuevas funciones en Adaptive Server versión 12.5

Nuevas funciones de la versión 11.0

120

A diferencia de fillfactor, que no se mantiene después de crear una tabla o uníndice, SQL Server retiene el valor max_rows_per_page cuando añadeo elimina filas. Para obtener información sobre la utilización demax_rows_per_page para reducir la contención de bloqueo y mejorar laconcurrencia del servidor, consulte el Manual de rendimiento y mejoras.

Asignación de páginas

SQL Server 10.0 y versiones anteriores buscaban en la cadena de páginasOAM páginas sin utilizar antes de asignar nuevas extents a un objeto. Laversión 11.0 proporciona un parámetro de configuración para todo el sistema,page utilization percent, que permite que SQL Server asigne una nueva extent aun objeto sin buscar en la cadena de páginas OAM, dependiendo de la proporciónde páginas usadas y no usadas de la tabla con las extents asignadas a la tabla.

Tablas con particiones

Nota: 11.5 Nota: La versión 11.5 añade la capacidad de buscar en tablas conparticiones en paralelo y crear índices agrupados.

De manera predeterminada, SQL Server almacena los datos de una tabla depila en una cadena doble de páginas de base de datos. Cuando una transaccióninserta una fila en una tabla, mantiene un bloqueo exclusivo de página en laúltima página de la cadena de páginas mientras se inserta la fila. Cuando variastransacciones intentan insertar filas en la misma tabla de manera simultánea,puede haber problemas de rendimiento. Como sólo una transacción puedeobtener un bloqueo exclusivo de la última página en un momento dado, otrastransacciones de inserción simultáneas se bloquean, como se muestra en lafigura 6-2.

Figura 6-2: Contención de página durante la inserción

Page 135: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

121

En la versión 11.0, SQL Server proporciona la capacidad de hacer particionesde las tablas de pila. Una partición es sólo un nombre diferente para unacadena de páginas. La partición de una tabla crea varias cadenas de página(particiones) para la tabla y, por ello, varias páginas últimas para las operacionesde inserción.

Cuando una transacción inserta datos en una tabla con particiones, SQL Serverasigna la transacción aleatoriamente a una de las particiones de la tabla. Lasinserciones simultáneas tienen menos probabilidades de bloquearse, ya quehay varias últimas páginas disponibles para las inserciones, como se muestraen la figura 6-3.

Figura 6-3: Solución de la contención de páginas con particiones

Si el segmento de una tabla ocupa varios discos físicos, SQL Server distribuyelas particiones de la tabla entre dichos discos cuando las crea. Esto puedemejorar el rendimiento E/S cuando SQL Server escribe los datos del caché aldisco. Ya que la E/S se distribuye entre varios dispositivos.

SQL Server versión 11.0 administra tablas con particiones de manera transparentea los usuarios y aplicaciones. Las tablas con particiones tienen exactamente elmismo aspecto que las que no las tienen, excepto cuando se accede a ellasmediante los comandos dbcc checktable y dbcc checkdb o cuando se las ve conel nuevo procedimiento sp_helpartition.

Consulte el Capítulo 17, "Control de la ubicación de datos físicos" del Manualde rendimiento y mejoras para obtener información sobre cómo creary administrar tablas con particiones.

Page 136: Nuevas funciones en Adaptive Server versión 12.5

Nuevas funciones de la versión 11.0

122

Cambios del diario de transaccionesEsta sección describe los cambios introducidos en el diario de transacciones enla versión 11.0.

Cachés de diario de usuario

Existe un caché de diario de usuario para cada conexión de usuario configurada.SQL Server utiliza estos cachés de diario de usuario para almacenar en búferlos registros del diario de transacciones del usuario, lo que reduce la contenciónal final del diario de transacciones. Cuando se llena el caché del diario delusuario o cuando sucede otro evento (como cuando se finaliza la transacción),SQL Server "vacía" todos los registros del caché de diario del usuario en eldiario de transacciones de la base de datos. Puede configurar el tamaño de loscachés de diario de usuario para el servidor con el parámetro user log cache sizede sp_configure; el tamaño predeterminado es de 2048 bytes.

Como más de un proceso puede acceder al contenido del caché de diario de unusuario para determinar un posible "vaciado", SQL Server utiliza bloqueos debucle para proteger los cachés de diario de usuario. Un spinlock es un mecanismointerno de bloqueo que impide que un segundo proceso acceda a la estructurade datos mientras la utiliza un primer proceso. SQL Server utiliza el parámetrouser log cache spinlock ratio de sp_configure para especificar la proporción decachés de diario de usuario por bloque de bucle de caché de diario de usuario;el valor predeterminado es de 20 cachés de diario de usuario por cada spinlock.

Para obtener información sobre la configuración de user log cache size y userlog cache spinlock ratio, consulte el Capítulo 11, "Definición de los parámetrosde configuración", del Manual de administración del sistema.

Tabla syslogsholdPuede consultar la nueva tabla del sistema syslogshold para determinar latransacción activa más antigua de cada base de datos. syslogshold existe en labase de datos master, y cada fila de la tabla representa:

• La transacción activa más antigua de la base de datos, o

• El punto de truncado de Replication Server® para el diario de la base dedatos.

Page 137: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

123

Una base de datos puede no tener filas en syslogshold, una fila que representeuna de las opciones anteriores, o dos filas que representen ambas opciones.Para obtener información sobre cómo el punto de truncado de ReplicationServer afecta el truncado del diario de transacciones de una base de datos,consulte la documentación de Replication Server.

Las consultas a syslogshold le pueden ayudar cuando el diario de transaccionesestá demasiado lleno, a pesar de los volcados frecuentes de diario. El comandodump transaction trunca el diario eliminando todas las páginas del principio delmismo hasta la página anterior a la que contiene el registro de una transacciónsin confirmar (la transacción activa más antigua). Cuanto mayor tiempopermanezca sin confirmar esta transacción activa, menor será el espaciodisponible en el diario de transacciones, ya que dump transaction no puedetruncar páginas adicionales.

Para obtener información sobre cómo consultar syslogshold para determinar latransacción activa más antigua que retiene los volcados de transacciones,consulte el Capítulo 21, "Copia de seguridad y restauración de bases de datosde usuario", del Manual de administración del sistema.

Nivel 0 de aislamientoPuede especificar un nivel 0 de aislamiento para las consultas en lastransacciones, además de los niveles 1 y 3 de aislamiento admitidos por laversión 10.0. El nivel 0 de aislamiento impide que otras transacciones modifiquendatos ya modificados por una transacción sin confirmar. Se bloquea las otrastransacciones de modificación de datos hasta que se confirma la transacción.No obstante, las otras transacciones aún pueden leer los datos sin confirmar(lo que se conoce como lectura sucia).

Las consultas que se ejecutan al nivel 0 de aislamiento no adquieren ningúnbloqueo de lectura para sus búsquedas, por lo que no bloquean otras transaccionesde escritura en los mismos datos, y viceversa. Las aplicaciones que no sufrenel impacto de las lecturas sucias pueden tener mejor concurrencia y menosinterbloqueos cuando acceden a los mismos datos utilizando el nivel 0 deaislamiento. No obstante, las transacciones que requieran consistencia de datosno deberían utilizar el nivel 0 de aislamiento.

Puede especificar un nivel 0 de aislamiento para las transacciones de unasesión de la siguiente manera:

set transaction isolation level 0

Page 138: Nuevas funciones en Adaptive Server versión 12.5

Nuevas funciones de la versión 11.0

124

Como este comando hace que todas las consultas se ejecuten al nivel 0 deaislamiento, sea cauteloso a la hora de utilizarlo con una transacción querequiera consistencia de datos. En vez de esto, puede elegir selectivamenteel nivel 0 de aislamiento para una consulta en una transacción utilizando lacláusula at isolation de la siguiente manera:

select *from titlesat isolation read uncommitted

Para obtener información sobre las transacciones y los niveles de aislamiento,consulte el Capítulo 18, "Transactions: Maintaining Data Consistency andRecovery", del Manual del usuario de Transact-SQL.

Cambios del administrador de bloqueosEsta sección describe los cambios en el comportamiento de bloqueo.

Tablas de bloqueo de tabla, página y dirección

SQL Server administra la adquisición y liberación de los bloqueos de tablautilizando una tabla hash interna con 101 filas (conocidas como depósitoshash) y la de los bloqueos de página y dirección mediante tablas hash internascon 1031 filas cada una. En la versión 11.0, estas tablas utilizan uno o másbloqueos de bucle para serializar el acceso entre procesos que se ejecutan endiferentes motores. Un spinlock es un mecanismo interno de bloqueo queimpide que un segundo proceso acceda al recurso que utiliza un primer proceso.Todos los procesos que intenten acceder al recurso deben esperar (en bucle)hasta que se libera el bloqueo.

Para los SQL Servers que funcionan con varios motores, puede definir elpromedio de bloqueos de bucle que protegen cada tabla hash con los parámetrosde configuración table lock spinlock ratio, page lock spinlock ratio y address lockspinlock ratio. Los bloqueos de tabla de la tabla hash tienen un promediopredeterminado de 20 filas para cada spinlock, y los bloqueos de páginao dirección de la tabla hash tienen un promedio predeterminado de 100 filaspor cada spinlock. Un SQL Server que esté configurado con un motor únicosólo tiene un spinlock para cada tabla hash, independientemente de los valoresespecificados en estos parámetros.

Para obtener información sobre cómo configurar los parámetros table lockspinlock ratio, page lock spinlock ratio y address lock spinlock ratio, consulte elCapítulo 11, "Definición de los parámetros de configuración", del Manual deadministración del sistema.

Page 139: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

125

Comprobación de interbloqueo

SQL Server realiza una comprobación de interbloqueo tras un periodo mínimode tiempo para cada proceso que esté en espera de que se libere un bloqueo.De manera predeterminada, este periodo mínimo de tiempo es de 500 ms.Las versiones anteriores de SQL Server realizan está comprobación deinterbloqueo en el momento en el que el proceso empieza a esperar por unbloqueo. Esta comprobación de interbloqueo es un proceso que requiere muchotiempo para las aplicaciones que esperan sin un interbloqueo.

Puede modificar la cantidad mínima de tiempo (en milisegundos) que unproceso debe esperar hasta que inicia una comprobación de interbloqueo conel parámetro de configuración deadlock checking period. Si espera que susaplicaciones se interbloqueen con poca frecuencia, puede retrasar lacomprobación de interbloqueo aún más y reducir el coste del proceso general.No obstante, la configuración de deadlock checking period con un valor másalto produce retrasos mayores antes de que se detecten los interbloqueos.

Para obtener información sobre la comprobación de interbloqueo, consulte elCapítulo 5, "Bloqueo en Adaptive Server", del Manual de rendimiento ymejoras.

Nuevas listas de bloqueos disponibles de motor

En la versión 11.0, cuando un proceso que se ejecuta en un SQL Server devarios motores solicita un bloqueo, lo busca en la lista de bloqueos disponiblesdel motor. Si en la lista de bloqueos disponibles del motor no queda ninguno,SQL Server desplaza un determinado número de bloqueos desde la lista globalde bloqueos disponibles a la del motor. Para los SQL Servers de un solo motor,se transfiere la lista global de bloqueos disponibles a la del motor cuando seinicia el servidor.

Una vez que un motor completa un proceso, todos los bloqueos mantenidos porel mismo se liberan y se devuelven a la lista de bloqueos disponibles de esemotor. Esto reduce la contención de cada motor que accede a la lista global debloqueos disponibles. No obstante, si el número de bloqueos liberados al motorexcede el número de bloqueos permitidos en la lista de bloqueos disponiblesdel motor, SQL Server desplaza un número de bloqueos a la lista global debloqueos disponibles. Esto repone el número de bloqueos disponibles paraotros motores desde la lista global.

Page 140: Nuevas funciones en Adaptive Server versión 12.5

Nuevas funciones de la versión 11.0

126

Puede configurar el número máximo de bloqueos disponibles para las listas debloqueos disponibles de motor como un porcentaje del número total debloqueos disponibles en el servidor con el parámetro de configuración maxengine freelocks. También puede configurar el número de bloqueos que setransfieren entre las listas de bloqueos disponibles global y del motor con elparámetro freelock transfer block size. Para obtener información sobre estosparámetros, consulte el Capítulo 11, "Definición de los parámetros deconfiguración", del Manual de administración del sistema.

Aumento de las listas de bloqueos disponibles de motor

La lista de bloqueos disponibles de cada motor representa una parte de la listaglobal de bloqueos disponibles asignados a los motores, definida por elparámetro de configuración max engines freelocks como un porcentaje delnúmero total de bloqueos. Como valor predeterminado, SQL Server asigna un10 por ciento del número total de bloqueos a las listas de bloqueos disponiblesde todos los motores, y el número restante permanece en la lista global debloqueos disponibles. Por ejemplo, si el servidor está configurado con 5000bloqueos, 500 se distribuyen en partes iguales entre las listas de bloqueosdisponibles del motor y los 4500 restantes permanecen en la lista global debloqueos disponibles.

Para la mayoría de las configuraciones de SQL Server, puede doblar elporcentaje de bloqueos asignados a las listas de bloqueos disponibles del motory mejorar el rendimiento de las aplicaciones.

Tarea housekeeperCuando SQL Server no tiene tareas de usuarios que procesar, un procesohousekeeper comienza automáticamente a escribir los búferes modificados delcaché al disco. Como estas escrituras se hacen en los ciclos de inactividad delservidor, se conocen con el nombre de escrituras libres.

Los beneficios del proceso housekeeper son los siguientes:

• Utilización mejorada de la CPU

• Disminución de la necesidad de limpieza de búfer durante el procesamientode transacciones

• Checkpoints más rápidos

• Tiempo de recuperación menor

Page 141: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

127

En aplicaciones que actualizan la misma página de datos de la base de datosconstantemente, la tarea housekeeper puede iniciar algunas escrituras de basede datos innecesariamente. Los administradores del sistema pueden utilizar elparámetro de configuración housekeeper free write percentage para deshabilitarla tarea housekeeper o controlar sus efectos secundarios.

Para obtener información adicional sobre la tarea housekeeper, consulte elCapítulo 21, "Utilización de motores y CPU por Adaptive Server" del Manualde rendimiento y mejoras.

Configuración de SQL ServerEn versiones anteriores, SQL Server se configuraba utilizando sp_configure,reconfigure y un número de parámetros dbcc tune y buildmaster -y sindocumentar. Para proporcionar un punto de entrada único para toda laconfiguración de SQL Server (excepto la administración del búfer), se harediseñado sp_configure para incorporar parámetros de configuración que seimplementaban anteriormente con dbcc tune y buildmaster -y. Además, se haimplementado un número de parámetros de configuración nuevos.

Para obtener información sobre los parámetros que tienen nuevos nombres,consulte "Nuevos nombres para parámetros de configuración existentes", enla página 139.

La interfaz de sp_configure se ha rediseñado para incluir las siguientescaracterísticas nuevas:

• Niveles de visualización, que permiten que el usuario seleccione una de lastres vistas de los parámetros de configuración:

• Nivel básico, apropiado para la optimización general de SQL Server

• Nivel intermedio, un poco más global que el Nivel básico

• Nivel completo, apropiado para el nivel más detallado deoptimización de SQL Server

• Jerarquía de los parámetros, que organiza los parámetros de configuraciónsegún el área del comportamiento de SQL Server a la que pertenecen.

• Archivos de configuración, que permiten a los usuarios replicarconfiguraciones específicas, validarlas antes de definirlas y crear variasconfiguraciones que se pueden cambiar con facilidad.

Para obtener información sobre la configuración de SQL Server, consulte elCapítulo 11, "Definición de los parámetros de configuración", del Manual deadministración del sistema.

Page 142: Nuevas funciones en Adaptive Server versión 12.5

Nuevas funciones de la versión 11.0

128

Promoción de bloqueosEn versiones anteriores de SQL Server, una vez que una instrucción acumulabamás de 200 bloqueos de página en una tabla, SQL Server intentaba emitir unbloqueo de tabla sobre ese objeto. Si el bloqueo de tabla era satisfactorio, losbloqueos de página ya no eran necesarios y se liberaban.

Los parámetros de configuración lock promotion HWM, lock promotion LWMy lock promotion PCT y el procedimiento del sistema sp_setpglockpromoteconfiguran el número de bloqueos de página que adquiere SQL Server en unatabla antes de que intente elevarse a un bloqueo de tabla para todo el servidorbasándose en la base de datos y la tabla.

Para obtener información adicional, consulte el Capítulo 5, "Bloqueo enAdaptive Server", del Manual de rendimiento y mejoras.

Motores múltiples de redSi el sistema de multiprocesamiento simétrico (SMP) admite la migración porafinidad de red, cada motor de SQL Server gestiona la E/S de red para susconexiones en la versión 11.0. Durante el login, SQL Server migra la tarea deconexión de cliente del motor 0 al motor que sirve el menor número de conexiones.Las tareas del cliente ejecutan la E/S de red en ese motor hasta que se terminala conexión.

Al distribuir la E/S de red entre sus motores, SQL Server puede gestionar másconexiones de usuario. El límite por proceso del número máximo de descriptoresde archivo abierto ya no limita el número de conexiones. Al añadir más motoreslinealmente se aumenta el número máximo de descriptores de archivo. Paraobtener información adicional sobre el funcionamiento de motores múltiplesde red en un entorno SMP, consulte el Capítulo 10, "Administración deservidores multiprocesador", del Manual de administración del sistema.

Mejoras introducidas en showplanLa salida del comando set showplan se ha mejorado de la siguiente manera:

• Se han añadido sangrías y delimitadores para mejorar su legibilidad.

• Los números de línea y los números de instrucción ayudan a depurar loslotes y procedimientos largos.

• Los mensajes adicionales incluyen las claves utilizadas en índices ymensajes para proporcionar más información sobre los métodos de acceso.

Page 143: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

129

• Los tipos de subconsulta, los niveles de anidamiento y otra informaciónsobre las subconsultas ayudan a comprobar el rendimiento de lassubconsultas.

• Se han añadido mensajes a las funciones de la versión 11.0 para mostrar eltamaño de E/S y la estrategia de caché.

En el siguiente ejemplo, hay un índice que se llama title_ix en la tabla titles:

select title_id, pricefrom titleswhere title = "Computers and Privacy"

Ésta es la salida de showplan en versiones anteriores a la 11.0:

STEP 1The type of query is SELECT.FROM TABLEtitlesNested iterationIndex : title_ix

Ésta es la salida de showplan de la versión 11.0:

QUERY PLAN FOR STATEMENT 1 (at line 1).

STEP 1The type of query is SELECT.

FROM TABLEtitles

Nested iteration.Index : title_ixAscending scan.Positioning by key.Keys are:

titleUsing I/O Size 2 Kbytes.With LRU Buffer Replacement Strategy.

Todos los mensajes de showplan se documentan en el Capítulo 9, "Planes deconsulta", del Manual de rendimiento y mejoras.

Page 144: Nuevas funciones en Adaptive Server versión 12.5

Nuevas funciones de la versión 11.0

130

Cambios introducidos en las consultas y la modificación de datosEsta sección describe los cambios introducidos en el procesamiento desubconsultas y el comportamiento de las actualizaciones.

Cambios introducidos en las subconsultas

El comportamiento de determinadas subconsultas ha variado. Consulte"Cambios que pueden afectar a las aplicaciones existentes", en la página 138para obtener información detallada sobre estos cambios y cómo afectan a lasaplicaciones existentes.

Cambios introducidos en la actualización

Las estrategias de actualización de SQL Server han mejorado. Se hacen másactualizaciones ahora in situ o directamente, con menos escrituras en el diariode transacciones. Consulte el Manual de rendimiento y mejoras para obtenermás información sobre el rendimiento y las operaciones de actualización.

Actualización de los volcados de base de datosCuando se actualiza la instalación de SQL Server a una versión nueva, todaslas bases de datos asociadas con el servidor se actualizan automáticamente.

Como resultado, los volcados de base de datos y diario de transaccionescreados con una versión anterior de SQL Server deben actualizarse antes depoderlos utilizar con el SQL Server actual.

SQL Server versión 11.0 proporciona un mecanismo de actualización automática,por base de datos, para actualizar el volcado de la base de datos o el diario detransacciones desde cualquier SQL Server versión 10.0 al SQL Server actual,con lo que se hace compatible el volcado para su utilización. Este mecanismoes un mecanismo completamente interno de SQL Server versión 11.0 y norequiere la utilización de programas externos. Proporciona la flexibilidad deactualizar los volcados individuales según se necesiten.

Esta función de actualización automática no admite las siguientes tareas:

• Cargar una base de datos master de SQL Server versión 10.0 a laversión 11.0.

• Instalar procedimientos almacenados nuevos o modificados. Continuarutilizando installmaster.

• Cargar y actualizar volcados anteriores a SQL Server versión 10.0.

Page 145: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

131

Asociado con esta función, existe el nuevo comando online database. Estecomando marca una base de datos disponible para uso público tras unasecuencia de carga normal y, si es necesario, actualiza una base de datoscargada y/o los volcados del diario de transacciones a la versión actual deSQL Server.

Para obtener información adicional sobre la actualización de los volcados debase de datos, consulte el Capítulo 21, "Copia de seguridad y restauración debases de datos de usuario", del Manual de administración del sistema y loscomandos load database y dump database en el Manual de consulta.

Para obtener más información sobre el comando online database, consulte elManual de consulta.

Determinación del dispositivo de cinta por Backup ServerPara ser menos dependiente de los dispositivos y más flexible, Backup Server™proporciona un método para determinar las características del dispositivo decinta (el posicionamiento de la cinta para lectura, cierre, añadir, tamaño de E/S,marcas de archivo y posibilidad de sobrescribir una marca de archivo) para unaoperación de volcado.

Cuando emite un comando dump database o dump transaction, Backup Servercomprueba para ver si el tipo de dispositivo del dispositivo de volcado especificadoes conocido (suministrado y admitido de manera interna) por SQL Server.Si el dispositivo no es un tipo conocido, Backup Server comprueba el archivode configuración de la cinta (la ubicación predeterminada es$SYBASE/backup_tape.cfg) para la configuración del dispositivo. Si seencuentra la configuración, prosigue el comando dump.

Si no se encuentra la configuración en el archivo de configuración deldispositivo de cinta, el comando dump falla con el siguiente mensaje de error:

Device not found in configuration file. INIT needs tobe specified to configure the device.

Esto significa que se tiene que configurar el dispositivo. Emita dump databaseo dump transaction con el calificador init para configurar el dispositivo.Utilizando llamadas al sistema operativo, Backup Server intenta determinar lascaracterísticas del dispositivo y, si son satisfactorias, almacena las característicasdel dispositivo en el archivo de configuración de la cinta.

Page 146: Nuevas funciones en Adaptive Server versión 12.5

Nuevas funciones de la versión 11.0

132

Si Backup Server no puede determinar las características del dispositivo devolcado, adopta el valor predeterminado de un volcado por cinta. El dispositivono se puede utilizar si la configuración no puede escribir al menos un archivode volcado.

La configuración de la cinta por Backup Server se aplica sólo a las plataformasUNIX.

Para obtener información adicional sobre la determinación de los dispositivosde cinta y el archivo de configuración de cinta, consulte el Capítulo 21, "Copiade seguridad y restauración de bases de datos de usuario", del Manual deadministración del sistema.

Cambios en la columna IDENTITYLa función de la columna IDENTITY le permite crear una columna con valoresgenerados por el sistema que identifican de manera única cada fila de una tabla.La versión 11.0 proporciona las siguientes mejoras de las columnas IDENTITY:

• Para tablas sin índices exclusivos, la opción de base de datos identity innonunique index le permite crear un índice exclusivo al incluir unacolumna IDENTITY en la clave del índice. Se necesitan los índicesexclusivos para las lecturas de nivel 0 de aislamiento y los cursoresactualizables.

• El parámetro de configuración identity grab size permite que cada procesoSQL Server en un entorno multiprocesador reserve un númerodeterminado de valores de columna IDENTITY cuando añade filas entablas que contienen columnas IDENTITY.

• El parámetro de configuración size of auto identity define la precisión delas columnas IDENTITY que genera SQL Server para las tablas creadasen bases de datos donde se ha activado la opción de base de datos autoidentity database.

Para obtener información adicional sobre las mejoras de las columnasIDENTITY, consulte el Capítulo 7, "Creating Databases and Tables", delManual del usuario de Transact-SQL.

Page 147: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

133

Nuevas variables globales text e imageLas siguientes cinco variables globales se han añadido en la versión 11.0 parafacilitar la inserción o actualización de datos text e image a través deaplicaciones Open Client™:

• @@textcolid

• @@textdbid

• @@textobjid

• @@textptr

• @@textts

Para obtener información sobre estas variables globales, consulte el Capítulo13,"Using Batches and Control-of-Flow Language", del Manual del usuario deTransact-SQL. Para obtener información sobre la utilización de estas variablesen un procedimiento para aplicaciones Open Client, consulte el Manual dereferencia de Client-Library/C.

Cambios del sistema en la versión 11.0Esta sección proporciona un resumen de los cambios introducidos en laversión 11.0. Los cambios son los siguientes:

• Nuevo comando online database

• Cambios introducidos en los comandos existentes

• Nuevas opciones set

• Nuevos procedimientos del sistema

• Cambios introducidos en los procedimientos del sistema

• Nuevas tablas del sistema

• Cambios introducidos en las tablas del sistema existentes

Page 148: Nuevas funciones en Adaptive Server versión 12.5

Cambios del sistema en la versión 11.0

134

Nuevo comando online databaseLa tabla 6-1 describe el nuevo comando online database:

Tabla 6-1: Nuevo comando online database

Cambios introducidos en los comandos existentesLa tabla 6-2 resume las modificaciones introducidas en los comandosexistentes:

Tabla 6-2: Cambios introducidos en los comandos existentes

Nombre Función

online database Hace que una base de datos esté disponible para uso público trasuna secuencia de carga normal y, si es necesario, actualiza unabase de datos cargada y los volcados del diario de transaccionesa la versión actual de SQL Server.

Nombre Cambio

alter table La nueva cláusula partition le permite crear cadenas de páginaadicionales para una tabla que no tiene un índice agrupado. Lanueva cláusula unpartition le permite concatenar todas lascadenas de página de una tabla con particiones.

buildmaster El indicador buildmaster -r ya no se admite.

delete Las nuevas cláusulas le permiten especificar el índice, laestrategia de caché y el tamaño de E/S para una consulta.

reconfigure El comando reconfigure ya no se necesita para activar cambioshechos con sp_configure. reconfigure ya no es operativo. Losarchivos de secuencias de comandos que utilicen reconfigureaún se ejecutarán, pero deberían cambiarse con prontitud, yaque en versiones futuras podría no admitirse reconfigure.

select Las nuevas cláusulas le permiten especificar el índice, laestrategia de caché y el tamaño de E/S para una consulta. Lanueva cláusula at isolation le permite especificar el nivel deaislamiento para la consulta.

set showplan Cambios introducidos en la salida.

set transactionisolation level

Nueva opción de nivel de aislamiento: 0

update Las nuevas cláusulas le permiten especificar el índice, laestrategia de caché y el tamaño de E/S para una consulta.

Page 149: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

135

Nuevas opciones setLa tabla 6-3 resume las nuevas opciones set:

Tabla 6-3: Nuevas opciones set

Nuevos procedimientos del sistemaLos siguientes procedimientos del sistema nuevos proporcionan parte de lafuncionalidad de las funciones descritas con anterioridad:

Tabla 6-4: Nuevos procedimientos del sistema

Opción Función

forceplan Fuerza al optimizador a realizar las uniones en el orden en elque se nombran las tablas en la cláusula from de una consulta.

prefetch Habilita o deshabilita la E/S grande (prelectura de datos) parauna sesión.

statisticssubquerycache

Imprime las estadísticas sobre el uso del caché de lasubconsulta durante la ejecución de la misma.

table count integer Especifica el número de tablas que se deben optimizar almismo tiempo en una consulta conjunta.

Procedimiento Función

sp_bindcache Enlaza bases de datos, tablas, índices o cadenas text o image a los cachés de datos.

sp_cacheconfig Configura los cachés de datos con nombre y proporciona información sobre loscachés.

sp_cachestrategy Habilita y deshabilita las estrategias de caché y la E/S grande para determinadastablas e índices.

sp_chgattribute Cambia el valor max_rows_per_page para futuras asignaciones de espacio de unatabla o índice.

sp_displaylevel Define y muestra el nivel de visualización del usuario. El nivel de visualizacióndetermina los parámetros de configuración de SQL Server que se muestran en lasalida sp_configure.

sp_dropglockpromote Elimina los valores de promoción de bloqueo de una tabla o base de datos.

sp_helpcache Proporciona información sobre los requisitos generales de caché y tambiénproporciona información sobre los cachés y los enlaces de caché.

sp_helpartition Proporciona una lista de la primera página y la página de control de cada partición deuna tabla con particiones.

sp_logiosize Cambie el tamaño de E/S de diario utilizado por SQL Server a un banco de memoriadiferente cuando realiza la E/S para el diario de transacciones de la base de datosactual.

sp_poolconfig Configura los bancos con cachés con nombre para permitir la E/S grande.

Page 150: Nuevas funciones en Adaptive Server versión 12.5

Cambios del sistema en la versión 11.0

136

Cambios introducidos en los procedimientos del sistemaEn esta versión, se han modificado los siguientes procedimientos del sistema:

Tabla 6-5: Cambios introducidos en los procedimientos del sistema

Nuevas tablas del sistemaLas siguientes tablas del sistema son nuevas en esta versión:

Tabla 6-6: Nuevas tablas del sistema

sp_procqmode Informa del modo de procesamiento de subconsulta de un objeto.

sp_setpglockpromote Define o cambia los umbrales de promoción de bloqueo para una base de datos, unatabla o un SQL Server.

sp_unbindcache Desenlaza una base de datos, tabla, índice u objeto text o image específicos de uncaché de datos.

sp_unbindcache_all Desenlaza todos los objetos enlazados a un caché.

Procedimiento Función

Procedimiento Cambio

sp_dboption Tiene una nueva opción de base de datos, identity in nonuniqueindex, que le permite crear un índice exclusivo al incluir unacolumna IDENTITY en la clave del índice.

sp_configure Incluye nuevos parámetros y subcomandos opcionales y muestrauna nueva salida.

Tabla Función

sysattributes Define los atributos para objetos como bases de datos, tablas,índices, usuarios, logins y procedimientos.

syslogshold Almacena información sobre la transacción activa más antigua y elpunto de truncado de Replication Server para cada base de datos.

syspartitions Almacena información interna sobre las particiones de tabla.

Page 151: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

137

Cambios introducidos en las tablas del sistema existentesLa tabla 6-7 ofrece una lista de las tablas del sistema que se han modificado enesta versión:

Tabla 6-7: Cambios introducidos en las tablas del sistema

Tabla Cambio

sysindexes Columna modificada: rowpage a maxrowsperpage

La entrada de la columna root para una tabla se queda obsoleta cuando se hacenparticiones en la tabla. Las páginas raíz para la partición individual se derivan de lainformación en la nueva tabla syspartitions.

sysconfigures Nuevas columnas añadidas:

• name contiene el nombre del parámetro de configuración

• parent contiene el grupo al que pertenece el parámetro de configuración

• value2 se utiliza para los parámetros de configuración cuyos valores son cadenasde caracteres

• value3 no se utiliza actualmente

syscurconfigs Nuevas columnas añadidas:

• value2 se utiliza para los parámetros de configuración cuyos valores son cadenasde caracteres

• defvalue contiene los valores predeterminados de los parámetros de configuración

• minimum_value contiene el valor válido mínimo para un parámetro deconfiguración

• maximum_value contiene el valor válido máximo para un parámetro deconfiguración

• memory_used contiene la cantidad de memoria utilizada por unidad por unparámetro de configuración

• display level contiene el nivel de visualización asociado con un parámetro deconfiguración

• datatype y message_num son de uso interno

sysdatabases Nueva columna añadida:

• El bit de estado offline se utiliza para la función de actualización de volcados debase de datos

Page 152: Nuevas funciones en Adaptive Server versión 12.5

Cambios que pueden afectar a las aplicaciones existentes

138

Cambios que pueden afectar a las aplicacionesexistentes

Esta sección describe los cambios del sistema introducidos en la versión 11.0que pueden afectar a las aplicaciones si se actualiza a la versión 11.5 desde unaversión anterior a la 11.0. Los temas que se tratan son los siguientes:

• Nuevas palabras de Transact-SQL en la versión 11.0

• Cambios introducidos en la configuración de SQL Server

• Cambios introducidos en las subconsultas

• Cambios introducidos en la salida showplan en la versión 11.0

• Las nuevas estrategias de caché pueden afectar el rendimiento

• Actualización de los volcados de base de datos

• Particiones y posición física de los datos

Nuevas palabras de Transact-SQL en la versión 11.0Las siguientes palabras claves son nuevas palabras reservadas en SQL Server 11.0.No se pueden utilizar como nombres de objetos o nombres de columnas.

• errordata

• max_rows_per_page

• online

• partition

• unpartition

Debe cambiar todos los nombres de bases de datos que sean nuevas palabrasreservadas antes de poder actualizarse desde una versión anterior del servidor.Puede cambiar los nombres de tablas, vistas y columnas o utilizar identificadoresdelimitados. Una vez se haya actualizado, no podrá utilizar objetos de base dedatos cuyos nombres sean nuevas palabras reservadas hasta que modifique losprocedimientos, archivos de secuencias de comandos SQL y aplicaciones.

Page 153: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

139

Cambios introducidos en la configuración de SQL ServerLos siguientes cambios introducidos en la interfaz de configuración deSQL Server afectarán a las aplicaciones existentes.

El comando reconfigureEn versiones anteriores, los cambios realizados con sp_configure se tenían queactivar con el comando reconfigure. Ya no es necesario. reconfigure ya no esoperativo. Los archivos de secuencias de comandos existentes deberían seguirfuncionando, pero deberían cambiarse con prontitud, ya que en versionesfuturas podría no admitirse reconfigure.

buildmaster -r ya no se admite

El indicador buildmaster -r, que se utilizaba para volver a escribir el bloque deconfiguración con los valores predeterminados para los parámetros deconfiguración de SQL Server, ya no se admite.

Para ejecutar SQL Server con sus valores predeterminados integrados:

1 Vuelva a nombrar, mueva o elimine el archivo de configuración.

2 Apague y reinicie SQL Server.

Cuando se hace así, SQL Server utiliza los valores de configuraciónpredeterminados integrados y crea un archivo de configuraciónserver_name.cfg en el directorio desde el que se inició SQL Server. Noobstante, estos valores no se escriben en sysconfigures. Para escribirlos ensysconfigures, necesita apagar y reiniciar SQL Server otra vez.

Nuevos nombres para parámetros de configuración existentes

Los siguientes parámetros de configuración de SQL Server, que antes recibíanel nombre de "variables de configuración", tienen nuevos nombres:

Tabla 6-8: Nuevos nombres de parámetros de configuraciónen la versión 11.0

Nombre antiguo Nombre nuevoT1204 (traceflag) print deadlock information

T1603 (traceflag) allow sql server async i/o

T1610 (trace flag) tcp no delay

T1611 (trace flag) lock shared memory

allow updates allow updates to system tables

calignment memory alignment boundary

Page 154: Nuevas funciones en Adaptive Server versión 12.5

Cambios que pueden afectar a las aplicaciones existentes

140

cclkrate sql server clock tick length

cfgcprot permission cache entries

cguardsz stack guard size

cindextrips number of index trips

cmaxnetworks max number network listeners

cmaxscheds i/o polling process count

cnalarm number of alarms

cnblkio disk i/o structures

cnlanginfo number of languages in cache

cnmaxaio_engine max async i/os per engine

cnmaxaio_server max async i/os per server

cnmbox number of mailboxes

cnmsg number of messages

coamtrips number of oam trips

cpreallocext number of pre-allocated extents

cpu flush cpu accounting flush interval

cschedspins runnable process search count

csortbufsize number of sort buffers

csortpgcount sort page count (Eliminado en la versión 11.5.)

ctimemax cpu grace time

database size default database size

default language default language id

devices number of devices

extent i/o buffers number of extent i/o buffers (Eliminado en la versión 11.5.)

fillfactor default fill factor percent

i/o flush i/o accounting flush interval

language in cache number of languages in cache

locks number of locks

maximum network packet size max network packet size

memory total memory

mrstart shared memory starting address

nested trigger allow nested triggers

open databases number of open databases

open objects number of open objects

password expiration interval systemwide password expiration

pre-read packets remote server pre-read packets

procedure cache procedure cache percent

recovery flags print recovery information

recovery interval recovery interval in minutes

Nombre antiguo Nombre nuevo

Page 155: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

141

Nuevos parámetros de configuración

La versión 11.0 introdujo un número de parámetros de configuración nuevosque aparecen en la tabla 6-9. Consulte el Capítulo 11, "Definición de losparámetros de configuración", del Manual de administración del sistema paraobtener una descripción completa de estos parámetros.

Tabla 6-9: Nuevos parámetros de configuración de SQL Server parala versión 11.0

remote access allow remote access

remote connections number of remote connections

remote logins number of remote logins

remote sites number of remote sites

sql server code size executable code size

tape retention tape retention in days

user connections number of user connections

Nombre antiguo Nombre nuevo

address lock spinlock ratio

configuration file

deadlock checking period

deadlock retries

event buffers per engine

freelock transfer block size

housekeeper free write percent

identity grab size

lock promotion HWM

lock promotion LWM

lock promotion PCT

max engine freelocks

o/s async i/o enabled

o/s file descriptors

page lock spinlock ratio

page utilization percent

partition groups

partition spinlock ratio

size of auto identity column

table lock spinlock ratio

total data cache size

user lock cache size

user lock cache spinlock ratio

Page 156: Nuevas funciones en Adaptive Server versión 12.5

Cambios que pueden afectar a las aplicaciones existentes

142

Nuevo parámetro deadlock checking periodEn versiones anteriores de SQL Server se realizaba la comprobación deinterbloqueo cuando el proceso comenzaba a esperar por un bloqueo. En laversión 11.0, SQL Server realiza la comprobación de interbloqueo de un procesodespués de que haya esperado un mínimo de 500 ms a que se libere el bloqueo.Para volver al método anterior de comprobación de interbloqueo, defina unvalor de 0 para deadlock checking period.

Nuevo parámetro page utilization percentEl comportamiento predeterminado de versiones anteriores de SQL Serverconsiste en buscar la cadena de páginas OAM para las páginas no usadas antesde asignar una nueva extent. Para mantener este comportamiento, defina unvalor de 100 para page utilization percent.

Aumento de los tamaños de objetos compilados

El tamaño de los objetos compilados es mayor en System 11, y era muchomayor en System 10. Es posible que necesite cambiar el tamaño del caché delprocedimiento para mantener el mismo rendimiento.

Aumento del tamaño del código de SQL Server

Se utiliza más memoria para el kernel y las estructuras internas. Es posible quenecesite añadir más memoria para mantener el mismo rendimiento de laversión anterior.

Cambios introducidos en las subconsultasSe han resuelto varios problemas de las subconsultas en SQL Server versión 11.0.Esta sección describe detalladamente los comportamientos antiguo y nuevo.Examine las aplicaciones que utilizan subconsultas para determinar si laaplicación depende de un comportamiento que se ha corregido.

El procesamiento de subconsultas en versiones anteriores de SQL Serverutilizaba un procesamiento "de dentro a fuera". Las subconsultas de la versión 11.0se procesan "de fuera a dentro" para lograr mayor eficiencia. La actualización a laversión 11.0 no cambia automáticamente el modo de procesamiento de lasubconsulta.

Page 157: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

143

Tras actualizarse a la versión 11.0, debe eliminar y volver a crear los objetospara beneficiarse del nuevo estilo de procesamiento. Utilice sp_procqmodepara identificar los objetos que incluyen subconsultas. Tras actualizarse aSQL Server versión 11.0, no puede crear un objeto que utilice el procesamientode la versión 10.0.

Es mejor probar los procedimientos que contienen subconsultas y realizar loscambios necesarios para su aplicación antes de actualizar el sistema deproducción.

Resultados diferentes

Las subconsultas realizadas en objetos creados con SQL Server versión 11.0pueden devolver resultados diferentes a las realizadas en objetos creados conuna versión anterior de SQL Server. Para probar el rendimiento tras laactualización, cree los objetos en SQL Server versión 11.0, pruebe losresultados y rendimiento, e introduzca las modificaciones necesarias en laaplicación.

Determinación del modo de procesamiento de consultas

Un nuevo procedimiento del sistema, sp_procqmode, informa sobre el modo deprocesamiento de la subconsulta en un objeto.

Duplicados en los resultados de la subconsulta

Desde la versión 10.0, las subconsultas que utilizan predicados in o any nodevuelven duplicados.

Se proporcionó set dup_in_subquery on como una ruta de actualización aSQL Server versión 10.0. Ya no se admite. Si la aplicación depende de las filasduplicadas en el juego de resultados, vuelva a escribir la subconsulta como unaunión.

Por ejemplo:

select a from s where b in(select c from t)

se convertiría en:

select a from s, b where s.b = t.c

Los procedimientos creados en SQL Server versión 10.0 que utilizandup_in_subquery continuarán funcionando hasta que se elimine el procedimientoy se vuelva a crear en la versión 11.0.

Page 158: Nuevas funciones en Adaptive Server versión 12.5

Cambios que pueden afectar a las aplicaciones existentes

144

Cambios introducidos en las restricciones de subconsulta

Se han eliminado las siguientes restricciones de subconsulta:

• Puede utilizar distinct con group by en una subconsulta.

La palabra clave distinct suprimía las filas duplicadas en la salida desubconsultas de versiones anteriores a la 10.0. Esta palabra ya no esnecesaria en las subconsultas y se pasa por alto.

• Puede hacer referencia a una variable correlativa en la lista de selección deuna subconsulta. Por ejemplo, ahora se admite la siguiente subconsulta deexpresión:

select t1.c1 from t1where t1.c2 = (select t2.c2 + t1.c3 from t2)

Se ha añadido la siguiente restricción de subconsulta:

• Existe un máximo de 16 subconsultas en un solo lado de la unión.

Gestión de resultados NULL

Antes de la versión 11.0, una subconsulta de expresión correlativa en unacláusula set de una actualización devolvía 0 en vez de NULL cuando no habíafilas coincidentes. La versión 11.0 correctamente devuelve NULL cuando nohay filas coincidentes, y surge un error si la columna no permite valores vacíos.

Si tiene aplicaciones que dependen del comportamiento de versiones anterioresa la 11.0, tendrá que volver a escribirlas.

Por ejemplo, el siguiente disparador intenta actualizar una columna que nopermite valores NULL:

update t1set c1 = (select max(c1)from inserted where t1.c2 = inserted.c2)

El disparador correcto es:

update t1set c1 = (select isnull(max(c1), 0)from insertedwhere t1.c2 = inserted.c2)

o

update t1set c1 = (select max(c1)from insertedwhere t1.c2 = inserted.c2)

where exists (select * from insertedwhere t1.c2 = inserted.c2)

Page 159: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

145

La cláusula where actualiza la tabla t1.c1 a 0, si la subconsulta no devuelveningún valor de correlación desde la tabla externa t1.

Otro ejemplo de esto es totalsales_trig en la base de datos de muestra pubs2.En versiones anteriores, el disparador era el siguiente:

create trigger totalsales_trigon salesdetailfor insert, update, deleteas/* Save processing: return if there are no rows affected */if @@rowcount = 0

beginreturn

end

/* add all the new values *//* use isnull: a null value in the titles table means** "no sales yet" not "sales unknown"*/update titles

set total_sales = isnull(total_sales, 0) +(select sum(qty)

from insertedwhere titles.title_id = inserted.title_id)

/* remove all values being deleted or updated */update titles

set total_sales = isnull(total_sales, 0) -(select sum(qty)

from deletedwhere titles.title_id = deleted.title_id)

sum(qty) es NULL si no se devuelve una fila de la tabla, así que cuando unainstrucción cambia la columna total_sales, el disparador cambia a NULL todaslas filas de titles que no califiquen.

Para garantizar que la subconsulta en la expresión para la actualizacióndevuelve un valor que no sea NULL, el disparador correcto es:

create trigger totalsales_trigon salesdetailfor insert, update, deleteas/* Save processing: return if there are no rows affected */if @@rowcount = 0

beginreturn

Page 160: Nuevas funciones en Adaptive Server versión 12.5

Cambios que pueden afectar a las aplicaciones existentes

146

end

/* add all the new values *//* use isnull: a null value in the titles table means** "no sales yet" not "sales unknown"*/update titles

set total_sales = isnull(total_sales, 0) +(select sum(qty)

from insertedwhere titles.title_id = inserted.title_id)

where title_id in (select title_id from inserted)

/* remove all values being deleted or updated */update titles

set total_sales = isnull(total_sales, 0) -(select sum(qty)

from deletedwhere titles.title_id = deleted.title_id)

where title_id in (select title_id from deleted)

Rendimiento mejorado

Casi todas las subconsultas tendrán un rendimiento mejorado después deeliminarlas y volver a crearlas.

No obstante, una subconsulta de expresión que contenga una función añadidadonde la tabla externa sea muy grande y tenga unos cuantos valores correlativosduplicados, y la tabla interna sea pequeña, podría tener un rendimiento máspobre en la versión 11.0. Por ejemplo:

select * from huge_table where x=(select sum(a) from tiny_tablewhere b = huge_table.y)

La alternativa es:

select huge_table.y, s=sum(a)into #tfrom huge_table, tiny_tablewhere b=huge_table.ygroup by huge_table.y

select huge_table.*from huge_table, #twhere x=#t.xand huge_table.y=#t.y

Page 161: Nuevas funciones en Adaptive Server versión 12.5

CAPÍTULO 6 Nuevas funciones de SQL Server versión 11.0

147

Cambios introducidos en la salida showplan en la versión 11.0La salida para la opción showplan de set ha cambiado. Si tiene aplicaciones queutilicen esa salida generada, necesitará cambiarlas para que utilicen la nuevasalida.

Consulte el Capítulo 9, "Understanding Query Plans", delManual de rendimiento y mejoras.

Las nuevas estrategias de caché pueden afectar el rendimientoAhora el optimizador puede elegir una nueva estrategia de caché que se llama"recuperar y descartar". La estrategia de caché estándar lee las páginas en lacabeza de la cadena MRU/LRU (utilizado más recientemente/utilizado menosrecientemente) del caché. Esto vacía otras páginas del caché. La estrategiarecuperar y descartar (o MRU) lee las páginas en el caché más cerca del finaldel caché, así que no vacía otras páginas. Pero estas páginas permanecen encaché un periodo de tiempo mucho más corto, por lo que las consultas deusuario subsiguientes que podrían obtener un "acierto en caché" al encontrarestas páginas en caché en la estrategia estándar tienen menos probabilidades deencontrar la página en caché ahora.

Cuando el optimizador calcula que un consulta en particular leerá un númerosignificativo de páginas, y sólo necesitará esas páginas una vez durante laconsulta, puede elegir la estrategia de recuperar y descartar. Si la E/S del discoaumenta en la versión 11.0, compruebe la estrategia de E/S para las consultascon showplan para ver la estrategia de caché que se utiliza. Si las consultasutilizan la estrategia de recuperar y descartar (MRU), puede añadir una cláusulaa los comandos select, update y delete para especificar la estrategia de cachéestándar.

Consulte el Capítulo 10, "Técnicas de optimización avanzadas", del Manual derendimiento y mejoras.

Page 162: Nuevas funciones en Adaptive Server versión 12.5

Cambios que pueden afectar a las aplicaciones existentes

148

Actualización de los volcados de base de datosSi utiliza archivos de secuencias de comandos para realizar las cargas de basesde datos con los comandos load database y load transaction, los archivos desecuencias de comandos darán error a menos que incluya el comando onlinedatabase al final de la secuencia de carga. También debería eliminar lassiguientes opciones de sp_dboption de los archivos de secuencias de comandos:no chkpt on recovery, dbo use only y read only. Ya no se necesitan estas opcionescon la versión 11.0, ya que load database define el estado de la base de datoscomo fuera de conexión, haciéndola así inaccesible a los usuarios.

Para obtener información adicional sobre la actualización de los volcados debase de datos, consulte el Capítulo 21, "Copia de seguridad y restauración debases de datos de usuario", del Manual de administración del sistema y loscomandos load database y dump database en el Manual de consulta.

Particiones y posición física de los datos

Nota: La versión 11.5 añade la posibilidad de crear índices agrupados en tablascon particiones y acceder a las tablas en paralelo. Consulte el Manual derendimiento y mejoras para obtener más información.

En la versión 10.0, los datos de una tabla de pila se insertaban siempre al finalde una cadena de páginas única. Esto significaba que una tabla de pila (porejemplo, una tabla de historial) almacenaba físicamente las entradas másrecientes al final de la cadena de páginas y las más antiguas al principio.Una sencilla instrucción select o una exploración de cursor con tal tabla podíadevolver filas en el mismo orden aproximadamente de su inserción.

En la versión 11.0 puede crear tablas con particiones que tienen varias cadenasde página. Las inserciones en las tablas con particiones pueden ocurrir al finalde muchas cadenas de página diferentes. En una tabla así, los datos no sealmacenan físicamente en orden secuencial. Si desea ver las filas de una tablacon particiones en orden secuencial, utilice la cláusula order by en lainstrucción select.

Consulte el Manual de rendimiento y mejoras para obtener más informaciónacerca de las particiones.

Page 163: Nuevas funciones en Adaptive Server versión 12.5

Índice

149

Aactivación de disparadores 46actualizaciones directas 130actualizaciones in situ 130Adaptive Server

cambios que pueden afectar a las aplicaciones parala versión 12.5 28

columnas anchas y truncado de datos 28compatibilidad con sistema externo de archivos 9compatibilidad con Unichar 13número de grupos 4número de logins 4número de usuarios 4SQLJ 6tamaño de columna 3tamaños de páginas lógicas 2versión 12.5 límites flexibles 2

administración de transacciones distribuidas 47administrador de bloqueos 124administrador de procesos lógicos 90afinidad de motor 90almacenamiento de datos, max_rows_per_page y

119alta disponibilidad, utilizando Sybase Failover 33–

34, 55archivo .cshrcarchivo cshrc] xiiiarchivo de interfaces 49archivo libtcl*.cfg 8archivo .profile xiiiarchivos

.cshrc xiii

.profile xiiiasignación de páginas 120asignar nombres a clientes 38auditoría, procedimientos de sistema para 80auto identity, sp_dboption 132autorización proxy

concesión de permiso para 102valor para aplicaciones 102valor para usuarios 102

BBackup Server

cintas sin rebobinado 36copia de datos en paralelo 99copia de seguridad y restauración de alto rendimiento

35determinación del dispositivo de cinta 131operaciones de volcado 36

bancos 118bancos de memoria 118base de datos

integridad, garantizar 36para depuración 39propietarios de objetos, seguimiento 54suspender 37sybdiagdb 39

bloqueos de bucle 122, 124bloqueos de dirección 124bloqueos de página 124bloqueos de tabla 124búsquedas de tabla, tablas con particiones y 148

Ccachés de datos 116cachés de datos con nombre 116cachés de diario de usuario 122cachés de metadatos 97cambiar los rangos de identificación 39cambios de configuración 127, 139Cambios introducidos en la actualización de las

subconsultas 130capa de control de directorio (DCL) 49checkpoints, proceso housekeeper y 126cintas sin rebobinado para Backup Server 36cláusula at isolation 124cláusula order By 148clientes, asignar nombres a 38

Indice

Page 164: Nuevas funciones en Adaptive Server versión 12.5

Índice

150

columna ancha 28columna status, syssrvroles 62columnas IDENTITY, cambios para 11.0 132comando

alter role 57alter table 20, 57alter table, activación o desactivación de disparadores

46alter table, modificar el esquema de una tabla existente

37clientapplname 21, 58clienthostname 58clientname 58create role 57create table 39, 57dbcc 57dbcc engine 38delete, seguimiento del creador del 54disk init 36, 58disk reinit 36, 58dsync 36dump database 105dump database, opción compress 12dump transaction 105, 123dump transaction, opción compress 12execute 44, 58insert, seguimiento del creador del 54load transaction 101online database, utilización 131, 134, 148quiesce database 11, 37, 57reconfigure 139remove java 57reorg rebuild 35select 43select into 39select, nuevas cláusulas 119, 124set 38set proxy 102set session authorization 102set showplan 128set, clientapplname 21, 58set, clienthostname 58set, clientname 58sp_configure 45strict_dtm_enforcement 58transactional_rpc 58

update, seguimiento del creador del 54compatibilidad con archivo comprimido 12compatibilidad con sistema externo de archivos 9compatibilidad con Unichar 13compatibilidad para los sistemas de archivos UNIX 36Component Integration Services (CIS) 47, 48compresión de volcado

definición 12ejemplo de sintaxis 12

comprobación de interbloqueo 125concesión de permiso para autorización proxy 103configurar cachés 116consultas

cambios introducidos en 130limitaciones con sp_add_resource_limit 106mejoras en 42mejoras en el coste 43número de tablas en 41planes abstractos para 45

control de acceso 10control del acceso a SQL en ejecución 97, 98

configuración de cantidad de texto guardado enmemoria 98

convenciones de sintaxis xiiicopia de seguridad y restauración de alto rendimiento

35copia masiva paralela

copia de datos en paralelo 99y los indicadores -F y -L 100y tablas particionadas 99

coste para las consultas 43creación de objetos 54cuenta de correo de Windows NT 112cursores

compilación 75optimización 75tablas con particiones y 148

Ddaños 103dbcc checkdb 121dbcc checktable 121dbcc tune 127

Page 165: Nuevas funciones en Adaptive Server versión 12.5

Índice

151

definidas por el usuariofunciones para Java 40

definido por el usuarioseguridad de login 50

definidos por el usuariocachés 116

desactivación de disparadores 46desconexión de motores 38determinación del dispositivo de cinta 131diario de errores 92diario de transacciones 118, 122disparadores

activación 46desactivación 46resultados NULL 144

EE/S grande 118ejecución

atributos 90de comandos de Transact-SQL 44objetos 91precedencia 90procedimientos de sistema para 91

ejecución en dos fases 109eliminar, nuevas cláusulas para 119ESP 93estrategias de caché 117expresión CASE 82expresiones, longitud máxima 3

FFailover, using in a high availability system 33–34Failover, utilización en un sistema de alta

disponibilidad 55filas por página 119fillfactor, comparado con max_rows_per_page 120función autorizada 33, 40, 47funciones de lenguaje de procedimientos, llamada 93funciones, Java 40

Ggrupos, número de para 12.5 4

Iidentity in nonunique index

sp_dboption 132índices, reconstrucción 35información general de las opciones set 135insertar, nuevas cláusulas para 119integridad

base de datos 36mensaje 50

integridad del mensaje 50intervalos de tiempo 106intervalos de tiempo concretos 106

JJava

clases como tipos de datos 41en Adaptive Server Enterprise 40–41funciones definidas por el usuario 40instalación en Adaptive Server 6posibilidades 40tipos de datos 41

jerarquía de los parámetros 127join 20, 57

LLDAP, definición en libtcl.cfg 8lenguajes de tratamiento de datos 10límites de recursos 106límites de tablas en consultas 41listas de bloqueos disponibles 125listas de bloqueos disponibles de motor 125listas globales de bloqueos disponibles 125Login unificado 50Logins

número de para 12.5 4servidor 54unificados 50

Page 166: Nuevas funciones en Adaptive Server versión 12.5

Índice

152

Mmax_rows_per_page

comparado con fillfactor 120mejoras

para tipos de datos 45mejoras de integridad referencial 96mejoras introducidas en showplan 128mejoras para consultas 42mensajes de correo electrónico 112Microsoft Distributed Transaction Coordinator (MSDTC)

47Monitor de rendimiento de Windows NT 113motores fuera de conexión 38motores múltiples de red 128

NNiveles de aislamiento 123nombre de usuario de servidor e Id. 54número de grupos 4número de logins 4número de usuarios 4

Oobjetos, creación 54opciones configname para sp_helpconfig 39opciones de mejora de consulta 118Open Client y los nuevos límites de Adaptive Server 29operaciones de volcado y Backup Server 36operador union en una vista 7optimización para consultas 42

Ppage utilization percent 142páginas OAM 120páginas sospechosas 103, 105palabras clave

nuevas para la versión 11.0 138nuevas para la versión 11.5 64nuevas para la versión 12.5 26

palabras reservadasnuevas para la versión 11.0 138nuevas para la versión 12.0 64

parámetroidentity gap 39

parámetro de configuracióncheck password for digit 55dtm detach timeout period 55dtm lock timeout period 55enable cis 56enable dtm 55enable HA 55enable java 55enable sort-merge joins and JTC 42enable xact coordination 56log audit logon failure 92log audit logon success 92maximum failed logins 56minimum password length 56number of aux scan descriptors 96number of dtx participants 56size of global fixed heap 56size of process object fixed heap 56size of process object fixed heap 56size of shared class heap 56SQL Perfmon Integration 113strict dtm enforcement 56text prefetch size 45, 56txn to pss ratio 56xact coordination level 56xp_cmdshell 95

parámetros, cambios de nombre de 139particiones originales 36perfil de correo de Windows NT 112planes abstractos para consultas 45planes, consulta 45precedencia de ejecución de aplicaciones,

procedimientos de sistema 91procedimiento del sistema

sp_addlogin 59sp_addmessage 92sp_altermessage 92sp_chgattribute 39sp_companion 59sp_deviceattr 36, 59sp_displaylogin 60

Page 167: Nuevas funciones en Adaptive Server versión 12.5

Índice

153

sp_displayroles 60sp_ha_admin 59sp_help 39sp_helpconfig 39sp_helpdevice 36, 60sp_helpjava 59sp_lock 60sp_modifylogin 60sp_monitorconfig 60sp_poolconfig 116, 135sp_transactions 59sp_who 22, 60

procedimientos almacenados extendidos, véase ESPprocedimientos almacenados, longitud máxima 3procedimientos del sistema

sp_bindcache 135sp_cacheconfig 135sp_cachestrategy 135sp_chgattribute 135sp_configure 127, 136sp_dboption 136sp_displaylevel 135sp_dropglockpromote 135sp_helpartition 135sp_helpcache 135sp_logiosize 118, 135sp_poolconfig 135sp_procqmode 136, 143sp_setpglockpromote 128, 136sp_unbindcache 136sp_unbindcache_all 136

procesamiento de consultasmodo 143paralelas 100

procesamiento de consultas paralelas 100promoción de bloqueos 128protocolo X/Open XA 47puntos de truncado 122

Rrangos de identificación, cambiar 39reconstrucción de índices 35recuperación 101, 103recuperación a un momento dado 101

redmotores E/S 128seguridad 49

registro de eventos de Windows NT 92rendimiento

de la seguridad de red 49equilibrio de aplicaciones 90

representación de otro usuario 102resultados duplicados de la subconsulta 143

Ssegmentos, particiones y 121seguridad

login definido por el usuario 50red 49

seguridad de login, definido por el usuario 50servicios de directorio 89servicios de integración de componentes (CIS) 82servidores remotos, conexión con Component

Integration Services 82set dup_in_subquery 143set forceplan 119set prefetch 119set table count 119set transaction isolation level 123Shell Bourne xiiiShell C xiiiShell Korn xiiiShells xiiisistema de archivos UNIX, compatibilidad 36sistemas SMP 128sp_bindcache 116, 135sp_cacheconfig 116, 135sp_cachestrategy 119, 135sp_chgattribute 135sp_configure 127, 136, 142

deadlock checking period 125, 142freelock transfer block size 126identity grab size 132lock promotion 128max engine freelocks 126porcentaje de utilización de página 120promedio de spinlock de bloqueos de dirección

124

Page 168: Nuevas funciones en Adaptive Server versión 12.5

Índice

154

promedio de spinlock de bloqueos de página 124promedio de spinlock de bloqueos de tabla 124proporción de spinlock de caché de diario de usuario

122tamaño de caché de diario de usuario 122

sp_dboption 136auto identity 132identity in nonunique index 132

sp_displaylevel 135sp_dropglockpromote 135sp_helpartition 121, 135sp_helpcache 116, 135sp_logiosize 118, 135sp_procqmode 136, 143sp_setpglockpromote 128, 136sp_unbindcache 116, 136sp_unbindcache_all 136SQLJ en Adaptive Server 6SSL, definición 8subconsultas 142, 145

cambios introducidos en 130restricciones 144resultados NULL 144

suid (Id. de usuario de servidor), creador de objeto y 54supervisión desde el Monitor de rendimiento de Windows

NT 113suspender bases de datos 37Sybmail 112

Ttabla del sistema

sysattributes 62, 136syscolumns 61sysconfigures 62, 137syscoordinations 61syscurconfigures 137sysdatabases 137sysdevices 61syservroles 62sysindexes 137sysjars 61syslocks 61syslogins 62syslogshold 122, 136

syspartition 136sysprocesses 61syssessions 62systransactions 62sysusers 62sysxtypes 62titles 45

tabla syssrvroles 62tablas con particiones 120

posición de los datos y 148tablas de pila 120tablas de sistema 24tablas del sistema 61, 136tablas hash 124tablas, número de, en una consulta 41tamaño de columna 3tamaño de E/S de diario 118tamaños de páginas lógicas 2tarea housekeeper

escrituras libres y 126tiempo de recuperación, tarea housekeeper y 126tipos de datos

clases de java como 41mejoras para 45

tipos de datos image 45tipos de datos text 45transacciones

administración de distribuidas 47ejecución en dos fases 109limitaciones con sp_add_resource_limit 106

transacciones activas más antiguas 122transacciones distribuidas, administración 47Transact-SQL, ejecución dinámica de 44

Uuniones

fusionadas 42utilización de sintaxis ANSI 43

uniones ANSI 43uniones de fusión 42usuarios, número de para 12.5 4utilidad buildmaster -y 127utilidad extractjava (UNIX) 60utilidad extrjava (NT) 60

Page 169: Nuevas funciones en Adaptive Server versión 12.5

Índice

155

utilidad installjava (UNIX) 61utilidad instjava (NT) 61utilización de la CPU, proceso housekeeper y 126

Vvariable global @@ textts 133variable global @@textcolid 133variable global @@textptr 133variables globales

@@textcolid 133@@textdbid 133@@textobjid 133@@textptr 133@@textts 133

variables globales image 133variables globales text 133variables, longitud máxima 3vistas, utilización de operadores union 7volcados, base de datos, actualización 130, 148

XXP Server 94

prioridad 95

Page 170: Nuevas funciones en Adaptive Server versión 12.5

Índice

156