Friday, October 31, 2014

Tales from the Query Processor III


https://www.flickr.com/photos/socal_jim/2070088596/
Hello Dear Reader!  It’s that time of year again.  The leaves are turning, temperatures are changing, and Halloween is once again upon us.  Today is Halloween, time to take the kiddos out to Trick-or-Treat!  Today is also my daughter’s 16th birthday!  It’s hard to believe that it has come so quickly!  Happy 16th Birthday Chesney!


This is also the time of year when we embrace the suspension of disbelief, and have a tale of terror from the Query Processor.  If you want to see the previous tales, here is Tales from the Query Processor and Tales from the Query Processor II.  I hope you enjoy.

The Plan that Will Not End

Q.P.


If I had known this was the last time that I would ever see Sid I would have given him better advice.  Maybe I would have given him something at all.  Something better than the flashlight and the map.

Let me start over.  I don’t know that he’s dead.  We haven’t seen him in 4 days.  Most trips take seconds, long one’s minutes, very long one’s hours.  No one has ever been gone this long.  No one has stepped up to take his place, a good indication that he might not be dead.  Nobody is looking for him, at least not that I can see.  As we stood there on that dark night, it seemed simple.  So very, very simple.  When I don’t know something I have to guess. Sometimes my perspective is obstructed.  My view isn’t sufficient.  I always guess the same thing.  One.  That’s my number.

 
We’d all done it before.  We’ll I hadn’t.  Sorry, I forgot to introduce myself.  My friends call me Q.P.  I’m the map maker.  I make a map of a place, tell people where to get things.  It may sound simple, but its not.  I don’t do point A to point B.  I estimate proximities, how long something should take, the best route, what to do under specific conditions. I guessed one.  Should I not have guessed one?  There’s load, location, and the gateway that should be used. 

The Gateway.  It’s a special threshold that we have to pass through.  It ensures that we are ready for the load about to be placed on us.  Sid went through the biggest Gateway there was.  It stopped him at first.  Took us a couple hours to get everything calibrated correctly.  The map was a long one.  If my normal plans are a between 2 to 5 in difficulty, this plan was an 800.  We knew that going in.  That’s why he went through the Big Gateway.  Waiting for him to return, I can only imagine what’s going on.  Was there more than one?

SID

Hello my name is Sid.  I don’t know how long I’ve been gone, but here’s what I can tell you.  I’ve been running.  Since I passed through that last gateway and received my grant I ran.  I ran straight into this nightmare.

I turn down one corridor and it leads to five more.  Sometimes a hundred more.  Sometimes thousands more.  Behind every door there is more and more to grab, more to strike, so much more.  This plan is useless at this point.  I don’t know what Q.P. was thinking.  I’ve been hacking and slashing my way through this mess.  I’m exhausted, but I can’t stop now.  I’ve got to keep running.
http://taodao.deviantart.com/art/Running-Zombies-405296478

Last night I stopped for a moment, went serial and just focused on one thing.  Thought I could get a bit of a rest, but I turned a corner.  Where there should have been one there was one.  One million of them.  I’ve never seen a horde of so many Zombie records.  Yes I’m supposed to return with 300.  But nobody told me how many I would have to fight off to get there.  Simple run.  Heh. That wasn’t the first million that I’ve faced either.

I only got 120 with me so far. 120 out of 300.  I’m trying to put together some actual numbers.  If I make it out of this, we need to know what the difference is.  Something went horribly wrong with this plan.  No backup is coming, and if I’m lucky we won’t be swallowed here. 

The first 5 that I got came along easily.  Everything was good.  Three steps out on the plan things started going sideways.  We went to a simple structure.  One record inside, the plan said.  We walked in and looked around.  We heard them before we saw them.  There was a low moan that started traveling like an echo.  This was not an echo.  Echo’s don’t respond to one another.  Before long it was reverberating and echoing.  We could see the first movement in the darkness.  We were not prepared for this, so we ran.

We circled back.  That structure had a basement, a lower level, a parking garage, and a sub structure.  Our only choice was to run them.  They followed us down the loop, into the parking structure.  They are not smart, if there is no match to guide their way they will spill out of the darkness like a thousand scurrying insects in every direction.  We made it to the edge and climbed up.  They spilled over the edge like a dark waterfall.  There were no screams, no help me I’m falling, just that moan and the sound of impact.  We circled back down looking for survivors only to pick up more.  There are no weapons around us.  We have no choice but to keep running as our only offense.  We did the same thing, over and over again.

The only thing the map gives us is a view of the structure.  I think there is a better way to do this, but I don’t know how to edit the plan.  Not when we have to keep running.  It took us hours to find the next 3.  Hours for 3.  We were lucky not to be killed.  We’ve cleared 100 structures at this point, 200 remain.  We’ve got to find the rest and get them out.  Almost halfway done.  Don’t get killed.

I hear them now.  I have to run.

-Sid



Happy Halloween Dear Reader!  As always Thanks for stopping by.

Thanks,


Brad

Wednesday, October 15, 2014

I'm an MVP

Hello Dear Reader!  Two weeks ago I was very honored to be named a Microsoft SQL Server MVP.  Since then I've been reflecting on what it means to get this award and the massive amount of people that helped me along the way.

Family, co-workers, friends, community members, and other MVP's.  This could turn into an Emmy speech, but I won't put you through that.  In the past I've written about this and saying Thank You to the People That Get Us There, about Why You Should Go to SQL Saturday and the impact it had on me, and how Who You Work With helps push you in the right direction.  Before I move on from thanking people I need to say a big THANK YOU to the people who nominated me.

