As we have been talking about different ways of optimizing database queries it reminded me of different ways to optimize application performance when it comes to returning data to the application tier. There are two schools of thought with different strategies. Some applications retrieve data on demand, a lazy load approach. Others may choose to use a approach, retrieving lots […]
Author: Ben Taylor
Don’t Assume It’s the Database
What I’m going to write today is pretty obvious. However, I can’t believe how often I get it wrong. When applications begin to have performance issues…what is the first thing you suspect? In many cases the immediate suspect is the database. What’s interesting to me is that the last few times I have been working with systems supported by SQL […]
Can Entity Framework Performance Compete With a Custom ORM Implementation?
I’m having a hard time realizing what I am going to write today. It goes against what I have experienced for years. And it explains why some of our auto generated tools have continued to be adopted. I shared some tips on optimizing data transformations for an MVC application where the data returned to the client is shaped according to […]
Optimizing Data Transformations
AutoMap is a Dot Net library used to transform data model objects to and from data transfer objects. It uses a fluent syntax, helping you manage your data conversion efficiently. Personally, I don’t find it any more efficient that rolling your own transformation methods. However, the standardized way in which it is implemented, and the widespread use of this library […]
SqLite and Dot net
Today I was working with an application where I create a SqLite database for an embedded device. I’ve been using the System.Data.SqLite package started on SourceForge years ago. It provides dot net device drivers for SqLite, implementing the Ado.Net interfaces, allowing me to work with a database using traditional Ado.Net code. The library also supports Entity Framework, should you need […]
What’s In A Name?
I’ve had the pleasure (great deal of sarcasm intended) of recently working with a legacy system where the database objects are limited to 8 or less characters. Table names are often numbered. Column names use some abbreviations in an effort to provide the illuminated with some meaning. To work with these databases a person requires a special decoder ring to […]
What Do I Need To Know?
I’ve been thinking about what would be the most essential skills when working with relational databases. I’d probably break it down into two key capabilities, when it comes to developing performant code. I’d start with a good understanding of relational design. It’s important to know the different forms of normalization, and understand when it is best to apply the more […]
Closing the Loop on Locking
When optimizing an OLTP database, one of the key performance issues is to isolate the writes from the reads. We’ve been talking about using Immutable data as a way to keep reads from blocking writes, by reading without locks, etc. Today I want to talk about another method that works rather well. Even if you use database locking, and have […]
More Immutability
Lots of comments were made regarding immutable of data in a database. Everything prompts me to think further on the topic, as well as provide some clarification. AZ Jim’s comment compares immutable data to that of slowing changing dimensions or facts in a data warehouse. While this is very similar in concept to immutable data, the intention is not exactly […]
Immutable Data
Is there such a thing as immutable data in a relational database? Immutable data is not a term usually applied to a database, it is more of an Object oriented term. Immutable objects are those objects where he values (properties) of an object may not be modified after it is instantiated. The properties may only be set through construction. Once […]