Company
Date Published
Author
Raymond Tukpe
Word count
1056
Language
English
Hacker News points
None

Summary

Convoy has transitioned its datastore from MongoDB to Postgres, changing its ID format from UUIDv4 to ULID to improve system performance and scalability. This update affects both cloud and self-hosted users, addressing the need for lexicographically sortable identifiers that enhance cursor-based pagination, especially significant when managing large datasets. While UUIDv4 is a widely recognized format due to its large namespace and randomness, ULID offers unique advantages, including better indexing with B-Trees, URL friendliness, and millisecond-level uniqueness. The change supports the company's vision of scaling efficiently, despite the slower generation speed of ULIDs compared to UUIDv4, by providing sortable, globally unique identifiers. Convoy ensures backward compatibility and minimal user disruption during this transition, with provisions for users running older versions and guidelines to maintain pagination accuracy.