Możesz spróbować użyć pierwszych 4 bajtów ObjectID (będą one reprezentować znacznik czasu).
Ale, aby być w 100% bezpiecznym, lepiej jest stworzyć naprawdę unikalny krótki id poprzez zaimplementowanie licznika. Możesz użyć oddzielnej kolekcji, aby utrzymać aktualną wartość swojego licznika.
Więcej szczegółów na temat struktury ObjectID firmy mongo można znaleźć tutaj:http://www.mongodb. org/display/DOCS/identyfikatory+obiektów
Alternatywnie można przekonwertować konwersję reprezentacji identyfikatora ciągu szesnastkowego na reprezentację opartą na 36 symbolach (26 liter łacińskich + 10 cyfr). Oczywiście będzie krótsza.
Wygląda na to, że istnieje biblioteka ruby, która potrafi wykonać takie konwersje http://rubyworks.github.com /podstawa/