Mark has worked extensively with SQL Server, primarily focused on performance optimization and internals. Besides SQL Server Mark is also proficient in the Microsoft .NET development stack with a decade of experience.
Fueled by his interest in the nitty-gritty details and feedback from an early presentation, Mark started the OrcaMDF open source project that aims to provide a completely standalone parser for SQL Server MDF files.
Mark is an active member of the Danish community, speaking avidly at local events & user groups and is recognized by Microsoft as a Microsoft Designated Information Provider. Furthermore he blogs actively at http://improve.dk.
Based on my experience in creating OrcaMDF, an open source MDF file parser, I'll go through the primary storage structures, how to parse pages, headers, internal base tables, b-tree structures as well as the supporting IAM, GAM, SGAM and PFS pages.
In this deep(!) dive session. I will walk you through the internal storage format of MDF files. I'll cover how SQL Server stores its own internal metadata, how it knows where to find your data, and how to read it once found.
|
Thanks to Justin Dearing (b|t), OrcaMDF is now available on NuGet! OrcaMDF being on NuGet means the bar just got lowered even more if you want to try it out. Let me show you how easy it is to read the Adventureworks 2008 R2 Database using OrcaMDF: To begin, let’s create a vanilla .NET ...
|
|
When your w3wp process is stuck at 100% like, like when I used a non-thread-safe Dictionary concurrently, you may want to identify what request the runaway thread is actually serving. Let me show you how to identify which request caused a runaway thread, using windbg. First you’ll want to ...
|
|
In part 2 we found out that the concurrent access to a generic dictionary triggered a race condition bug that caused threads to get stuck at 100% CPU usage. In this part, I’ll show how easy it is to rewrite the code, using the new thread-safe dictionaries in .NET 4.0, so it’s protected ...
|
|
Having analyzed the process dump in part 1, let’s take a look at the code we suspect of causing the issue, in particular how race condition bugs can be avoided. Looking at the User Code There were three methods in action, all of them in the SettingDescriptionCache class: GetAllDescriptions, ...
|
|
In just a couple of weeks SQLSaturday #196 will be happening on April 20th in Copenhagen, Denmark. This is a free day smack-filled with great speakers, many of them international! Just check out the schedule. I cannot recommend attending SQLSaturdays enough, especially so if they’re close to ...
|