Szukaj narzędzi

Szybkie wyszukiwanie narzędzi

Generator UUID v7

Generuj UUID v7 oparte na znaczniku czasu Unix, z właściwością monotonicznego wzrostu.

Wprowadzenie do UUID v7
UUID v7 to nowa generacja czasowych UUID, używająca znacznika czasu Unix z dokładnością do milisekund jako najbardziej znaczących bitów, wraz z danymi losowymi. Zapewnia globalną kolejność i właściwość monotonicznego wzrostu.
Cechy znacznika czasu
UUID v7 używa znacznika czasu Unix z dokładnością do milisekund jako najbardziej znaczących bitów (pierwsze 48 bitów), co sprawia, że sortowanie leksykograficzne również sortuje je według czasu, co jest bardzo korzystne dla indeksów baz danych i zapytań czasowych.
v7 vs v6
UUID v7 i v6 mają na celu dostarczenie UUID sortowanych według czasu, ale v7 używa znacznika czasu Unix zamiast specyficznego formatu używanego przez v1/v6. v7 jest prostsze i bardziej spójne z istniejącymi reprezentacjami czasu, będąc zalecanym wyborem dla nowych systemów.
Zastosowania
UUID v7 jest odpowiedni dla scenariuszy wymagających globalnie unikalnych i czasowo uporządkowanych identyfikatorów, takich jak identyfikatory zdarzeń w systemach rozproszonych, klucze główne baz danych, rekordy dziennika itp. Szczególnie odpowiedni dla aplikacji wymagających zapytań lub sortowania według czasu tworzenia.
Status implementacji
UUID v7 to obecnie nowa wersja UUID definiowana w szkicu IETF, jeszcze nie będąca formalnym standardem, ale jej projekt jest względnie stabilny i jest coraz częściej adoptowana przez biblioteki i frameworki.
Gwarancja monotoniczności
UUID v7, poprzez użycie najpierw znacznika czasu, a następnie danych losowych, zapewnia właściwość globalnego monotonicznego wzrostu. To sprawia, że jest szczególnie odpowiedni jako klucz główny bazy danych, mogąc uniknąć problemów z losowym wstawianiem w indeksach B-tree.