As part of a recent personal journey to better understand databases and better learn Rust, I have recently took on the project of writing a simple key-value storage engine. Crazy, right? Lets get started!
The first thing one must think of when writing a key-value storage engine is -”How should I store my data so that I can perform reads and writes efficiently?”; The two most common approaches for storing data on disk are B-Trees and LSM Trees.
BTrees have been around for five decades and are used in “traditional” SQL databases such as PostgreSQL as an index on tables…
I have been writing Go professionally for about two years now as part of a large corporation. Recently I have decided to pick up Rust; I started the way I usually approach picking up new languages — Writing a small project while reading the documentation (in this case — the Rust book).
My first impression of the language was how “large” and verbose it is compared to Go. It took me a month and a half to finish “The Book”. For comparison, “A tour of Go” took me about a week. Go is simply a “smaller” language with less features…
The simplest way to setup Openshift locally is using “CodeReady Containers”. It provides a minimal “Openshift 4” installation on a VM running locally. Follow the steps in the link above to setup you’re cluster.
To set up Prometheus lets first create a namespace for it:
oc new-project monitoring && oc project monitoring
Next, we need to deploy Prometheus:
oc new-app prom/prometheus
The above command will pull the latest Prometheus image to our clusters registry and create a “Deployment” of a single pod running Prometheus.