Zum Inhalt springen
100% lokal

Snowflake-ID-Decoder

Zerlege eine 64-Bit-Snowflake-ID in ihre Zeitstempel-, Maschinen- und Sequenzfelder.

Eingabe
Ausgabe

Snowflake-ID-Decoder

Füge eine oder mehrere Snowflake-IDs ein — die 64-Bit-Identifikatoren, die von Twitter, Discord, Instagram, Mastodon und unzähligen internen Systemen nach diesem Vorbild verwendet werden — und dieses Tool zerlegt jede einzelne in ihren Zeitstempel, ihre Maschinenidentifikatoren und ihre Sequenznummer. Jeder Dienst weist einem Datenelement (ein Tweet, eine Discord-Nachricht, eine Datenbankzeile) eine Snowflake-ID zu, damit IDs chronologisch sortiert werden und von vielen Maschinen gleichzeitig generiert werden können, ohne dass eine Koordination erforderlich ist.

Wähle unter Epoch / Format den Epoch aus, der zu deiner Quelle passt: Twitter und Discord verwenden dasselbe Bit-Layout, aber unterschiedliche Startdaten, Instagram verteilt seine Bits unterschiedlich (ein breiteres Shard-Feld, keine separate Worker-ID), und Mastodon verzichtet ganz auf Maschinenfelder zugunsten eines einfachen Millisekundenzeitstempels plus Sequenz. Wähle Benutzerdefiniert und gib deine eigene Epoch in Unix-Millisekunden für jedes andere Snowflake-ähnliche Schema an. Lokalzeit anzeigen fügt neben dem UTC-Zeitstempel auch deine eigene Zeitzone hinzu, und Binäre Aufschlüsselung anzeigen gibt die rohen Bit-Gruppen aus, damit du genau sehen kannst, welche Bits welches Feld tragen.

Wechsle die Richtung zu Datum → Grenz-ID, um es anders herum zu tun: Gib ein Datum ein (einfach 2026-08-11 oder ein vollständiger ISO-8601-Zeitstempel) und erhalte die kleinste und größte Snowflake-ID, die für diese Millisekunde existieren könnte — das Paar, das die meisten APIs als 'vorher'/'nachher'-Cursor bei der Paginierung nach ID anstelle von Seitennummer erwarten. Jede Zeile wird unabhängig verarbeitet, sodass du ein ganzes Protokoll von IDs oder Grenzen für eine ganze Liste von Daten in einem Durchgang dekodieren oder generieren kannst. Das Tool validiert, dass jeder Wert in einen 64-Bit-Snowflake passt, und meldet ungültige oder außerhalb des Bereichs liegende Zeilen, anstatt sie stillschweigend zu überspringen.

Alles läuft lokal in deinem Browser — eingefügte IDs, Daten und jede benutzerdefinierte Epoch verlassen dein Gerät nie, daher ist es sicher, sie mit Produktionsdaten zu verwenden. Kopiere das Ergebnis, lade es als .txt-Datei herunter oder sende es direkt an die Eingabe eines anderen Tools, um es weiter zu bearbeiten.

Häufige Fragen

Was ist eine Snowflake-ID?
Eine 64-Bit-Zahl, die einen Millisekundenzeitstempel, einen oder zwei Maschinenidentifikatoren und einen Sequenzzähler pro Millisekunde in einer einzigen sortierbaren Ganzzahl packt. Twitter führte das Schema ein; Discord, Instagram, Mastodon und viele interne Systeme verwenden Varianten davon.
Warum brauchen Twitter- und Discord-IDs unterschiedliche Einstellungen?
Sie verwenden dasselbe Bit-Layout, aber zählen Millisekunden von unterschiedlichen Ausgangspunkten — Twitters Epoch beginnt im November 2010, Discords im Januar 2015. Die Auswahl der falschen ergibt einen Zeitstempel, der um Jahre versetzt ist.
Was ist der Unterschied zwischen Dekodieren und der Grenz-ID-Richtung?
Dekodieren liest eine vorhandene ID zurück in ihre Felder. Die Grenz-Richtung macht das Gegenteil: Bei einer bestimmten Datum erstellt sie die kleinste und größte ID, die dieser Zeitstempel hätte produzieren können, die viele APIs als Paginierungscursor verwenden.
Warum zeigt Instagram ein Shard, aber kein separates Worker-Feld?
Instagrams Format ordnet mehr Bits einem einzelnen Shard-Identifikator zu, anstatt eine Datencenter-ID und eine Worker-ID wie Twitter und Discord zu teilen — ein absichtlicher Unterschied im Design, keine Dekodierungslücke.
Werden meine Daten irgendwo hochgeladen?
Nein. Jede ID, jedes Datum und jede benutzerdefinierte Epoch, die du eingibst, wird vollständig in deinem Browser verarbeitet und nie an einen Server gesendet.