Pro SQL Server 2012 Practices |
Page 2 of 2
Chapter 10: Automating Administration. I suspect all DBAs are interested in automation, freeing them from mundane tasks, so they can concentrate on the more exotic features. I expected this chapter to show me lots of interesting code to automate updating statistics, implement missing indexes (?!) etc. However this was a misconception. The chapter was largely a detailed walkthrough of SQL Server Agent (what is it, how to set up jobs etc) and maintenance plans. The chapter discusses the infrastructure rather than interesting code examples. What was written was good, but it didn’t match what I expected from a practical book (this may be my misconception). Brief details are given of using perfmon, DMVs, WMI Events, SSIS, and Powershell. If you want to know about how you can automate admin tasks, this chapter is excellent, however if you’re looking for innovative ideas and useful sample code for this, then this chapter falls short. (4/5) Chapter 11: The Fluid Dynamics of SQL Server Data Movement. This strangely titled chapter basically discusses the need to move data between systems. It provides a comprehensive overview of the different methods of moving data around including: replication, log shipping, mirroring, AlwaysOn, Custom ETL, and BCP. It discusses the advantages and disadvantages of each method in light of various scenarios. Additionally it discusses ongoing monitoring that is necessary for each of these methods. Again, a good chapter in itself but not particularly innovative (5/5) Chapter 12: Windows Azure SQL Database for DBAs. Many Windows Azure SQL Database features are not the same as in normal SQL Server, and this chapter highlights the various differences. I found the introduction a bit confusing, it says Azure is not a database in the cloud, and then proceeds to describe it as a cloud database. A good solid overview of cloud things, architecture, availability, failover, and scale on demand are given. Federations, monitoring, performance dashboard, DMVs are discussed in context. Various services are discussed, namely: Reporting, Data Sync, and Import/Export. This is a rapidly changing area so expect changes! This is a useful background chapter especially if you’re not familiar with Windows Azure SQL Database. (4/5) Chapter 13: I/O: The Untold Story. The limiting factor for performance in most databases is typically IO, so potentially this is a very important chapter. Unfortunately, I found it difficult to read, not the content but how it was presented, it was like the author was talking with other database engineers instead of explaining it to an interested newcomer. This may be my problem. That said, there is some very useful code included. The importance of log and tempdb and their RAID level and placement is discussed. Some useful PerfMon counter typical values are highlighted (should be very useful). SANs, SSD, useful DMVs, compression and partitioning are also covered. (4/5) Chapter 14: Page and Row Compression. I found this a very enjoyable chapter, containing lots of undocumented features (sp_MSForEachTable, fn_dblog), together with an intelligent approach to determine how to decide what should be compressed. Some very useful sample code is included. (5/5) Chapter 15: Selecting and Sizing the Server. I found this chapter quite dry, with its discussion of the new licensing model (per core) and what you need to consider when selecting and sizing your server (e.g. workload, vendor, edition of SQL Server etc). One interesting thing I found useful was, I knew the standard edition of SQL Server 2012 was limited to 64GB, but it didn’t occur to me this related only to SQL Server. What this means is you can get 80GB on the box, and allocate 64GB to SQL Server, and the rest to the OS etc. (4/5) Chapter 16: Backups and Restores Using Availability Groups. I found this chapter dry and detailed, not really my cup of tea. In essence it is a walkthrough of the things you need to consider when setting up and configuring Availability Groups. Plenty of useful SQL code is provided with the chapter. (4/5) Chapter 17: Big Data for the SQL Server DBA. I really enjoyed this chapter. Although Big Data, NoSQL etc are still works in progress, this chapter provided a succinct overview of what’s currently available in the context of Hadoop and SQL Server. Also discussed is the changing nature of the DBA role in the context of Big Data. There is a comprehensive discussion of terms, and a simple example application provided. I do wonder if Big Data will become a niche technology that complements the existing relational infrastructure, rather than change the world. (4/5) Chapter 18: Tuning for Peak Load. This last chapter was both useful and interesting. There are some very useful checklists relating to what to look at in terms of Infrastructure, Server, Storage, SQL Server, and Application properties when considering peak load tuning. The approach and examples were clear and informative. There is an excellent walkthrough of how to collect and analyze data. Overall, I felt I learned something useful. (5/5) Overall, I felt this was a useful book. The authors all know their particular topic in detail, and most make useful suggestions that would improve the running of a database server. If you were to follow even a subset of the advice, your database server would be in better shape, and you’d have a deeper understanding of what’s going on. From a developer’s viewpoint, the material is probably less useful, though there are many interesting scripts to solve the various problems addressed, and the chapter on being a developer’s best friend makes interesting reading of the view from ‘the other side’.
<ASIN:1935182048> <ASIN:1617290475>
|
||||||
Last Updated ( Sunday, 08 May 2016 ) |