stringtranslate.com

Идентификатор снежинки

Компоненты идентификатора снежинки в двоичном формате

Snowflake ID , или снежинки , — это форма уникального идентификатора, используемого в распределенных вычислениях . Формат был создан Twitter (теперь X) и используется для идентификаторов твитов. [1] Широко распространено мнение, что каждая снежинка имеет уникальную структуру, поэтому они получили название «snowflake ID». Формат был принят другими компаниями, включая Discord и Instagram . Социальная сеть Mastodon использует модифицированную версию.

Формат

Снежинки — это 64 бита в двоичном формате. (Только 63 бита используются для размещения в знаковом целом числе .) Первые 41 бит — это временная метка , представляющая миллисекунды с выбранной эпохи . Следующие 10 бит представляют идентификатор машины, предотвращая конфликты. Еще двенадцать бит представляют порядковый номер для каждой машины, что позволяет создавать несколько снежинок за одну миллисекунду. Конечное число обычно сериализуется в десятичном формате. [2]

Снежинки можно сортировать по времени, поскольку они основаны на времени их создания. [2] Кроме того, время создания снежинки можно вычислить по самой снежинке. Это можно использовать для получения снежинок (и связанных с ними объектов), которые были созданы до или после определенной даты. [3]

Пример

Твит, опубликованный @Wikipedia в июне 2022 года [4] , имеет идентификатор снежинки 1541815603606036480. Число можно преобразовать в двоичный код как 00 0001 0101 0110 0101 1010 0001 0001 1111 0110 0010 00|01 0111 1010|0000 0000 0000 , с символами вертикальной черты, обозначающими три части идентификатора.

Использование

Формат был впервые анонсирован X/Twitter в июне 2010 года. [1] Из-за проблем с реализацией они отложили выпуск обновления до конца года. [6]

Смотрите также

Ссылки

  1. ^ ab King, Ryan (1 июня 2010 г.). «Анонс Snowflake». blog.twitter.com . Twitter . Получено 18 января 2021 г. .
  2. ^ ab "twitter-archive/snowflake at b3f6a3c6ca". GitHub . 1 октября 2012 г. Получено 18 января 2021 г. .
  3. ^ ab "API Reference". Discord Developer Portal . Discord . Получено 18 января 2021 г. .
  4. ^ @Wikipedia (28 июня 2022 г.). «53 года назад в этот день члены сообщества ЛГБТКИ+ начали протестовать в Нью-Йорке в ответ на полицейский рейд в Stonewall Inn, популярном гей-баре. Беспорядки стали преобразующим событием в борьбе за права ЛГБТКИ+ в США в XX веке. (1/2)» ( Твит ) – через Twitter .
  5. ^ "2019-08-03: TweetedAt: Поиск временных меток твитов для идентификаторов твитов до и после Snowflake". 2019-08-03 .
  6. ^ Siegler, MG (12 октября 2010 г.). «Идентификаторы твитов могут перепутаться в метели, поскольку Snowflake готовится к запуску в прямом эфире». TechCrunch . Получено 18 января 2021 г.
  7. ^ "Twitter IDs". Разработчик Twitter . Twitter . Получено 20 января 2021 г. .
  8. ^ "Sharding & IDs at Instagram". Instagram Engineering . 2 мая 2016 г. Получено 18 января 2021 г.
  9. ^ Исходный код mastodon/mastodon, Mastodon, 11 ноября 2022 г. , получено 11 ноября 2022 г.

Внешние ссылки