What gets measured, gets done

One of SQL Cruise sessions that I attended last week (I will have separate post for summary of the whole event) leave us with some homework to do.   We have to pick 12 books to read for a year that can enhance our career, read it once a month and post a review about it.   Buck Woody (blog | twitter) already post his, and even though I wasn’t tag by him – I’m going to publicly list mine and link back to his post and even tag a few cruisers so they can put their list as well

Here’s my list, in no particular order:

  1. First, Break All the Rules: What the World’s Greatest Managers Do Differently As someone that is new in a management role, I am facing challenge everyday.  This books will teach me a trick or two for being, not just a good manager, but a great one
  2. Peopleware: Productive Projects and Teams   (Second Edition) This book talk about what define a success as a company, it’s not the technology, it’s the people.   This book also highly recommended by certain people that’s been in the management for a while
  3. IT’s hidden face: Everything you always wanted to know about Information Technology. A look behind the scenes Since my team is part of IT, I’m very intrigue on what this book is going to tell me.
  4. Here Comes Everybody: The Power of Organizing Without Organizations Internet sociology always interest me.   I hear a lot of good thing about this book and been wanting to read it for a while
  5. The Tipping Point: How Little Things Can Make a Big Difference Another book about social phenomena.   My good friend recommended this book to me, and I’m going to check it out
  6. The Shallows: What the Internet Is Doing to Our Brains Internet is always fascinating to me and it impact our lives more than we want to admit.
  7. Adventures of an IT Leader I love to read this book since even though I’m not an IT leader just yet, I’m starting a journey to get there.
  8. The Little Black Book Of Leadership The title said it all.   Every leader need a black book, hot sheet or just a guidance.
  9. Grown Up Digital: How the Net Generation is Changing Your World Another internet sociology book.   Internet is changing our world and for the next generation, the world will look very different then
  10. Growing Software: Proven Strategies for Managing Software Engineers I’m not managing software engineers, but I think the concept is the same.   This book is on the recommended reading list by my former CTO
  11. Joel on Software: And on Diverse and Occasionally Related Matters That Will Prove of Interest to Software Developers, Designers, and Managers, and to Those Who, Whether by Good Fortune or Ill Luck, Work with Them in Some Capacity What can I say – I love his blog and this book is a collection of articles he ever written
  12. More Joel on Software: Further Thoughts on  Diverse and Occasionally Related Matters That Will Prove of Interest to Software Developers, Designers, … or Ill Luck, Work with Them in Some Capacity Again, just like the previous book – his blog is always full with fantastic insights and articles.

There it is.  It’s out there.   I’m ordering my first one today and will post a review by end of the month.   I’m quoting Buck here by saying ‘I reserve the right to change this list as I learn more‘.

I’m also going to tag a few cruisers here, so they can get their list going.

  1. Christina Leo (blog | twitter)
  2. Kendra Little (blog | twitter)
  3. Ryan Malcom (blog | twitter)
  4. Noel McKinney (blog | twitter)

So cruisers, you have been tag.  You’re it!

Share

#SQLHike – SQL Fun before Portland SQL Saturday

Karen Lopez (blog | twitter) started this event throwing an idea of having a bunch of SQL peeps to run a half-marathon together (or walk it) at Portland Marathon on Sunday October 9, 2011, which is a day after SQL Saturday Portland.   I’m not a runner, even though somehow I was dared talked into registering to the event and I know it will be a lot of fun and we can just walk it.   It’s an 8 hours event, so just like Karen said – you can walk it, run it, take a nap, do a little shopping and still finish the course  :)

Snow Lake Trail

Snow Lake - One of the famous trail around

That’s a weekend activity.  There is still the Monday prior to SQL PASS that has no activity prior to the conference itself if you are not attending the pre-conference, so being a local and avid outdoor enthusiast, as well as a hiker – I would like to propose… a SQL Hike!  Well, you can call it whatever you want, but I would love to organize a hike to a local trail that is not too far, not too strenuous and will have an awesome view.   We are very blessed here at Pacific Northwest since there’s gazillion trails around.   We can do a little walking, a little picnic at the top/end, have a good outdoor’sy Pacific Northwest Experience, a little bonding, good work out and a good beverages and food for post-hike ot the chosen-joint afterwards.

