Wednesday, December 05, 2007

SQL Saturday Update

Happy Holidays!

Pam, Mike, and I are working very hard to put on a top notch SQL Saturday event in Tampa. We've had a couple of roadblocks but think we've worked them out.

First, the event will now be held on February 16, 2007. It was originally scheduled for 1/12, but the event venue neglected to mention a cheerleading tryouts that will be taking place that same day. We didn't want to compete with 300 screaming, pre-adolescent girls so we moved our event. Thought we had everything in line, and then the DoubleTree raised our rates for the day. That roadblock puts a serious dent in our budget, but I think we'll be OK. Yesterday I received a phone call from them stating that the hotel was almost full and we coulnd't get enough rooms for our party, so I was quite upset and had a good discussion with the manager there. Let's hope that everything else goes without a hitch.

The venue is really nice - if you come, you will have a good time. We're going to hold 5 concurrent sessions at 75 minutes each, giving more time for content. The day should be a relaxing day of knowledge attainment.

I'm also finalizing details for a Friday event put on by Durable Impact for SQL Server professionals. I'll have more to say about that soon - but I'm not ready to spill the beans.

Rest assured that SQL Saturday is going to be a great event - it's been a lot more work just getting it going than I thought it would be, but we have a dedicated team who will get the job done.

Thursday, November 22, 2007

SQL Saturday is coming to Tampa

Data professionals - this is the event you have been awaiting. SQL Saturday is being put on by Durable Impact Consulting on January 12, 2008. Our location is at the DoubleTree Hotel Tampa Airport (4500 West Cypress Blvd, Tampa, FL). We have a lot of great sponsors for this event, including Microsoft, KForce, Visual Gov, End2End Training, and others that will be listed later.

I'm the director of this event and there is a talented Board of Directors who are helping to put this event together. It's certainly not a one man show, and thanks to the sponsors, the event is free for attendees.

I'm really excited about this event - keep watching this blog, and each week, I plan to post a new surprise for the event.

Check out www.sqlsaturday.com for further information.

Happy thanksgiving.

Tuesday, November 06, 2007

Purpose of Parameters in ETL

For those of you who don't know, I am now doing software consulting full time. I'll write another post about that, but today I experienced something I wanted to share.

One of my clients has ETL jobs created to populate a data warehouse. Well, for all intents and purposes it's technically a data store, but I digress. I was asked to take a look at some Data Stage ETL jobs that needed to be modified because the database user id had changed. WHAT? You mean people are actually hard coding critical values and passwords in ETL jobs? Why yes they are. I spoke with the ETL architect about the practice and friendly advised him that is a data warehouse worst practice. He was aware of the issue and but a decision was made back in the past to 'get it done now', but thankfully it was an easy sell to put all the user information in variables, but they still wanted variables hardcoded in the jobs, so the battle is only half-way won. I did get a committment to move to a dynamic configuration and I am putting finishing touches on my prototype, but the moral of the story is to not save your user id's and passwords hard coded in ETL jobs. It simply exponentially increases the maintenance costs at a later time.

SQL Saturday - This Weekend

Howdy folks. It's been a couple weeks since we've last talked but I wanted to remind you that SQL Saturday - Orlando is coming up this Saturday. This is going to be a SQL data-lovin' fest featuring the best and brightest minds in the area presenting talks on data. Yip, you got that right I'll be speaking, but I don't claim to be the best or brightest, I am a sucker for speaking engagements.

I will be giving two sessions - the first, at 9 AM, is "Introduction to SQL Server Integration Services", the new session that I presented in Jacksonville and Tallahassee code camps this year. This session is going to be my staple session for the 2008 code camp season, which officially kicks off in February with South Florida Code Camp IV.

The second, monster session is a full 80 minutes of data warehouse loving discussion. This session is basically the same as I presented at the past two South Florida Code Camps - "It's all about the Data: Building a Data Warehouse using SQL Server 2005". (see my archives for a detailed overview of this session). As much as I think I have saturated the state with my data warehouse talks, I continue to draw a huge crowd each time I present this session, so you will see it in all it's glory finally presented in enough time to really be able to slow down and deep dive into the material. As a note, I hoped to run some SSRS reports off my data, but grad school and Durable Impact have keep me busy enough where I did not have time to complete that portion, so boo hoo.