Mike Walsh (Blog@Mike_Walsh), Jack Corbett (Blog@Unclebiguns), Jorge Segarra (Blog@SQLChicken), Adam Jorgensen (Blog@AJBigData), and Jason Strate (Blog@StrateSQL).  Gentlemen I thank you not only for nominating me, but giving me a seat at the table to begin with.  Through advice and conversations you immediately welcomed me.  I've always been humbled by the way in which smart men and women of the SQL Community open their arms not only to greet but assure newcomers that they deserve a voice and a seat at the table.   My friends Thank You.  Thank you for your faith in me.  Thank you for helping me get here, and for all the encouragement.

Jorge once said to me about three years ago, "You deserve a seat at this table, enjoy it and don't ever worry that you belong.".  Great and kind words my friend.

Now Dear Reader, I also want to pass along one incredibly important piece of advice that was given to me.  How to become a SQL Server MVP.


HOW TO BECOME A SQL SERVER MVP


I have no idea.   None.  Not a clue.  In conversations with all of these amazing folks, they had no idea either.  However, I did notice that I heard the same three pieces of advice repeated over and over again.
That feeling you get when you open the box

1.  Love what you do.

2.  Don't treat being an MVP as a goal, but something that happens along the way.

3.  When you get nominated fill out the website details, better start collecting them now.


LOVE WHAT YOU DO


I enjoy this.  I love presenting.  I love learning.  I love talking with people about their issues with SQL Server.  I really love when I know what's wrong with a system and can help fix it.  I've had telephone calls with clients in the past couple years where after hearing about five minutes of their problem I knew what the issue was.  I could start giving advice on the phone call, and by the time we were sharing screens or I was landing on the ground we were able to start working on a fix.  That is pure awesome.


Some people love to blog, some love volunteering, some are leaders that bring us together, some organize, some  troubleshoot on forums, some program amazing applications/scripts/videos to help the community, and some love to speak.  Whatever you are doing if you love doing it, then keep doing it.  You'll never feel like you wasted your time, and you will know you are doing things for the right reason.


IT'S NOT THE GOAL, IT'S THE JOURNEY
San Francisco Sunset with @JasonHorner

I'm paraphrasing Emerson.  It's no less true.  If I only get this one year, if I never would have gotten it, the journey of pursuing what I love to do has taken me places and allowed me to achieve things I had not even thought of.  I've criss crossed the U.S. this year and I'm looking forward to staying busy next year.

Keep in mind this didn't happen in one year.  Every journey begins with a step.  I encourage you to start your journey.  When I present at SQL Saturday's or SSUG's I tell the audience the same thing I hope you now hear Dear Reader.

In each of you there is a story to tell.  There is something you are doing right now at work that I, and other people, would love to know and hear about.  There are ideas you have that would be well received and applauded.  Get involved, volunteer, blog, present, find what it is that you want to do.  We all have a calling and I hope you find yours.  If I can do this so can you.

Remember, you deserve a seat at this table, enjoy it and don't ever worry that you belong.

Now grab your seat, let's have some fun.  As always Thanks for stopping by.


Thanks,

Brad




Wednesday, September 24, 2014

#PASSVOTE 2014

Hello Dear Reader!  The PASS Board of Director elections are upon us again.  We have 3 spots open and 4 great candidates.  A lot has been written about this election already.  Andy Warren has sounded off, Brent Ozar as well.  There are blogs by the candidates and many others.

While we are all waiting to get into the website to vote, here's who I'm voting for and why.


1. JRJ aka James Rowland Jones.

James is energetic, incredibly knowledgeable, and a pleasure to hang around.  James has done a lot of work expanding and evangelizing for SQL Server on the international front.  He helps head up SQLBits and I love the idea of a FREE & PAID conference combined.  I'm hoping that we can adopt some model of that in the U.S.

James is a flat out leader in this field of IT/SQL Server/Microsoft Consulting.


2. Wendy Pastrick.  

STOP SCREAMING INTERNET.  Before people go "OF COURSE, SHE WORKS FOR PRAGMATIC" stop.  If that is all you think of what I write, stop reading.

Being in IT as long as I have the way someone's mind works is incredibly important to me.   I work with Wendy, I've interviewed her.  I also encouraged her NOT to run for the board.  That's right Dear Reader not to run.

She has a wonderful enthusiasm.  She is thoughtful, and she truly believes that she can make a difference and told me so when I encouraged her not to run.  I like the work that Wendy has done for the community.  The first part of victory is wanting something. She does.  I may never run for the board but, in the conversations she and I have shared I have no doubt PASS is a better organization with her there.


3. Grant Fritchey.  

I know Grant, I like him quite a bit.  Met him at SQL Rally in 2011 when he did his first pre-con.  I've seen him at conferences, presenting, and talked about everything from SQL, presenting advice, to cleaning shot gun's vs. sharpening swords to intimidate boys coming to date a teenage daughter.

It's safe to say I like him.  But why do I think he would be good on the PASS Board?  Grant is an optimistic, enthusiastic, realist and when we talk I can't help but think he's somebody I would want to work with or work for.  He is passionate at the right times, and he clearly explains what is on his mind and the way his decisions work.  The most important thing to me is how someone's mind works.

He's a DBA, but he has taught pre-con's on Azure, he has looked at Big Data, he doesn't shy away from learning and tackling new things.  Plus the man produces a damn fine book on Performance Tuning.  I'm looking forward to seeing what he can do on the board.

WRAP IT UP

Alright Dear Reader.  I don't expect to convince you, this is just who I'm supporting and a short reason why.  The thing you do not see in this post is the hours, meals, and conversations I've had over time.  All of that adds up.  I'm lucky to know these 3 people.  PASS would be lucky to have them.

