SQL Server 2005 – Features

Mejoras del Sistema

SQL Server 2005 introduce un numero de perfeccionamientos que impactan en la manera en que el sistema de SQL Server puede ser administrado. Las mejoras incluyen:

ü  Soporte de memoria de Dynamic Address Windowing Extensions (AWE)

ü  Memoria Hot-add

ü  Afinidad Dinámica de CPU

Memoria Dinámica AWE

Se puede configurar SQL Server 2005 para usar AWE, usando la opción de configuración  awe enabled. Después podes setear las opciones min server memory y max server memory para que el SQL Server use memoria AWE dinámicamente según lo requerido. El siguiente ejemplo, muestra como usar la memoria AWE: 

 

**************************************************

sp_configure ‘show advanced options’, 1

RECONFIGURE

GO

 

sp_configure ‘awe enabled’, 1

RECONFIGURE

GO

*************************************************

Memoria Hot-add

Cuando se usa la memoria AWE, el SQL Server 2005 también puede sacar provecho del soporte de Windows Server 2003 para memoria hot-add. Si el hardware del Server soporta memoria hot-add, los administradores pueden agregar memoria física sin reiniciar el servicio SQL Server. El SQL Server usará memoria física adicional si es requerido.

Para aprovechar las memorias hot-add, el SQL Server debe estar ejecutándose en Windows Server 2003 Enterprise o la edición Datacenter con la opción configurada awe habilitada.  

Afinidad Dinámica de CPU

En SQL Server 2005, puedes reconfigurar la opción affinity mask sin tener que reiniciar el servicio. El SQL Server automáticamente ajusta el numero de CPUs schedulers usadas para juntar las conversaciones.

Perfeccionamiento del Almacenamiento de Datos

SQL Server 2005 introduce un numero de perfeccionamientos de almacenamiento de datos, incluyendo nuevos y perfeccionados tipos de datos y un tamaño de fila de una tabla mayor. Estas mejoras hacen el almacenamiento de datos más eficiente y flexible.

 

Nuevos y mejorados tipos de datos

varchar, nvarchar, and varbinary:
El máximo de Keyword que pude ser usado para extender el largo de alguno de estos tipos de datos es hasta 2^31 bytes (aproximadamente 2 GB).
xml:
Los valores para los datos xml pueden ser opcionalmente asociados con un  XML schema.

Mayor tamaño de Row

 

En las ediciones previas de SQL Server, el máximo de una fila de una tabla era 8 KB. Mientras que este es aun el máximo físico de una pagina, el SQL Server 2005 puede mover el reflujo de datos varchar, nvarchar, varbinary, o sql_variant a otra pagina manteniendo 24  byte puntero en la pagina original, haciendo posible almacenar una row que contenga mas de 8 KB de datos. Para acomodar el reflujo de esta manera, cada columna en la fila de la tabla debe tener un máximo de 8 KB. Cuando la combinación de todas las columnas es mayor a 8 KB, SQL Server va automáticamente a mover la columna más larga a una página de reflujo.

 

Nota Importante:

El limite 8 KB aplica solo para las columnas varchar, nvarchar, o varbinary definidos sin el max keyword. Cuando el max keyword es usado, los datos son implementados como un gran objeto usando un puntero a las páginas donde los datos están físicamente almacenados.

Mejoras de Tablas e Índices Particionados

Esto permite a una tabla ser esparcida a través de un número de Grupos de Archivos físicos, mejorando la performance y haciendo más fácil administrar los procesos archivados range-based.

 

partitioning

 

Esparcimiento de Tablas de Datos a través de Grupos de Archivos

Se puede particionar una tabla horizontalmente, así las filas son expandidas a través de múltiples Grupos de Archivos.  Implementando esta partición se obtienen los siguientes resultados:

 

ü  Mejorar la performance en sistemas de multiprocesadores. Las tablas particionadas puede aumentar la performance cuando están consultando grandes tablas en un sistema con 8 o más procesadores. El optimizador de consultas de SQL Server 2005 puede ejecutar consultas sobre múltiples particiones en paralelo, reduciendo el tiempo requerido del proceso.

 

ü  Administrar más fácil tablas grandes. Una tabla particionada hace la administración de data subsets mas fácil, las cuales se pueden agrupar lógicamente por un rango de datos. por ejemplo: Un requerimiento común de datos es trabajar solo con los datos del mes en curso. Se puede especificar la columna particionada, numero de particiones y el rango de valores de las columnas particionadas para cada partición. Un beneficio de particionar es que se pueden mover datos entre las tablas particionadas muy rápido con relación a tener que hacer un INSERT INTO SELECT FROM statement. Esto es porque los datos no están siendo movidos físicamente; solo la metadata concerniente al lugar de almacenamiento es lo que se mueve.

 