I'll be at the pre-party on Friday night, but I probably won't stay for Saturday night's party. I'm dying to get some camping in during the cool weather so I'll be heading out immediately after my sessions.

Sneak peak - final disucssions are underway to hold a SQL Saturday - Tampa during the winter months. Hopefully there will be something to announce this week.

Take care and happy data-ing.

Sunday, October 21, 2007

Interesting Meetings

Hello again. I've been meaning to write some more articles, but between work and grad studies I don't have a whole lot of time for that. I would like to share the past couple weeks though because I've meet some very interesting people (in calendar order, oldest to present).

1. I stopped in at a gas station early Saturday morning for a Diet Coke. I found myself standing next to Florida Governor Charlie Crist. We had a brief discussion and he was very friendly and down to earth. I wanted to ask why they renewed the no-fault insurance laws, but being a computer guy, I hate getting asked about computer stuff outside of work, so I chose to give him the same courtesy.

2. Joe Healy invited me to attend ReMix07 in Boston, MA, held at the Hyatt Cambridge suites. As always, I chose to fly American Airlines and routed to Boston via Miami. On the flight from MIA-BOS (757), I received a first-class upgrade, where I sat next to a famous doctor from Harvard returning from a disease conference in South America. He was a really nice guy and we had a great conversation about life, economics, and the medical field. Luckily I was able to swap contact information with him and I'm hoping we'll keep in touch. I feel very lucky to be able to meet interesting people.

3. I was invited to a student luncheon with USF President Judy Genshaft. This luncheon was 6 graduate students who held a roundtable with a few deans and Ms. Genshaft. I learned a lot about the university and found her to be a fascinating person to converse with. Interestingly enough, at my undergraduate alma mater, Missouri State University, I was invited to and attended a dinner with then president John Keiser.

4. To cap off a wonderful couple week span, I was returning from San Juan, flying AA (of course) in business class, and I sat next to Alberto. Alberto is a very interesting guy who lives on a Caribbean island who I met a couple months ago when we shared a row in biz class on the same flight. Two months later, same row, same flight, same seat mate. How often does that happen? I hope to get that experience once again.

I promise my next post will be data related, but I couldn't help but share some highlights from the past two very interesting weeks.

Monday, September 17, 2007

Code Camp Sessions

My first code camp presentation was South Florida Code Camp II in Feb. 2006 in Miami. It was a couple firsts - first time to present, first time in Miami. All in all it was a great experience and the topic was "It's all about the data - building a Data Warehouse using SQL Server 2005". Much to my surprise, there were 65 attendees. Any doubt I had as to the reach of this topic was immediately put to rest as my nerves began to over-synapse standing in front of that crowd. I took the same session and modified it with different variants for the Tampa, Tallahassee, and Jacksonville code camps of 2006. Attendance at each was quite decent and strong in proportion to the total code camp attendees and other sessions. At one code camp, I had 20% of the attendees in my session.

One of the general rules of code camps is to come up with new sessions each year. Due to some time constraints, I was forced to slightly modify and present an updated verison of "It's all about the Data" at South Florida Code Camp III in February 2007. I expected to see a couple of the same people, but was thinking the topic is getting tired. Much to my surprise, there were over 85 people in the room, people lined up against the walls, sitting on the floor, and quite a few admitted to having attended the same session in 2006. Considering total attendance at the event was about 400, I pulled in close to 25% of the people for that one session. The presentation was significantly modified for Orlando Code Camp to good success. A different modified version was used for Tampa again with mixed success, about the same amount of people in 2007 as 2006.

One of the concerns I have is about satiation. The topic of data warehousing is so broad that it's impossible to cover any substantial part in the typical 60-70 minute presentation. Thus I've had to choose to cover the basics such as the definition of a data warehouse, what kind of tables are used, simple ETL jobs, combined with some kind of code demonstration, which has ranged from advanced ETL to a homegrown frequent flyer EDW I created just for this purpose. Back to satiation - I don't want to talk about the same topic so many times that people have already heard the talk, but at the same time I don't want to deprive those who are attending the events for the first time the opportunity to learn it. For Jacksonville 2007, I decided to decouple from the data warehouse topic and talk more about the SSIS Tool and what it can be used for...this is a direct modification of a presentation I gave in September 2006 to the Tampa SQL User group. Quite frankly, I was disappointed with the overall assessment of the presentation from attendees (about 7/10 in the ranking) and will be looking to tweak the presentation further for the 2008 season.

