Beim Arbeiten mit in Parkettdateien gespeicherten Zeitstempeln stößt man häufig auf Daten, die als int96 dargestellt werden Datentyp. Dieses 12-Byte-Format besteht aus einem Zeitstempel- und einem Datumsteil. Für die Datenmanipulation und -analyse ist es von entscheidender Bedeutung, zu verstehen, wie dieser int96-Zeitstempel in Go in einen Zeitstempel umgewandelt wird.
Der Schlüssel zum Dekodieren eines int96-Zeitstempels liegt im Erkennen seiner Struktur. Die ersten acht Bytes stellen den Zeitstempel als Nanosekunden dar, werden jedoch in umgekehrter Bytereihenfolge gespeichert.
time_nano = ReverseBytes((timestamp[0:8]))
Die restlichen vier Bytes stellen das Datum als julianische Tageszahl dar.
julian_day = ReverseBytes((timestamp[8:12]))
Berücksichtigen Sie den folgenden int96-Zeitstempel: [128, 76, 69, 116, 64, 7, 0, 0, 48, 131, 37, 0].
Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen int96 Parquet-Zeitstempel in Go's time.Time?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!