ulid-mssql VS Ulid

Compare ulid-mssql vs Ulid and see what are their differences.

ulid-mssql

Implementation of ULID generator For Microsoft SQL Server (by rmalayter)

Ulid

Fast .NET C# Implementation of ULID for .NET and Unity. (by Cysharp)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
ulid-mssql Ulid
1 2
40 832
- 4.3%
4.2 5.9
4 months ago 9 days ago
TSQL C#
Apache License 2.0 MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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-mssql

Posts with mentions or reviews of ulid-mssql. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-08-06.
  • New UUID Formats – IETF Draft
    11 projects | news.ycombinator.com | 6 Aug 2021
    Yeah, it's a small world.

    I actually took the opposite path and explored several of the micro-optimized ULID libraries in C# before settling down with NUlid which I decided had the cleanest API and documentation (and reasonably good response times to GitHub issues). The implementation of Cysharp's lib has a lot of Unsafe code, which I understand why they took that path (given the focus on Unity code), but I'm hesitant about it and I liked a lot better (conceptually) how much more Span code mcb2001's CSharp.Ulid library had and if I were to micro-optimize a library that's much more the path that I would take. (But so far micro-optimizations of that sort haven't been a priority in my real world usage and I'll take the well tested library with the nice API.) I created a couple simple extension methods to do the specific "ToSqlGuid()" and "ToUlidFromSql()" that I desired for the SQL Server sort order. (Which is just shuffling the first six bytes of a ULID byte array to the end of the GUID byte array and vice versa.)

    I actually trust that I can at least generate ULIDs in SQL Server, again because the part I care to be sorted/needs to be correct (the timestamp) fits into the non-endian-issue portion of a GUID in SQL Server. I've been using just the generator function from ulid-mssql [1] (I used it mostly just for DB migrations and it was nice to have for that). It was debugging the endian issues and Base-32 encoding issues of the "ULID GUID to string" functions where I gave up and decided I didn't trust doing that in database.

    [1] https://github.com/rmalayter/ulid-mssql

Ulid

Posts with mentions or reviews of Ulid. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-12-28.
  • How to use performant Guid as primary keys in databases. UUID Version 7 to the rescue!
    5 projects | /r/dotnet | 28 Dec 2022
    Side note, an interesting thing to add to your benchmarks would be ULID https://github.com/Cysharp/Ulid
  • New UUID Formats – IETF Draft
    11 projects | news.ycombinator.com | 6 Aug 2021
    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

What are some alternatives?

When comparing ulid-mssql and Ulid you can also consider the following projects:

ksuid - K-Sortable Globally Unique IDs

uuid6-ietf-draft - Next Generation UUID Formats

uulid.go - ULID-UUID compatibility library for generating and parsing ULIDs.

lexid - fast lexicographically orderable/sortable ID generator

Entity Framework - EF Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations.

shortuuid.rb - Convert UUIDs & numbers into space efficient and URL-safe Base62 strings, or any other alphabet.

shortuuid - A generator library for concise, unambiguous and URL-safe UUIDs.

shortuuid.go - Encode large numbers and UUIDs into space efficient strings