Я предполагаю, что вы храните эти контакты, чтобы сформировать какое-то приложение в стиле адресной книги.Исходя из этого предположения, я бы сказал, что ваш второй пример - именно то, что вы хотите делать.С моей точки зрения, каждый «контакт» - это отдельный документ.Все атрибуты этого контакта принадлежат документу.
{
name: "John Smith",
number: "+44 1234 567890"
}
Чтобы продвинуться немного дальше, в будущем вы можете решить, что хотите сохранить несколько номеров на человека, возможно, разных типов.Я бы включил все это в документ для конкретного контакта:
{
name: "John Smith",
numbers: [
{ number: "+44 1234 567890", type: "home" },
{ number: "+44 7798 987654", type: "mobile" },
{ number: "+44 1234 987123", type: "work" }
]
}
Я считаю, что хороший способ подойти к разработке модели для использования в базе данных документов - это рассмотреть, какие элементы вы хотите использовать независимо.Для тех, кто имеет смысл самостоятельно, они, вероятно, должны войти в свой собственный документ.Для тех, которые имеют смысл только при просмотре в контексте их объекта-контейнера, вставьте их в него.
Надеюсь, это поможет вам.