24 Hours of PASS

Well, here we are, 24 Hours of PASS is about to get started. I am going to do my very best to attend each and every session for the next 24 hours. I will keep a running diary of events with this blog post, so check back frequently for updates.

I will also be on UStream, you can watch me watching the sessions by going to:

http://www.ustream.tv/channel/24-hours-of-pass

The broadcast will get started in just a few minutes…

7:49PM EDT – Fellow PASS Board member Rick Heiges is laying down the ground rules. Apparently I will be given bathroom breaks over the next day. No word on showering, we will need a ruling on that later.

7:55PM – Waiting for Paul and Louis to hit the stage. How very exciting for you to be reading this.

8:01PM – And we are off! Linchi Shea is on an getting us started!

8:03PM – First talk is by Paul Nielson and Louis Davidson. The topic is Ten Big Ideas in Database Design. I wonder if they will mention the use of referential integrity?

8:06PM – Less than 24 hours left. Not sure I can make it…

8:12PM – First thing I learned? “Denormalization is for wimps” – Louis Davidson. I am looking forward to using that in a design meeting, just as soon as we have a design meeting.

8:14PM – 370 attendees right now. Very nice. I may want to curb my enthusiasm.

8:22PM – finding it…interesting…to keep up with the live chat screen, twitter, and listen to the session. It’s like being at the PASS conference, without the half mile walk to the restroom.

8:25PM – Sets good, cursors bad. Yep.

8:41PM – Finding it very hard to keep up with the streams, plus my talking may be distracting and taking away from the great content being presented. I need to be mindful of that fact, I am hoping to enhance the experience, not distract.

8:44PM – NOLOCK = No Consistency,very nicely put Louis! Just today I saw a suggestion for someone to add NOLOCK as a query hint to avoid a timeout issue. Yes, I was confused by that as well.

8:50PM – Not sure what I can do about the sound issue, I want/need to listen and yet I understand that the audio then goes out over my stream. And if people listen to my stream then they can be distracted from the session. I will try to be mindful of this, but chances are you should either decide to focus on the talk (good idea, by the way), or decide to participate in the chat room we have going on. Also, if you are not satisfied at the end of the 24 hours, I will refund your money.

8:54PM – In fact, I will give you double your money back.

9:02PM – Allen White is up now, talking about Powershell.

9:11PM – Thinking about using Powershell for our initial install configurations, as well as a resynch process for restores down to test and development.

9:14PM – I really want to use Powershell with OpsMgr custom scripts.

9:18PM – My biggest reason for not getting started? Because I have yet to find that killer reason to start reinventing the wheel and updating all my old scripts. I do think it could be initial configurations when we roll out a new instances, but just haven’t made the leap yet.

9:21PM – Just saw a note in the chat session about using Powershell to grab source code from TFS.

9:29PM – Allen White does not want to backup his system databases. I am sure he meant for this particular script, and trust that he does perform system database backups. (I am also certain he is just doing a concept demo, so everyone can just chillax for the moment).

9:43PM – Awesome talk and chat, I have a handful of takeaways for my shop to use Powershell. Exactly the type of takeaway I get from the PASS Summit. Lots of great technical information shared as well as practical applications. No doubt my involvement with the community has made me a better DBA.

10:13PM – Back on line after getting shoved into the basement and the studios for Sleaque Images (www.sleaqueimages.com) Oh, and my laptop decided to reboot. But I now have Kevin Kline talking to me about Team Management Fundamentals.

10:24PM – Some wonderful management skills being discussed right now. Empathy is a powerful skill to acquire.

10:33PM – Groupthink is bad, good point and something that is rarely discussed. Most people think a meeting of the minds is an efficient way to make progress when in fact it is a resource drain.

10:42PM – Good advice all around now; hire someone who is not like you.

10:42PM – I just yawned and I have 21 hours left.

10:52PM – Need food.

11:09PM – Back, and with bacon. John Welch is talking about performance issues with SSIS.

11:15PM – Asking around to see if people run SSIS on a dedicated server. The answer seems to be “yes”. John mentioned the need to make certain SSIS has enough memory when run on a shared box with MSSQL.

