I walked through two PerformancePoint labs with the class in Florida, both of which are available online. Given the time for that day, I was only able to run through the first, Dashboard End to End, all the way and the third, SharePoint List, halfway - -we took a break as soon as we finished with pulling the SharePoint list data into the scorecard, built the KPIs and published.
They are not the easiest to find, so here are the links:
TechNet Virtual Lab: Microsoft Office Performance Point Server 2007 - Dashboard End to End
TechNet Virtual Lab: Microsoft Office Performance Point Server 2007 - Excel Dashboards
TechNet Virtual Lab: Microsoft Office Performance Point Server 2007 - SharePoint List
For these labs to work, the site will prompt you to install the Virtual Server VRMC Advanced control for Internet Explorer.
If you do not want to run these labs online, still sign up for them, download the PDF version of the lab manual from the lab home page, and then run the labs on the BI VPC, links to download this below – the advantage of grabbing this VPC is that there are other PerformancePoint and ProClarity labs on this machine, plus, you get a fully functional demo to play with and modify on your own time:
Virtual PC is required to use this virtual machine. I would recommend downloading Virtual PC 2007 as it is free to use.
Note about the Lab
There is an important design decision that is glossed over in the first lab, Dashboard End to End concerning KPIs. In the first part of the lab, it walks you through using Analysis Services as a source, yet creating KPIs inside PerformancePoint. Our recommendation is that KPIs should belong at the data source level – Analysis Services allows you to build very advanced KPIs, and given that SSAS cubes will most likely be consumed by multiple applications (Excel, SSRS, etc.), then it is important to stick with the consolidated way of displaying key data to your users.
Obviously not all data sources that PPS works with support KPI functionality, so if Excel, SharePoint lists, or a relational database are your source, then you will probably build out the KPI inside Dashboard Designer. Keep in mind though, that when the functionality exists to place it lower in the stack, which also usually means broader application and user audience, then you should do so.
For further reading on using SSAS KPIs inside PPS, reference this post on the PerformancePoint team blog.
Tags: performance point,
training,
analysis services,
kpi,
dashboards
Categories: Performance Point
As I write this I am in the airport in Austin waiting for my flight out to Ft. Lauderdale. I will be supporting tomorrow's presentations around PerformancePoint, so if you are one of the lucky few who knew about this event and will be there, I look forward to seeing you.
Unfortunately, these events are not widely broadcast (try a search on any of the large search engines, you won't find this particular event). For the most part, any of these events marketed in a particular area and invitations go out in a random manner. One of the things I would like to see is a more unified way in which these events are planned and notice put out – I get a lot of questions from clients about when, where and how to attend, and unfortunately, I do not have a definitive process I can point to for their benefit.
A little venting – nonetheless, these events are great for client education, which is why I would like to see more of them. If you are in the area, feel free to give me a shout!
Tags: performance point,
bi bootcamp,
training,
education
Categories: Performance Point |
Training and Education
Many of you have already seen the announcement covering PerformancePoint rolling into SharePoint, with the next release already dubbed "PerformancePoint Services".
Big deal right? Monitoring and Analytics will still be there and the least used and often forgotten Planning will move off to pasture. So what does Kerberos have to do with this change to PerformancePoint?
Probably more than you think.
In a typical small farm, PerformancePoint will be deployed in one of several manners, either scaling out with the web front ends or on separate app servers. This works well even in the current deployment model, however, more and more, company security policies are pushing for data to be locked down at the source level, even for analytics.
PerformancePoint Services will be just one piece to the new SharePoint for BI capability stack – Project Gemini is coming along nicely with a lot of extreme Excel enhancements - -thick client analytics for the power user at the desktop level.
With the new version of Office, we are looking at an expansion of the toolset used to hit the data, but what we do not know, and what I do not expect to happen, is whether security will continue to be fully maintained by the user roles in the Monitoring database. In such a future environment, without Kerberos, you would essentially have a set of roles and access configured via the Monitoring web services, and then the normal groups and roles on something like your SSAS databases. On large environments, this will be incredibly cumbersome.
Enter Kerberos – by using NT groups and authentication throughout, data sources can remain, at the data source level, locked down by individual logins and allowing the Monitoring service to pass the user credentials when accessing PerformancePoint web parts. With this implementation in the security architecture, despite the end user tool used, users can now have a more centralized security mechanism and data managers can feel better and have less work than trying to keep up with all the separate app user accounts and what access rights they map to.
Kerberos, while not entirely straight forward in implementation, solves the double hop issue and allows you to scale out your farm with the PerformancePoint services able to communicate freely to data sources on disparate servers and maintain security using AD.
Mike Plumley of Microsoft has made an instruction video posted here on implementing Kerberos.
I have also downloaded it and saved it to my site in case it goes missing ( this actually happened with the Business Intelligence Metadata Whitepaper Microsoft posted – popular, but it kept disappearing on the site, so it is another one I have saved to my site ) – but I will only activate the link if someone lets me know it has disappeared. The file is 72 MB and too many downloads will cripple my meager little hosted blog.
Other references for Kerberos directly related to PerformancePoint:
As you have probably guessed by now – this is a current deployment consideration as well. Scaling PerformancePoint to use multiple SSAS servers where NT authentication pass through is a must will require this type of delegation in order for deployment to be successful, so luckily, these instructions do exist.
One of the extras in going through the pain in implementing Kerberos? Reporting Services works wonderfully in SharePoint integrated mode, but Kerberos is also a requirement for a proper deployment – so, do the infrastructure work one, and reap the benefits twice over!
Tags:
Categories: Performance Point
I was not actually looking for this, but that does not mean it is not incredibly useful.
I was actually looking for what was available from the PerformancePoint Team blog in the way of updates to the SDK documentation, or heck, an SDK versus just a single page in the MSDN canon, when I came across this code sample posted on code.msdn.microsoft.com (what the real difference between this site and codeplex.com is, I do not know, but it gets confusing having both).
This code sample, titled "Gather information from SharePoint to a database for reporting", does not come with a lot of documentation or instruction, but by odd coincidence, it seems I found this on its publishing day – today, May 11. The code sample consists of two parts, the C# console app project and the database.
To get this tool up and running:
- Download the project file for the app and the database
- Unless you are in France or have French collation set up on your server or personal machine, I would recommend hand editing the script to remove that language collation……………Or just do what I did and create a database called Stats and used the BAK file included to restore to (the DDL does not have any table create scripts?)
- Start up VS 2008 and open the unzipped project. From here you can either compile so you have an executable or debug through it and watch it run
One important note: This app is not yet configured for remote execution, so it has a dependency on being run directly on the SharePoint server in order to gather stats. SQL Server configuration is just a connection string in the app.config, so that can be a different box/remote server.
This handy little app produces quite a few usage statistics on a SharePoint farm, with the most rich being at the site level. Be interesting to see where this goes next, I have no immediate need for it, but I figured it is interesting enough of a find to post and share!
Tags: sharepoint,
code samples,
linq,
.net,
c#
Categories: .NET |
SharePoint
I have received this question a few times from people e-mailing in – I have several posts that are C#/.Net focused, sans SSIS and CLR database references in implementation.
The easiest answer to this question is that I am a consultant in a company with a dynamic client base, so I need to be prepared to support multiple technologies related to my specialty and thus blog on those topics. Also, my background trek through the tech wilderness actually started with web development before moving onto warehousing, reporting and analytics.
Going deeper though, I think with the changes in the Microsoft microcosm that first presented themselves in the form of LINQ to SQL and now moving forward with Entity Framework are going to force a modifications in the way that database professionals, from DBAs to warehouse architects and SQL developers, learn, interact and what they are expected to know and have expert knowledge on.
Jonathan Kehayias posted a good discussion starter from a DBAs perspective back in February of this year, and it brings to point the necessity of learning and being aware of new methods, emerging technologies or new uses for existing technology. Data storage and the use of that data is at the core of almost any solution – whether you are wearing the hat of a DBA, business intelligence professional, warehouse architect, etc., we all play roles where SQL Server is at the core of our work, and it is our duty to advise as best we can how these new access and programming methods impact what I consider the heart of the solution.
Doubtless, this is a daunting task, as we not only have to keep up with the core changes to SQL Server, data storage technologies and other related bits, but now it is becoming increasingly important to peer over the void into that other world of UI, presentation and data layer technologies and be incredibly mindful of how developers will be (you wholly can't stop them, only curb) moving DML off to EF or Linq to SQL.
Putting the blinders and on and running down the hallway screaming "3NF and stored procs, or there is no conversation!" will do nothing but leave you behind – solution developers will just find a way around you in the end.
Keep in mind that I also write this from the perspective of a consultant at a "small" company – while my client work ranges from mom and pop to enterprise, my experiences are not going to be reflective of those who work in large shops and have the opportunity to specialize.
So what is the take-away? Why are there C# posts on my blog?
As much as we would like to silo technology and those that implement it, activities are solution driven and require a holistic approach. Information is at the center of all of these solutions and it is our responsibility to help drive any architecture and implementation towards the best fit for a given scenario. To that end, breaking out of your comfort zone in order to advise and influence the solution will always be better (and less stressful) than passively waiting for the battle to come to you.
I am not advocating becoming an expert in outside arenas, but simple activities such as attending a .Net user group meeting or participating in an application code review will go miles – cross pollination is good for more than just fruits and vegetables!
Couple of references, this conversation is not new!
http://weblogs.asp.net/dwahlin/archive/2007/11/15/the-linq-dilemma.aspx
http://articles.techrepublic.com.com/5100-10878_11-5897968.html
http://www.sqlmag.com/Article/ArticleID/96637/sql_server_96637.html
Tags: ramblings,
.net,
career,
architecture,
solution,
consulting,
sql server
Categories: General
Empirical evidence is incredibly useful for understanding your position on architecture, in deciding what the best maintenance plan for your SQL Server should be or justifying the purchase third party software for your environment.
If you haven't seen Linchi Shea's post series on file fragmentation and SAN, then I highly recommend perusing through the material and numbers she provides.
Hopefully we don't have to remind anyone, but physical file fragmentation on local drives can be disastrous for SQL Server performance; for direct attached storage, it is a necessary part of any maintenance plan. Linchi's second post in the series gives you a numerical hint when this situation goes ignored.
What is the take away from this series? Linchi talks a lot about the software vendors and the defragmentation tools as the "antagonists" in the six post plot, however, the main drive is to raise awareness so that you do not purchase a tool for the wrong situation or need and that more importantly, anything you do buy, is implemented in a more precise manner.
Take the time and read the series, it really is a great set of research posts!
Tags: storage subsystem,
performance,
i/o,
fragmentation
Categories: SQL Server