Aplikacja utrzymuje pole Guid w Mongo i kończy się przechowywane jako BinData:Jakie są wady przechowywania Guid jako String w MongoDB?
"_id" : new BinData(3, "WBAc3FDBDU+Zh/cBQFPc3Q==")
Zaletą w tym przypadku jest zwartość wadą pojawia się, gdy trzeba rozwiązywać aplikacji. Guidy są przekazywane za pośrednictwem URL-i i ciągle zmieniając je na BinData, kiedy przechodzenie do konsoli Mongo jest trochę bolesne.
Jakie są niedogodności związane z przechowywaniem Guida jako ciągu oprócz zwiększenia jego rozmiaru? Jedną z zalet jest łatwość rozwiązywania problemów:
"_id" : "3c901cac-5b90-4a09-896c-00e4779a9199"
Oto prototyp uporczywego podmiotu w C#:
class Thing
{
[BsonIgnore]
public Guid Id { get; set; }
[BsonId]
public string DontUseInAppMongoId
{
get { return Id.ToString(); }
set { Id = Guid.Parse(value); }
}
}
pamięć, przestrzeń i czas zapytań i wielkość indeksu to tylko niektóre, co można zrobić, aby zoptymalizować to: http://www.mongodb.org/display/DOCS/Optimizing+Object+IDs#OptimizingObjectIDs-StoreBinaryGUIDsasBinData % 2Cratherthanashexencodedstrings – Sammaye
Co tak naprawdę robisz, przepraszam, nie przeczytałem w pełni pytania. – Sammaye
możesz sprawdzić odpowiedź na pokrewne moje pytanie: http://stackoverflow.com/a/22607171/253098 – SystematicFrank