In short - if there is anything you liked in my presentations and something you didn't like, please leave a comment and let me know. My session in Tallahassee will be a hybrid of the two sessions - a deep dive into SSIS with an emphasis on Data warehousing. I hope to use the results from there and the two sessions I will give at Orlando SQL Saturday in November to develop a unified session for all code camps during next years season.

Code Camp Season Update

My oh my how time flies. I received an email today from someone who hasn't seen any blog updates from me for a while (since 22 May to be exact), so about 4 months later I'll catch you up on what I've been doing.

Had a number of speaking engagments in the past few months. In June I spoke at the Tampa SQL/BI User Group meeting, doing a deep dive presentation into architecting ETL jobs. Late in June I spoke at the inagural meeting of the Sarasota (FL) SQL Server User Group. The topic there was ETL and Data Warehousing with SQL Server 2005. Had a good turnout for both events and they were a break from the typical entry-level talks I give at the local code camps. Also in June I was provided a pass to TechEd, held in Orlando. It was very informative and I was able to suck in a lot of knowledge about SQL Server, data warehousing, and implementing best practices. The week of Tech Ed was quite enjoyable - I stayed with Keith at the Disney resort, and the parties I attended that week warrant a separate post. Let's just say that it was a great week all around, capped off by a visit to the Islands of Adventure theme park on a rainy Thursday evening.

July brought the return of Tampa Code Camp III. I was on the board this year and my responsibility was the speaker and post-event party. I was able to round up a significant chunk of change from supporters and we had a great party at the Courtside Grille. Around 50 people came to the speaker party and 120 attended the post-event party held in the same location. I may have found my calling in this group, and Jeffrey Palermo, I think you're a great guy, but I'm going to considering throwing my own party at TechEd the MVP Summit. My session at the Code Camp was Data Warehousing with SQL Server. It was a good session with about 36 attendees.

August quickly came upon us again along with my second annual Jacksonville Code Camp. In 2006, the JAX trip was a lot of fun and kind of a cap to a wonderful summer (search for Jacksonville survival report on live.com and the story should come up from devfish). It was more of the same in 2007 except it seemed to go by quickly. The four amigos (Joe, Keith, Stan, and myself) carpooled up 301 and arrived in time to secure a nice room at the Omni. Those guys in JAX put on a great show and I debuted with a new presentation: Introduction to SQL Server Integration Services. Attendance was less than I expected, but I was up against some strong presenters at 9 AM. The good thing about going early is that I was done for the day and had time to attend some other sessions, plus for the first time, I had my entire presentation finished a good week before the code camp. The highlight of this trip was the steak dinner Keith and I enjoyed at the Ruth's Chris on St. Johns' River.

September brings a continutation of graduate school which is keeping me very busy. However, I continue to squeeze time in for code camps and will be presenting at Tallahassee Code Camp III this weekend. To give you a little background, the first code camp I traveled to attend was in Tallahassee back in 2005. I drove up on a Friday evening, the weekend that Rita decimated the Texas coast. This was right after Katrina and I was concerned about being able to secure enough gasoline for the drive up and back. I told myself that I would fill up my car as soon as I arrived in TLH so I would have enough gas to get home, and sure enough I rolled into town about midnight only to find half of the gas stations closed, and many others were already out of gas. I began to sweat until I found one open with gas and topped off the 'Stang. The Code camp itself was relaxing and uneventful and I had a great time getting to know people at the Paradise Bar and Grill that evening. Another bonus was on the drive home I stopped at the St. Marks wildlife preserve and took all the country roads back.

Which brings us to today. As I previously said, graduate school is keeping me very busy. If I don't post on here too often, just send me a gentle reminder that I have a duty to write. I'm working with Jonas right now on possibly attending the first South American' code camp in Argentina in October. Stay tuned for updates on that exciting opportunity.

Tuesday, May 22, 2007

Tampa Business Intelligence Group - Revision

The Tampa SQL BI Group meeting has been moved to June 11 to accomodate those going to TechEd. I'll see you on the 11th.

