DCSIMG
December 2008 - Posts - Ella Maschiach's BI Blog

Ella Maschiach's BI Blog

BI, Olap Technologies, Tools, System Analysis and Design

News

About Ella Maschiach

Business Inteligence

December 2008 - Posts

Impact SQL Server 2010 Kilimanjaro

Do you want to influence how SQL Server 2010 Kilimanjaro will look like? Do you submit issues to Microsoft Connect? Well this is the post for you...

When I first saw Anthony Carrabino's post about a free hosted SQL Server 2008 offer I thought to myself that maybe I shouldn't have bothered putting up a virtual machine with SQL Server 2008 on it, when Microsoft is already offering me one all ready and for free... but that's not the exact case.
Reading the page for the free SQL Server 2008 hosted account, one of the first things mentioned is actually Kilimanjaro - SQL Server 2010. And I admit I still didn't see the connection till I went to sign up and then saw that:

"The Private CTP will run for 4-5 weeks. Each week, participants are sent a set of instructions to perform within the hosted virtual machine (VM) and are requested to provide feedback via an online survey."

So first of all, you have a chance to impact the design of SQL Server 2010 Kilimanjaro with your feedback.
Secondly, if a CTP running on SQL Server 2008 will influence how SQL Server 2010 Kilimanjaro will look like, then maybe we can assume that SQL Server 2010 will be based on SQL Server 2008 (as SQL Server 2008 was to SQL Server 2005) rather than a complete change of concept (as SQL Server 2005 was to SQL Server 2000). 
The free SQL Server 2008 hosted account supports: Hyper-V image, Reporting Services, Analysis Services, Integration Services and Full System admin rights

Registration for the free SQL Server 2008 hosted account is open till the 31st of December 2008 so you had better hurry if you're interested.

Great Training and a Free Copy of SQL Server 2008

Did you ever have a problem where you went to a course, studied something, but then didn't use it, so you ended up forgetting what you've learned?...

Well Microsoft is going to see to it that it won't happen when you study SQL Server 2008. So, if you're interested in taking a course about the different parts of SQL Server 2008 (be it maintaining a DB, SSAS 2008, SSRS 2008 etc.), then you'll also get a fully licensed copy of SQL Server 2008 Standard Edition with one client access license. If you're interested in using the offer (which is for a limited time only and only till supplies last) – go check out the SQL Server 2008 course details.

OMG

I have to admit that when I saw that I was in the home page of Microsoft Israel for the second time, my reaction was quite similar to the previous time…
Oh My God!! Ooooooooooh Weeeeeeeeeeeh! (I still have some trouble controlling myself)

 

 

To say this is a great honor and I am truly touched would seem like a slight understatement – THANK YOU! I really appreciate it…
And now, I will go and bask in my day in the sun… no, actually, I'll try to write another post real soon! :)

Developer Academy 3

טוב, אז גם היה לי הכבוד והעונג להיות מוזמנת לכנס ה Developer Academy 3 על ידי מיקרוסופט (תודה מיכל!) והייתי שמחה לסכם לכם כמה מההרצאות שהייתי בהן:

Leverage SQL Server 2008 in Your .Net Code with Visual Studio 2008 SP1 עם דיויד סקסטין. אני קראתי את הבלוג של דיויד וממש נהניתי אז קפצתי להרצאה הזו. הוא הציג בפנינו מספר נושאים חשובים לפיתוח שהופיעו ב SQL Server 2008 כגון: Table Valued Parameters, Filestream, Merge ועוד. כמי שמכורה לנושא SQL Server 2008 היה נחמד לשמוע איך יהיה שימוש בחידושים שהגיעו מחוץ לעולם הקוביות.

הרצאה הבאה היתה של מאור דוד Professional Developer Tools in Visual Studio Team System- ללא כל ספק, ההרצאה שהכי נהניתי בה במהלך היום. מאור מרצה מצוין וממש ריתק את כל הקהל (ומדובר הרבה אנשים כי האולם היה ממש מפוצץ). הוא נתן דוגמאות מהחיים, הצחיק, שיתף את הקהל וממש ריתק בדוגמאות שיכולות לעזור לכל מפתח. מאור - אנחנו ממש נתגעגע אלייך בעירייה!..