11:25PM – Apparently I need to check with the network guys to make certain our NICs and switches are set to 9000 byte packets (if we have a GB network).

11:36PM – This event is hammering home the value of the PASS summit: talking with your peers, comparing notes, and sharing experiences. We are less than four hours in and I already have three main takeaways to go back to my shop with on Thursday after a nice long nap.

12:00AM – It is now tomorrow. Twenty sessions left. If I can get through the night, I should be fine tomorrow. Brad is up now to talk about SQLDiag, a tool I rarely ever think about, let alone use.

12:08AM – SQLDiag looks like a very powerful diagnostic tool. I am now wondering if Brent Ozar can use SQLDiag to push output to the cloud and slice and dice it nicely for consumption. SQLDiag is also a tool used by PSS. So, if you examine the code used and the output produce you will get a good idea how Microsoft goes about collecting data they feel is important when troubleshooting problems.

12:19AM – I yawned and woke up children around the world. Sorry ’bout that.

12:34AM – Brad just showed a screenshot that looked like an air traffic control screen.

1:03AM – Brad finished up and I went to get a drink, some chips, and some tapenade. There was a lively discussion about certifications during the live chat session.

1:09AM – Peter Ward is up now talking about consolidation. He started out by mentioning a magazine that was 120 pages thick and had over 400 mentions of the word ‘consolidation’. For independent consultants this is a good opportunity to interject their skills into companies looking to consolidate systems.

1:17AM – Peter just mentioned the magic v-word. Yeah, that’s right virtualization.

1:24AM – Peter just told me that if I build a better data center I can drink more beer. Very interesting.

1:38AM – Peter is now doing a demo of Resource Governor. I like the concept of RG, not sure how quickly we will start using it in our shop. But as we look to consolidate and virtualize it could become a necessity.

2:00AM – Dejan Sarka is up next to talk about text mining. And I am sleepy, but starting to feel a little more energized.

2:09AM – Text extraction works in other languages, but is unsupported. Very interesting. The closer to English, the better the results.

2:25AM – Dejean is now showing me just how far behind I am with SSIS. He is navigating around like he built the product. I am lucky enough to spell SISS SSIS let alone be extracting text and doing lookup transformations.

2:38AM – Dejan is now working his way through SSAS and making me feel further behind in my knowledge of all things SQL. I will try to remember that no one person can know everything, but he makes it look so easy I feel as if I should.

2:44AM – Just found out that 5% of Australia claims to worship ‘Jedi’ as their religion. Perhaps they should stop handing out Foster’s with every tank of gas?

3:00AM – Dave Dustin is on and introducing Jacob Sebastian. Dave is from New Zealand and I just realized I should have tossed my All Blacks cap on for this hour.

3:03AM – Watermelon. Seedless. Good.

3:10Am – Jacob is walking us through some tips and tricks for writing SET based queries. Good advice, no matter what your level of T-SQL Kung-Fu.

3:21AM – I am wishing Jacob was showing some execution plans or STATISTICSIO details and helping us understand how the different code is behaving under the covers. Also, how does the code perform against databases of varying sizes?

3:30AM – Feeling good right now. It is either the Rockstar drink, the tapenade, the sessions, or the side conversations. Probably a combination of everything. And I cannot stop thinking about apples, oranges, mangoes, and grapes.

4:02AM – Eight sessions down, sixteen to go. Feeling good, daylight is coming and that will help. This session is on backup strategies, looks to be very interesting.

4:12AM – Thomas points out a great point. You need to ask the question: how much data can be lost? The answer will determine your backup strategy. I would also add that you do not believe the first answer you get; ask around and verify, especially if you are told something ridonkulous like “we can go a week without a backup, no problem.”

4:16AM – Great stuff here, SLA times for your RPO (Recovery Point Objective), your RTO (Recovery Time Objective), and the fact that people sometimes have no concept about how long the backups actually take to finish. Oh, and don’t forget you need to know how long a restore takes as well. If your backups take eight hours, you can expect your restore to take a while.

4:28AM – Location choices for your backups, from best to worst: remote datacenter (as far away as possible), same datacenter with different rooms and fireproof walls in between, same datacenter but different room, same room in the datacenter but a different rack, same rack but different server, same server but different disk drive, same server and different partition, same server but different folder.

