Blog Archive

Check out all blog posts in my blog archive. Click on a headline to read the teaser.

I'm Speaking at 'Philadelphia Azure DataFest: Advanced Analytics and Big Data Conference' on May 11
Come learn about Azure SQL Datawarehouse performance tuning Read More ›

So you are starting a blockchain project...
You've just been asked by your business to start a blockchain project, how do you begin? Let me tell you how I think about blockchain projects. Read More ›

How I Manage Successful Customer 360 Projects
Starting a Customer 360 initiative at your company? Not sure what's next? Let me show you how I show value quickly and run a project with a high rate of success. Read More ›

Why your EDW projects fail
Enterprise Data Warehouse (EDW) projects have a high fail rate. In this post I'll show you why...and how to achieve a better success rate. Read More ›

Cloud Vendor Lock-in
I often here the comment made that 'We do not want to use Azure and be locked-in to one vendor'. Let me show you why that is not really an issue if you design your architecture smartly. Read More ›

Case Study: Scaling Your Data Scientist
'Can you help us scale our data science team?' is a common ask I get from customers. This post is some case studies in what customers really need and how I have helped them. Read More ›

Jekyll is so much better than Drupal and Wordpress
I migrated my website to a static site generator. Let me tell you why. Read More ›

New Book: SQL Server 2017 Machine Learning Services with R
I was the book reviewer for a great new book on SQL Server and R integration. Read More ›

