Are You Wasting Energy?

Teamsuccess.jpgOften times we as leaders within our respective shops tend to waste our time focusing on the wrong things. Think about that for a moment and think about the team that you are on or that you are leading. I’ve seen it happen among some very talented teams where we (yes I include myself in this) are not tapping into the expertise of our teams bringing for the most potential out of each team member.

Over the course of time I’ve come across some things that have helped me in a leadership role that may help some other data professionals out there who are starting out or maybe even a season vet.

Want Results?

  • Eliminate those distractions – you have to define out what matters most. What are you or the team doing that may prevent you from focusing on the real tasks at hand.
  • Get Real – face it; there will be times when those awkward conversations are needed. Hold each other accountable if you are on a team, and if you are a lone DBA which some of my friends out there are then build a base in the community of trusted advisors. Bounce some ideas off them.
  • Point out what is not working – this may seem simple enough, but believe me it’s not always that easy to overcome it. Constantly review processes and procedures to make sure you are thriving forward; not drifting backward.
  • Set some goals – do this with your team, individuals, or yourself – put the emphasis on with.

Change is hard; change is never easy. That’s where coaching comes in; you have to stick with it. Trust me; if it were easy then everyone would be doing it.

What Are Some Ways To Define Success?

  • Respect and leverage – I’ve personally found that when teams respect each other and can strategically leverage each persons talents then watch out. You are about to witness something special take place.
  • Management has focus – as I typed this I had to take a moment and reflect on the team I’m blessed to lead. I’m I positively focused on leading the group – I do believe I have their best interest but that doesn’t mean “we” won’t make mistakes. I include we, cause dear reader, you may be in this category with me.
  • Does your team matter – your colleagues and teammates; the ones you get in the trenches with on a daily basis should feel like they matter.
  • Ability to be innovative – one of the key success points I’ve experienced is turning a team loose and just say, “be innovative”. End of day I got your back, and guess what you will fail. Let me repeat myself; you will fail. However, if you are not being innovative or your team or colleagues are scared to try anything new from fear of backlash then are you truly pushing forward?
  • Good enough isn’t really good enough – a saying that has stuck with me my whole life is a simple one. Somewhere someone is practicing getting better, and when you meet that person one on one will you rise to the challenge. It is okay to set the bar high and it is also okay to keep working hard toward and end goal. On the flip side to that it is also okay to learn from your mistakes and let that be the fuel to the fire to keep getting after it.

Summary

I challenge you to embrace your aspirations today. If you lead a team of data professionals then take a long hard look at how you are leading your group. Let innovation; collaboration, and engagement with others turn into respect, leveraging talent, and building on success. If we are bragging or dwelling on the past; then that may mean we are not doing enough in the present.

How’s that fuel in the fire; are you passionate about succeeding? These are just some thoughts in my own mind that I’ve jotted down over the years that may help you along your journey as a data professional. Time to get after it and make it happen ~ BE THE CHANGE.

Is There A Threat Inside?

Data-PrivacyIf you’ve been involved in technology for any length of time you are aware of outside threats to your network or databases. You read about some of these threats in the news such as hacking, breaches, etc.

All of these outside threats are pertinent and require our attention to detail as data professionals, but along with that threat are you considering any threats that could occur on the inside? Every shop should have some form of guidelines, documentation, regulations around their processes.

The risk from inside threats such as employees, ex-employees, and trusted partners. Some of these threats are accidental while others can be of a malicious nature. In either circumstance the consequences can be devastating for a company. Below are some things to think about within your own environment to prevent such actions from occurring.

Secure User Access

  • Stop unauthorized access – in all honesty this means button up the shop. If you have SA access across the board you are doing it wrong. Think about utilization of role based security, AD groups, etc. You are responsible for the data so don’t make this an afterthought.
  • Manage the threat of shared passwords – fifteen people shouldn’t have access to critical accounts. Check into secure user and password utility such as Secret Server; there are a number of companies out there that provide such products. Who is accessing these accounts and why?
  • Organizational Critical Assets – a companies assets such as data is one of the most important and integral pieces to the puzzle – it needs to be treated as such. This can mean many different things on many different levels. Do you know who is accessing your data and why?
  • Immediate Response to Suspicious Behavior – What do you do when you find activity going on that raises some concern? If you don’t have a process in place of reporting this then I suggest you think about getting one in place. Standards of such events are important; trust me on this. The time will come (and it will come) when threats become real. Procedures should be in place and gone over with all related data teams.

