преимущество обратной метки времени bigtable перед обычной меткой времени

#timestamp #google-cloud-bigtable #bigtable

# #временная метка #google-облако-bigtable #большой стол

Вопрос:

Документы Bigtable говорят:

Изменив временную метку, вы можете создать ключ строки, в котором самое последнее событие отображается в начале таблицы, а не в конце. В результате вы можете получить N самых последних событий, просто извлекая первые N строк таблицы.

Насколько я понимаю, если предположить, что таблицы отсортированы в порядке возрастания, то обычная временная метка будет означать, что последние события будут находиться в конце таблицы, поскольку эти значения увеличиваются, тогда как обратная временная метка будет означать, что недавние события будут находиться в начале таблицы, поскольку эти значения будут уменьшаться. Насколько я понимаю, этот дизайн обратной временной метки использует сортировку по ключу строки таблицы.

Почему существует преимущество сортировки по возрастанию, а не по убыванию — является ли сортировка по возрастанию единственным типом сортировки, поддерживаемым в bigtable? Верны ли приведенные выше слова «Мое понимание»?

Ответ №1:

Да, ваше понимание верно. Облачная Bigtable поддерживает только лексикографически отсортированные ключи. Поэтому вы можете создать ключ, изменив временную метку, чтобы получить N самых последних событий, извлекая первые N строк таблицы.

Хранение данных временных рядов в облачной Bigtable является естественным. Облачная Bigtable хранит данные в виде неструктурированных столбцов в строках; каждая строка имеет ключ строки, а ключи строк сортируются лексикографически

Строки сортируются лексикографически по ключу строки, от строки с наименьшим байтом до строки с наибольшим байтом. Ключи строк сортируются в порядке байтов большого порядка (иногда называемом сетевым порядком байтов), двоичном эквиваленте алфавитного порядка.

Временные ряды и облачная Большая таблица

Разработка вашей схемы

Например, вот как лексикографически сортируются (по возрастанию) эти значения:

 1425330757686
1425330757687
1425330757688
2
3
 

Ответ №2:

Почему сортировка по возрастанию имеет преимущество перед сортировкой по убыванию — является ли сортировка по возрастанию единственным типом сортировки, поддерживаемым в bigtable?

Bigtable сохраняет данные лексикографически «из коробки». Это означает, что ключ «203» будет помещен после «202», но ключ «00202» будет помещен после «203». Вы не можете сортировать данные любым другим способом.

Кроме того, ваше понимание верно. При использовании обратной временной метки недавние события будут в начале таблицы.