Plataforma de datos

Plataformas de gestión de datos, bases de datos y almacenamiento

Cómo montar dos entornos en un mismo servidor SQL Server 2008 sin que se "pisen"

Propiedades del ServidorNos ponemos en situación
En nuestro entorno es posible que necesitemos disponer de dos replicas de una/s base de datos en entornos diferenciados (el clásico ejemplo sería producción y test). Para decidir como lo hacemos las preguntas más comunes que nos debemos hacer son:

-¿Este nuevo entorno será temporal? ¿Contiene bases de datos grande en cuanto a volumen y/o la carga que debe soportar es elevada(aunque sea test)?
-¿Dispongo de la versión de desarrollo de SqlServer2008? Que solo está a tu alcance si tienes una suscripción Msdn...
-¿Dispongo de un servidor adicional?...

 

 

Como deshabilitar el autocommit en SQL Server Management Studio

SQL08¿Alguna vez os habeis preguntado como deshabilitar el autocommit en el Management Studio de Sql Server? Pues la respuesta es rápida. Lo podeís cambiar activando en el menú Herramientas > Opciones > Ejecución de la consulta > SQL Server > Ansi > SET IMPLICIT_TRANSACTIONS...

 

 

Particionado de tablas en Oracle

Particionado de tablas en OracleEn una entrada anterior del blog vimos los conceptos básicos del particionado de tablas y como se podian llevar a la práctica utilizando MySql. Incluso hicimos una comparativa de tiempos de respuesta con una tabla de 1 millón de registros con y sin particionado.

Vamos a ver ahora como implementa Oracle el particionado y algunos ejemplos prácticos de creación de tablas particionadas. Como ya vimos, el particionado es una técnica de optimización que pretende mejorar los tiempos de respuesta de las consultas, y que puede ser especialmente útil en un sistema DW donde las tablas de hechos pueden ser muy grandes...

El coste de tener sistemas con alta disponibilidad en Oracle(english)

[quote]What's the cost of downtime to your business? $100,000 per hour, $1,000,000 or more? The recent volcanic ash that has grounded European flights is estimated to be costing the airlines $200M a day. In the IT world, High Availability (HA) architectures allow for disaster recovery as well as uninterrupted business continuity during system failure...[/quote]

https://bigdatamatters.com/bigdatamatters/2010/04/high-availability-wit…

Bases de Datos Express. Una forma de empezar con las grandes.

En una entrada anterior del blog (Bases de Datos OpenSource. ¿Porque elegimos Mysql para nuestro proyecto?), hablamos de las bases de datos Open Source como opción interesante y fiable para el desarrollo de proyectos de Business Intelligence. Vimos diferentes productos y algunas comparativas entre ellos.
Pero hay otras alternativas (con limitaciones en la mayoria de casos), que nos permiten empezar a trabajar con “las grandes” de una forma gratuita. Son las llamadas versiones Express. Son versiones pensadas para pequeños sistemas, para labores de desarrollo o formación, para la preparación de prototipos o evaluaciones, que nos permiten una “iniciación” con los grandes gestores de bases de datos relacionales. En la mayoría de los casos, el producto se ofrece totalmente funcional, pero con limitaciones (en el tamaño máximo de la base de datos, uso de memoria Ram o procesadores de la máquina, etc). También puede haber funcionalidades que no esten activas en estas versiones (como el particionado en la versión Express de Oracle). Os dejo el link a las webs de los fabricantes donde os podeís descargar estas versiones...

SQLServer 2008: Actualizar estadísticas de tabla de forma dinámica en toda una base de datos

Al igual que en Oracle existe una tabla donde se listan todas las tablas de la base de datos (dba_tables) y podemos usarla para realizar operaciones de mantenimiento de forma dinámica, en Sql Server podemos hacer lo mismo consultando la tabla [basededatos].dbo.sysobjects.
En el ejemplo inferior (como en otros que he colgado) actualizo las estadísticas de todas las tablas de una base de datos de Sql Server de forma dinámica consultando el diccionario de datos. Este se podría encapsular en un stored procedure o directamente ejecutarlo en un job del Agente de Sql Server para mantener actualizadas las estadísticas de todas las tablas de una base de datos de forma automática...

Oracle10g: Cambiar el juego de carácteres de la base de datos

Puede suceder que después de instalar Oracle o configurar una nueva base de datos nos demos cuenta de que el juego de carácteres elegido durante la instalación no es el correcto. Lo que se nos puede ocurrir en casos como este es borrar la base de datos y reconfigurarla o cosas peores... Pero no hace falta. Podemos cambiar el juego de carácteres parando la base de datos, levantandola de forma restrictiva, cambiando la configuración y reiniciado la base de datos. Howto...

 

 

Oracle10g: Manual standby database (planteamiento inicial)

Standby ServerUna base de datos Oracle en Standby es una copia exacta de una base de datos operativa en un servidor remoto, usada como backup, como copia para consulta, recuperación de desastres, etc.
Una base de datos en modo Standby es algo más que un backup normal ya que se puede poner en producción en caso de desastre en un tiempo menor que si tuvieramos que restaurar una copia (ya sea desde rman o un simple export). Restaurar una copia desde fichero tarda tiempo, y durante este periodo el sistema no está disponible..

Oracle 10g: Estadísticas artesanales de nuestra base de datos en el tiempo

Normalmente para analizar lo que pasa unas horas antes bastaría con consultar los datos históricos del Enterprise Manager pero no tenemos datos como el detalle de sesiones activas (si la cantidad total) o el estado o programa de cada una de ellas. También consultar las instantáneas en la consola web pero el problema sigue siendo el mismo, la falta de detalle. Pero no todo es insalvable y podemos en tres pasos completar esta información con algo más de detalle.

 

Paso 1: Crear una tabla con los datos que necesitaremos con un campo fecha.

Paso 2: Crear un procedimiento para alimentar la tabla con datos.

Paso 3: Crear un job con el usuario indicado para acumular datos.

 

Esta técnica puede ser “cutre” pero muchas veces sirve para analizar con más detalle y a nuestro gusto ciertas estadísticas que son visibles mediante vistas v$ que muestran el estado actual de la base de datos y que directamente no muestran un estado anterior en el tiempo.

 

Oracle 10g: Posible optimización de volcado masivo de datos

 

Optimizacion de sentencias de Oracle SQL

En Oracle SQL, se pueden optimizar ejecuciones batch que hagan un volcado masivo de datos en una misma tabla usando sentencias de insert o update por registro dentro de un bloque. Se pueden optimizar con el uso de parámetros (si el cliente lo permite) o si usamos odbc con bind variables.