I know October it still way away, and I probably need to re-post this later, but want to just get an idea if this is something that you guys are interested.   If so, leave me a comment and I’ll start thinking about the trail and location.

October will be a FUN month!

Share

I’ve moved!

I've moved!

I've moved!

After attending Brent Ozar (Blog|Twitter) Free-Conference session’s at Chicago about branding, blogging and presenting, I decided to change the look of my blog and move my domain to  http://yannirobel.com.   Some of you probably already thought that’s what my blog URL was, but it wasn’t,  It used to be http://sqlscribbles.com which will be up for a while for all the archive that were link to it but no new content will be added there.

I’ve made a commitment to write more, to *gulp* submit abstract this year to present and to give back more to this wonderful community that like an extension to a family to me.  I met wonderful, intelligent people that some of them are become a really good friend for life through this community.

So if you are one of the odd one out there who I am lucky enough to get the feed out of my blog via RSS or actually bookmark the link of my blog, please do change it to my new URL.

Here’s to a new beginning!

Share

On the 7th day of SQL…

Gaston - arrogant dude from Beauty and the Beast. Because I can

Following in Tim Ford’s (blog|twitter) footsteps, I also went non-technical with my favorite post for this awesome twelve days of SQL, which is one of Brent Ozar’s (blog|twitter) collection of bad great ideas that I’m very honored to be a part of.     I struggled to pick a favorite for this series since, well, there are many of them and it’s hard for me to just pick one,  but I hold this particular near and dear to my heart since this is a simple fact that we all know, but sometimes overlook (me included).

This post serves to remind me that, as a Production DBA, I need to be aware of everything that touches my servers and databases.   I’m not talking about fancy Change Management process (that could be a separate post on its own) but it’s the awareness that other groups sometimes don’t have, or hey, sometimes we as a DBAs forget too.

I’m talking to maintain a centralized log about every change that happens on the server.

 

How many times have we modified an index on the fly and forgot to document that change?   It’s not really a code change, is it?   Well, being a Production DBA on a very busy server, every change matter.    On that day I noticed an anomaly in our monitoring software, a spike where there shouldn’t be one.  Red letters that said something had changed and I needed to look to see what it was.  It was not impacting customers, but it could if I let it go.  That is why I set my monitoring thresholds so I know before they do that something needs attention.  Anyway, rather than go through a thorough diagnostics, log analysis, and alerting the team to start culling through code changes, I simply popped open list of the changes that had been made to the server and even though it wasn’t in red and flashing, the root cause popped right out and sure enough, if we didn’t take action, customers would know.  The fact I had a running log of even the subtle changes made to the server allowed me to quickly deploy a fix to a couple indexes and had the devs increase our cache time and voila, the site sailed through a record Thanksgiving traffic with 100% availability and response times that may make others jealous.

Don’t get me wrong, this is not just a need to keep track of the things we DBA’s and our developers do, we also need to be aware of other teams small tweaks on the server or network, such as, oh I don’t know, replacing the network card or swapping the processor, or something silly like that.  Even subtle difference like changing the network cable or plugging it into a different switch port can have huge impacts and I need to know!   For the network or sysadmin teams, that might be nothing, but that could have huge impact to our DB performance if we are not aware of it.  Ever try and troubleshoot a port speed mismatch without the support of the netadmin?  Or that pesky (but well intentioned) SAN admin who thinks you can do just fine with a RAID5 instead of a RAID10?  Not to mention tools are almost designed so that notification is an afterthought, that SAN admin can do the whole thing on-line without your knowledge and there is no down time, huh.  Did you ever think the marketing hype of “no down time” would be abused?  How many times have you heard an admin claim, “no one will know” only to hear help desk phones start ringing without warning?  Subtle changes can make a big difference in the big picture, and don’t even get me started on load testing in the test environment.  Anyway…

My favorite post is written by Jonathan Kehayias (blog|twitter).  He is a co-author of this awesome book, Professional SQL Server 2008 Internals and Troubleshooting (every SQL Professional should have this book - and no, Brent didn’t make me say this).  I have gotten to know him during SQL PASS 2010 when he dropped by to my office with Brent and whipped out some fancy extended events code to help me out identify some of the performance issue that I experienced.   He’s a well respected member of the SQL Community, an intelligent fella’ , MVP and I would love to just pick his brain anytime I can.

 

