Ответ зависит от того, как вы собираетесь использовать данные. У вас действительно есть 2 варианта, встроить таблицу посещаемости или связать ее. Подробнее об этих подходах подробно здесь: http://www.mongodb.org/display/DOCS/Schema+Design
В случае общего использования вы, вероятно, встраивали бы эту конкретную коллекцию, поэтому в каждой записи учащегося будет встроена таблица «посещаемости». Это сработает, потому что записи о посещаемости вряд ли будут разделены между учащимися, и для извлечения данных о посещаемости, вероятно, также потребуется информация о студентах. Получение данных о посещаемости будет так же просто, как:
db.student.find( { login : "sean" } )
{
login : "sean",
first : "Sean",
last : "Hodges",
attendance : [
{ class : "Maths", when : Date("2011-09-19T04:00:10.112Z") },
{ class : "Science", when : Date("2011-09-20T14:36:06.958Z") }
]
}