RSSAmplifier

Blog

J. Andrew Rogers

jandrewrogers.comRSS feed ↗6 posts

Latest posts

AquaHash: Fast Hashing With AES Intrinsics

AquaHash is a 128-bit non-cryptographic hash function that delivers state-of-the-art performance across all key sizes. The algorithm employs a novel construction based on AES intrinsics. Source code is available under the Apache License. Performance The AquaHash algorithm is a seamless composite of two algorithms that deliver exceptional performance for large keys and small keys respectively. The…

Fast Perfect Hashing Of Integral Types

A perfect hash function is one that is collision-free. By implication, the hash must be at least as many bytes as the key and the function is theoretically reversible, though not always tractably so. In other words, perfect hashing is a special case of encryption. Because the hash is no smaller than the key, the primary use case is randomizing small values like integral types. Below I describe an…

Temporary Blogging Hiatus Is Over

After taking a few years to rethink several strategic objectives and longterm projects, I’m back. And with a bigger backlog of content than ever.

SpaceCurve: An Unique And Fast Geospatial Database

The design of SpaceCurve has been the object of speculation for many years. SpaceCurve was created to provide a real-time, continuously updated, perpetually logged data view of everything that happens in the physical world for analysis at extreme scales. The term “database” is used loosely. In principle, a single dense rack of commodity Linux servers can do the following simultaneously:…

MetroHash: Faster, Better Hash Functions

MetroHash is a set of state-of-the-art hash functions for non-cryptographic use cases. They are notable for being algorithmically generated in addition to their exceptional performance. Get the source here . The set of published hash functions may expand in the future. Fastest general-purpose algorithms for bulk hashing Fastest general-purpose algorithms for small, variable length keys Excellent…

Why Are Geospatial Databases So Hard To Build?

In 2005, I decided to design my first geospatial database engine. PostGIS was unable to keep up with the modest volumes of sensor data I was working with and while I was new to geospatial data, I had skill designing database engines. It seemed simple enough to get the scale and performance I required. Nothing could have been further from the truth and the reasons were rarely obvious. Most software…