A long time ago before I got involved I thought the Speakers ran PASS.  It never occurred to me that the public face of PASS was not who ran the show.  I've been very happy the last couple of years with the additions to the board.  I'm excited to see these Speakers stepping up to help.


If you have a ballot to vote please do.  Good Luck to all of the Candidates!  As always Dear Reader, Thanks for stopping by.

Thanks,

Brad






Monday, September 15, 2014

Outstanding PASS Volunteer

Hello Dear Reader!  In June this year I was recognized by PASS as with an Outstanding Volunteer Award.  In an unusual move I found myself speechless.  This is a very quick post to give the true credit where it is due.  June was a very busy month for me and I had a blog post scheduled to post it in July, but… let’s just say a couple things happened on the way to the theater.  The timing felt a bit wrong.

“So Balls”, you say, “Why blog about it now?” 

Great question Dear Reader.  The original blog was a big Thank You, and I want to say that in earnest.  The reason I received my award was for a lot of the work and presentations I’ve done this year. 32 presentations so far in 2014 with 9 more planned out and hopefully a couple more to come. 

These presentations don’t happen in a vacuum.  I’ve been very blessed as a presenter and community member.  I’ve written recently about how SQL Saturday’s impacted my life.  This year friends in the community invited me to new and wonderful locations.  Mike Walsh (@Mike_Walsh| Blog)  and 1/2 of my future law firm of Biguns & Balls Jack Corbett (@UncleBiguns | Blog) started out my January in New Hampshire from there I've presented physically and remotely in Florida, Puerto Rico, Massachusetts, Wisconsin, Missouri, Texas, California, North Carolina, Virginia, Oregon, Colorado, Georgia, with more before the end of the year.  That doesn’t include Webinars where people from all over the world signed up to attend.

If you attended, were forced to attend, dragged, cajoled, or otherwise persuaded to attend I Thank You.  Dear Reader without you it doesn’t happen.

For the organizers, who put in their time, put on events, get sponsors, volunteers, and manage the process Thank You.  My time to present is a pittance compared to the effort it takes to lead a group and the hours that you put in.  Many Thanks for letting me be part of your group.

To PASS, the volunteers (the literally HUNDREDS of volunteers from SQL Saturday’s, program committees, Leadership Staff, down to the volunteer picking up coffee a noble and thankless job), Chapter Leaders, the employees whom I see and send emails to for the Summit or SQL Saturday’s, and all of those who I do not see Thank You. 

Your hard work helps create an environment that allows our community to thrive.  There have been lots of fantastic winners already this year.  I encourage you to check out the PASS page of Outstanding volunteers here.  Chances are if you’ve been to an event this year one has touched your life.

A Quick late-CONGRATULATIONS to my friend Shawn McGehee (@SQLShawn | OPASS) who is the August Outstanding volunteer.  Shawn is the Chapter Leader for OPASS and has done an incredible job.  He is leading the charge for our Pre-Cons for SQL Saturday Orlando amongst many, many other things!  Way to GO Shawn!!

To my friend who nominated me, the beers on me.  To anyone who wants me to present and I haven’t presented for you. If I’m in your area or you need a virtual presenter, shoot me a message on twitter or an email at bball@pragmaticworks.com  I’m always happy to help.


ONE MORE THING



“So Balls”, you say, “You’ve said Thank You, anything else?”

Why Yes Dear Reader!  Yes there is one more thing, actually 4 more things.  I got something big that I cannot share quite yet.  In celebration of the community and the influence you’ve had on my life I want to give something back.

So in October I’m going to blog a community script a week.  These will be scripts that people have asked for, as I’ve presented that I never found the time to get out there, plus a couple new ones.  One a week leading up to the PASS Summit in November.

As Always Dear Reader, Thanks for stopping by.

Thanks,


Brad

Friday, September 12, 2014

Professional Microsoft SQL Server 2014 Administration

Hello Dear Reader!  Last September I was approached with a tremendous opportunity to become the Managing Author for the Professional Microsoft SQL Server 2014 book by Wrox.  We worked throughout the CTP phase and solidified the book after RTM.  By the end of July all the pages were in, all the chapters proofed, and we all had a collective sigh of relief.

I was joined in this book by Steven Wort, Ross LoForte, Chad Churchwell (@chadchurchwell | blog), and Jorge Segarra (@SQLChicken | blog) from Microsoft and Adam Jorgensen (@ajbigdata | blog), Brian Knight (@BrianKnight), Kim Hathaway (@sqlkimh), Roger Wolter (@rwolter50 | blog), Dan Clark, and Kathy Vick (@MSKathyV | blog) from Pragmatic Works.

Tech reviewing the book we had Kathi Kellenberger (@auntKathi ), Jason Strate (@StrateSQL | blog), and my buddy Daniel Taylor (@DBABulldog | blog).

The initial goal was to just update the book.  It quickly became a project to gut and replace old ideas with newer material, a vision that continued to grow and should make the next release of the Pro Admin series drastically different even from this book.

I couldn't be prouder of this crew.  Roger Wolter is a former PM from Microsoft who helped write Service Broker, and has done some of the largest and most interesting implementations of it in the world.  You will see his handy work on Chapter 6 on Service Broker and Chapter 8 on Securing the Database Instance.

I worked with Jorge very closely before he joined Microsoft.  He is an amazing guy, with a thirst for new knowledge.  Jorge took Chapter 1 on the SQL Server Architecture and 24 on SQL Server Azure Administration and Configuration.

My friend Kim Hathaway and I teamed up Chapter 2 Installation Best Practices and Chapter 3 Upgrading SQL Server 2014 Best Practices.  Dan Clark, .NET coding wiz and all around BI knowledge base, lent his talents to Chapter 7 SQL Server CLR Integration.