I ran across this article some time back from simple-talk and found it to be very fruitful in showing you How to Get SQL Server Security Horribly Wrong When you get time do check it out. In many cases I have run across security is an after thought – don’t let it be.

Define Areas of Vulnerability

This is a key component in getting started with taking your data seriously. Accessibility to information is a key deliverable in most shops; the data is the heartbeat. Face it; we live in a world today that is data driven; many decisions throughout every minute of the day are based on integrity of the data. Without addressing security in the design around the data it will leave you open to potential threats.

  • Network File Shares
  • Legacy Permissions
  • Logging and Monitoring
  • Change Control

These are just to name a few that could be potential vulnerabilities a shop can be exposed to.

Summary

We, as data professionals, need to take control and secure our data. But even more importantly we need to educate our end users on best practices and standards within the companies and shops we are associated with. Security can no longer be an afterthought.

If this means changing some things and rattling some cages then so be it; it may just save you in the end from a major security breach. We often are aware of external threats; what most people tend to over look are the threats from within the walls of a company.

It is imperative to take preventative measures and even the highest level of clearance should be monitored in some form or fashion. Think about the DBA for a second, and not just because I am one. They have the keys to the kingdom so to speak; same as a lot of sysadmins. There should be transparency in their actions; auditing should occur as to the what, when, and why.

Taking it a step further would be conducting data forensics (that would be a fun topic of discussion)

Bottom line I encourage you to start taking security around your data seriously if not someone else will.

How I Became A…SQL Server Data Professional

OopsLast night I saw a tweet from Matt Gordon (b|t); the topic caught my eye – “How I Became A…SQL Server Data Professional”. The original idea spawned from Kevin who is known as the SQL Cyclist (b|t) over here at this post

I’ll have to fill in the blank the same as Matt Gordon has with “How I Became A SQL Server Data Professional”

It definitely was not a bed of roses to get to where I am at now. My story is the same as many others across the world in that I became a DBA pretty much on accident at the time. I was a developer right out of college writing code in a language called Progress (think Visual Basic). I still remember to this today seeing variables in the code that had been passed down for a while with the Gilligan Island characters; you know skipper = minnow + Gilligan.

Needless to say I spent three years at that job and enjoyed it, but with growth and thinking I could take on the world I wanted to spread my wings and fly a little bit; which landed me the next 8 years at a place where my groundwork for getting into SQL would really flourish. I was doing SQL development work sprinkled in with some .Net and quickly realized that I wanted to stick with the core engine. Not sure why but SQL just stuck; it was intriguing to me. How to make queries run faster, how to get the most out of the engine,  why were queries taking such a long time to execute. All these things kept running through my head. Doing database work was building me into becoming the DBA that would bring me to my next job.

It was at this job where I got my feet wet with what SQL Community, PASS Summit, and Mentorship was all about. It’s been 5 solid years since getting involved and it has been one heck of a ride. As I sit back and look at where I started to where I am today I would never have guessed it. If you were to go back when I was younger people in my past would tell you that if it wasn’t sports oriented I would not have anything to do with it. Becoming a SQL Data Professional is not just a job to me; it’s a passion.

As I sit here and reflect back to all those memories I’m thankful for each one of them. No, it hasn’t always been easy. I believe the harder times have molded me and made me into a stronger more durable Data Professional. Whatever road you take to become what you are remember one thing – it is your journey; your story. You are the CEO of your destiny. Rise and grind – get it done.

Summary

I encourage you to take Kevin’s initial request to heart and think about when you became what you are now. How did you get there? What roads did you travel? Hope you had a good time reading this post; as it sparked a lot of memories for me. I wouldn’t trade any of them for anything in the world.

What Is SQL Saturday?

SQL SaturdayI was recently approached and asked, “What is SQL Saturday? I actually get asked that question more times than not from other people within and outside the community that have never had the pleasure of attending an event. I’d like to take a moment, and from my own perspective lay out the what, why, and how come you should familiarize yourself with such great events across the globe.

The What

You can read the official “What is SQL Saturday About” here

The Yates version is what you will find in this blog post and what it means to me as a data professional. Oddly enough I attended my first SQL Saturday event 4 yrs ago, and that stemmed from going to my first PASS Summit 6 yrs ago. Why the gap you ask? I don’t have a good reason; but what I can say is I was enamored by the fact I could go to this free event and learn from top-tier speakers. Usually there is a fee involved for lunch which is minimal and in some cases I’ve seen where you bring your own. These events usually consist of DBA, BI, Professional Development tracks split up across a full days time. In it you’ll find some speakers you would see at PASS Summit all the way to local and regional speakers. The good thing about these events are you can network and share experiences and knowledge with other data professionals from all walks of professions on top of the learning.

