Skip to main content

Enterprise Application Development with CockroachDB III

A hands-on guide to advanced best practices for application (client-side) transaction handling in CockroachDB.

  • Course Number

  • Self-Paced

  • Estimated Effort

    1.5 hours/week

About This Course

Welcome to Enterprise Application Development with CockroachDB III!

This course equips developers with advanced best practices to master application-level (client-side) transaction management. The advanced best practices in this course will help you to sidestep common application transaction pitfalls with confidence.

In this course, you will:

  • Minimize contention-driven transaction retries using SELECT FOR UPDATE.

  • Reduce the “contention surface” of your application using optimized batched inserts and bulk updates.

  • Minimize the impact of contention leveraging CockroachDB’s AS OF SYSTEM TIME and DB schemas with column families.

The course contains many hands-on exercises, enabling you to apply and evaluate your skills directly.

Examples and exercises are in Java.


It is important to have the following skills before starting this course:

Detailed course outline

  • Minimizing Contention-Driven Retries
    • Lesson - Reducing contention with locks
    • Exercise - SELECT FOR UPDATE to lock on read
    • Quiz - Reducing contention with locks
  • Optimizing Bulk Writes to Reduce Contention Surface
    • Lesson - Making Bulk Writes Efficient Using Primary and Secondary Key Based Splitting
    • Lesson - Using the SQL RETURNING Clause
    • Lesson - Using CockroachDB Bulk I/O
    • Lesson - Using Rewrite Batch Inserts and SQL Array Binding
    • Exercise - Optimizing batched inserts
    • Exercise - Optimizing bulk updates
    • Quiz - Optimizing bulk writes to reduce contention
  • Minimizing the Impact of Contention
    • Lesson - Reads without contention - AS OF SYSTEM TIME
    • Quiz - AS OF SYSTEM TIME
    • Lesson - What is a Column Family?
    • Lesson - Using Column Families to Help Mitigate Contention
    • Quiz - Column Families
    • Exercise - Updating your schema to use Column Families

Course Staff

Kiki Carter
Kiki Carter
Sr. Staff Curriculum Developer @ Cockroach Labs


Frequently Asked Questions

What web browser should I use?

The Open edX platform works best with current versions of Chrome, Edge, Firefox, Internet Explorer, or Safari.

See our list of supported browsers for the most up-to-date information.