Self-Service BI
Upcoming Data Science Presentation
Self-Service Analytics Webinar
Azure SQL Data Warehouse: Problems, Performance, Things You Need to Understand
Big Data and Hadoop Presentation
Practical DevOps Using Azure DevTest Labs
Charter Member of the Microsoft Professional Program in Data Science
So You Want to Be a Data Scientist?
PerformanceCollector is now available for SQL Azure
GitLab on Microsoft Azure
U-SQL In Azure Data Lake Presentation
Hadoop for the RDBMS Expert
The Accidental MySQL DBA
Linux Performance Management for the DBA
Migrating gitlab to omnibus from source, debian to rpm, apache to nginx, and mysql to postgresql
Other MySQL Performance Management Tooling
Introduction to the MySQL Performance Schema
Storm Notes
Couchbase Notes
Kafka Notes
Service Broker Demystified Series - Summary
Service Broker Demystified - How to Radically Simplify SB
Service Broker Demystified - Monitoring the Canaries
Polyglot Database Development with 0xDBE
Dynamic Linked Server Generator
Service Broker Demystified - Can I model monologs? Yes you can!
PMP Certified!
Service Broker Demystified - Fire and Forget Anti-Pattern
PostgreSQL for the SQL Server Guy
Service Broker Demystified - Must my SQL Server be wired to the internet?
Service Broker Demystified - CLOSED conversations
Service Broker Demystified - Case-Sensitivity
Service Broker Demystified - [Initiators] and 'Targets'
Entrepreneurial Programmers
Recurring DST Anamolies
On Points
The #NoEstimates Movement is Nuts
Setup and Configure Service Broker Objects Reliably and Repeatably
Monitoring Service Broker
Monitoring Disk Latencies with PerformanceCollector
Why online skills tests for job candidates are worthless...
On Resumes
MD3: Metadata Driven Database Deployments
What are the benefits of using MD3 over my existing solution?
MD3 Extensibility Stories
MD3: Why you should care about declarative database deployments
Continuous Integration Testing with MD3
How to Reverse-Engineer Your Database with MD3
MD3 Deployments in Action
RunMD3.ps1: The MD3 Executor
MD3 Model Data Patterns
The OO Design Principles of MD3
MD3 Script Idempotency and MD3.CreateColumn
MD3.CreatePrimaryKey in Action
The Other MD3.Create Procedures
MD3 and The Four Rules
MD3 and "state"
Why do we need another database deployment tool like MD3?
Introduction to Metadata Driven Database Deployments
Fun With Transactions
Presenting at PSSUG next week
Service Broker Demystified - Services
SSIS and data contracts
Service Broker Demystified - Why do we need Services and Queues?
Service Broker Demystified - Why is there no ALTER CONTRACT statement?
Service Broker Demystified - Contracts and Message Types
Service Broker Demystified - [DEFAULT] is not the DEFAULT
Service Broker Demystified - SET ENABLE_BROKER vs NEW_BROKER
Service Broker Demystified - Encryption Weirdness
Service Broker Demystified Series
Upgrading Vertica
Workaround: Vertica Error: This version of Debian or Ubuntu is unsupported
Basic Vertica DBA Tasks
Vertica Concurrency and Isolation Semantics
Vertica Backups
Developing with Vertica
Vertica Management Tools
Installing Vertica Management Console
On Certifications
Examining the VMart database using vsql
Creating a Vertica Database
Vertica Physical Architecture
Vertica Objects
Vertica Certification
Understand accounting and you'll understand the trends in software development and IT
How secure is your data?
Convention over Configuration
Vertica on AWS
Installing Vertica 7
On Recruiters
Job req o' the day
Vertica Installation Prereqs
Why isn't my Java catching SQL errors...or...How I learned to stop worrying and love the ring_buffer target
DBCC AUTOPILOT and hypothetical indexes
HP Vertica
DevOps in the real world: Who should be responsible for index maintenance?
DevOps: WIP and final thoughts
DevOps: Theory of Constraints
DevOps: The Ways
Open Source Licensing
DevOps and the Concept of Work
Is it Pokemon or BigData?
DevOps
The Cargo Cults of Software Development Management
Find and fix untrusted foreign keys
PerformanceCollector and the Heisenberg Uncertainty Group
PerformanceCollector AddIns
PerformanceCollector.BlockAndWaitMonitor
PerformanceCollector Part 2: How It Works
PerformanceCollector: a performance monitoring tool for SQL Server
Metrics That Count (and it ain't "points")
On Being a Team Player
Pavlovian and Operant Conditioning
Post-restore Process
NoSQL Evaluation Summary Post
On the Future of NoSQL
MySQL and PostgreSQL as NoSQL alternatives
Apache Flume
CHANGE_TRACKING_CURRENT_VERSION() not always reliable with Log Shipping
More NoSQL Solutions
Querying NoSQL with Hive and Pig
Prunes Analysis vs Fletcher's Castoria
HBase
MongoDB and CouchDB
Parallel Data Warehouse as a NoSQL Alternative
Buffer Pool Extensions in SQL 2014
MapReduce for the RDBMS Guy
Windows Azure Table Service
Hekaton
Graph Datastores
Free SOHO VPN Solutions
SAP HANA Evaluation
Sharding
The CAP Theorem
Metric System Humor
Presentation on Metadata Driven Database Deployments is tonight
Handling Conflicts with Eventual Consistency and Distributed Systems
Eventual Consistency or ACIDs and BASEs
Presenting at the December meeting of PSSUG
Data Models and Data Organization Methods
Tutorial D, D, Rel and Their Relation to NoSQL
What exactly is wrong with SQL and RDBMSs?
SQL Server Central Management Server Query Patterns
Structuring Your ETL like a Queue
Performant ETL and SSIS Patterns
Are some new SQL Server features a response to the NoSQL movement?
Will MS Licensing Drive Customers to NoSQL?
MERGE Notes
Final VMS Lessons
More Life Lessons from VMS
Some Life Lessons from VAX/VMS
Lessons Learned from VMS
IOPS
CONNECT BUG: When SET IMPLICIT_TRANSACTIONS ON not every SELECT will start a transaction
CONNECT BUG: sys.dm_tran_active_transactions inconsistently reports the state of transactions
Is a billionaire richer in Bucharest or Philly?
Useless Unit Tests
Paradox of Unit Testing?
You're Only As Good As Your Last Success
Putt's Law
The Wooden Badger
What Goes Around Comes Around
Schema-less solutions may need a little more schema after all
Just How Expensive is a Bookmark Lookup in a Query Plan
Just How Expensive is a Sort Operator in a Query Plan
Adding a Server to Central Management Server from TSQL
BGP and BGPSec...you really should care about this
They Should Call Them Evil Spools
SCHEMABINDING Performance Considerations
ALTER SCHEMA TRANSFER for Zero Downtime Database Upgrades
TSQL Unit Testing Tool Comparisons
Autonomous Transactions
How Big is a BIGINT?
sys.dm_db_index_usage_stats
Object Relational Mappers Series - So You Want to Use an ORM Anyway
Object Relational Mappers Series - The UnGodly GUID
The Netflix Culture
Object Relational Mappers Series - The SELECT * Problem
More on the Halloween Problem
CREATE or REPLACE pattern for Transact SQL
Object Relational Mappers Series - The N+1 SELECTs Problem
Object Relational Mappers Series - Is Your ORM Eager to be Lazy
Object Relational Mappers Series - The Caching Conundrum
Eager Spools in Query Plans and the Halloween Problem
Object Relational Mappers Series - Concurrency and the Non-Updating Update
Service Broker Tickling OR How to Run a Procedure Asynchronously Every x Seconds
Object Relational Mappers Series - JOINs vs IN Clauses
Service Broker Monitoring Routine
Object Relational Mappers Series - Polymorphism Problems
Object Relational Mappers Series - Entity Navigation vs Entity Query
Object Relational Mappers Series - Using Proprietary Features of Your RDBMS Incorrectly
Service Broker Setup Routine
Service Broker Presentation
When to Use the EXCEPT Operator
Object Relational Mappers Series - More On Proprietary Query Languages
Object Relational Mappers Series - Goofy Syntax
Blocking and Contention with sysjobhistory
Object Relational Mappers Series - The Most Egregious Issues
Object Relational Mappers Series - Arguments for an ORM
Object Relational Mappers Series - Overview
Myths: SQL Server Index Fragmentation and REORG vs REBUILD
Parallelism and Query Tuning
C1 Transitions may be hurting your server's performance
SQL Server: Get the Actual SQL from a Prepared Execution Call
Managing Developers...Part 10...Summary and Next Steps
Managing Developers...Part 9...Developers Who Refuse to Learn the Business
Managing Developers...Part 8...Dealing with a Productive Staff that Loves You
Managing Developers...Part 7...Anarchist Tendencies
Find Cached Query Plans Containing the Given SQL Text
Managing Developers...Part 6...Spotlight-er Issues
Useful SSMS Regular Expressions
Managing Developers...Part 5...Dealing with Cry Babies
Buffer Pool Health
Second System Syndrome
Managing Developers...Part 4...Dealing with Ego Issues
IOPS Guidance
Managing Developers...Part 3...the Benevolent Dictator
Retrieve the Query Plan from the Cache for a Given Stored Procedure
Managing Developers...Part 2...Respect Issues
Managing Developers...Part 1
Latency and IOPs
Most Important Missing Indexes
SQL Server 2012 Licensing Model Changes
When NOT to index a Foreign Key
Data Contracts for Stored Procedures
Pattern: Overcoming Deferred Name Resolution When Using Stored Procs for Code Reusability
SQL Server Mutexes and Data Caches
EAGER Spools, Lock Escalations, and Optional Parameters
UPDATE FROM syntax and LEFT JOINs and ambiguity
SOA AntiPatterns for the Data Architect
The Problems with the Missing Index DMVs
Independent Consulting Summary
SIMPLE IRAs
Hiring Your Family
Life Insurance Premiums
Health Insurance Premiums
Home Office Deduction
Business Expenses
Tax Procedures
LLC Vs S Corp
Some Tax Basics For IT Consultants
Independent Consulting - the setup
How to Handle Interviews - Turnoffs
My Interview Brain Teasers Part 4
My Interview Brain Teasers Part 3
My Interview Brain Teasers Part 2
My Interview Brain Teasers Part 1
How to Handle Interviews
Physical Data Modeling AntiPatterns - circular references
Physical Data Modeling AntiPatterns - XML as a persistence mechanism
Physical Data Modeling AntiPatterns - column values with different meanings
Physical Data Modeling AntiPatterns - MUCK table designs
Zero Downtime Initiative Skunkworks Project
Physical Data Modeling AntiPatterns - dynamic data structures
Physical Data Modeling AntiPatterns - the misuse of BIT flags
Physical Data Modeling AntiPatterns Series
TSQL Autonomous Transactions or Another Reason I Like PLSQL over TSQL