Synopses & Reviews
"I can pretty much guarantee that anyone who uses SQL Server on a regular basis (even those located in Redmond working on SQL Server) can learn something new from reading this book."
--David Campbell, Product Unit Manager,
Relational Server Team, Microsoft Corporation
The latest book from the highly regarded and best-selling author Ken Henderson, The Guru's Guide to SQL Server Architecture and Internals is the consummate reference to Microsoft SQL Server. Picking up where documentation and white papers leave off, this book takes an all-inclusive approach to provide the most depth and breadth of coverage of any book on SQL Server architecture, internals, and tuning.
Blending in-depth discussion with practical application, the guide begins with several chapters on the fundamental Windows technologies behind SQL Server, including processes and threads, memory management, Windows I/O, and networking. The focus then moves on to the architectural details of SQL Server and how to practically apply them.
The entire SQL Server product is covered--not just the functionality that resides within the core executable or product features that have been in place for years. SQL Server has matured and broadened substantially with each release, and the author explores the "fringe" technologies that have yet to be covered elsewhere, including Notification Services, Full Text Search, SQLXML, replication, DTS, and a host of others.
Throughout the book, the author uses WinDbg, Microsoft's free downloadable symbolic debugger, to look under the hood of SQL Server. Armed with new debugging and coding skills, readers will be ready to master SQL Server on their own.
The accompanying CD-ROM is packed with additional material, including full source code for the book's 900+ examples, as well as three invaluable tools: DTSDIAG, the VBODSOLE Library, and DTS Package Guru. DTSDIAG allows developers and administrators to simultaneously collect Profiler traces, perform logs, blocking script output, system event logs, and SQLDIAG reports from a specified SQL Server. The VBODSOLE Library features more than twenty new COM-based functions for Transact-SQL, including T-SQL enhancements such as array-manipulation routines, financial functions, string-manipulation functions, and system functions. DTS Package Guru is a .NET-based package editor for SQL Server's Data Transformation Services that allows editing of any modifiable package and supports the automation of mass package changes.
The Guru's Guide to SQL Server Architecture and Internals is the essential guide for database developers and admin- istrators alike, regardless of skill level.
The latest of the highly-regarded, bestselling Guru's Guides from Henderson, this book contains the most depth and breadth of coverage of any book on SQL Server architecture, internals, and tuning. A basic knowledge of SQL Server is presumed.
This reference guide to Microsoft SQL Server contains information on architecture, internals and tuning. The CD contains a library of diagnostic tools developed by the author.
About the Author
a nationally recognized consultant and leading DBMS practitioner, consults on high-end client/server projects for such customers as the U.S. Air Force, the U.S. Navy, H&R Block, Travelers Insurance, J.P. Morgan, the CIA, Owens-Corning, and CNA Insurance. He is the author of five previous books on client/server and DBMS development, a frequent magazine contributor to such publications as Software Development Magazine
and DBMS Magazine,
and a speaker at technical conferences.
Table of Contents
List of Exercises.
About the Author.
I. FOUNDATIONS. 1. Overview.
About the Code. 2. Windows Fundamentals.
The Win32 API.
User Mode vs. Kernel Mode.
Processes and Threads.
Virtual Memory vs. Physical Memory.
Knowledge Measure. 3. Processes and Threads.
Thread Synchronization. 4. Memory Fundamentals.
Shared Memory. 5. I/O Fundamentals.
Asynchronous and Nonbuffered I/O.
I/O Completion Ports.
Memory-Mapped File I/O. 6. Networking Fundamentals.
Remote Procedure Call.
Knowledge Measure. 7. COM.
The Dawn of COM.
COM at Work.
COM and SQL Server.
Knowledge Measure. 8. XML.
Simplicity Comes at a Price.
A Brief History of XML.
XML vs. HTML: An Example.
Document Type Definitions.
Converting XML to HTML Using a Style Sheet.
The Document Object Model.
Processing XML with MSXML.
II. SUBSYSTEMS, COMPONENTS, AND TECHNOLOGIES. 9. SQL Server as a Server.
SQL Server and Networking.
The SQL Server Executable.
SQL Server's DLLs.
SQL Server I/O.
SQL Server Components.
Knowledge Measure. 10. User Mode Scheduler.
UMS Design Goals.
User Mode vs. Kernel Mode Scheduling.
Preemptive vs. Cooperative Tasking.
How UMS Takes Over Scheduling.
The UMS Scheduler.
The UMS Scheduler Lists.
Knowledge Measure. 11. SQL Server Memory Management.
The Memory Managers.
Pulling It All Together.
Knowledge Measure. 12. Query Processor.
Key Terms and Concepts.
Join Order and Type Selection.
Logical and Physical Operators.
Knowledge Measure. 13. Transactions.
The ACID Test.
How SQL Server Transactions Work.
Types of Transactions.
Avoiding Transactions Altogether.
Automatic Transaction Management.
Transaction Isolation Levels.
Transaction Commands and Syntax.
Optimizing Transactional Code.
Knowledge Measure. 14. Cursors.
On Cursors and ISAM Databases.
Types of Cursors.
Appropriate Cursor Use.
Transact-SQL Cursor Syntax.
Cursor Stored Procedures.
Optimizing Cursor Performance.
Knowledge Measure. 15. ODSOLE.
The sp_OA Procedures.
Automating with ODSOLE.
Automating SQL-DMO by Using ODSOLE.
Using ODSOLE to Automate Custom Objects.
Knowledge Measure. 16. Full-Text Search.
Setting Up Full-Text Indexes.
III. DATA SERVICES. 17. Server Federations.
Knowledge Measure. 18. SQLXML.
Using FOR XML.
Accessing SQL Server over HTTP.
Using URL Queries.
XML Bulk Load.
SQLXML Web Service (SOAP) Support.
Recap. Knowledge Measure. 19. Notification Services.
How It Works.
Building Your Own Notification Application.
Knowledge Measure. 20. Data Transformation Services.
The Multiphase Data Pump.
The Bulk Insert Task.
The Data Driven Query Task.
Other Types of Transformations.
DTS and Transactions.
Controlling Package Workflow through Scripting.
Parameterized DTS Packages.
The DSO Rowset Provider.
Using DTS to Transform Replication Subscriptions.
Controlling DTS through Automation.
Knowledge Measure. 21. Snapshot Replication.
The Snapshot Agent.
Duties of the Snapshot and Distribution Agents.
Remote Agent Activation.
Knowledge Measure. 22. Transactional Replication.
The MSrepl_commands Table.
The sp_replcmds Procedure.
The sp_repldone Procedure.
Update Stored Procedures.
Concurrent Snapshot Processing.
Validating Replicated Data.
Knowledge Measure. 23. Merge Replication.
Identity Range Management.
IV. UNDOCUMENTED SQL SERVER. 24. Finding Undocumented Features.
The syscomments Gold Mine.
Goodies in sysobjects.
Scripting Undocumented and System Objects.
The Profiler Treasure Trove.
Snooping around in the Installation Scripts.
Knowledge Measure. 25. DTSDIAG.
V. ESSAYS. Why I Really, Really Don't Like Fish!
Pseudo-Techie Tactics 101.