Monday, May 21, 2007

Konesans’ File Watcher Task in SSIS


Last week I was asked to help a friend redesign some of his ETL processes. It was a great exercise and quite fun knowing that we had to have it completed in the same day due to some time constraints from his customers.





File watchers are programs that ‘listen’ for a file to be placed in a directory. I’ve worked with file watchers written in C, PERL, and manual kick-off processes. Thus there are many ways to do a file watcher programmatically, and today we are going to look at how it is done in SSIS.
The need was to create a file watcher that waited for two files to arrive, then process them in a loop. It looked like this.












The file watcher was created by Konesans – they have good writeup on their webpage about the properties so check it out for information. This post merely shows the product in a production environment.













The task has the following properties:





I’ll explain key variables.




1. Name = name of the task.




2. Description = put a meaningful description here (‘watches for the files’ is not meaning and states the obvious).
Filter = *.* looks for every file. *.induct would only pick up files like TEST.induct.
FindExistingFiles = true if there may be files in the directory already. If False, then it ignores existing files.
Output Variable name = the variable name we assign in the variable box below.



Then I created a Package level variable called User::FileName to store the file name. You must also create a connection manager to list the directory the file will watch for (or create a new one).


The file number variable was used for the looping mechanism – to loop until two files were loaded. Once the file was found, the filename was written into the variable FileName and available for access further down the chain.

Here’s a screen shot of the process running. It looped twice, running the data flow tasks below each time. This task inserted the file name into an audit table. Once the loop was finished, the last file inducted was processed.




Now you should have a better understanding of the excellent Konesas’ file watcher task and a real-world application of this tool.

Friday, May 18, 2007

Differences in ETL Tools

Here's an interesting topic, today let's look at some of the key differences between the IBM Websphere DataStage ETL product and the Microsoft SQL Server Integration Services suite. This topic has been written in my notebook for a while but an email I received from a code camp attendee pushed me to finally publish it.

First, DataStage (DS) has been around longer and traditionally has been more accepted within the corporate world. DS is now on version 7.5 with version 8 to be released in the fall. DS 8 will be the first all new version for quite a while and there are some excellent, much needed enhancements in the product.

SSIS got it's start as DTS (Data Transformation Services). DTS is a decent tool but not on the scale of DataStage, and the SSIS product certainly makes it a viable, and in some cases, better competitor to DataStage.

Main differences in the product out of the box is that DS has connectors to many different source systems, while SSIS is limited in the provided connectivity, although that is going to change shortly. DS is a powerful tool that provides for very simple ETL building jobs, utilizing Basic code as the supporting language. SSIS is a very powerful tool with many "stages" and options available, but in some cases I've found it harder than I'd like to create simple jobs. SSIS uses Visual Basic for the supporting language, and has great support for scripts. DS has hash files as high performance data stores, and SSIS has raw files. Both products have bulk loader capabilities, and both products are designed for high performance systems. One significant difference is that, not surprisingly, DataStage works with both Unix and Windows OS while SSIS is only available on a Windows platform.

The primary difference is cost, with DS costing 4-5x as much as SSIS for some applications. This is a key reason I believe that SSIS is going to be the future of ETL tools. Not only does it do a majority of the same functionality as DS, it costs much less. With the growing acceptance of ETL tools as business process drivers, look for SSIS to expand the market for ETL and business intelligence tools.

In short, while both DS and SSIS are very powerful, SSIS's cost advantage makes up for some of the weaknesses of the product.

Thursday, May 17, 2007

Systems Analysis and Design

Most people who are following my blog know that I have an affinity for economics and am finishing up a masters degree in Economics as we speak. One common question I receive is "how does economics related to software engineering?" Well, that's a pretty easy for me. Let me explain.

Our entire capatalist system is built on economics; the buying and selling of good, creating efficient markets and mediums of exchanges. Software is very similar. The goal is to create an efficient program that uses hardware to accomplish a stated goal. Economics comes to play in software: I get to use economics on a daily basis to prioritize my workload. If it's more efficient to use my time tracking down a bug that is causing an overstatement of sales, that is how I will use my time (providing immediate payoff) instead of working on a development project with a 6-month payoff. Another example is using rules to cleanse data. In our data warehouse, we often get dirty data in and checking every column of every row is a hugely intensive process, adding cumulatively hours to our daily run times. Using economics, I've identified some rows that have marginal value to our processing on which we should not run the cleaning, shaving some time off (in the aggregate).