4:44AM – Wondering why I am still awake.

5:00AM – Greg Low is in the house to talk about spatial data. Amazing how much there is inside of SQL 2008, and how much I have learned in just a few hours tonight.

5:19AM – Spatial datatypes seem interesting, but what use would I have for them right now? I am not looking to build systems that require me to calculate distance or areas. But if I did need to build those systems, I suppose it is nice to know that the support is there. My guess is that this was placed into the product in order to be competitive for now and hopefully it will gain steam over time.

5:35AM – Just got a review of the Spatial results tab in SSMS. I had seen this in a lab a while back but had forgotten about that tab until just now. I am now wondering if I could find a way to use this to perform some gradient calculations.

6:00AM – Gail Shaw is up now to talk about effective indexing. Daylight has come ’round again. I am physically wearing down. I blame the chair.

6:12AM – It is always nice to have a refresher session on indexing. There always seems to be something that I have learned before but forgotten since.

6:15AM – Always a good tip: use INCLUDE for columns in the SELECT list but not involved in filters or joins. Yet another nugget for free tonight.

6:20AM – When a query has a covering index the query processor will not need to access the clustered index or heap. These bacon nuggets of wisdom just keep dropping.

6:31AM – Another great tip: when you filter by > then =, you need to have the index go on B, A. And all of that would make sense to you if you had watched her session.

7:00AM – Great job by Gail. I am eleven hours into this and feeling energized as others wake up and start to join in on the chat.

7:21AM – Simon is giving a demo of SSRS 2005 and I find myself wishing he was using SSRS 2008. And I find myself with a strong desire to power down the SSRS 2000 boxes we still have in production.

7:37AM – Looking forward to getting back upstairs to my office. Mostly because that puts me closer to my bacon, but also because I like my office and my iMac.

8:10AM – A few technical issues there but I am back upstairs in my office…and craving more bacon. Grant Fritchey is going over execution plans right now.

8:22AM – Grant looks like he is in a holding cell, but i will assume he is in a conference room at work. If he held up a newspaper right now I would not be surprised.

8:32AM – Grant just dropped this bacon nugget: “The best tool you have to performance tune a query is execution plans.” Yeah, that’s right, the answer is NOT profiler, it is an execution plan.

8:40AM – Statistics drive your execution plans, and execution plans drive your queries. Wonderful way to remember that updated statistics are important.

9:00AM – Great job by Grant and now for another great session by Peter Myers on SSAS and Excel 2007.

9:17AM – Peter is a wonderful presenter. He has the ability to explain very complex concepts with small words that even I can understand.

9:26AM – I am now wondering if the nightmare of MS Access is going to become the nightmare of MS Excel. What I mean is that many, many, many business users are using MS Access to perform business functions, and make business decisions, and there is little to no control over the data, how it is used, how it is stored, or how it is recovered in the event of disaster. Periodically we get requests to “restore my database” only to find out it is an Access file, and I now suspect that Excel will become the weapon of choice.

9:48AM – Only ten sessions left. I am feeling energized again.

10:03AM – I need a bacon break. Erik Veerman is talking about laying a foundation, which is always a nice thing to do.

10:15AM – Dimensions, facts, measures, attributes, surrogate keys…all good things, and all overwhelming for my fifteenth straight session. However I have learned that I do not want wide consolidated tables for reporting. Fact tables hold measures, dimensions tables track attributes. Attributes would be like color and size, measures would be a quantity.

10:31AM – Erik is doing well to get a lot of information presented in the time allotted. There are a lot of details in any BI platform.

10:36AM – Project Madison? Apparently there is a DataWarehouse appliance on the horizon. Not sure if it is included with SQL Enterprise versions or if it will be sold separately.

10:45AM – Need to stretch my legs. And eat. A shower would be nice as well.

11:07AM – Bacon consumed. Consciousness returning. Focus is sharp. Ready for the rest of the day. Don Vilen is starting his talk on database compatibility settings, which sounds cool but only because I am a geek.

11:39AM – Some really good reference material in this session. I like knowing the process involved with deprecating features and how compatibility levels actually function. There are 31 differences from 80 to 90, and 22 from 90 to 100.

