Monday, May 25, 2015

TM1 Resources

Overview
I've recently been working with clients to convert from Clarity to TM1. There are many different resources out there to help folks with the move, but I wanted to list some key ones here for everyone. This post is a listing of IBM TM1 learning resources I think everyone should know about. I know everyone is busy and we're not going to watch or read everything, but depending on what you want to learn about, these are good places to start.



Clear Insight Youtube Playlist - IBM TM1 Training
This playlist contains videos from our past webinars on various IBM TM1-related topics. In particular, there are a few webinars focused on helping folks transition from Clarity to TM1.

IBM TM1 Product Details
This page has an overview and a datasheet on TM1 and how it can help organizations in many ways.

IBM TM1 Youtube Overview
This is an IBM promotional video showing a quick overview of some of the features of the platform.

IBM TM1 10.2.2 Support Details

This support site provides documentation, updates and downloads. In particular, there are some good resources to help plan an installation and deployment in an environment.


IBM Analytics Zone
A community of free samples for many industries and verticals. In particular, I recommend checking out the blueprints for Revenue Planning, Expense Planning, Capital Planning, Workforce Planning and Profitability Analytics.


IBM Knowledge Center
This is a development support resource containing documentation and samples for all features and functions in TM1. Anyone looking to write ETL may want to check this out.

TM1 Cookbook
This is a set of developer notes for folks interested in more advanced TM1 concepts.

IBM Cognos TM1 - The Official Guide 
This book contains learning material for anyone to get up to speed on TM1. It also has many industry specific patterns that can be used and implemented by just following the instructions. The patterns here are pretty good and they will be a big help over starting from scratch.

Thursday, May 21, 2015

Speeding up Clarity with Analysis Services Compression

Overview

Some Clarity implementations use Microsoft Analysis Services as the OLAP engine. For those implementations, there are some system settings we can enable to speed things up. These should only be enabled in a production environment. Development environments where objects are changing should not have any caching or compression enabled.

Implementing Compression in Analysis Services

Below are the steps to implement caching and compression in Analysis Services.

Step 1 - Open SQL Server Management Studio

This should already be installed on your server. When you open the program, be sure to select 'Analysis Services' as the server type. We want to connect to the OLAP engine, not the database engine.


Step 2 - Open Service Properties

After connecting, you should be able to right click on the server name and select properties. This will open the service properties. If you do not have this option, you probably do not have administrative privileges on the service. By default, the only person who has administrative privileges on this service is the user account through which the service runs.


If you need to check which account this runs as, it can be seen on the Services control panel. In this system the service runs as Local System. It is also common for this to be a domain account with administrative privileges on both the application server and the database server.

Step 3 - Change Settings

Here are the recommended settings to improve caching and compression.

Network \ Requests \ EnableCompression         true
Network \ Responses \ EnableCompression       true


Step 4 - Restart the Analysis Services service

Since we've made changes to settings, they will not take effect until we restart the service.

Step 5 - Check that everything still works

Compression can have unintended side-effects in some environments. Test a few reports and templates to make sure they still retrieve and save data normally. If everything is fine, that's great. If anything is not working, just put the settings back the way they were and restart the service to rollback.

Conclusion

Some Clarity implementations on Analysis Services can benefit from enabling compression at the server level.


Speeding up Clarity with IIS Compression

Overview

Clarity is a web application, so web server compression can speed things up a bit for end users. By enabling web server compression, Internet Information Server (IIS) compresses all files sent to the client. If there are folks connecting on slow connections, this can really help. This is something that needs some baseline testing first. In some implementations, enabling compression can actually slow things down.

Implementing IIS Compression for Clarity

Below are the steps for implementing Internet Information Server server-side compression to support faster access over limited bandwidth connections to the Clarity server.

Step 1 - Baseline Test

Before doing anything, pick a long running report that returns a big dataset. Run this from a user's workstation and time how long it takes for the report to appear after selecting page options. This is now our baseline for timing performance.

Step 2 - Check current compression settings

From the server, review and run the following batch file to check what the current settings are, and if you have the same version of IIS running.


HttpCompressionSettingsCheck.bat

@ECHO OFF
ECHO.
ECHO Checking settings for IIS6 HTTP Compression
ECHO.

