29 agosto 2010

Alternativas para procesar un cubo de Analysis Services

Hace unos días recibí una pregunta del maestro del tenis de Venezuela y el Caribe, el gran Eduardo Delgado, y copio a continuación:

¿Hay alguna forma de refrescar automáticamente un cubo usando T-SQL o algún otro método que pueda ser invocado por una aplicación externa? …Te lo pregunto porque tengo un Datawareouse cuyos procesos de ETL están desarrollados en informática y los datos se ven en un cubo en Analysis Services, actualmente el cubo se está refrescando manualmente y quiero automatizar esta parte.

Esta fue mi respuesta:

Claro que hay un par de formas. SSAS soporta XMLA lo cual te permite crear los comandos para procesar el cubo usando XML con una sintaxis predefinida. Con esto podrías por lo menos hacer 3 cosas:

Estas sugerencias fueron dadas asumiendo que no se está usando SSIS como herramienta del ETL y por tanto no se pueden aprovechar los controles que ya SSIS trae para procesar cubos de SSA. Recuerden que para generar los scripts de XMLA para procesar sus dimensiones o cubos, lo pueden hacer fácilmente con el SQL Server Management Studio y luego modificarlo según sea necesario:

image

image

Al pulsar el botón se generará un script similar al siguiente:

<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<Parallel>
<Process xmlns:xsd=http://www.w3.org/2001/XMLSchema
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
xmlns:ddl2=http://schemas.microsoft.com/analysisservices/2003/engine/2
xmlns:ddl2_2=http://schemas.microsoft.com/analysisservices/2003/engine/2/2
xmlns:ddl100_100=http://schemas.microsoft.com/analysisservices/2008/engine/100/100
xmlns:ddl200=http://schemas.microsoft.com/analysisservices/2010/engine/200
xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200">
<Object>
<DatabaseID>Health Plan Analytics</DatabaseID>
</Object>
<Type>ProcessFull</Type>
<WriteBackTableCreation>UseExisting</WriteBackTableCreation>
</Process>
</Parallel>
</Batch>





Además de las recomendaciones que le sugerí, mi buen amigo Eduardo, respondió que finalmente puso el código XMLA para procesar sus cubos dentro de un Job del SQL Server Agent para finalmente ejecutarlo usando el procedimiento almacenado sp_start_job desde su paquete de Informatica, lo cual fue una excelente forma de resolver este interesante caso.


Alan

Entrevista para TechNet: SQL Server 2008 R2

Hace unos días, el boletín TechNet Flash de Microsoft TechNet publicó una entrevista con este servidor con respecto a SQL Server 2008 R2 y sus nuevas características. Por si no la recibieron la copio a continuación.

Entrevista

Después de hora

Todo SQL Server 2008 R2 con Alan Koo

Alan KooCuando hablamos de negocios, resulta inevitable incluir SQL Server en la conversación y es este el motivo que nos impulsó a entrevistar a Alan Koo, quien ya cursa su tercer año consecutivo como MVP en esta especialidad, Consultor Senior para Nagnoi,Inc y fundador del Capítulo SQL en Puerto Rico. Entre muchas otras competencias, Alan es un amante de los deportes durante el día e incursiona en el karaoke por las noches, además de dedicarle su mejor tiempo a sus amores Alan Jr., Camila y Sugey. Compartamos lo que dejó esta entrevista.

- ¿Cuáles son las características de SQL 2008 R2 que han tenido más impacto desde el punto de vista del profesional TI?
Alan Koo: Sin duda, PowerPivot significa una total revolución en la manera de cómo los usuarios finales pueden consumir y analizar información de distintas fuentes de datos, obteniendo tiempos de respuesta totalmente sorprendentes y con gran escalabilidad. PowerPivot es Analysis Services con un nuevo modelo de almacenamiento en memoria basado en columnas y de alta compresión. PowerPivot habilita lo que se conoce como Personal BI y Team BI (Inteligencia de Negocios Personal y Departamental), por lo cual viene en dos sabores: PowerPivot for Excel y PowerPivot for Sharepoint 2010. Actualmente aquí en Nagnoi, Inc. venimos implementando esta tecnología con bastante éxito, la retroalimentación de los usuarios es totalmente positiva. Otras novedades importantes son el soporte de mapas en Reporting Services, Master Data Management y StreamInsight.
- Específicamente en materia de deployment ¿cuáles son las mejoras en la versión R2?
AK: SQL Server 2008 R2 presenta 2 cosas interesantes. Utility Control Point, permite la administración y el monitoreo del uso de recursos de múltiples instancias y bases de datos desde un punto central. Así mismo hace mucho más fácil el desarrollo, distribución y administración de los nuevos Data-Tier Applications. Un Data-Tier Application es una única unidad de distribución que contiene la definición del esquema de uno o varios objetos que necesitamos distribuir (tablas, procedimientos almacenados, funciones, etc.). Adicionalmente podemos incluir las condiciones o políticas necesarias requeridas para que nuestros objetos funcionen como se espera. Nuestro DBA no tendrá que usar más largos y confusos scripts, sólo tendrá que ejecutar nuestra unidad de distribución (DAC) y seguir el asistente de instalación.
- Y en cuanto a seguridad, ¿cuáles son las ventajas que señalarías respecto a la versión anterior?
AK: En materia de seguridad, ya desde la versión 2005, SQL Server es un producto bastante robusto, haciéndolo seguro por defecto (secured by default) y luego aprovechando las ventajas del sistema operativo para otorgar los mínimos permisos de acceso para la ejecución de los servicios de SQL sólo por mencionar algunas características. En la versión R2 de 2008 se agregó un nuevo nivel de seguridad para evitar que un atacante utilice las credenciales reales del usuario para hacer relevo (relay) de las mismas y vulnerar así nuestro servidor. Esta nueva característica se conoce como "Extended Protection" y puede ser implementada a nivel de servicio (Service Binding) o a nivel de canal (Channel Binding).
- La explotación de la información desde Excel 2010 es de mucha importancia ¿Qué nos puedes decir acerca de los diversos modelos de minería que incluye Analysis Services? ¿Y como ves la integración en general entre SQL y Excel?
AK: Este es un tema apasionante ya que Data Mining con SQL Analysis Services y Excel es la combinación perfecta para acercar al usuario de manera bastante simple, tecnologías que sólo se veían antes en temas de doctorado en la universidad. En el mundo de Inteligencia de Negocios, esto se conoce como Análisis Predictivo y nos permite contestar o predecir temas de negocio muy interesantes como: cuál es la posibilidad que se nos vaya un cliente (Churning); qué cosas se compran juntas (Basket Analysis); qué hace el usuario en mi website (Clickstream Analysis); qué transacción puede ser falsa (Fraud Detection), cuál será la venta del próximo mes (Forecasting); entre otras. Analysis Services incluye la implementación de los algoritmos más importantes y poderosos del campo de la Minería de Datos como son: Microsoft Time Series, Microsoft Decision Trees, Microsoft Nayve Bayes, Microsoft Neural Networks, Microsoft Sequence Clustering, Microsoft Association.
- ¿Qué cambios incluye esta versión en relación a su motor de DB para la compresión de datos?
AK: SQL Server 2008 R2 mejora las características de compresión de datos (Data Compression) que se presentaron ya en el primer release de la versión 2008. Las mejoras se basan en comprimir de una mejor manera los campos Unicode en nuestra base de datos para hacer que ocupen menos espacio. Por tanto si sus tablas tienen muchas columnas de tipo nvarchar, se van a beneficiar mucho con esta nueva característica, donde podrán ver ahorros de espacio en disco de hasta 56% versus no comprimir los mismos datos. Esto en dólares, nuevos soles, pesos o la moneda que se elija, representa muchísimo dinero ahorrado en almacenamiento para nuestras empresas con sólo habilitar esta característica.

Alan

12 agosto 2010

The Influence Project 2010: Necesito su voto

Estoy participando en una iniciativa de la revista Fast Company llamada “The Influence Project”, la cual busca identificar al 2010 Most Influential Person Online, junto a otras personas que de algún modo contribuyen o influyen a través de las comunidades on-line.

Como alguno de ustedes saben, a través de mi trabajo diario como consultor de Nagnoi, Inc., del Capítulo de Puerto Rico PASS, de mi blog “Microsoft Business Intelligence y más..” y de mis contribuciones como Microsoft MVP en los últimos 3 años a través de los websites de MSDN, TechNet y el Microsoft Community Media Center; busco compartir mi conocimiento y experiencias con la intensión de contagiar a la audiencia con mi pasión por hacer a las compañías más competitivas aplicando Inteligencia de Negocios o Business Intelligence.

Para que me ayuden a entrar al ranking les pido que visiten el siguiente link: fcinf.com/v/aaf9. Una vez le den clic al enlace, la página puede tardar un poco en cargar pero con un poco de paciencia debe aparecerles un mensaje en inglés indicando que su “clic” me ha sido acreditado. Si tienen cuenta de Facebook y/o de Twitter, pueden usar los íconos respectivos que verán en la misma página para difundir mi información en sus cuentas. Al momento de preparar este email me encuentro en el ranking 7,848 de 29,289 que con su ayuda espero ir mejorando.

Corran la voz a sus contactos y amigos; mientras más visitas al link fcinf.com/v/aaf9, obtengo más votos en el ranking. La fecha final para recibir los créditos es el este domingo 15 de agosto hora del Este de los Estados Unidos.

Muchas gracias por su confianza y su apoyo.

Alan