Software Engineer based in West Michigan
https://dan.drust.dev
dandrust@gmail.com
3 May 2023
Goal: Create a executor pipeline for a simple query
Good progress, and lots of time tonight. I finsihed the sorting/hashing lecture and also watched the single-table queries lecture. The coverage of hashing was quick and made me want to review sorting 🙈 The single-table queries lecture was very enlightening and served as a good call-to-action for my time tonight.
The dataset I’ve been working with has been somewhat limiting to work with in terms of what available to sort, group, etc. - as well as the sheer size. Plus, I’m bored with it. I used the Faker gem to create a bogus users
table with some fun data to play with.
Then I wrote an Aggregator
enumerator class that reads from a source and…counts. So, a very specific aggregator! I followed the pattern that I’ve used so far - a simple class with and initialize
method and nothing more.
I refactored the class to a design that I like a bit better. I’m using instace variables and private methods to make the procedure a bit more expressive (and less cluttered with StopIteration
exception handling 🙌🏻)
So a bit of a divergence from the goal, but still progress! If I can get a simple sort or hash executor written next time I could pull off SELECT state, count(state) FROM users GROUP BY state
. I think I’ll start there.
Written by Dan Drust on 3 May 2023
Continue Reading: Database Daily: Set Up For In-Co…