UUID в CouchDB

Я задаюсь вопросом о формате, UUID по умолчанию представлены в CouchDB. В то время как RFC 4122 описывает UUID как 550e8400-e29b-11d4-a716-446655440000, CouchDB использует непрерывно символы как 3069197232055d39bc5bc39348a36417. Я искал некоторое время и в их Wiki и в их документации, каково это на самом деле, однако без любого результата.

Вы знаете, является ли это любой не RFC - приспосабливают формату, опускающему все - или это совершенно другое представление 128 битов.

Фон - то, что я использую Java UUID, которые отформатированы, как отмечено в RFC. Я вижу преимущество, что CouchDB-стиль, вероятно, более удобен для создания внутренних деревьев, но я хочу убедиться использовать согласованное внедрение.

11
задан b_erb 25 April 2010 в 11:17
поделиться

1 ответ

Технически мы не используем стандарт rfc для uuid, как вы заметили. Uuid версии четыре резервирует примерно четыре бита для указания версии uuid. Мы также не форматируем их с помощью дефисов, которые обычно встречаются в других реализациях.

UUID CouchDB - это 16 случайных байтов в шестнадцатеричном формате. Грубо говоря, это uuid v4, но не совместимый с RFC.

Независимо от специфики, на практике нет особых проблем. Обычно вам не следует пытаться интерпретировать uuid, если вы не пытаетесь провести какой-то внеполосный анализ. CouchDB никогда не будет интерпретировать uuids, мы полагаемся только на свойства случайности, связанные с ними.

Суть в том, чтобы не беспокоиться об этом и просто рассматривать их как строки после генерации.

12
ответ дан 3 December 2019 в 09:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: