Hey guys, I was interested in the idea of perhaps tuning and increasing database performance for non profits, like charities. What skills would you recommend to obtain in order to do so, also as a freelance sql developer, if thats a thing, I'm just saying that since I love sql and its the language I am concentrating my skills on most, what other skills would be Nice to have under ones Belk if you wanted to freelance and obtain juicy contracts. I was thinking the following. > - advanced indexing - Microsoft SQL Server - 2016 and 2008 - data analytics. - Microsoft SQL SSRS - pl sql - Transact-SQL - Microsoft SQL SSAS - SQL Server Integration Services (SSIS) - R programming
Working for non-profits, most of the work will be setting up SQL Server and creating databases. There won't be much query tuning at all. But, talking about query tuning, your list is a little too much of a shotgun. Let's remove several items: - Data Analytics (when you get really advanced, you might want to apply this to query tuning, but let's work on basics first) - SSRS (no need for SSRS at all for query tuning, or for general SQL Server for that matter) - PL SQL (this is Oracle's language and won't help you with SQL Server) - SSAS (again, not needed when getting started or for query tuning) - SSIS (Same as SSRS and SSAS, however, it does have more applicability if you're getting started in SQL Server since most of your tasks are going to be more generalist, and SSIS is a useful tool, but for tuning, nah) - R (it's not out yet, don't sweat tuning this... yet) That leaves - SQL Server 2008 - 2016 - Indexes - T-SQL These are musts. Probably, your best bet, if you're just getting going, is not to go after 2016. It's not released and won't be until probably between March & May of next year. Instead, get a copy of SQL Server 2014 Developer Edition. I believe this is $60 through Amazon. Easiest way to start learning. Indexes, yes. Learn what a cluster is, a non-cluster, when they apply, when they don't, additional types of indexes & when to use them, INCLUDE, statistics, etc., etc.. Tons there. T-SQL, yes. All the things there. To these I would add: - Database design - Constraints - More T-SQL - Execution plans - Powershell - Basic server configuration - Maybe a programming language (to understand how and why developers do what they do) Tuning is a huge area. People have written books on it (ha!). There is lots to learn, but that's a rough list of where I'd spend my time. And yeah, if I was just getting started, I would learn R (I'm planning to learn it), but, since the Developer Edition of 2016 isn't available yet, don't waste time waiting, get started with 2014.
@Grant has touched on the subject of books. He's far too modest to say that he's written some himself, so I'll say it for him. Check out Red-Gate's library of freebies -
http://www.red-gate.com/community/books/#sqldev - you should find some useful books there.
I agree with Grant's points about putting a lot of those things aside until you understand the basics, but I want to take a step back first because you are just starting. Which basics should you start with? If you do want to focus on query tuning, then I completely agree with starting with database engine, T-SQL, and (traditional, B-tree) indexes. But the first question I typically ask is "What do you enjoy?" - Database engine: build tables and views; stored procedures; functions; indexing; performance tuning - Reporting: possibly some of the engine skills but with more focus on SSRS and/or other reporting and UI tools - Deeper analysis: T-SQL pivot; SSAS; PowerBI - Integration: SSIS to pull together potentially disparate data sets to provide a new source for reporting or other needs If you decide that engine work and query tuning are your thing, there are definitely good books, articles, videos, etc. available. Grant is a great author of some of these. Also check out Paul Randal, Kimberly Tripp, Kalen Delaney, Brent Ozar, and many others. You can find many free resources online, including a lot of nice videos at [
https://mva.microsoft.com/]. Also, I can't say enough about the benefits of getting involved in your local PASS chapter and attending [SQL Saturday] events. Participation is free. The only cost is time, but the value is priceless. :
haha you guys are awesome! I am glad there are fellow SQL enthusiasts out there! So I was referred to this woman who is very well connected throughout the nonprofit industry and she has plenty of contacts. I've yet to email her and if I wanted to go the "database engine route" what should I tell her. Seth