Depending on the size of the event you will have a chance to talk to various sponsors regarding their products that they offer. Not all events will have sponsors and that’s okay. The purpose of these events are to “help” people continue to learn and for others to pay forward the opportunities they have experienced.

The Why

The why is important. If you don’t get or read anything else on this post I want you to stop, open your eyes, take this in. I can sum it up in one word for you – PEOPLE.

I’ve found myself being a co-organizer for our local event in Louisville, KY – you can read about our upcoming one here. This is no easy undertaking, and I’ve seen the value; the difference it makes in data professionals. In speaking of giving back to what has been afforded to you; this is one way I believe that I can make an impact on the community. There is nothing like seeing a light bulb go off or seeing someone who has attended these events come up to you and say that something finally clicks. It’s about the attendees; the people.

Listen, it’s not a life about glitz and glamour. It’s hard work, it’s dedication, it’s requiring you to have a drive that when you are faced with adversity you overcome it. These events provide avenues for data professionals who can’t travel to the big conferences. Providing good quality learning is key to developing and cultivating our growing SQL Community ~ I’m a huge proponent that each one reach one. Stop and think about that for a second. Imagine how many people we have in our SQL Community. If each person reached one other person, my oh my, and if we help one at these said events then it is worth it in my eyes.

How Come

In my finite mind it started with a vision Andy Warren, Brian Knight, and Steve Jones had back in 2007. Knowing 2 of the 3 people listed I know that the mindset was geared toward  helping others learn because I know how much they have invested in me over the years. I look at SQL Saturday’s differently than I used to; over time it has grown from learning, soaking up all the knowledge I could; to speaking, volunteering, and helping at said events.

Believe it or not; speakers are people to. It is always encouraging when you see new speakers submit abstracts to these events. It allows for development and growth of upcoming rising stars to let their talents shine through.

Conclusion

If you haven’t attended a SQL Saturday then why not start? You can get a full listing of events here

I do request one thing of you if you attend. You will see volunteers at these events; remember one thing. They do this for free; we aren’t paid huge salary major league contracts; instead they (we) put in blood sweat and tears to put on a good event for you to come learn. I encourage you to seek one of them out and just say thank you; you will have no idea how much it will mean to them.

If you need help getting plugged into a SQL Saturday near you let me know. I’d love to talk to you and help you get started on your journey to further learning – just leave me a comment and I’ll reach out to you.

If you are a new and upcoming speaker, again give me a shout. I’ll be happy to provide some insights and tricks that has helped me over the years.

Let’s get after it and make it happen – each one reach one. Let’s Roll

The Pen Cap

This post is for all you up and coming data professionals out there. Over the course of the last week we had a T-SQL Tuesday block party which I missed. The beginning of the year is a very hectic time at the shop; doesn’t negate the fact that I should have taken time to get posts out on the topic. With that said you will find at the bottom of this post what T-SQL Tuesday is and how to get involved with it moving forward.

PenCapSo, the pen cap ordeal….what is it and why?

I gave this talk to the Louisville SQL and Power BI User Group a few years back, and got some amazed looks. Looking back, it actually is quite comical in a sense of what not to do. Dating myself a bit we would have to go to the year 2000-2001; back when I had hair on the dome and thinking I could take on the world. I was green as green can be right out of college and I was being shown around the building and my new digs on where development gold was about to take place – – that’s right I was a developer in my former life.

As on any first day at a new job you meet a lot of people. I remember like it was yesterday; walking around the various floors and coming back down to the development area. The person showing me around was someone I had known from my past so it was a comfortable setting. We get to “dev row” as we called it; just a myriad of cubes in a straight line – in getting to this one cube no one is present. Now, you have to remember – I was straight out of college, but I did have a sense regarding security and also things that one should and should not do. Chalk some of that up to common sense (although most people today will debate if I have any!).

Looking in at this cube picture an old school monitor, keyboard, mouse and a pen cap. That’s right a pen cap – oh no my friend. This pen cap was not just any ordinary pen cap. It was stuck in the keyboard with the stem holding down the enter key. Odd you say, yeah I thought so as well. Moving on; we would come back too meet this genius of a person later on.

Getting back to my own cube and sitting there that darn pen cap kept coming back to my mind. I couldn’t shake it; couldn’t let it go. Time passed and I went back over to the person’s desk to introduce myself. I was the newbie on the block, but not shy (shocking I know <insert sarcasm>). The conversation went something similar to this:

