laurent's blog

WiredTiger performance review

Following my port of WiredTiger on .NET and the fix on main issue on Windows, I was able to check the performance of WiredTiger. So does it really shine? Well here are the numbers...

The great

WiredTiger is really optimized for insertion. If your keys are always incrementing, WiredTiger is simple fabulous:

WiredTiger on .Net

EDIT: The library has been updated with WiredTiger 2.5.1

On December 2014, MongoDB announced the acquisition of WiredTiger to use its storage engine in their database. But what is WiredTiger? Is that as good as the graph showed on their main page?

Elias Omega coding in .NET

Elias Omega code is a universal code encoding positive integers developed by Peter Elias. In plain English, it is an efficient way to save and restore non-zero positive integer values on a file or a network stream.

In this post I will explain how this work and provide a .Net implementation.

Arithmetic compression, stochastic matrix and the Bible

Modern lossless compression schemes are based on a 2 steps pipeline:

  • A statistical model of the data to be compressed;
  • An entropy encoder to encode efficiently the source according to the probability of the model

Lossy compression, like MP3 or JPEG, adds a preliminary step where the entropy, its randomness in plain English, of the source is lowered to improve the compression ratio.
For example, let’s say that we have to create a “bible verses transmitter” which goal is to send a verse (a line) in an efficient manner. (I’m using the bible because the text is easy to find in text form and correctly formatted).

Bonus: SQL Server Dijkstra's algorithm

Quick and simple store procedure to get the distance from all nodes of the graph from the database created by the previous post.

Importing Road Map from OpenStreetMap to MS-SQL Server

The goal of the following tool is to import OpenStreetMap extract (in binary or XML format) into SQL Server as coherent geography data. For the impatient, the tool is fully automated and here is the explanation of the GUI:

Efficient WGS84 (aka GPS) coordinates compression

WGS84 coordinates represent the geographic position on earth as two floating numbers representing the latitude (the angle between the location and the equator) and the longitude (the angle between the location and the prime meridian). The angles are always expressed in degree.

The main issue is the precision. How many decimal places are required to keep an acceptable position? Wikipedia records 6 decimal places. OpenStreetMap keeps 7.

How to use Microsoft Windows Web Services API with .NET Web Services with Windows Authentication

Microsoft has released a new native API with Windows 7 for interacting (or creating) Web Services. It was creating for performance and interacting with other Web Service stacks like WCF. This API is called Windows Web Services API and, unfortunately, the documentation is quite poor.

HTTP.SYS authentification with HTTP Server API 2.0

In my last entry, I was detailing how to create a web server with NTLM authentication with HTTP.SYS v1.0. Since then, Microsoft updated the HTTP Server API on Vista for supporting authentication directly. However, the documentation lacks of an explicit example, so I decided to update my code.

Natural Earth Data, ESRI Shapefiles and SQL Server 2012

Natural Earth is a beautiful “free” map built by many volunteers and available for free on their web site. The map is provided as a series of standard ESRI shape files and database in one large zip file. To use this map, I created a tool simple to use (but not trivial to make) that upload Natural Earth directly into SQL Server 2012:

Syndicate content