интересно, что представляет собой массив BSON::ObjectId.id.data?
BSON::ObjectId.id.data
, например [77, 145, 20, 13, 225, 96, 124, 5, 31, 0, 0, 1]
[77, 145, 20, 13, 225, 96, 124, 5, 31, 0, 0, 1]
BSON::ObjectId.id.data представляет 12 байтов objectId. Вот что конкретно означает каждый байт:
0123 456 78 9 10 11 ^^ ^^ ^^ ^^ time machine pid inc
BSON ObjectID является 12-байтовым значением состоящий из 4-байтовой метки времени (секунды с начала эпохи), 3 байта идентификатор машины, двухбайтовый идентификатор процесса и 3-байтовый счетчик. Обратите внимание, что поля отметки времени и счетчика должны быть хранится с прямым порядком байтов в отличие от остальных BSON. Это потому что они сравнивать побайтово и мы хотим обеспечить в основном увеличивающийся заказ.
Документация по ObjectId