Now that I have went completely off target, my elective class this summer is "Systems Analysis and Design". This class looks at building processes, data models, use cases, normalizing data, etc. All the good stuff that I do professionally today. That's the good news - I can test my brain, add something to the class discussion, and hopefully learn a lot new in the process. Intrestingly enough, I took a similar undergraduate class about 10 years ago, and we used version 3 of the same book that the class is using now. Good thing I kept the old one; I have found it to be quite useful in the past couple years.

I'm going to post regular updates on my class on here and share some knowledge in the process.

Wednesday, May 16, 2007

Links on Left

I've edited my links on the left of the website to direct to local user groups and SQL resources.

In addition, I've added the links to four companies which deserve special recognition due to my positive experiences with them.

First, American Airlines. Their line is "We know why you fly"(SM). Why yes AA, you certainly do. Thank you for providing such excellent service on the flights I've been on in the past years and I look forward to many more years as an AA Platinum member. One day I hope to be a big shot CEO and you can bet my company will support AA if I have any say in the matter.

Sprint PCS - I've had Sprint phone service for 6 cumulative years. There was a dark 18 months where I used inferior service from another cell company, but the excellent coverage and pricing of Sprint plans fits right up my alley. The PPC-6700 is an excellent phone.

Dell computer - both of my computer are Dells and I've not had any problems in 5 years, 'nuff said. Amazon, good service and tech books at reasonable prices.

Hopefully I won't receive any hate mail requesting removal from my site, and I recommend everyone who reads my blog support the companies I have listed.

Introduction to Data Warehousing

As some will recall, I started a 8-part series titled "Introduction to Data Warehousing" last summer on JumpStartTV.com. Based on comments I've found using Google and feedback from attendees, I'm putting my presentation from Orlando Code Camp on JumpStartTV. This presentation will be complete material overview minus the actual code demonstration.

I completed part 3 & 4 of the aforementioned series tonight so look for them to be up on JumpStart shortly.

At the Tampa code camp, I hope to do a webcast of my session and a podcast for people
to access remotely at their leisure. I also have some surprises in store, so stay tuned.

Tuesday, May 15, 2007

Tampa Code Camp Correction

Keith called today and told me that the Tampa Code Camp has been moved to St. Petersburg College's EPIC Business Center on Ulmerton Road in Largo. A new venue, but it's more central to the area than USF, plus it's closer to home for me so I'm not complaining. I'm going to set up the post party at my local hangout so it should be a lot of fun. Hope to see you there.

Monday, May 14, 2007

Tampa Bay SQL BI User Group

I am speaking at the June 4th meeting of the Tampa Bay SQL BI User Group.

Topic Name: "Designing ETL Jobs: A Generalized Lesson in ETL Architecture"

Lesson Description: Learn all about using ETL to populate a data warehouse, some of the pitfalls of designing ETL jobs, and about how to design ETL jobs for maximum performance and maintainability.

During this session we will create ETL jobs in SSIS that meet business requirements and follow a standardized methodology. It should be an interesting and informative session.

For more information, see the group website : http://tampasqlbi.sqlservercentral.com/

Tuesday, May 08, 2007

Vacations


An interesting note - I am writing this post from my tent at a Florida state park where I have come to enjoy a couple days of solitude (yeah right) and catch up on some reading and minor work tasks. Seems to be the only place I can get anything done. Hopefully I'll get some kayaking and bass fishing in as well.


Earlier in the week I was in Puerto Rico, and I can tell you it is a great place to visit. There is nothing quite as relaxing as sitting under a palm tree on the beach listening to the waves. Sure I could do that in Florida, but then I feel the pressing need to be doing things at home, visiting people, so I decided to take an island getaway and brush up on my Spanish. It was absolutely thrilling, touring around San Juan, old San Juan, Condado beach, Isla Verde, and all the other sights that PR has to offer. I'm looking forward to a return trip to enjoy some scuba diving and a rain forest tour.


Here's a picture I took in Old San Juan of the forts.



Upgrading IBM Websphere DataStage