Without further ado, here’s the post:

http://sqlblog.com/blogs/jonathan_kehayias/archive/2010/08/03/there-is-no-such-thing-as-a-small-change-to-a-production-database.aspx

Coming next, a dear friend of mine who I met in person during another of Brent’s bad idea, SQL Cruise.   Karen Lopez (blog|twitter) is incredibly talented and has an ocean of knowledge about database design/architecture.   She’s very active in the community, a renowned speaker, an icon for Women in IT and an awesome person to hang out with (even at a character dining in Disney.)     Please check on her blog tomorrow to see what her favorite post of the year.

Enjoy

Share

I’m still around

Wow.  Where did the time go?  It’s almost the end of September and I haven’t posted anything technical since, um, eon ago.   This blog is intended to be my technical blog, sharing some of the cool SQL fun stuff that I run across or have to deal with, which by the way, I have tons of those but for some reason I have a hard time translating it into a blog post.   So they are all safely written on my little spiral notebook (yes, I’m that old fashioned that I still write on spiral notebook for stuff using my pen) and none of them are out here for the public to see.

I know I need to get better on this.   Share my experiences, my SQL-fun issues and resolutions, heck or maybe just regularly write about my day.   But then again, I wonder who will read my blog if I just write about my day at work.   Nothing really exciting compares with those awesome blog out there that I religiously read every day.

Then it suddenly hit me.

There is always someone that can get a use out of my post.   That someone might just be my wonderful husband and for him to get an idea about my day before he even asks me about it, but I should not have to worry about that.    I have an awesome job and I work with a great team and great managers.   I have plenty to share.

As most of you already know, I manage a small DBA team at a very cool company at Seattle.   Our peak season is around the holiday, mostly Thanksgiving and Christmas and apparently this year, we are about to break our own records.

So my teams focus for the next few months is only one thing.   Performance tuning.   Anything that we can do to improve when it comes to the web site performance is a prime candidate for a makeover.    This is one chance that I can actually ask my developer team to re-write some of the code instead of just doing index tuning.

To start the process, I ran profiler for 24 hours, filtering the duration for anything that runs equal to or greater than 250ms.   I used the tuning TSQL template but I also added a few columns that I think are necessary.   Then I imported the trace files to an application called ClearTrace.   This application is pretty awesome since it parses your trace files and aggregates them based on CPU, Reads, Writes, Duration and also calculates the averages for you.   ClearTrace also parses the SQLText and only gives you the code names and gives you sample parameters if you need them for testing.

Then the fun process begins.   As a DBA, I want to work on the top 50 of all those bad code strings (the ones that have long duration, high CPU, and/or high reads) but I have limited time and limited resources, so I have to work closely with my development team to understand what of each piece of code is doing, and how the code is being called, and so on and so on.

This whole process is not new to me as a Senior DBA, but it sure new to me as the person that now manages the DBA team.   I now have to not only work with the development team, but also our QA team, and our PMO (Project Management Office) to coordinate the effort and cherry pick the ‘bad code’ that we are going to spend resources optimizing.    My DBA side is screaming what do you mean we are leaving bad code here and not doing anything about it’ but in my current role as the one that manages the team and has to play politic nice with others, I  totally understand the business decision behind it.

Our development cycle and change management process requires more resources be involved other than our own team when we modified our legacy code and as much as I feel like I can rewrite the whole list, I know that I can’t play cowgirl DBA anymore like I did years ago.   I need resources from other teams and priorities have to be set, and as a result, some of the stuff will get shuffled to the bottom of the list.   There’s process in place, there’s procedures, checks and balances are in place for making sure that we don’t have technical debt or hotfixes that require more hotfixes.

Another of light bulb moment for me.   We DBA’s want to fix the world to be a better place our legacy database code and optimize it so it performs at lightning speed, but sometimes we have to be able to triage our code and leave the lightly injured ones alone and unattended for the moment.

Let me know if you have similar experience!

Share