Kathy Vick a former Microsoftie with two tours of duty, who has been working with SQL Server since it was still called Sybase prior to 4.2 has Chapter 13 on Performance Tuning T-SQL and Chapter 14 on Indexing your Database.

Bradley Schacht did more than can be mentioned for the BI side of the house in this book.  He wrote Chapter 23 on SQL Server and SharePoint Integration.  Chad is a smart and amazing PFE for Microsoft.  He joined at the last moment us to take over Chapter 16 on Clustering in SQL Server 2014 and provided a quick and solid contribution to help us over the finish line.

Steven Wort, Ross LoForte, Brian, and Adam all produced the work that is consistent with what we have expected over the years.  Superb.

Then there's this guy.  Mr. Balls. I was honored to be asked with working with this gifted crew.  I wrote Chapter 4 on Managing and Troubleshooting the Database Engine, Chapter 9 In-Memory OLTP (Hekaton), Chapter 10 Configuring the Server for Optimal Performance, and Chapter 11 Configuring the Server for Optimal Performance.  Hmmm....I sense a theme.

The link to the book on Amazon is here.  Just wanted to say Thanks again to the team that put this together!

Look Mom & Dad, I'm on a Book!!!

As always Dear Reader Thanks for stopping by.

Thanks,

Brad


Tuesday, September 9, 2014

