Класс MongoId

(Информация о версии неизвестна, возможно, только в SVN)

Введение

Уникальный идентификатор, созданный для объектов базы данных. При добавлении записи в базу данных без поля _id, такое поле будет автоматически добавлено и инициализировано объектом MongoId. Если хранимые записи предположительно и так будут содержать уникальные поля, (такие как имя пользователя или отметку времени), возможно использовать их вместо поля _id , и это не будет изменено MongoId.

Экземпляры класса MongoId выполняют роль автоинкремента реляционных базах данных: обеспечивает кортеж уникальным ключом в случае отсутствия такового. Однако автоинкремент не очень хорошо работает с секционированными (sharded) базами данных, так как в таком случае невозможно обеспечить быстрый поиск следующего инкремента. Данный класс удовлетворяет требованиям к быстрой генерации значения, уникального в пределах секции.

Каждый MongoId состоит из 12 байт (преобразующихся в 24 шестнадцатеричных символа). Первые 4 байта занимает отметка времени, следующие 3 хеш имени хоста клиента, следующие 2 - последние 2 значащих байта идентификатора процесса исполнения скрипта, и последние 2 байта - автоинкрементное значение.

Объекты MongoIdмогуть быть сериализованы и десериализованы. Пример сериализованного значения:

C:7:"MongoId":24:{4af9f23d8ead0e1d32000000}

Обзор классов

MongoId {
public string $MongoId->id = NULL ;
/* Методы */
public MongoId::__construct ([ string $id = NULL ] )
public static string MongoId::getHostname ( void )
public int MongoId::getInc ( void )
public int MongoId::getPID ( void )
public int MongoId::getTimestamp ( void )
public static MongoId MongoId::__set_state ( array $props )
public string MongoId::__toString ( void )
}

Поля

id
Поле содержит строчное представление объекта.

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

Документация MongoDB об » идентификаторах.

Содержание


Участник рейтинга Тэглайн 2010