Puoi provare a utilizzare i primi 4 byte di ObjectID (rappresenteranno il timestamp).
Ma, per essere sicuri al 100%, è meglio produrre un ID breve davvero unico, implementando un contatore. Puoi utilizzare la raccolta differenziata per mantenere il valore attuale del tuo contatore.
Maggiori dettagli sulla struttura ObjectID di mongo sono disponibili qui:http://www.mongodb. org/display/DOCS/Object+IDs
In alternativa, puoi convertire la rappresentazione dell'ID di stringa esadecimale convertita in una rappresentazione basata su 36 simboli (26 lettere latine + 10 cifre). Sarà ovviamente più breve.
Sembra che esista una libreria di ruby in grado di eseguire tali conversioni http://rubyworks.github.com /radice/