Me: Hello, my name is Chris Yates and just started today. You were out earlier when we came by so I just wanted to drop by and introduce myself.

Them: Hello, my name is (we shall protect the non innocent and go with Richard).

Me: Noticed you had a pen cap in your keyboard earlier; curiosity has got the better of me.

Them: Oh, that – yeah I left a message box in the code that imports data into the system. I just put a pen cap on the enter key to keep hitting ok until it got to the end.

Now, even back then as a young kid I knew that didn’t smell right. Come to find out that import was being loaded into production because well why not. The enter key being held down for so long kicked off the job again, and to add insult to injury the import did not check for any duplicates. Was a good lesson of what not to do.

Summing Up

To this day I do not use a pen that has a cap on it – No thank you.

  • If you ever see a pen cap stuck in a key board by all means question it Winking smile
  • Do not test directly into production
  • Do not leave your computer unattended at your desk without it being locked
  • If you see me out and try to get me to use a pen with a cap; well that’s why I carry my own pen.

…and the list could go on. Remember, use your head and if you are questioning if something is right chances are you need to visit more into it.

T-SQL Tuesday Plug

I know I missed the party this past week, but I still want to share with you what T-SQL Tuesday is. T-SQL Tuesday is a blog party that SQL Server expert Adam Machanic (blog|Twitter) started. Each month different community members from around the globe host a topic and other community members and fellow bloggers get to write about what they want to share. To find out more check out Adam’s blog mentioned above. It’s a great way to get your blogging juices flowing and get to know and learn from other community members.

A Letter To A Younger Yates

deskphotoHello much younger Yates. Hope you’ve been doing well. Why don’t you pull up a chair and stay for a few minutes so we can talk and maybe help another data professional that is just starting out on his or her journey. Nah, it won’t take us a long time to get through our talk, but I think it is now prudent more than ever to share with you some of life’s journey’s you are about to embark on.

I know you are starting out as a developer and you won’t know where your career will take you at this point; you are just happy to have a job out of college and that’s okay. One thing I do want to iterate to you though, when you see variables in the code that reference the Gilligan’s Island characters it is not okay nor best practice to do such, and while we are on this topic please line your code up – the future you being a DBA will thank you; trust me.

Life is going to throw you some curveballs along the way, both professionally and personally. This is part of growing on both fronts; what you need to know is to learn from them and not to be afraid to make mistakes in either scenarios. You will fail; you need to accept that. However you need to take solace in the fact that if you fail it means you are trying and never be ashamed to own up to anything you do. Don’t try to hide mistakes; address them head on and remember that if you get knocked down nine times you get up ten. Hard work will eventually pay off and you can take those lessons learned and teach them to others who are coming up.

Explore all avenues of learning, you’ll eventually get to know a group of people called SQL Family. They aren’t a perfect bunch, but then again neither are you. It is there you will find new colleagues, friends, mentors and heck you may even find yourself helping run user groups and help plan a SQL Saturday – – bet you didn’t ever believe that would happen would you?

You’ve come along way from the basketball courts where you poured your heart and soul into being the best you could be. Your dreams may have come up short in your mind but oh my friend you couldn’t be more wrong. The lessons and injuries you learned from that time were molding and making you into the data professional you will become. The discipline you had then will still apply even more so later on. That coach that entrusted you with the rock at the end of the game will again be the same in business. As you become a database administrator who will eventually lead and serve alongside a group of dedicated professionals in which you will find again the ball in your court. Attack it the same way with hard work and dedication; don’t ever let anyone tell you that you can’t do something….remember when someone did that to you – – you ended up with a triple double.

There will be naysayers and there will be harsh critics – – this is life. I wish I could tell you the world will stop for you and you can hop on. That’s not the case; you’ll find yourself having a great family which in turn will teach you more lessons. You’ll learn that you’ll have a new hero in your life in a son who has Type 1 diabetes. In him you’ll find how resilient a kid can be and realize that you will have nothing to complain about. Sure you’ll lose a step as you get a bit older, but what that kid goes through on a daily basis you’ll never have to endure, at least not as of today. You will have the roughest day and you will go home and see smiling faces. When you step out of that car make sure you touch the tree as you walk by to hang up all the work related activities – – you won’t get that for a very long time but when that light bulb goes off you’ll know what I’m talking about. As you left basketball on the court; you in turn will need to leave work at work sometimes. It will be hard…trust me on this ~ your family will need you.