24 Hours of PASS Preview: Zero to Hero (I'm the Zero)


Hello Dear Reader!  We are already away into the 24 Hours of PASS Summit Preview for 2014!  I don't know if you heard, but I have a pre-con at the PASS Summit!  More precisely SQL MVP Robert Cain(@arcanecode | Blog) had a great idea for a precon and invited SQL MVP/MCM Jason Strate (@stratesql | Blog) and myself to join him.

We decided early on that we have a great opportunity to showcase how we use PowerShell to complete tasks on the Business Intelligence, DBA, and Cloud engagements and pass on real world skills.  We also want to do it in a way that things are useful.  Our goal is to have things we can give you that will allow you to leave the pre-con and use right away.

We also realized with a bunch of smart guys (and me), presenting we had the opportunity to use Humor and a bit of stage acting.  I'll be playing the role of the Zero in our pre con.

"So Balls", you say, "What's a Zero, and how do you play one? (and why are you explaining this)?"


Great questions Dear Reader!  First let's talk about, what's a zero?  I will be pretending that I do not know how to use PowerShell.  That I don't understand how to use the verbiage, variables, function, modular code design, how to import modules, or do a lot of other stuff you need to know.  I will need to learn from the ground up as if I'm a beginner in the class.
Hopefully me at the Summit (without the awkward flying)

I will ask questions, get explanations, and help bring the audience along.  As the day progresses I'll become a hero using concepts and technology to deliver some end to end solutions.  I'll even take over the Azure PowerShell portion at the very end of the day.

Why am I explaining this?  PASS has an international audience and I'm not a professional actor.  I'll do my best but some may miss the humor in what we are presenting.  Robert, Jason, and myself spoke last night and we didn't want anyone to think that I didn't actually know PowerShell or give reason to doubt why I'm participating in the pre-con.

So sit back today, enjoy our session.  I hope you enjoy me being the Zero, and come to the Summit to find out how to be a Hero with me.

But wait there's more!! Today during out session Robert and I will do most of the talking.  Jason will be live answering your PowerShell questions using the #pass24HOP hash tag on twitter, and answering the questions in the room chat on Twitter as well.  This promises to be a fun session, hope to see you there!

Here is the link to our pre-con.   Here is a link to the 24 Hours of PASS website.  Good luck, happy learning, and as always Thanks for stopping by.

Thanks,

Brad

Thursday, September 4, 2014

Why You Should Go to SQL Saturday

SQL Sat Puerto Rico
Hello Dear Reader!  Soon SQL Saturday #318 in Orlando FL will be here.  The SQL Community does a lot of work at SQL Saturday’s, present at them, and help put them on.  When talking about them, one of the most frequent questions I get asked is: “Why should I go to a SQL Saturday?” 


Almost 4 years ago I attended my first SQL Saturday, attending was a last minute decision and one that has changed my life.  I have a real passion for SQL Saturdays, and while results may vary, my simplest answer is “they can be life changing”.  Here’s how I got there.   



Summit 2013 - Denny's awesome Party
The only SQL Event I had ever attended was the first 24 Hours of PASS.  I loved it.  I watched with eager anticipation, this was the first SQL training I’d ever been to.  Every company I’d worked for thus far had balked at sending me to training. 


I desperately wanted training.  When I discovered the 24 Hours of PASS I became a fan, FREE SQL Training on the internet!!! What a concept!  Of course it was to plug the PASS Summit, and if training was a no go you can guess what my chances of ever going to the Summit in 2009 were. ZERO.  This was as close as I could get, but closer than I’d ever been before.


So as the PASS Summit 2010 was gearing up there was another 24 hours of PASS.  I reserved conference rooms at my company, registered for the events, had a router for network connections set up, and I pumped up the “free” training to the other DBA’s. I worked for two days from there as the sessions were streamed. 
Jorge at SQL Sat Jacksonville


While talking with the other DBA’s that when the magic moment happened.  My friend Greg and my buddy Dan Taylor (@DBABulldog | Blog) said, “If you like the 24 Hours of PASS you’ll love SQL Saturday”.  What’s a SQL Saturday I asked?

A free event where Consultants, MVP’s, and SQL Community members set up tracks and have free presentations all day long.  I was stunned.  It was like I was a child hearing about “FREE CANDY” given out at Halloween for the first time.  Where was this? When was this? This weekend!  In Orlando!  I can do that!  I had to pay $5 for my lunch, but other than that no cost.  I almost felt like I was getting away with something.  As if someone would stop me at the gate and say, “Sorry Sir, you get to sit in the lobby only paying attendees get to see the sessions.”  It didn’t happen.  I got in just fine.


Tom Larock kicking
off SQL Sat OC 
It was everything I’d wanted.  Sessions on Wait Stats, PBM, CMS, Indexing, two deep dives one on partitioning and another on CPU!  I met DBA’s that understood my pains, issues with hardware stressed beyond capacity, aging relic’s with critical LOB apps that we couldn’t get new hardware for, 3rd party vendors with bad indexes, bad code, and little support.  People trying to find a way to survive with NEW insights and experiences sharing openly and free.  People who understood my issues without having to pretend that they actually understood.   


I met Tom Larock (@SQLRockstar | Blog), Argenis Fernandez (@DBArgenis | Blog), Jorge Segarra (@SQLChicken | Blog), Patrick LeBlanc (@PatrickDBA | Blog), and 1 half of my future law firm of Biguns and Balls Jack Corbett (@Unclebiguns | Blog).  There were more.  Lot’s more.  That could take me pages more.  The point is I made it and it was like coming home.


Jason and Steve at SQL Live 360 

That day started it off.  Without Kendal Van Dyke (@SQLDBA | Blog), Andy Warren (@SQLAndy | Blog), Karla Landrum (@KarlaKay22 | Blog), and Jack putting on this SQL Saturday 49 I’m not here today.  

I submitted to be a speaker at the next event I could, I started a blog (you may be familiar with this one), got on Linked-In, and even got a Twitter account.  That event, that one SQL Saturday lead me to presenting at 7 more the next year.  


Getting a spot in the 2nd chance track at SQL Rally, getting voted in by the community at the PASS Summit 2011, and being invited to be on the planning committee for SQL Saturday Orlando #85 the following year after I’d first attended.

Summit 2013 with the guys

At the end of SQL Saturday Orlando every year we stand up top of a stair case and throw out t-shirts and give away raffle items.  In 2012 Andy Warren looked at me while we were tossing out t-shirts and asked “How’s the view from up here?”  I grinned imagining about 50 different replies, but in the end it was a simple “amazing” that left my mouth.


My second job after college took me to Virginia.   A friend had recommended me for the position.  He met me at the airport, as I flew in for my interview, so I would see a friendly face.  I thanked him.  He told me “I showed you the door, you have to walk through it”.  He was right.  I did.  That job taught me a lot and led me new places.


SQL Saturday was the same way.  It showed me the door.  Walking through it brought me new acquaintances, some new friends, new ideas, to SSUG’s, the PASS Summit, Dev Connection in Las Vegas, SQL Live 360 in Orlando, two books, and a pretty awesome job at Pragmatic Works.
Summit 2013 - Karaoke at the Pragmatic Works Party
This is just the journey so far.  Funny how close yet far away 2009 feels. There is always the question, Dear Reader, of where tomorrow will take you.  We all start somewhere.  Everyone has to have the first time.  That brings us back to the question. 


Why should you go to SQL Saturday?  Because they can be life changing.  Hope to see you at one soon, click here to register for Orlando.

As always, Thanks for stopping by.

Thanks,


Brad

Thursday, June 26, 2014

Deck & Demo's Live & Thank You AZSSUG & OPASS!

Hello Dear Reader!  Just a quick post to say Thank You to the Arizona SQL Server User Group and to my home town nortth Orlando user group OPASS!

This week I was very lucky to present Inside the Query Optimizer to the AZ SSUG and Performance Tuning, NOW! to OPASS.  I had promised to get my decks and demo's live and I wanted to do that.

Click Here for the Deck for Inside the Query Optimizer, and here for Demo's.

Click Here for the Deck for Performance Tuning, NOW!, and here for Demo's.

AZ to FL and back again.  I believe next week I'll just rest :).

Seriously Thank you to the wonderful SSUG leaders, Matt & Amy in AZ, and Shawn, Karla, and Rodney in my home town.

Without you this isn't possible!  And Dear Attendee's Thank You, if you have any questions please feel free to shoot me an email.

As always Thanks for stopping by.

Thanks,

Brad

It's not Business, It's Personal

Hello Dear Reader.  I find myself at this late hour unable to sleep.  Yesterday the slate of speakers for the PASS Summit was announced.  What should have been a happy moment was quickly darkened by the words of people that I know well within the SQL Server Community.

I would ask the MVP's and others in the SQL Server Community; Did you plan on intimidating new speakers yesterday?  

Because you did.  I have a few first time speaker that I've been working with. Not first time PASS Speakers, first time period.  Encouraging and mentoring them to get involved in SSUG's and SQL Saturday's.  At the beginning of the year I told one in particular that we should work on a plan so she would have the experience to submit to the PASS Summit this year.

Her first words to me when we spoke yesterday?  "Thank God I didn't submit, because the MVP's would be talking smack about me right now!"

Wonderful work growing the next generation of SQL Server Speakers.  Is this what community has become?

It seems every year with the speaker selection process the people I would normally count on as pillars in our community take the opportunity to bash the process.

If the process is broken so be it.  We should discuss that.  WE SHOULD NOT LEVEL PERSONAL ATTACKS.

That is ill befitting of the responsibility that we as speakers have in the community.

I remember what it was like to be a simple DBA that looked at speakers at conferences with awe and wonder.  Instead of being a community where we encourage new speakers, what.... we encourage new speakers as long as they all are from different companies?

By attacking Pragmatic Works and suggesting that the speakers did anything less than earn their spots, you demean the volunteers, my co-workers, anyone who works for my company, and you demean me.

There were a couple issues that occurred yesterday that compounded one another.  The presentation that occurred during the 24 Hours of PASS that I moderated, see Brent's blog.

Then Kendal a former board member who had knowledge of the process.  Who praised the volunteers and the way the process works, as noted by absentee presenters who didn't receive sessions this year how a speakers name did not guarantee a spot.  He instead implied that something improper had happened.  Here's his blog.  Until he accused me of having no integrity and not deserving my sessions it was a pretty interesting read, click here.

Here's the part to pay attention to: 
  • "3 Preconference sessions by Pragmatic Works employees are on the list, including one delivered by PASS Executive Vice President, Finance & Governance Adam Jorgensen who is also President and Managing Partner of Pragmatic Works. I know a lot of folks that work at Pragmatic and they're good at what they do, but having 3 precon sessions (where presenters usually make good money from the sales) selected for the same company as one of PASS's execs...smells. I'd like to give PASS the benefit of doubt on this one, but I'll it's very hard to ignore, even if Adam wasn't one of the presenters."

HOW DO YOU HANDLE IT?


First I reacted in his comment sections.  I was mad and I called what he wrote Bullshit.  I stand by that.


I've reached out to Kendal.  I hope to talk to him soon.  This shouldn't be a conversation on Twitter or over the blog-o-sphere.  I know him, I consider him a friend, and this accusation is beneath him and regardless of the intention it is deeply personal to me.

I reached out to Brent.  Brent and I DM'ed very very ridiculously late at night.  Brent I can't thank you enough for taking the time to reply.  I hope to talk to you soon!

I completely understand Brent with the 24 HOP.  The reason I reached out to him was because of his comment on Kendal's blog.

In the comment's Brent had this reply:



We discussed 2 different issues over DM.  One is the transparency of the process the other was the selection.  Giving vendors preferential treatment, and that this wasn’t the case here.  Brent didn't have an issue with the Pragmatic Works folks having sessions and understood the level of community involvement that we have.

His issue was transparency.  I was really glad we could discuss this, in-digital-person.  Concerns like that should be communicated amongst friends so false insults do not fly.  I consider Brent a friend, it meant a lot that he made himself so readily available to chat.  It is what I would hope for in a friend.

This is how we should handle these things.  If you have a concern with something I'm doing, reach out to me.  

I remember well what it was like to be a simple DBA that looked at speakers at conferences with awe and wonder.  Seeing people like Brian Kelly and Andy Warren, both of whom I know, comment on this blog and not try to reign in the personal attacks is disheartening.  Andy’s were not inflammatory, but they also did nothing to suggest I or my other co-workers were above the board.

I understand I haven't been at this as long as you guys.  I'm not an MVP.  I've only been speaking the last couple years.  

As a somewhat new member to all of this, I would ask the people that are supposed to be respected Sr. members of the community to conduct themselves with a little more Integrity.

If you know me.  Yet you would say these type of things about me, how does that make new people feel looking at our community from the outside.  Do you believe it makes them want to volunteer and participate in it?


INTEGRITY

My father taught me as a child you only have your integrity once and you should not waste it.  This means something to me.  When I invest in something, I invest wholeheartedly.  I cannot love with half my heart.  I cannot commit to something while sitting on the fence. If I did not earn something then I do not want it.

The greatest things that we get in life are the things we struggle to achieve.  It is only through the labor of the struggle that the fruits of success are realized.

This year I have presented 26 times.  From New Hampshire, to Boston, to Puerto Rico, to Orange County CA, to Denver, to Phoenix, to Atlanta, to Portland, Tampa, Orlando, and more.  I have done deep dives, pre-con's, 1 day sessions, 2 day sessions, 5 day sessions, and this doesn't even include customer presentations.  This is all community.

I have evangelized to user groups and individuals about how they should get involved, present, participate.  I discuss with them how it will help them and help their career.

I would once again point to my co-worker who has not yet delivered their first SQL Community presentation said to me "And you wonder why new people feel intimidated.  I would hate it if they were talking about me".


IT’S NOT BUSINESS IT’S PERSONAL

We've all heard the phrase before "it's not personal its business".  It is typically used as the justification for doing some pretty crappy stuff.

There are some people out there that believe participating in the SQL Community is all about marketing.  That it's business.  Being out there and participating gets them business.  If it is business to them, fine.  It's not to me.  To me the SQL Community is personal.

Right now I am away from home.  I'm away from my kids.  I presented at a user group in AZ last night.  I didn't get paid for it, I didn't get "new" business leads.  As a matter of fact I spent 15 minutes of my 1 hour presentation encouraging people to volunteer.

Why?  Because I love this community.  I have received a lot in my life from the SQL Community.  I have a job I love, I've made new friends, and I’ve traveled to new places, volunteered in ways I never imagined possible.

I truly believe that within every person there is a story waiting to be told that we all want to hear.  It could be brought to life during a presentation on Professional Development, a passionate Deep Dive, or a harrowing tale of lessons learned in the trenches.  When I present I tell people there is a story in each of them that I would love to hear.  They just need to have the faith in themselves to present and the possibilities of what they can do from there are endless.

This isn't business to me.  I would never invest this much time into something I didn't love.  It's personal.

Suggesting that I submitted to the same process as anyone else and received preferential treatment isn't business.  It's personal.  And it's wrong.

I hope from here we can clear the air.  If anyone would like to talk to me about this I’m happy to.  From here on out though please separate criticism of the processes from those that are here for all the right reasons.

As always Dear Reader, Thanks for stopping by.

Thanks,

Brad


Thursday, May 22, 2014

Introducing What_To_Compress V2

Hello Dear Reader!  I'm about 32,000 feet in the air leaving St. Louis after a great Performance Tuning Workshop for Pragmatic Works.  While there Jason Strate (@StrateSQL | Blog) and I had a two day class, and I was able meet some great people and speak with the St Louis SSUG about the new features in SQL Server 2014.  It was a good trip, but I'm happy to be on the way home.

"So Balls", you say, "The blog title is Introducing What_To_Compress, what is that?"

Great question Dear Reader!  For quite a few years I've been presenting, blogging, and writing about Compression.  On the Resource Page I have a list of those presentations as well as the scripts I use.  I'd been thinking about putting together a script to give compression recommendations since I first did my deep dive at the PASS Summit on the subject back in 2011.

About a year ago I did just that.  I've tossed this script around to some co-workers, friends, SQL People, and MVP's and asked for feedback.  I'm finally at the point that I'm ready to release the first version.  So without further ado, here it is.

WHAT_TO_COMPRESS V2

First off this is not a stored procedure like Jason's sp_IndexAnalysis script.  I'll probably make it dynamic in the future, but that is a next release.  If you want to jump straight to the download click here to get What_To_CompressV2.sql. 


This takes the Best Practices that I've been preaching about and applies it to telling you what to compress.  It looks at every Index, every Table, by partition, and gathers the In_Row_Data, Row_OverFlow_Data, and Lob_Data counts.  It tells you the Percentage of COMPRESSIBLE and UNCOMPRESSIBLE data per table, what the Scan and Update patterns are for your tables & Indexes, and makes a recommendation on the level of compression you should use.

It also gives you my detailed reasoning behind the recommendation that I've given you.  For example:

"The Percentage of Scan and Seek operations is 0.00% and the average amount of Update operations is 0.00%.  Data that can be compressed makes up 100.00% of this table.  There is no workload for the current table.  Please wait for the usage statistics to become representative of a typical work load.  If this is a typical work load, this is an excellent candidate for Page Compression.  Test with sp_estimate_data_compression_savings.  Remember that it takes 5% of the tables size and moves it to tempDB.  Validate that you have enough room on your server to perform this operation before attempting."

"The Percentage of Scan and Seek operations is 0.60% and the average amount of Update operations is 99.00%.  Data that can be compressed makes up 100.00% of this table.  However Based on the workload of this server this table should not be compressed.  If you apply Row or Page Compression it will have a higher CPU cost because of the low Seek and Scan Ratio.  Test with sp_estimate_data_compression_savings.  Remember that it takes 5% of the tables size and moves it to tempDB.  Validate that you have enough room on your server to perform this operation before attempting."

"The amount of Uncompressible data in this table does not make it a match for compression.  Data that can be compressed makes up 17.12% of this table.  While data that cannot be compressed makes up 82.88% of this table."

There is one parameter within the script that allows you to set the number of Pages in a table that you want to consider for compression.  By default the number is set at 8 pages, but you can increase that if you would like.

"So Balls", you say, "This sounds great but isn't their a built in stored procedure that can estimate size compression already in SQL Server?"

Yes, there is Dear Reader.  The built in stored procedure has a few things that we should discuss.

SP_ESTIMATE_DATA_COMPRESSION_SAVINGS


The first thing you should know before you use a tool is how it works, and what it does.  You wouldn't normally use a nail gun to open a beer.  You could, but it's not the right tool for the job.

The way sp_estimate_data_compression_savings works is that it takes the table that you specify, moves 5% of it into tempdb applies the compression you specify, and then extrapolates that estimate out over the size of your entire table.  It does a nice job of taking fragmentation into account in order not to give you an inaccurate information.  The key phrase that defines my root concern is, *it takes 5% of your table and moves into tempdb*.  For small tables this probably isn't an issue.  For VLDBs that have very large tables, this is a pretty big deal.

There are some well meaning community scripts available on blogs and codeplex that take sp_estimate_data_compression_savings and wrap it in a cursor to estimate the space savings for each table.  They do this estimation for Row and Page compression, for every table in your database.

This step tells us the space savings, but their are other settings we should take into account.  We should look at those before we begin estimating compression savings across the board.  What should we look at first?


  1. Our Allocation Units.  Only IN_ROW_DATA compresses.  Tables with a lot of LOB data types may not see any advantage in compression.  Even if they slightly compress the over head on those tables can make queries less efficient.
  2. Do we read from our tables?  If we do a lot of scans, seeks, and lookups from our tables this could indicate whether Page or Row compression would give us the best performance.
  3. Do we update our tables often?  Notice I said update.  Not delete, not insert, update.  When we apply compression we remove all the extra white space from fixed length data making all data types, that can use compression, in affect variable length fields.  This can lead to increased Page Splits, specifically mid-Page Splits, aka LOP_DELETE_SPLITs.  For more on Page Splits and mid-Page Splits see my blog, How to Find Bad Page Splits.
  4. SP_ESTIMATE_DATA_COMPRESSION_SAVINGS doesn't look at any of these.  Why estimate all the different compression types without first identifying your table that are proper candidates and looking at what the overall size of those tables are.
  5. You have to have Enterprise Edition to run sp_estimate_data_compression_savings.  You can run What_To_Compress on Standard Edition.


I wouldn't avoid using sp_estimate_data_compression_savings.  However, it wouldn't be the first thing that I run when looking at what to compress.

FEEDBACK

Okay Dear Reader, I need your help.  Run this.  Let me know what you think, what it's missing, anything you can think of.  I'll try to get a v3 out in the next couple months based on feedback.  Most of all if it works, drop me a line!  I love hearing success stories on compression.  Send your emails to: bball@pragmaticworks.com.  And as always Dear Reader, Thank you for stopping by.


Thanks,

Brad



Wednesday, April 30, 2014

Decks & Demos Live

Hello Dear Reader!  Just a quick update.  I've been traveling a lot and I'm behind in posting some Decks & Demos.  Here are my decks from the Inside the Query Optimizer talk that I did recently at the Denver SSUG and also at SQL Saturday 283 Puerto Rico.  Click here for the Slide Deck and Click Here for the Demo Scripts!  They are also posted on the Resource Page.

Thank you so much to those who attended and the Organizers for having me!!

Thanks Again,

Brad

Friday, February 21, 2014

Up Coming Speaking Events

Hello Dear Reader!  We are 2 months into 2014 and the New Year is off to a busy start. This year already I've spoken to 3 User Groups and had 1 Workshop on Performance Tuning. This is only the beginning.  Between  now and May I've got 12 more presentations.  While I'm out and about I hope that I will get to see and meet up with a lot of SQL Family.

First Up Tampa!

SQL Saturday #273 is just around the corner.  I am one of a whole host of other great SQL Server Experts that will be on hand for the free training and free learning.  Stop by!  

February 22nd
SQL Saturday Tampa #273
Trimming Indexes Getting Your Database In Shape! (Click the link to go sign up)

Do you have the PASS Summit Blues?  We are 11 months away from the next great gathering of SQL Minds.  During this time of the year you watch your DVD's/Downloads/Streaming content from last.  You look at the presentations at the SQL Saturday's and start to wonder what will be planned for next year.  You miss your friends, you miss the atmosphere, you miss the Summit.

Well Pragmatic Works has the cure for the PASS Summit Blues.  All this month we have been doing our presentations from last year for Free, as part of our Training on the T's.  Next week you will get a chance to see my presentation from the Summit, Plus a little extra content as I take up not ONE, but TWO time slots.

Hope to see you there!

February 25th
Pragmatic Works Training on the T's
SQL Internals Deep Dive Part 1 (Click the link to go sign up)


February 27th
Pragmatic Works Training on the T's
SQL Internals Deep Dive Part 2  (Click the link to go sign up)

This March SQL Server MVP Jorge Segarra (@SQLChicken | Blog) and myself take our two man show on the road.  We did Tampa last month, next up Reston VA.  I'm hoping to catch up with some old friend's while in VA, and I'm sure you want to miss the two of us in action.  We still have seats, but they are going fast!  (Click the link to go sign up)

March 18th - 20th
Pragmatic Works
Performance Tuning Workshop  (Click the link to go sign up)
Reston, VA

Last year one of my favorite all time memories was SQL Saturday Boston.  I'd never been to Boston when I submitted and I'd always wanted to go.  Little did I realize that I would end up back in Boston 5 more times before the end of 2013.  I can't wait to go back and join the amazing speaker line up that Mike Hilwig(@MikeHilwig|Blog) has put together!

March 29th
SQL Saturday Boston #262
Trimming Your Indexes Getting Your Database In Shape  (Click the link to go sign up)

I'm in Portland Oregon for the first time ever.  As if that wasn't enough reason to show up, I'm presenting with none other than my colleague Roger Wolter(@RWolter50 | Blog).  Roger is a former PM for SQL Server for Microsoft.  He has forgotten more about computer science that I've ever known.  He's a nice guy and he's flat out brilliant.  He has worked on some of the largest and most complicated Service Broker installations in the world, he has vast in the field experience with SQL Server.

Roger and I are teaching the Performance Tuning Workshop not once, but twice this year.  I hope to see you there, because this Dear Reader is going to be a lot of fun.


April 8th
Pragmatic Works
Performance Tuning Workshop  (Click the link to go sign up)
Portland, OR

My good friends Jose Rivera(@SQLConqueror|Blog) and Guillero Caicedo(@SQLTitan|Blog) invited SQL MVP Jorge Segarra and myself to present a full day Pre-Con for SQL Saturday Puerto Rico.  I've gotten to know Jose and Guillero quite well from different SQL Saturday's and the PASS Summit.  This is a great honor as it will mark my 1st ever Pre-Con for a SQL Saturday!

Jorge and I will be pulling out all the stops to give you a full day of information and Performance Tuning knowledge that you can use.  I hope to see you there!

April 11th
SQL Saturday Puerto Rico #283  (Click the link to go sign up)
Full Day Performance Tuning Workshop

April 12th
SQL Saturday
Puerto Rico #283
TBD

Roger Wolter and I tackle SQL Server one more time in the Mile High City.  Denver is a beautiful town and I cannot wait to come out and visit will all the #SQLFamily out there.  We will also be presenting at the SQL Server User Group on the 29th.


April 29th-May 1st
Pragmatic Works 
Performance Tuning Workshop (Click the link to go sign up)
Denver, CO

April 29th 
Denver Colorado SSUG
TBD

Jorge and I will be taking our two man show over to SQL Saturday #298 Jacksonville.  When Devin Knight(@Knight_Devin | Blog) called me up and asked I was stoked!  This will be the 4th time that Jorge and I have presented together this year and I can't wait!  Come out and join us for some learning and fun!


May 9th
SQL Saturday Jacksonville #298
SQL Server Performance Tuning and Internals  (Click the link to go sign up)

May 10th
SQL Saturday Jacksonville #298
TBD

As you can see Dear Reader this year will be busy. There are more plans right now that we are working on that go all the way out to the end of the year.  More on that in the next couple of months!

As Always, Thanks for stopping by.

Thanks,

Brad