Craig Labenz

Software Developer

  • Home

    About

    Archive

    Contact Me

My Projects

Grapevine - django email

Okapi - python game framework

Dominion Kingdoms - deck-building site

War of Kings Resource Manager - a way to speed up my favorite board game

This site - simple django-powered blog

Elsewhere

Hello! I'm Craig, and I'm a Michigan-based software developer for Zapier.com. In my free time I like to over-engineer email solutions for django, under-engineer Kivy tools, and play lots and lots of ultimate frisbee.

  • How I Made the Django Admin Scale for Stik.com

    WEDNESDAY JUNE 12 2013 mysql django big-data

    At Stik.com, we're using Django to supply a RESTful interface to our database. Our support staff is also using its admin for simple ticket items. Fortunately for the business, but unfortunately for the Django admin, we have lots of tables with hundreds of millions of rows, and a few in the billions. We really didn't want to spend the time writing our own admin section for support staff, so the Django admin was a godsend... until we rolled it out to production and saw admin pages never respond ever. Read on to see what our problem was and how we fixed it.

    The problem(s):

    Large tables in InnoDB may not be able to even render their change_list view due to (possibly 2) expensive COUNT(*) queries. With tables of 100M+ records, this can take 15+ minutes to complete, even on fast servers.

    READ MORE