It's official - I have converted my employers' data warehouse to use IBM Websphere DataStage 7.5.2; we were running DataStage 7.1 previously. We use DataStage (DS) as our ETL tool, processing over 20 million records daily in a multi-terabyte data warehouse.

I'm proud to say that I led the project, presenting status reports to the CIO and vice-presidents, communcating between the groups, and actually directing the install and doing a majority of the testing.

The upgrade process ran pretty smoothly, all said and done. There were some issues encountered so I'll go ahead and list them here in case someone else has the same issues and somehow finds this post.

First, we are running Sun Solaris 5.8 on our current production server. This is a 7 year old 22-CPU machine. Needless to say, it's pretty slow. Our test environment was our brand-new 8 dual-core CPU (at 2 GHZ) Sun Solaris 10 machine. Therefore, we have substantially greater performance on our development machine than we do on our production machine - for now. This kind of performance disparity makes it diffucult to test because DataStage has many tunable parameters and while I wanted to mimic the prod enviornment, it would almost be criminal to dumb down our development machine to that level of DS performance.

DS has a file (uvconfig) that contains the specific settings for the application. Many variables in this file (NFILES, MFILES, etc) need to be set up to allow a high level of performance, utilizing the machine and software to it's full potential. Verify that the NOFILES (number of concurrent open files) parameter in the operating system is set high (at least 2048). Then set NFILES and TFILES parameters at least 100 or 130 in the uvconfig file. Make sure the DSENV file sources correctly and populates the library variables correctly.

In the end, our DataStage upgrade went smoothly because of good coordination, testing, and documenting all problems encountered during testing helped us a great deal when performing the actual install.

Now I'm looking forward to moving to DataStage 8 (Hawk) next year - the 8 release looks to have some great toolsets and improvements that will go a long ways toward ensuring data quality and funcationality of ETL processes.

Tuesday, May 01, 2007

Tampa Code Camp


Save the date, the Third-annual Tampa Code Camp (www.tampacodecamp.com) will be held on July 14, 2o07 at the Business College at University of South Florida.

I plan on doing two sessions this year: first will be the usual presenation on data warehousing, and the second will be an advanced data topics class, where we will talk about ETL design and architecture, database performance, tuning a data warehouse, and data modeling. As usual, the tool of choice will be SQL Server 2005.

This year I am going to videotape the presentation and post it on www.jumpstarttv.com as a training session, and we'll also be making some podcasts during the event for those who aren't able to attend.

Let me know if there is anything you would like to see covered specifically and I'll see if I can work it into the presentation. See you at the code camp.

Friday, April 20, 2007

What is Master Data Management (MDM)

Master Data Management is a fairly new concept that has gained a lot of traction in the past couple years. MDM, as it's better known, is a holistic way of looking at data as it flows throughout an enterprise. Case in point, when we build data warehouses, we receive data from source systems and turn it into information that the business can use; painting a picture if you will for the business to see.

The data received has to come from somewhere and this is where MDM comes in. Source systems have data models, entity-relationship diagrams, cardinality models, etc. We know that each order has one customer, but one customer can have many orders (one-to-many relationship). We also know that each order can have many products. A product may or may not have a variant (a NFL Jersey has 30 variants - 1 variant for each team, and each team has many variants - a jersey for each player). So it's easy to see how this could become complicated quickly.

MDM is a methodology for watching data flow through the business, similar to a master data model. The source system contains 'orders' which them flow into the data warehouse as 'orders', and then this 'order' information is placed in reports and dashboards for measurement by the business.

Now that I've repeated myself on MDM, let's compare MDM and ETL. This actually is the reason for this post - there was a question posted on the MSDN Forums http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1426964&SiteID=1 by a lady who was curious why ETL and MDM were not the same. In short, MDM is enterprise wide while ETL is specifically related to the data warehouse. Here is my answer:

"MDM is the overall view of managing data within an enterprise, like an umbrella over all the sources of data within a company. ETL is the process uses to support the MDM objectives for business intelligence purposes. With MDM technologies, ETL will become much simpler. MDM is a fairly young in the broader world of business intelligence and will continue to grow as time progresses."

Hopefully now you have a better understanding of the similarities and differences between ETL and MDM.

Tuesday, April 03, 2007

Training Courses