12:03PM – Home stretch now, 16 down, 8 to go. Steve Jones is going to talk to us about blogging, and I am going to blog some of the things he says about blogging.

12:09PM – Whoa. People can make money by blogging? Who knew?

12:27PM – Steve is wondering why he is a master blogger? This presentation shows why. Not only is he fully deserving of the title for himself, but here he is teaching others exactly what they need to do to become master bloggers for themselves. I am looking forward to his session at PASS this year.

12:42PM – This is just becoming embarrassing, Steve has mentioned me a few times now. Mostly good. And most of us have jobs, apparently. But probably not that interesting.

12:56PM – Just for the record, hot-linking is bad. Very bad.

1:00PM – Artemakis Artemiou is about to take center stage with the longest titled session during this event. Too long for me to even type at this point. I am mostly physically exhausted at this point, but think I am doing well otherwise. This talk is way outside my wheelhouse, but I am going to see what I can learn anyway.

1:19PM – Everyone on the live chat is quiet. Eerily quiet. Perhaps the zombie apocalypse has begun? Or it could be lunchtime. For the zombies.

1:32PM – I too am very quiet. Seem to be fading. Might need more bacon.

1:51PM – Adam Machanic is coming up next. My brain is fried. I think I can hold out for six more hours.

2:01PM – OK. Home stretch now. Time to focus.

2:12PM – KBK just asked me if I salt my watermelon. PAY ATTENTION TO THE PRESENTATION KBK!

2:13PM – I think Adam has a 10% chance of making me like CLR by the time he is done. I have only seen a handful of assemblies built and I am always leery because of the reduction in security that is “needed” for them to run. I know they can be wonderful when used correctly, but just because I CAN create a SQL CLR stored procedure does not mean I SHOULD.

2:19PM – Nice summary slide here. Use T-SQL for reading data and standard data operations. Consider using CLR for string and math operations (two examples). Not a bad line in the sand. I am still turned off by the need for external access for most “useful” assemblies.

2:28PM – The other thing that bothers me about CLR objects is that they are outside the database. That is a concern because most people consider them to be a database object; thus I am responsible for maintaining security. And it is also a concern when promoting to production; someone needs to remember that the assemblies must be deployed as well.

3:04PM – Five hours left. Brian Knight is up now, going to give me a lesson in SSIS that I know I truly need.

3:10PM – Good review of a dimensional model here, dimensions, facts, measures, surrogate keys. Andy Leonard already used the “I dated a dimensional model” joke once, looks like he will not go there again today.

3:21PM – There is a Slowly Changing Dimension (SCD) Wizard? Who knew? Seems to be a mixed reaction on its usability. And some people just flat out are frightened by the idea of a dimension that will slowly change over time. To me it would appear that a SCD is nothing more than normal updating of data over time. So, aren’t most database themselves inherently a loosely defined SCD?

3:35PM – Brian looking to run quickly through a merge join, not sure we want him to go through this very quickly.

3:51PM – Kalen is in the on-deck circle. I am now energized. These last four hours will be E-A-S-Y.

4:06PM – Kalen is going to talk about recovery models and transaction logs. Good basic knowledge that every DBA should be familiar with. For example, the transaction log is a write-ahead log, and it is NOT an audit trail.

4:15PM – In five minutes Kalen has been able to explain how a transaction log file actually works in terms that I would expect DBA’s at all levels would understand. If there is an ‘accidental’ DBA watching this, let me know what you think of her explanation.

4:30PM – Reviewing minimally logged operations right now. Kalen has a wonderful presentation style. I think she has presented before. Maybe a couple of times.

4:37PM – Putting your database into SIMPLE recovery model does make your backup strategy simpler. Of course, it could make your recovery plan more complicated should someone be expecting a point in time restore and you do not understand why that is not possible in SIMPLE recovery model.

4:44PM – We lost Kalen. I hope we find her before November!

5:03PM – Three hours left. It feels like forever since I have not been in front of a computer screen. Don Kiely is up and talking about SQL 2008 security.

5:06PM – First item discussed is the fact that BUILTIN\Administrator is no longer added as a system administrator be default. And there was much rejoicing.

