Splitting Light: Season 2 - Episode 33


Splitting light

Season 2 Episode 33

Over-engineering bandwidth

If you are no longer interested in the newsletter, please unsubscribe

Late February 2019


The second element was to bill the bandwidth. Specifically the outgoing one.

In my original design of the billing component I had thought that we needed a “high performing” database to handle the bandwidth calculations. I had chosen ScyllaDB because friends had good things to say about it. It was a reimplementation of Cassandra but in C++. The problem, for us, was that no one in the team had used Cassandra or ScyllaDB in the first place. We had to learn how to install it, how to connect to it and how to perform requests to it.

The idea behind using that database was to capture every request’s metadata. For a GET that would be the number of bytes from a bucket sent back. Store this metadata and then process it aggregated according to IP ranges. With this we could bill depending on the destination IP range.

Marian (a) worked on this. It was not easy. The querying syntax was harder. My instructions were not clear. The other element was actually capturing those metadata. This required careful hooking into the OpenStack code. We would send the metadata over UDP, for the same reason as logs. I would rather have a free working cluster than a paying non-functioning one. When Alexandre (b) stepped in to help, he assessed that we didn’t need ScyllaDB. So we swapped it for a postgres. Simple database, simple inserts.

I remember creating the query to aggregate requests based on the bucket and user identifier. Bucketing the data by ip range. It was not a simple request but it worked. I had exported the ranges from the DCIM and inserted them inside the postgres database.

Why did we want to capture and then process? Why did we want a two step logic? That was in case we made a mistake with IP ranges. We would be able to re-compute the aggregated telemetry. We quickly pushed to production.

I was disappointed in Marian. But that was entirely my fault. I had too high expectations for a student. I had pushed a very complex subject to him. With no help. Maybe part of it was the competition between Epitech and School 42? I thought because he was from Epitech he would have succeeded in doing a very senior task?

The real problem was that I didn’t allocate time and attention properly. It’s now my deepest regret of that first half of 2019. Not taking the time to lift people up to their potential.

Next we needed to push Paris forward.

(1) Picture of Scaleway’s Lille office: https://officesnapshots.com/2019/09/16/scaleway-offices-lille/

(a) Marian Gappa: then part time intern, now DevOps consultant at Zenika

(b) Alexandre Merle: then DevOps, now Software engineer

If you have missed it, you can read the previous episode here

To pair with :

  • All your love - Jakob
  • Confessions d'une Glitter Addict (Not translated to English) by Diglee

Vincent Auclair

Connect with me on your favorite network!

Oud metha, Dubai, Dubai 00000
Unsubscribe · Preferences

Symbol Sled

Business, tech, and life by a nerd. New every Tuesday: Splitting Light: The Prism of Growth and Discovery.

Read more from Symbol Sled

Splitting light Season 2 Episode 39 Next steps If you are no longer interested in the newsletter, please unsubscribe Around end of May 2019 We continued to push forward. Our next enemy in the path, our next boss in our raid, was lifecycle policy. Now that we had both Object Storage and Cold Storage, as in Carbon14, we could link them together. The damaged dealers started to hit it. Nicolas (a) and Louis (b) worked on making this happen. It was a multi-step journey. The preparations started...

Splitting light Season 2 Episode 38 Tech debt is meaningless If you are no longer interested in the newsletter, please unsubscribe End of May 2019 A very common term in tech is tech debt. It is used in many contexts. But many times as a scarecrow. But what is it really? Tech debt is usually shortcuts that were taken at some point. Things that are not in optimal state. As I understand it, the expression is used when the engineers have some house cleaning to do. The problem is, when you talk to...

Splitting light Season 2 Episode 37 Hardware made redundant If you are no longer interested in the newsletter, please unsubscribe Around May 2019 In May 2019, the hardware lab’s C3 was in production. It was the third generation compute hardware. The last one I had worked on before switching to storage. There was an issue with the compute node. How it had been fitted with RAM and storage created a voltage drop in certain conditions and that would shut the node down. A capacitor had to be...