Database partitioning – Horizontal vs Vertical – Difference between Normalization and Row Splitting?

Partitioning is a rather general concept and can be applied in many contexts. When it considers the partitioning of relational data, it usually refers to decomposing your tables either row-wise (horizontally) or column-wise (vertically). Vertical partitioning, aka row splitting, uses the same splitting techniques as database normalization, but ususally the term (vertical / horizontal) data … Read more

Entity Framework Vs Stored Procedures – Performance Measure

There are some things you can do to optimize your query. Here on MSDN you can find a nice overview. But to be honest, a stored procedure with manual mapping will always be faster in performance. But ask yourself, how important is performance? In most projects, development time is way more important then performance. What … Read more

LOWER LIKE vs iLIKE

The answer depends on many factors like Postgres version, encoding and locale – LC_COLLATE in particular. The bare expression lower(description) LIKE ‘%abc%’ is typically a bit faster than description ILIKE ‘%abc%’, and either is a bit faster than the equivalent regular expression: description ~* ‘abc’. This matters for sequential scans where the expression has to … Read more

How to configure MongoDB Java driver MongoOptions for production use?

Updated to 2.9 : autoConnectRetry simply means the driver will automatically attempt to reconnect to the server(s) after unexpected disconnects. In production environments you usually want this set to true. connectionsPerHost are the amount of physical connections a single Mongo instance (it’s singleton so you usually have one per application) can establish to a mongod/mongos … Read more

Using git repository as a database backend

Answering my own question is not the best thing to do, but, as I ultimately dropped the idea, I’d like to share on the rationale that worked in my case. I’d like to emphasize that this rationale might not apply to all cases, so it’s up to architect to decide. Generally, the first main point … Read more