Ulid
shortuuid.rb
Ulid | shortuuid.rb | |
---|---|---|
2 | 2 | |
842 | 61 | |
4.3% | - | |
5.9 | 0.0 | |
13 days ago | almost 2 years ago | |
C# | Ruby | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Ulid
-
How to use performant Guid as primary keys in databases. UUID Version 7 to the rescue!
Side note, an interesting thing to add to your benchmarks would be ULID https://github.com/Cysharp/Ulid
-
New UUID Formats – IETF Draft
I’m using Postgres so I actually have it a little easier with its native sort order. I switched from NUlid that I was using from years back to this one [0], and the default .ToGuid() gets the desired sort order when used with Npgsql. Likewise though, no db-side generation of uuid - then again, isn’t that the benefit of using globally unique identifiers in the first place, to avoid needing to rely on the db to generate conflict-free identifiers, skipping HiLo or sequences, etc.
Anyway, nice to meet another .NET Ulid user in the wild!
0: https://github.com/Cysharp/Ulid
shortuuid.rb
- New UUID Formats – IETF Draft
-
A Bit Overcomplicated
At the risk of sounding stupid, I have no idea how bit-shifting and bitwise operators work, though I've worked in the field for over a decade and am now a Staff Engineer or whatever. There, I said it.
It's just something I haven't gotten around to reading yet. I suspect some code would be made clearer by it, but even when doing something similar I wound up using the math textbook was to do it even though I suspect the bit operators would be much faster.
https://github.com/sudhirj/shortuuid.rb/blob/master/lib/shor...
https://github.com/sudhirj/shortuuid.go/blob/master/shortuui...
What are some alternatives?
uuid6-ietf-draft - Next Generation UUID Formats
spec - The canonical spec for ulid
ksuid - K-Sortable Globally Unique IDs
ulid-mssql - Implementation of ULID generator For Microsoft SQL Server
uulid.go - ULID-UUID compatibility library for generating and parsing ULIDs.
Entity Framework - EF Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations.
shortuuid.go - Encode large numbers and UUIDs into space efficient strings
lexid - fast lexicographically orderable/sortable ID generator