מכאן המשכתי להרצאה של מנו כהן ישר על Windows Azure: Building Web Sites and Services in the Cloud. אני כבר קראתי די הרבה על Windows Azure ועל SQL Data Services שמהווה חלק מה Services Platform שלו, והגעתי להרצאה הזו בכדי לקבל תמונה יותר רחבה של מה יש ל Windows Azure להציע. מנו דיבר בלהט על Azure וממש עניין כשהוא דיבר על איך הוא יחסוך לנו את ההתעסקות עם ה host ברגע שיתחיל השימוש בו.

מעבר לכל זה, אז גם בכנס הזה, כמו בכל כנס, היה ה-מ-ו-ן אוכל ולהמשיך להרצאה שאחרי ארוחת הצהריים היה ממש קשה... :)

מאוד עניין אותי ללמוד יותר על ארכיטקטורה ואני גם מאוד נהנית לקרוא את הפוסטים של ממי לביא בבלוג של היועצים, אז הלכתי ל Architecting Real-World Enterprise Application - Considerations and Dilemmas. ממי העביר את ההרצאה בשיתוף מתן עצמון, ראש צוות תשתיות וארכיטקט בצה"ל. אני חושבת שזו פעם ראשונה שאני הולכת להרצאה שמועברת על ידי שני מרצים. מתן וממי ממש ידעו אבל למצוא את האיזון בהצגה כך שהבמה היתה של שניהם באותה המידה. זו גם ההרצאה הראשונה שבה גיליתי שלפטופ יכול לקרוס רק ממצגת Power Point :)

הרצאה אחרונה של היום עבורי היתה של נועם קינג שדיבר על Building Web Sites with ASP.NET MVC Framework . MVC היא טכנולוגיה שתפעל באופן מקביל ל Ajax ו Web forms. שני עקרונות מובילים את המפתחים בטכנולוגיה הזו: DRY - Don't Repeat Yourself ו SRP - Single Responsibility Principle לכל אחת מהשכבות שב Framework: Model, View, Controller. אני מודה שהוא הכי עניין אותי כשהוא הסביר על איך שימוש בטכנולוגיה הזו לא רק יפשט את הפיתוח אלא גם יסייע ב SEO ;)

הכנס היה גם הזדמנות פז להיזכר בכך שיש חיים בחוץ! כן, זו לא אגדה אורבאנית, זה באמת נכון! יש שמש בחוץ, וחיים שלמים והיה גם כיף להסתובב ולדבר עם אנשים בהפסקה.
בנימה קצת יותר אישית, אני גם מאוד שמחתי לבלות קצת זמן איכות עם אח שלי, עדלי משיח אם לא הכרתם עד עכשיו, וגם לשוחח עם עומר, מקסיםגדי וגיל (ואם שכחתי מישהו אז סליחה!)
בארוחת הערב היה לי גם את התענוג להכיר אנשים חדשים :) אז אחרי שראיתי תמונות בדף הבית, יצא לי סוף סוף גם לשבת ולשוחח עם אריאל על טיולים בחו"ל ועם שלמה על Reporting Services (שלמה - אתה חייב לעשות פוסטים על מה ששוחחנו!)

מקווה להתראות עם כולכם בקרוב - היה כיף!

SQL Server 2005 SP3

Wow, it's here! After the phase of SQL Server 2005 SP3 beta has ended, Microsoft has announced that SQL Server 2005 SP3 is available for download. SQL Server 2005 SP3 includes all cumulative updates up until and including Cumulative Update 9. Though it has just been released, there is already a Knowledge Base article about customizing the TokenAndPermUserStore cache store in SQL Server 2005 SP3
Still, if you have installed SQL Server 2005 Cumulative Update 9 or SQL Server 2005 Cumulative Update 10, then you may have encountered an error message such as "Unexpected Error Occurred" which was already fixed in SQL Server 2005 SP2 Cumulative Update 11.
Also for your consideration, if you have downloaded and installed SQL Server 2005 CU 10 or SQL Server 2005 CU 11 then you have to install them again after installing SP3 to get all the fixes.Last but not least, the Feature Pack for SQL Server 2005 SP3 has also been refreshed.