Snapshot Isolation Level

El SQL Server 2005 incluye una nueva transacción de isolation level llamada snapshot. Snapshot isolation permite a los usuarios leer previamente valores de datos usando una vista consistente transaccionalmente de la base de datos. En este isolation level, los lectores no bloquean otros lectores y escritores que están accediendo al mismo dato. Similarmente, los escritores no bloquean a los lectores. La operación de escritura en el snapshot isolation level esta basada en un mecanismo de bloqueo con detector de conflicto automático. El mecanismo de detección de conflictos evita que un usuario haga cambios basados en datos que otro usuario haya cambiado.

 

SnapShot

 

Como Trabaja Snapshot Isolation?

Snapshot isolation esta basado en row versioning, el cual da consistencia de lectura siguiendo una cadena de versiones que contienen las rows comprometidas de datos. Esta cadena está situada en una versión separada de almacenamiento alojada en tempdb. Varias versiones comprometidas de rows individuales de datos son creados durante la ejecución del UPDATE statement y recuperados por la operación SELECT a través de las consultas del snapshot. Las consultas Snapshot son consultas que se ejecutan bajo el snapshot isolation que lee los datos de snapshot.

Administración de snapshot isolation

Los Administradores pueden habilitar o no la snapshot isolation en una base de datos poniendo la opción ALLOW_SNAPSHOT_ISOLATION en ON u OFF en una statement CREATE DATABASE o ALTER DATABASE. El siguiente ejemplo muestra como habilitar la snapshot isolation:

 

ALTER DATABASE AdventureWorks

SET ALLOW_SNAPSHOT_ISOLATION ON

 

Cuando la snapshot isolation esta habilitada, las aplicaciones que quieran usarla deben setear el isolation level transaccional a SNAPSHOT para conectarse, según se indica en el siguiente ejemplo:

 

SET TRANSACTION ISOLATION LEVEL SNAPSHOT

 

Statements ejecutados en transacciones luego usarán snapshot isolation.

 

SQLiMail

SQLiMail es un nuevo sistema en SQL Server 2005.  Usa el Standard Simple Mail Transfer Protocol (SMTP) para enviar un e-mail desde una instancia de SQL Server 2005. Usando SQLiMail, las aplicaciones de base de datos pueden enviar e-mails que contengan resultados de consultas y archivos. SQLiMail esta diseñado para ser un sistema confiable, escalable y seguro para SQL Server.

 

Característica

Descripción

No Extended MAPI requirement

SQLiMail usa SMTP, no Extended MAPI.

Process isolation

El componente que envía e-mails se ejecuta en un proceso separado para minimizar el impacto en el SQL Server.

Failover accounts

Se puede especificar más de un servidor SMTP por perfil, así si el servidor SMTP no esta disponible, los mails aun pueden ser enviados.

Envío Desincronizado

SQLiMail usa Service Broker para enviar mensajes para evitar el bloqueo de un proceso almacenado.

Perfil de Seguridad

SQL Server ayuda a mejorar la seguridad dando la posibilidad de especificar que usuarios en una base de datos pueden acceder al perfil de SQLiMail.

Configuración Integrada

 

SQLiMail almacena la información de perfiles dentro del SQL Server. No es necesario administrar el perfil en una aplicación externa.

Instalar y configurar SQLiMail

Se puede usar el SQLiMail Configuratión Wizard para instalar y configurar SQLiMail en una base de datos. Se inicia el asistente desde el SQLiMail en la Management folder del Object Explorer. El asistente reúne la información, Incluyendo la base de datos a instalar y la información del usuario para crear un perfil SQLiMail. 

 

About justindeveloper

I am MCP (Microsoft Certified Professional). MCTS (Microsoft Certified Technology Specialist) and MCPD (Microsoft Certified Professional Developer), also I am SAP Business One Certified!! Desarrollando desde el IDE de Visual Studio NET 2003 hasta ahora con el Visual Studio NET 2010. Desde Microsoft SQL Server 2000 hasta ahora con el Microsoft SQL Server 2008 R2 y tambien con SharePoint, desde WSS 3.0 y MOSS 2007 y ahora familirizandome con el Sharepoint Foundation 2010 & Sharepoint Server 2010. The software development will follow being every time more wonderful!
This entry was posted in Development. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s