I've decided to put together a training curriculum on ETL using the SSIS tool along with a similar session using IBM Websphere DataStage. I'm thinking of a 7 hour training session to be held in a local venue that will cover data warehouse concepts, best practices, and an actual hands-on demonstration/workshop for all attendees to model data and build sample ETL jobstreams. Many people in Florida have now seen my Datawarehouse presentations at Code Camps, and this class will be a logical, in-depth extension. If the cost was reasonable and the content interests you, please email me if you be interested in attending such an event.

It takes a long time to put together quality training materials, so don't expect it in a couple weeks. Think more along June/July timeframe.

Monday, March 19, 2007

Orlando Code Camp 2007



Orlando Code Camp

Looks like the damn data man will make it to the Orlando code camp this year. It’s March 24 at Seminole Community College. Website is www.orlandocodecamp.com.

My session is titled “Datawarehousing with Sql Server 2005 Presented by the Damn Data man”. This session will be similar in content to the South Florida code camp session as this week I am way too busy to even think about rewriting the session. There will be some tweaks and enhancements, but we will cover basic data warehousing concepts and look at the Kimball Group’s sample data warehouse as an example of how to build a EDW using SSIS.

The official description is as follows: “Description ~ ever wondered what makes a datawarehouse? Ever heard of ETL? You are in the right place because the damn data man is going to teach you everthing you need to know to get started with your own datawarehouse project. We will use sql server 2005 as the tool for completing our project on time and within budget.” Hope to see you there.



Sunday, March 18, 2007

MVP Summit Overview

Thanks to Joe Healy, I was provided a Special guest pass for the 2007 Microsoft MVP Summit. I am not yet a MVP (I hope it happens soon!!!!) but it was great to go to Seattle for 6 days and learn all about Microsoft, upcoming products, and learn more about the future of SQL Server.

I flew up on American airlines from Tampa-DFW-Seattle. I am starting to sound like an AA spokesman, but I LOVE AA and the fact that I was able to secure a first class upgrade for the trip (being AAdvantage Platinum) helps. We flew a MD80 from TPA-DFW and one of the ex-TWA 757-231 jets from DFW-SEA. It was good to fly on the ex-TWA ship (N705TW) as it will soon be flying for Delta. Then the only TWA birds left in AA's fleet will be 103 MD80s, but that's another topic. The flight home was not as good - my upgrade was not available from SEA-DFW (ex TWA MD80) and in disgust I chose not to upgrade from DFW-TPA. Both the flights were good and the weather was beautiful - I actually purchased an Asian chicken salad from buy on board food and it was pretty tasty. I would have preferred the hot roast beef sandwich in first class but I digress....

Arriving in Seattle I rode a taxi downtown to the Westin. Microsoft did great - they put us in a nice hotel. Two nights I roomed with Keith Kabza - the remainder of the nights I spent solo on the 34th floor of the south tower overlooking the port of Seattle. The views were wonderful.

Sunday Keith and I walked around downtown. We watched the NCAA selection show from Fox sports grille where my team (Missouri State) was once again denied a berth so lesser teams could get beat out of the conference in the first round (Duke???? j/k). Stan, Keith, and I went out for a great steak dinner at Ruth's Chris to discuss building our brands and businesses. Jeffrey Palermo (www.jeffreypalermo) hosted a Sunday night party at Jillians Billiard club. It was at that party when I began to recognize the importance of the summit to my professional career (networking opps). Thanks Jeff it was great to meet you.

Monday started out meeting Joe Healy, Stan Schultes, Keith Kabza, Jim Zimmerman, and one of Joe's buddies for salmon soup in a local fish restaurant by the famous Pike's Fish Market. Have you seen that video FISH! about teamwork? Well I was slightly disappointed to find the actual fish market was kind of boring. I much preferred watching the donut guy fry donuts and catch them in his sack without looking. We then went to the MVP Expo at the convention center. I spent the afternoon looking at MSFT products and meeting with MVPs and fellow community leaders. After having a community happy hour, we all met up at the Americas regional dinner at the Westin. The dinner was fun, especially all the photos. Afterwards, Keith and I played a tough round of darts with Brian Knight (www.brianknight.com) and I socialized with Valeria, a very nice SQL Server 2005 MVP from Paraguay. The evening ended with a great party at Gameworks.

