Лично аз бих избрал отделна колекция, главно с цел запазване на вашите потребителски/мястони обекти малки, тъй като можете да имате неограничен брой чекини за потребител/място. Ако поставите индекс на user_id/timestamp и place_id/timestamp във вашата колекция за регистриране, тогава заявките за определен потребител или място ще бъдат ефективни. Второ предимство от използването на отделна колекция е, че MongoDB няма да трябва да продължава да премества вашия потребител или обект на място, когато стане твърде голям. Вместо това, той просто ще продължи да добавя към колекцията checkins, което трябва да е доста ефективно (10s от 1000s вмъквания в секунда на шард).
Трябва също да спомена, че не бих съхранявайте идентификаторите за регистрация или в мястото, или в потребителския документ, тъй като получавате същата полза от производителността от наличието на индекс на place_id или user_id в документа за проверки.