Question for All DBAs (What can I learn to enahnce my career?)

  • All,

    I have been working with SQL Server for about couple of months now and I sometimes find myself diving into everything (Just want to learn everything). I am actually involving myself into learning so many things and that's why I have a decent knowledge of pretty much everything but I 'd really like to master in 1 or 2 things instead of just learning 2% of everything. What is the recommendation? I mean what can I learn which will put me into another level. I mean there are DBA's like (Grant Fitchery, Gail Shaw, Brent Ozar). Maybe I am wrong but as far as I know, I have never seen Grant replied to any questions or issues related to backup and recovery. He is always talking about performance, execution plan etc. So, long story short, What can I learn or master in? Where are we heading?What will benefit me and other new DBA's?

  • What interests you? It's extremely tough to master something you hate or have little interest in. I suggest going to a sql saturday, and at the very least reading the course list from summit to get a wider view of what's even out there.

    This is a very wide product that sits on and interacts with a huge range of technology. There are aspects and whole sections of "SQL Server" you may not even know exist that are fully developed and mature that may fascinate you.

    (I'm sure Grant knows a bunch about backup and recovery, but I imagine he finds execution plans more fun.)

  • If you've been working with SQL Server for a few months, it's far too early to specialise. Learn the basics of your job for now. Once you can handle off the basics without hesitation (and basics I mean the stuff DBAs do every day, the fundamental aspects of your field), then you can start looking further. Getting the basics down pat should take you a few years.

    What you do not want to be is a DBA who can do one thing well, but can do nothing else.

    As for Grant never talking about backups...

    https://www.youtube.com/watch?v=BFB94EBjJVw

    https://www.simple-talk.com/sql/backup-and-recovery/backups,-what-are-they-good-for/

    https://www.simple-talk.com/sql/backup-and-recovery/sql-server-2014-backup-basics/

    http://www.scarydba.com/2014/01/20/time-for-a-quick-rant/

    p.s. I'm not a DBA.

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass
  • My recommendation would be to learn the database engine inside and out along with everything you can get your hands on for T-SQL programming. I can't speak for others but that's the path that I originally started on and it has been a huge help in making me valuable to companies as a consultant. For example, most of what people need help in (other than the normal stored procedures, etc) SSIS, SSRS, and even the front end is with writing scripts and stored procedures. If you can do that very well, you've just beat out 80% of any of your competitors (well, except for here on SSC).

    After that, the world's your cake. Decorate it any way that you'd like.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Getting the basics down pat should take you a few years.

    Phew! Now I don't feel quite so stupid.

  • Favorite Quotes:

    "Has anyone ever told you that a query you have written runs too fast?" - Dwain Camps - 6 Mar 2014

    Yes.

    Because the DB was then able to successfully serve up thousands of rows to the application, causing the app server to come to a standstill as it was doing loop de loopy stuff to thousands of objects in memory.

    Before the optimization, the slow code was timing out and everyone was happy except the one person.

    So yes.

    Catch-all queries done right [/url]
    Gail Shaw's Performance Blog[/url]

  • Like others have said, it will take some time to learn the basic so learn, learn, learn... practice, practice, practice and you'll figure out what you love.

    Whatever you do, you should know how to write good SQL; this will help you be a better application dba or operational dba, SQL developer, SSIS or SSRS developer. Whatever you end up doing you will be better aif you have solid SQL writing skills.

    "I cant stress enough the importance of switching from a sequential files mindset to set-based thinking. After you make the switch, you can spend your time tuning and optimizing your queries instead of maintaining lengthy, poor-performing code."

    -- Itzik Ben-Gan 2001

  • Jeff Moden (11/6/2015)


    My recommendation would be to learn the database engine inside and out along with everything you can get your hands on for T-SQL programming. I can't speak for others but that's the path that I originally started on and it has been a huge help in making me valuable to companies as a consultant. For example, most of what people need help in (other than the normal stored procedures, etc) SSIS, SSRS, and even the front end is with writing scripts and stored procedures. If you can do that very well, you've just beat out 80% of any of your competitors (well, except for here on SSC).

    After that, the world's your cake. Decorate it any way that you'd like.

    I tend to agree if you're new and want to develop.

    If you want to admin, this will still help you, but certainly you can also spend time learning in detail about backup/recovery and security.

  • MadAdmin (11/10/2015)


    Favorite Quotes:

    "Has anyone ever told you that a query you have written runs too fast?" - Dwain Camps - 6 Mar 2014

    Yes.

    Because the DB was then able to successfully serve up thousands of rows to the application, causing the app server to come to a standstill as it was doing loop de loopy stuff to thousands of objects in memory.

    Before the optimization, the slow code was timing out and everyone was happy except the one person.

    So yes.

    Ooooo... way too funny! 🙂 I can actually see that happening although I've not seen anyone actually go through such a thing before.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Steve Jones - SSC Editor (11/10/2015)


    Jeff Moden (11/6/2015)


    My recommendation would be to learn the database engine inside and out along with everything you can get your hands on for T-SQL programming. I can't speak for others but that's the path that I originally started on and it has been a huge help in making me valuable to companies as a consultant. For example, most of what people need help in (other than the normal stored procedures, etc) SSIS, SSRS, and even the front end is with writing scripts and stored procedures. If you can do that very well, you've just beat out 80% of any of your competitors (well, except for here on SSC).

    After that, the world's your cake. Decorate it any way that you'd like.

    I tend to agree if you're new and want to develop.

    If you want to admin, this will still help you, but certainly you can also spend time learning in detail about backup/recovery and security.

    No doubt about it, learning about backups/restores and security is of paramount importance on the road to becoming an Admin but, and without exception in my personal experience with other Admins, the best seem to be those that are incredibly comfortable with the code and, with some exceptions, most of those good folks started out as Developers.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Thanks all. I think I will start with learning TSQL since I am just a little weak in that department. 🙂

  • Chitown (11/11/2015)


    Thanks all. I think I will start with learning TSQL since I am just a little weak in that department. 🙂

    Cool. That's great. I have to tell you that MOST of the people that I've interviewed for Senior DBA positions couldn't even tell me how to get the current date and time never mind how the windowing functions worked, how clustered and non-clustered indexes worked (the definition is NOT enough here, folks... you've actually gotta understand this stuff), nor even how to do native backups with the bloody GUI never mind actually writing a script for such things. All of these people had claims of at least 10 years experience including (supposedly) tuning queries.

    I'll also state that if you're a "Hybrid" DBA that's not only good at being a pure systems DBA but are a bit of a Ninja at all things T-SQL, you are EXTREMELY marketable especially since a lot of companies can't afford having "just" a systems DBA along with a Database Developer. They also want a bit of a "Master Developer" that can mentor other folks and also solve the seemingly impossible.

    I'll give you an example on that "seemingly impossible" bit (and this really did happen... I couldn't make this stuff up). A small company that I was helping was using servers provided by another company (name withheld to protect the guilty). To make a really long story short, they had a database with one fairly large (and getting larger every day) audit table of about 250GB in the database and EVERY time they tried to defrag the indexes, it would go over the disk allotment. The company temporarily allowed the over allotment BUT insisted on the company buying another tera-byte of disk space and more ram (quite expensive through them, actually) to accommodate the reindexing or they'd stop doing it. As a bit of a sidebar, they were also making noises about having to backup so much data every night and wanted to shift back to weekly full backups and only once per day log file backups.

    The rub to all of this is that, because it's an audit table, the data would be impossible to reproduce through other methods AND the data was the key to weekly compliance reporting (and several other things) so ALL of the data had to be online ALL of the time. Even the 5 year old stuff.

    The server is SQL Server STANDARD Edition (they couldn't afford the Enterprise Edition). For the folks I've been interviewing, their answer would have been to spend the money they didn't have and to allow the change in backups even though any new data in the table was virtually non-reproducible. The DBAs at the equipment provider were basically useless on solving this problem (not to mention they had no incentive to do so). Additionally, some folks didn't understand is that the server was already maxed out in memory because of it being the Standard Edition... not even the people providing the hardware!

    A solution for such a thing is what I'd expect anyone touting the title of Senior DBA to resolve without even having to think about it. Yes it "could" be done without knowing much about T_SQL but it would be damned near impossible to automate the solution without it.

    I think a lot of folks on this forum would make short work of it all because of their knowledge of T-SQL. It only took me a little over a half day to write a totally automatic solution and a little over a half day to do some serious integration testing along with deployment. AND, the method I used also dropped their backup requirements and duration to 1/60th of what it had previously been.

    So ask yourself, as the DBA for the company that owned the table/database, how would YOU have fixed ALL the problems in an automated fashion? THAT's where you want to get to and you're going to need some really good knowledge of T-SQL to get there.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Here is my list of recommended steps

    1. Develop a plan to learn the basics. The recommendations provided in this thread about your T-SQL skills are key and should be at the top of your list. Learn about backups, SQL Server security, storage systems, performance and indexes. Do not try to go deep into each subject on your first year but it should be a multi layer, multi year plan that as you progress in your career you become more knowledgeable.

    2. Find a mentor that can help you achieve the goals of your first layer/year. Sometimes this mentor can only help you get so far, be willing to find another mentor to help you get to the next level. Usually the relationships with mentors last a lifetime and are extremely rewarding.

    A mentor can help you get back on track and focus on your plan when you feel overwhelmed as you do today.

    A mentor should share his/her experiences so you do not have to spent all your time reproducing previous mistakes.

    A mentor must be selfless and have your best interest at heart.

    Good luck on your journey to become the best DBA you can be.

    [font="Verdana"]Sal Young[/font]
    [font="Verdana"]MCITP Database Administrator[/font]

  • Jeff Moden (11/10/2015)


    MadAdmin (11/10/2015)


    Favorite Quotes:

    "Has anyone ever told you that a query you have written runs too fast?" - Dwain Camps - 6 Mar 2014

    Yes.

    Because the DB was then able to successfully serve up thousands of rows to the application, causing the app server to come to a standstill as it was doing loop de loopy stuff to thousands of objects in memory.

    Before the optimization, the slow code was timing out and everyone was happy except the one person.

    So yes.

    Ooooo... way too funny! 🙂 I can actually see that happening although I've not seen anyone actually go through such a thing before.

    I did Kevin Boles' Tune Like a Guru precourse at SQL Saturday in El Paso and he related a story of a client who upgraded from spinning media to SSDs, and their system blew up. Turned out they had a fatal embrace condition, but on the slower media, the locks would resolve before the collision happened. With the much faster SSDs, *BOOM*. So speed can come from more than one source.

    Apparently it was quite a mess.

    -----
    [font="Arial"]Knowledge is of two kinds. We know a subject ourselves or we know where we can find information upon it. --Samuel Johnson[/font]

  • I wouldn't suggest them for right now as they tend to dive in to more advanced concepts, but check out the Starways Series[/url] here at SSC. Also take a look at what's on offer, many for free, at Red Gate[/url], the Alex Kuznetsov book on Defensive Database Programming could help to instill some good habits. And since you're starting out and good habits at the beginning will be a help throughout your career, look in to unit testing and source control.

    Three books that I'd recommend are:

    SQL Server 2008 Database Development Training Kit by Microsoft Press[/url]. You can get it for a penny plus shipping. Try to make sure that the book contains the CD as it has practice tests for the certification exam. The cert is long since expired, but it's still good practice. Since 2008 is still in production and supported, at least for the next three or four years, it should be fine for learning the basics.

    A Guide to Sybase and SQL Server by D. McGoveran and C.J. Date, this will cost you a little bit more: $0.29 plus shipping. It's an old book, 1992, from the dawn of SQL Server. And it uses some syntax forms that are deprecated, like *= and =* for outer joins, but it's still not bad for learning syntax. Just ignore section III. This is probably the oldest computer book that I bought and still have that isn't a text book.

    Transact-SQL Programming[/url] by Kevin Kline, Lee Gould, and Andrew Zanevsky, published by O'Reilly. It's a 1999 book, so again, some deprecated syntax. But still a fairly solid book for learning T-SQL. Considering that you can get all three from Amazon for under $20, I highly recommend them as a very cost effective way of learning T-SQL.

    Another thing that is invaluable for home study is either buying the Developer editions of SQL Server for about $50, which gives you the full Enterprise edition, but is not licensed for production use. You can download the Express editions for free, I prefer to cough up the bucks for Developer.

    SQL Server changes both slowly and quickly. The basics of the language are largely unchanged. Every version adds a little something, tweaks something else, and on rare occasion removes something. So old books can still be valuable. And very inexpensive. Depending on where you live, you might be able to find these in good used bookstores.

    My $0.002 worth.

    -----
    [font="Arial"]Knowledge is of two kinds. We know a subject ourselves or we know where we can find information upon it. --Samuel Johnson[/font]

Viewing 15 posts - 1 through 15 (of 16 total)

You must be logged in to reply to this topic. Login to reply