cscript C:\Inetpub\AdminScripts\adsutil.vbs get /w3svc/filters/compression/deflate/HcFileExtensions 
cscript C:\Inetpub\AdminScripts\adsutil.vbs get /w3svc/filters/compression/deflate/HcDoStaticCompression 
cscript C:\Inetpub\AdminScripts\adsutil.vbs get /w3svc/filters/compression/deflate/HcDynamicCompressionLevel 
cscript C:\Inetpub\AdminScripts\adsutil.vbs get /w3svc/filters/compression/deflate/HcOnDemandCompLevel 
cscript C:\Inetpub\AdminScripts\adsutil.vbs get /w3svc/filters/compression/deflate/HcScriptFileExtensions 

cscript C:\Inetpub\AdminScripts\adsutil.vbs get /w3svc/filters/compression/gzip/HcFileExtensions 
cscript C:\Inetpub\AdminScripts\adsutil.vbs get /w3svc/filters/compression/gzip/HcDoStaticCompression 
cscript C:\Inetpub\AdminScripts\adsutil.vbs get /w3svc/filters/compression/gzip/HcDynamicCompressionLevel 
cscript C:\Inetpub\AdminScripts\adsutil.vbs get /w3svc/filters/compression/gzip/HcOnDemandCompLevel 
cscript C:\Inetpub\AdminScripts\adsutil.vbs get /w3svc/filters/compression/gzip/HcScriptFileExtensions

ECHO.
ECHO.

ECHO Changes completed. Do an iisreset for changes to have effect!
ECHO.
PAUSE

Step 3 - Enable compression

From the server, review and run the following batch file to turn on the maximum level of compression.

HttpCompressionSettings.bat

@ECHO OFF
ECHO.
ECHO Adding "Best practice" settings for IIS6 HTTP Compression
ECHO.

cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/deflate/HcFileExtensions "css" "htm" "html" "txt" "js" "rdf" "vbs"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/deflate/HcDoStaticCompression "TRUE"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/deflate/HcDynamicCompressionLevel "9"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/deflate/HcOnDemandCompLevel "9"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/deflate/HcScriptFileExtensions "aspx" "asmx" "asbx" "ashx" "axd" "php" "asp"

cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/gzip/HcFileExtensions "css" "htm" "html" "txt" "js" "rdf" "vbs"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/gzip/HcDoStaticCompression "TRUE"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/gzip/HcDynamicCompressionLevel "9"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/gzip/HcOnDemandCompLevel "9"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/gzip/HcScriptFileExtensions "aspx" "asmx" "asbx" "ashx" "axd" "php" "asp"

ECHO.
ECHO.

ECHO Changes completed. Do an iisreset for changes to have effect!
ECHO.
PAUSE

Step 4 - Restart IIS

At this point, we need to restart IIS. This can be done many ways. One way is to run this command line as an administrator.

iisreset

Step 5 - Test against the baseline
Now that we have compression enabled, run the same test as before. Compare the time of the report from before and after to see if compression has had any effect. Be sure to run it a few times though. The first time, may run the same time or slower, but subsequent runs should be faster.

Step 6 - Decide if you want to rollback or not

At this point, the system could be faster, slower or unchanged. If you want to rollback and put things back the way they were, here is a batch file to set everything back to the default settings. If you do not want to rollback, then we are done.

HttpCompressionSettingsUndo.bat

@ECHO OFF
ECHO.
ECHO Reverting "Best practice" settings for IIS6 HTTP Compression to Default
ECHO.

cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/deflate/HcFileExtensions "htm" "html" "txt" 
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/deflate/HcDoStaticCompression "FALSE"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/deflate/HcDynamicCompressionLevel "0"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/deflate/HcOnDemandCompLevel "10"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/deflate/HcScriptFileExtensions "asp" "dll" "exe" 

cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/gzip/HcFileExtensions "htm" "html" "txt" 
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/gzip/HcDoStaticCompression "TRUE"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/gzip/HcDynamicCompressionLevel "0"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/gzip/HcOnDemandCompLevel "10"
cscript C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/filters/compression/gzip/HcScriptFileExtensions "asp" "dll" "exe" 

ECHO.
ECHO.

ECHO Changes completed. Do an iisreset for changes to have effect!
ECHO.
PAUSE

Conclusion

As a web application, Clarity can benefit from some internet information server configuration tweaks, like enabling compression. Above are steps to check current compression settings, enable compression and rollback changes. As these are administrative tasks, there are risks involved. If you would like assistance with any of these items, please reach out to us at http://www.clearinsight.ca and we will be happy to help.