5:18PM – Transparent Data Encryption (TDE) is introduced with SQL 2008 and allows for the encryption of an entire database; something that was not available in previous versions. TDE will encrypt the data as it is written to disk, and as soon as you enable it for one database then it is enabled for tempdb as well.

5:30PM – With TDE, you need to take extra care with your certificates; you will need them to perform restores onto a different server.

6:03PM – The Sun came up twelve hours ago. I have two sessions left. In about 90 minutes, this will all be over and I can return to my family, my job, and my life. But before that happens I get to spend time with Andrew Kelly. Let’s get started!

6:06PM – Andrew is diving into file and wait stats. Awesome, I am just starting to get involved with these as the first thing I examine when performance issues arise.

6:13PM – Great point: physical I/O is only physical I/O. The first time the plan is run it is physical I/O, and then subsequent runs are logical I/O, not physical, and most of your performance issues will likely be physical I/O, not logical. Also, database backups will get reported in your physical stats.

6:25PM – Andrew just told me to pay attention. Well, he told it to everyone. So I decided to blog about it. What’s he saying, anyway? Wait stats something or other…Signal wait time means you are not on a CPU (so, you need to add/upgrade CPU). Use sys.dm_os_wait_stats (replaces DBCC SQLPERF(Waitstats)) to get the details.

6:28PM – Andrew is going into details on CXPACKET, LCK_M_xx, LCK_M_SCH_xx, ASYNC_NETWORKIO, PAGEIOLATCH_xx, IO_COMPLETION, WRITELOG, PAGELATCH_xx. Awesome review of the common wait types you will encounter.

6:40PM – Doing questions early. One hour left. This is it.

7:03PM – Thumbs up, let’s do this.

7:12PM – Apparently there is a client side .rdl? Who knew?

7:15PM – Five ways to view reports: Report Manager, URL, Sharepoint (MOSS), Report Viewer – Server, Report Viewer – Local. We primarily use the Report Manager in our shop.

7:38PM – And that’s it. It’s over. 24 hours has come and gone. It seems like only yesterday I sat down to the first session.What an amazing ride. I will try to put my take on the whole event into words later. First I want to reintroduce myself to my family, shower, unwind, and sleep.

Thanks for all of your support. I hope I enhanced your experience and I look forward to seeing you at PASS.

14 thoughts on “24 Hours of PASS”

  1. SCDs are definitely not “normal updating over time”. In an OLTP, “normal updating over time” is exactly that – an UPDATE.
    In a Data Warehouse, you can reflect changes based on two rules of thumb – is the change you’re making an update to “fix a mistake”, or is it a “change in state”? When a “change in state” type of attribute (column) value is changed, you actually create a new row – you do an INSERT instead of just an UPDATE.
    (I’m simplifying a bit – but that’s the short story.)

    The SCD Wizard is a great way to handle small dimensions easily.

    Reply
  2. Assemblies are database objects. When CREATE ASSEMBLY is run, the assembly is loaded into the database and the dll file is not needed for the CLR stuff to run.

    It’s possible to script it out as a T-SQL script that doesn’t need the actual dll file for promotion to another environment.

    Reply
    • Thanks Gail, that does remove one concern. I will have to review the correct scripting method, as we have had issues loading when promoting.

      Reply
    • thank you, i updated that entry:

      “If your plan has been executed and your data is in cache then you get logical I/O”

      Reply
  3. Well, it’s just if the data is in cache.

    New query can come in without a cached plan but still be able to use cache only if all the data/index pages it needs are already in the data cache.

    Reply
    • OK, but AK’s comment was specific about plan reuse. I thought I heard him say that the first time the plan is run it is physical I/O, and then subsequent runs are logical I/O. perhaps I should just use that verbiage instead, and keep things simple for now?

      Reply
  4. Tom,

    I was in the first session, the last session, and several in between, and you were there for each and every one. Obvious, I know, but I wanted to thank you for all you do, including this 🙂

    Dyfhid

    Reply
  5. Thanks for the play by play. I wish I had the energy and motivation to stay up and see all the presentations like you did.

    Can’t wait for the videos to be released so I can see all the great info I missed.

    Cheers!

    Reply

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.