Presenting to Hampton Roads SQL Server Users Group, Thursday, April 15

April 14, 2010

I am reviving my “Integration Services in the Real World” presentation from last weekend’s SQLSaturday #30 in Richmond for the Hampton Roads SQL Server Users Group (HRSSUG) this Thursday, April 15, at 6:30 PM.  More details available here.


“Integration Services in the Real World” Slide Deck

April 14, 2010

I want to extend a HUGE “thank you” to everyone who attended my presentation at this weekend’s SQLSaturday #30 in Richmond.  I think I was lucky to be the only one talking about SSIS as the room was packed.  I really appreciated everyone’s attention and participation.  I only noticed one guy in the front fall asleep and I saw the same guy fall asleep in another session later in the day so not bad at all!

To those who stopped on the way out or came up to me later in the day to mention that they enjoyed the presentation, I really cannot say how much that meant to me.  This was my first time stepping out of my comfort zone and giving a presentation.  If one person had said something nice about my presentation, that would have meant the world to me.  The fact that maybe 10 or 15 did was absolutely incredible.  Even the guy who fell asleep gave me a “thumbs up” on the way out.  Maybe he was just looking for someone with a soothing voice and mine sufficed.

I would also like to thank Tim Mitchell (blog | twitter).  At one point, Tim and I were both presenting SSIS topics.  I felt a bit nervous to share the SSIS bill with Tim as he is quite an experienced and polished presenter.  I reached out to Tim both as an opportunity to pick his brain for advice and as an opportunity to network with someone before the conference since I did not expect to know too many folks ahead of time.  Tim was gracious enough to schedule a call with me and spend the better part of an hour answering my questions, giving me pointers, and reassuring me that I was on the right track.  I was disappointed that he was not able to come to the rescheduled event, but look forward to meeting him sometime in the future when our paths cross.  Thanks Tim!

Finally, I would also like to thank Jessica Moss (blog | twitter), one of the conference organizers.  Jessica spent some time talking with me when I ran into her at SharePoint Saturday here in Virginia Beach back in January.  At the time, I was a bit nervous regarding my approach for my presentation.  Jessica was very encouraging.  She reassured me that my plans for the session fit what they were looking for at the conference and that my abstract did a decent job of conveying those plans.  Knowing that a conference organizer and experienced speaker knew exactly what I was planning and was happy with it really boosted my confidence.  Thanks Jessica!

My slide deck is attached to this post.  During the presentation, a request was made for me to make one of my projects available for download.  Not considering this ahead of time was probably the biggest rookie mistake that I made.  I am still considering whether I am going to be able to do this.  I am torn at the moment because the project in question was not strictly a demo in the sense that it did nothing but explain a concept or illustrate a method.  It was a finished product.  It was something my employer paid for me to develop and deliver.  I am going to give this some more thought and will follow-up in another post.

Update:  Here is the link to the deck:  Integration Services in the Real World

SSIS: Catch ExecuteProcess Task Output

March 3, 2010

In my SQL Server Integration Services (SSIS) projects, I often use ExecuteProcess tasks for various purposes.  I use them to kick off batch files (often batch files that were created earlier in the project) and command-line utilities such as WinZip and WS_FTP Professional.

However, it recently dawned on me that I had gotten in a very bad habit regarding how I used these tasks.  I never took the time to capture and log the output of the ExecuteProcess task.  This output is often valuable for troubleshooting runtime errors.  Capturing it and logging it is so easy that there really is no excuse not to do so.

All that you need to do to capture the standard output from your process it to assign a string variable to the StandardOutputVariable property of the ExecuteProcessTask.  That’s it.  Then you have the output and can log it as you wish (e.g., pass it to a Script task and use the FireInformation method of the IDTSComponentEvents interface).  While you are at it, do the same for the StandardErrorVariable property of the ExecuteProcessTask.  Now, should you need to troubleshoot an issue with your task, you should have all of the information that you should need.

Come on out to SQLSaturday #30 in Richmond

January 19, 2010

As I mentioned a couple of weeks ago here, I will be giving a case-study style presentation on SQL Server Integration Services at the upcoming SQLSaturday event in Richmond on January 30, 2010.  I will be presenting several of the SSIS projects that I have built at work.  Through a review of these projects, we will discuss some of the advantages SSIS presented as opposed to alternate approaches or technologies that I could have employed, look at exactly how I accomplished these things in SSIS, and lay out some best practices for SSIS development.  My slot on the schedule is at 11:00 AM, on Track 1.

It will be a day of firsts for me.  This will be the first opportunity that I have had to attend a SQLSaturday.  I have heard about these events for sometime now and think its great that we have one within a couple hours of where I live for the first time (I believe).  I had a blast at the recent SharePoint Saturday here in Virginia Beach and am not really a SharePoint guy (just play one at work quite often.)  So, I know a similar event focused on SQL Server will be a lot of fun.

This will also be my first time speaking at an event like this.  I’m quite nervous, of course, but looking forward to it.

I would like to encourage any of you among my legion of devoted blog followers who will be near the Richmond, VA, area on January 30th to sign up to attend.  It is a free event and I’m sure a large turnout would help to make sure other such events take place in our area in the years to come.  Register here to secure your place!

Speaking at SQL Saturday Richmond

December 29, 2009

I am on the Docket!

I received the official email letting me know that one of the two abstracts that I submitted to SQL Saturday Richmond was accepted.  As of now, I am speaking on SQL Server Integration Services (SSIS) at 11:00 AM, on Track 1.  I assume that could be subject to change.  My session is titled “Integration Services in the Real World”.

I was a bit relieved to see that only one of the two abstracts that I had submitted was selected.  I had submitted two to improve my chances of being selected (as suggested on the submission site).  However, since this will be my first time speaking at an event such as this one,  I am thankful to only have to prepare for one session.

Integration Services in the Real World

The idea behind the session is to show how SSIS has become an indispensable tool for me as a DBA who is often asked to do things that are not strictly database-related.  In the absence of SSIS, if you ask a DBA to tune a query, restore a database, or grant permissions to an object, the tools are there for those tasks.  However, ask the DBA to create a process that runs every night, extracts user data from a custom LDAP-provider, merges it with data from a SQL database, writes it to an XML file, zips the XML file and then sends it to a service provider via secure-FTP, and you might get a puzzled or dismayed look.  There are ways to do these things without SSIS, but they tend to be clunky, difficult to maintain, and do not always perform optimally.

With SSIS, I have a tool that enables me to meet these types of odd requirements (which are quite common in my workplace) quite elegantly, often with very little code, and free from some of the performance constraints of the alternatives.  I intend to illustrate this by walking through some of my real-life projects.  I will describe how I might have gone about meeting the requirements without SSIS, discuss some of the problems with those approaches, and demonstrate how I accomplished the same thing in SSIS.

My hope is that my presentation will:

  • Encourage folks to consider SSIS as more than just an ETL tool for data warehousing projects.
  • Illustrate some of the advantages SSIS has over other technologies that people may be using to accomplish some of these tasks.
  • Highlight some of the best practices that I have adopted over the past several years working with SSIS.