Fork me on GitHub


Forget-Table is a database for storing non-stationary categorical distributions that forget old observations responsibly. It has been designed to store millions of distributions and can be written to at a high volume.

"Forgetting" from a distribution is done by simulating a Poisson process with a user-specified rate. This results in equalizing all bins in a distribution such that, if no new observations are added in, the distribution will approach uniform.

Forget-Table is written using a Redis backend. There are go and Python implementations, goforget and pyforget.

Get the code.

Created by Micha Gorelick, Mike Dewar with the help of Dan Frank and all the amazing engineers and scientists at bitly.