So go on and download SQL Server 2005 SP3!

 

Update 22/12/08: Following Cindy Gross and Dubi Lebel's comments, I would like to note that Cumulative update package 1 for SQL Server 2005 Service Pack 3 has already been released.

 

Creating Sum for a Group with Recursion in SSRS

Creating Sum for a Group with Recursion in SSRS

 

Sum with scope

 A colleague of mine from work was creating a report with Reporting Services 2005. He had a matrix report like the following: 

  Year Total
Total Sales Per Year % of Sales from the Total Sale Per Status
Status     1
Total 2   3
He wanted to calculate the percent of total for that year from the total for that row. I remembered from looking at the Sum function in SSRS that it had 3 options – with scope and recursion. So I thought – I should try the scope. And indeed, scope enables you to define a sum for either the entire dataset, a data region (like 3) or a group - be it a row group (like 1), a column group (2) or even just a details group if we were talking about a table. What do you have to do? Basically just write something along the lines of:
 =Sum(aggregate, "GroupName")
The GroupName can be taken with a right click on your data region and then going to the Groups tab (and there also to the Details Grouping if you're using a table).
The entire formula for the needed calculation would be: 
= Sum(aggregate) / Sum(aggregate, "GroupName")
Because, if otherwise specified, sum will calculates for the cell it's in.
Scope exists, as the MSDN page states, for quite a few functions. 

 

Sum with Recursion

Still, I saw that there's also a third option for Sum, and this one also included a recursive aggregation. Unfortunately enough, MSDN does not address recursion in its documentation for Reporting Services 2005 (though it already exists there), but only for Reporting Services 2008. So I thought maybe I should try and study it more thoroughly and see how it would work out in Reporting Services 2005 and 2008. 

Sum Recursive Reporting Services 2005

I created a simple report with a table, based on Adventure Works DW with Employee dimension (which is a Parent Child Dimension). For the measure I'm going to summarize I used OrderQuantity from FactResellerSales. I've put the name of the employee on the details rows. I entered the definition of the table and under groups, entered "DetailsGroup":

Sum Scope Recursive 1   

I gave the Parent Group the value of the ParentEmployeeKey and the EmployeeKey as the basic value to group on:  Sum Scope Recursive 2   

Now, as each employee has his own Order Quantity we can sum for each employee with the scope part of the sum, meaning:    =Sum(Fields!OrderQuantity.Value, "table1_Details_Group")  For each employee, if we want to see the sum for himself and all of those working under him, we use the recursive part of the sum function:
= Sum(Fields!OrderQuantity.Value, "table1_Details_Group", recursive) 
I have also used right padding of:  =level()*20 & "pt"

For the table's Details Group I defined in it's visibility:


 Sum Scope Recursive 3  

Which all in all gives us:

 Sum Scope Recursive 4  

 

Sum Recursive in Reporting Services 2008

 

I created the same report in SSRS 2008 with just a few alterations:
In the Tablix, you don't go into the Tablix properties and define the Details group properties for them, as they are kept outside:

 Sum Scope Recursive 5 

You define the grouping for the EmployeeKey in the general properties of the details group:

 

Sum Scope Recursive 6


And the rest in the advanced tab for the recursive parent:

 

Sum Scope Recursive 7


And for the group visibility I defined:

 

Sum Scope Recursive 8


Also I had defined that the Indent property of the Full Name textbox will be again: =level()*20 & "pt"
 
The result obviously looks similar:

Sum Scope Recursive 11


And that is how you can use Scope and recursion in Reporting Services functions.

Update January 20th 2010: I’m attaching my report in SSRS 2005 for your viewing pleasure: Sum Recursive