Cloud Intelligence™
Google BigQuery Data Modeller
Esta página también está disponible en English, Deutsch, Français, Italiano, 日本語 y Português.
About Eben Du Toit
I lead engineering teams in the Partner Channel space, building the tooling that helps customers make sense of their revenue — turning complex partner and billing data into something they can actually see, trust, and act on. The work sits at the intersection of cloud cost management, FinOps, and billing integrations, with data flowing across GCP, BigQuery, MongoDB Atlas, Snowflake, and the wider cloud ecosystem. It's technically meaty, and I love that about it.
My days are split between people and systems — growing and aligning multiple teams, helping the team navigate the environment, hiring, and partnering with stakeholders across the org. I shift between maker mode and manager mode depending on what's needed: sometimes I'm deep in the code building features, sometimes I'm in the room helping my teams move forward. I care a lot about building teams where good engineers can do their best work.
What I work on
Partner Channel engineering and revenue management tooling · Cloud cost management and FinOps · Billing data pipelines and integrations · Engineering leadership, hiring, and team process
Good topics to find me for
Anything Partner Channel, revenue, FinOps, or billing-related · Data engineering and pipeline architecture · Engineering management, hiring, or team culture
Outside work
When I'm not in a terminal, I'm usually behind a camera — shooting on a Nikon Z or whatever vintage film body I'm currently infatuated with. I follow mountain biking and trail running closely, have strong opinions about mechanical keyboards and good stationery, and watch more anime than I probably admit. I also play Rocket League with more optimism than results.
Cape Town · SAST (UTC+2)
My personal page
¿No sabes por dónde empezar a modelar tus datos en Google BigQuery? Aquí te lo mostramos con un repo y un ejemplo sencillos.
Foto de Steady Hand Co. en Unsplash. Ábrete paso entre los datos en bruto por un camino claro.
Hoy en día circula por la red una enorme cantidad de datos desordenados. Y, casi siempre, hay personas muy frustradas preguntándose por dónde empezar a darle sentido a todo esto y, sobre todo, cómo estructurarlo para que sea útil dentro de su empresa.
Aquí te propongo usar un script y un repo sencillos que te permiten enviar tus datos ya limpios como Views a Google BigQuery. Además, puedes apoyarte en el templating de Jinja para facilitarte la vida e incluso predefinir algunas variables si así lo prefieres.
PerfectScale™ for Kubernetes
Ready to optimize?
Get your free Kubernetes savings analysis

¿Cómo funciona?
En un archivo llamado select_101.sql.j2 puedes tener esta consulta:
SELECT {{aNumber}} as numLa referencia del template aNumber se toma de un conjunto predefinido de variables en un archivo de configuración configuration.json:
{ "aNumber": 101}También tienes un archivo de schema llamado select_101.json:
{ "metric": "First example", "metric_description": "Select only a constant number as output", "purpose" : "", "usage_example" : "", "usage_description" : "", "fields": [\```\\```\ {\```\\```\ "field": "num",\```\\```\ "description": "A small number",\```\\```\ "type": "INTEGER",\```\\```\ "typical_values": [ 4 ]\```\\```\ }\```\\```\ ]````}
Ya está todo listo para hacer el deploy a Google BigQuery:
`-m` te permite indicar la métrica a desplegar
`-v` indica que quieres desplegar una view
`-d` recibe tu dataset como input
`-p` recibe tu projectId como input./compile.py -m select_101.sql.j2 -v -d -p
Y este es el resultado:

## Templates dentro de templates…
También puedes incluir un template dentro de otro.
En un archivo llamado `select_101_include.sql.j2` puedes tener esta consulta:SELECT *
FROM (
{% include 'select_101/select_101.sql.j2' %}
)
La consulta se renderiza y se despliega así:SELECT * FROM ( SELECT 101 as num )
¡A modelar se ha dicho!
¿Quieres leer más? Pásate por nuestro [blog](https://doit.com/blog/) o [sigue a Eben en Twitter](https://twitter.com/eebsidian).
Your cloud bill shouldn't be a mystery
Optimization, automation, expertise. In one platform.