When you get older I ask that you reflect on where you came from and realize how thankful and blessed you are. Investing in others like others have invested in you will be a key component in your future. Don’t let corporate politics detour your outlook that you started with. A passion to grow and also a passion for helping others grow.

As we end our conversation today remember one thing. You’ll never know what other people are going through. Your family, your team, your colleagues, or other data professionals. Win each day and make a difference in someone’s life. Set goals and dreams and never let anyone tell you that you can’t achieve them. If they do use that as the fire to motivate you to do the extraordinary. Be thankful for your mentors both professionally and personally and don’t ever be scared to use the words “Thank You” and “Sorry”. Those aren’t a sign of weakness.

Be humble yet assertive and when you give your word on something you follow through on it. You will have no idea how much communication will come into play – you got this younger Yates – Let’s Roll

**To the young data professional out there**

You may think you are all alone and in a big ocean swimming helplessly around. I want to assure you that you are and were not alone. Each day is a learning day and the lessons you learn along the way will be your story. You are the CEO of your career – – take charge of it. There will be others that come and go in your life professionally; I implore you to build a good base of about 5 data professionals that you can learn from and model your techniques after – – the best of the best if you will. At the end of the day you be the best you and when you get to your future self; take time to give thanks and reflect back on where you came from.

Thanks,

Older Yates

Backup/Restore–What’s My Status?

WaitingThe day begins and you find yourself going through a list in your mind of things that need to be accomplished. You either make a mental note, jot it down on paper, or input notes into your mobile device. The day is getting off to a great start; you feel as though you have a sense of direction and purpose before you even open up shop for the day. It is then the phone rings or you get alerted to trouble; issues on the horizon.

The issue at hand requires a backup or restore to be completed and you find yourself dependent on the mercy of SQL processing the request. We’ve all been there; phone rings again and it is someone on the other line asking you:

  1. Are we done yet?
  2. What’s the status?
  3. How much longer will this take?

These are all legitimate questions that you will be asked, and it’s okay. Pressure situations are opportunities to make it happen. Over the years data professionals have built out their own script and document libraries. I’ve carried scripts around for years, one script I like to utilize regarding backups and restores is below. I have some variations to this script with what it pulls back, but the standard script hits the sys.dm_exec_requests  DMV.

SELECT  r.session_id ,
r.command ,
CONVERT(NUMERIC(6, 2), r.percent_complete) AS [Percent Complete] ,
CONVERT(VARCHAR(20), DATEADD(ms, r.estimated_completion_time,
GETDATE()), 20) AS [ETA Completion Time] ,
CONVERT(NUMERIC(10, 2), r.total_elapsed_time / 1000.0 / 60.0) AS [Elapsed Min] ,
CONVERT(NUMERIC(10, 2), r.estimated_completion_time / 1000.0 / 60.0) AS [ETA Min] ,
CONVERT(NUMERIC(10, 2), r.estimated_completion_time / 1000.0 / 60.0
/ 60.0) AS [ETA Hours] ,
CONVERT(VARCHAR(1000), ( SELECT SUBSTRING(text,
r.statement_start_offset / 2,
CASE WHEN r.statement_end_offset = -1
THEN 1000
ELSE ( r.statement_end_offset
– r.statement_start_offset )
/ 2
END)
FROM   sys.dm_exec_sql_text(sql_handle)
))
FROM    sys.dm_exec_requests r
WHERE   command IN ( ‘RESTORE DATABASE’, ‘BACKUP DATABASE’ );

By checking only for the restore and backup command lines you will be able to quickly identify your session id and get an  approximate ETA and percentage complete. you can tinker of course with the estimations if you’d like or pull back more fields. This is just a simple technique in utilizing a helpful DMV to provide info quickly.


Additional information

Aaron Bertrand (b|t) wrote a post several years ago around sys.dm_exec_requests that has good information in it that you can find here.

You can find the MSDN listing for sys.dm_exec_requests here.

What are DMV’s?

DMV’s are Dynamic Management Views within SQL that can help with a myriad of troubleshooting, performance tuning, and overall health of a system. You can find all the categories for DMV’s and learn more about them here.

Wrapping Up

I’ve been on both sides of the fence in the past where third-party tools are not always possible to have. These DMV’s can be life savers in certain situations; you can parachute in and parachute out gathering knowledge on any given situation. I urge you to explore and learn new things that may help you in your future.

**DISCLAIMER – Do not take code blindly from the internet because you found it on a blog and execute it without first testing it yourself.**