Tuesday was the start of sessions. Bill Gates did the keynote presentation first and had a q& a session. Of course he was very smart and well spoken, and he looked just like the nice guy you see on tv. Matter of fact, I cannot believe anyone would want to throw a pie at him (see Amsterdam 2000). Because of the NDA, I am limited in what I can say, but I will summarize in the following points. Future games for XBOX (Halo 3 especially) look WONDERFUL. I will be buying an XBOX 360 soon. Windows Mobile 6 is coming out and I wish I could upgrade my wonderful Pocket PC phone to it. SQL Server 2008 will have some great features too. The evening was spent at the Museum of Flight, looking at airplanes and enjoying cocktails and great food with many different people.

Wednesday we arose early and were bussed to the Microsoft corporate campus (MSHQ) in Redmond. I was kind of surprised at the campus - it was nice and clean, but not as grand as I expected. I guess I expected there to be super cushy offices with 24" LCDs and digital projectors everywhere, but sometimes I don't live in reality and it would be hard to find something to complain about at MSHQ. The conference center was very nice and we had 5 breakout sessions covering databases. Again, I cannot discuss what I learned, but let's just say that SQL Server 2008 will build on an already successful 2005. the part that most interests me, SSIS (SQL Server Integration Services), will have some new features as well. I was pleased to meet the product teams and was able to ask one of the original SSIS product architects why some features I consider imporant were missing (and got reasonable answers - all related to time and keeping within scope). We had a product dinner in the corporate cafeteria that night where I spent an hour talking to Doug and Mike from the product team (both great guys). After I got back downtown, a bunch of us SQL guys met at the Elephant and Castle bar to discuss the days events over drinks.

Thursday was the last day of the conference. Went to a couple breakout sessions and a closing luncheon. After the lunch, I was escorted to the SQL Server 2005 development building where I was able to meet directly with the product teams. It actually felt like I was back at work - we sat in a conference room and watched slides, demos, and had a q and a session. The MSFT developers are great guys and I enjoyed talking with all of them. Headed back downtown afterwards and met up with the Florida group again for a happy hour and evening entertainment to rehash the conference, what we learned, and make plans for Tech Ed 2007 and next year.

There you have it - my detailed overview of the MVP Summit. It was great and next year I hope I am back as a full MVP. I am so excited about the future with SQL Server 2005 and SSIS, and I am thankful of the decision I made in 2005 to get involved with the local community here in Florida to promote these great technologies. Now if I can only convince my boss to let me off to go to Tech Ed 07 in Orlando.....

Sunday, February 18, 2007

South Florida Code Camp

Welcome to 2007. It's been a while, but I am already on the code camp circuit for the year. My first presentation was "DataWarehousing with SQL Server 2005".

I'm constantly trying to tweak my presenations and a new year equals a new start. One of my concerns is that data warehousing is a HUGE topic and there is no way I can accurately cover everything in a 50 minute timeline. For the 2006 Tampa Code camp, I tried to split data warehosuing into two sessions, beginning and advanced. In my opinion, it was not successful as I had 40 for beginning and 4 for advanced. That could either tell me that the first session was so good no one needed to go to the second, or that the first session scared the hell out of everyone.

For Miami, I gave a condensed overview of DW concepts and launched into the demonstation system courtesy of the Ralph Kimball Group (www.ralphkimball.com) using the demo system built in the Microsoft Data Warehouse Toolkit. (www.msftdwtoolkit.com) Kimball Group has a great line of books covering data warehouses and I thought the sample system would be a great demonstation of datawarehousing. An added bonus is that the demo system is downloadable straight from the website so participants can play with it immediately.

The session went well. There were at least 80 and probably 100 people in the room at the start. I was completely blown away by the interest in the topic. Sadly, I forgot to hand out eval forms so I have only received sparse feedback on the session but some were dissapointed that I only demo a system, not build it during the demo. Trust me, I wish I had time to build a working DW from scratch but it's just not possible during 50 minue presentation. If we ever run a data camp in 2007 (something Brian Knight and I have discussed), I may have a full day track on building a DW starting with the specs and ending the day with a fully functioning system. Not a bad idea.....

So, as usual my slides are not posted online but you can contact me at thedamndata at yahoo dot com if you want to get a copy of them.

Stay tuned for Orlando.