• Automated Builds on Docker Hub

    One of the things that gives me pause when looking at images on Docker Hub is that number of Docker images that aren’t open source. It is critical that I see the Dockerfile before loading something up on my machine. For most of these, it is not difficult to find the associated github repo. It is even better to set up an automated build process, so when code is pushed to the github repo, Docker hub kicks off an image build.
  • Docker Cluster for MySQL and Adjacent Technologies

    After a bit of architectural refactoring, I have the framework set up for a Docker cluster of MySQL nodes plus adjacent technologies like Proxysql and Hashicorp Vault. You can find that on Github here. At the Triangle MySQL meetup last night, where I led a workshop on setting up a local Docker environment, I gathered a few other great ideas to add to the framework. The next container group added will be MariaDB AX (the column store for analytics).
  • Duplicate Indexes in MySQL

    I’ve done dutiful DBA work in the past to identify and remove what are commonly called duplicate indexes. That is, those indexes that look like (a) and (a,b). The thought is that a query will utilize an index as easily on (a) as on (a,b), and removing (a) will save storage cost and write performance. I’ve had the experience, though, of removing (a) and seeing performance tank. Why do we sometimes want to keep duplicate indexes?
  • ghost tokudb

    I keep finding new chances to use gh-ost online schema change tool, and thinking I might find a case it won’t work. Today I tested it on a TokuDB setup. Worked fine. This makes for an uninteresting (but satisfying) blog post. “Tried new gh-ost scenario; worked fine.”
  • sysbench1.0

    I started the week working on my stressout database stress testing tool (with real traffic).

    The goal for this weekend was to feed the generated lua scripts to sysbench. But what is this? There is a new sysbench!

  • Little Dutch Boy

    I was reflecting on some early DBA automation scripts I created in bash. This one was targeted to stopping a particular problem the app caused when a piece of Javascript got stuck and sent hundreds – in some cases, over 10,000 – of the same query to the database. It was obviously a temporary fix until dev could roll out a fix.

    I called it Little Dutch Boy for obvious reasons. He used his finger to stop a flood? Get it? OK, it amused me. More importantly, it allowed the ops team to not get woken up repeatedly.

  • Open Source Volunteer

    Encouraging to see so many bright students this morning signing in at #OpenSource101 to learn about open source tools and processes. — Data In, Data Out (@dataindataout) February 4, 2017
  • New MongoDB Courses

    New MongoDB University courses! I’ve raved about the MongoDB courseware before. Happy to see some new courses, highly relevant to ops. I’ve signed up for these: M310: MongoDB Security Learn how to use MongoDB’s native and third-party integration security features and resources. This course will provide you with the knowledge to create secured deployments of MongoDB for production-ready environments. M210: MongoDB Performance Learn how to optimize the performance of your MongoDB deployment.