У меня есть опыт работы с реляционными базами данных, где атомарность и нормализация являются фундаментальными принципами.
Применяются ли эти принципы также в среде NoSQL?
Посмотрите на следующие способы представления строки на разных языках (в нотации MongoDB):
{
'name': 'label_hello',
'en' : 'hello world!',
'de' : 'hallo welt!',
'es' : 'hola mundo!'
}
или
{
'name' : 'label_hello',
'values': {
'en' : 'hello world!',
'de' : 'hallo welt!',
'es' : 'hola mundo!'
}
}
против. более атомарный вариант:
{
'name' : 'label_hello',
'lang' : 'en',
'value': 'hello world!'
}
{
'name' : 'label_hello',
'lang' : 'de',
'value': 'hallo welt!'
}
{
'name' : 'label_hello',
'lang' : 'es',
'value': 'hola mundo!'
}
Какой из этих проектов будет наиболее оптимальным в мире NoSQL?
Обновление:
Для уточнения моего вопроса:
Я хотел бы знать / понимать такие вещи, как: какой из этих вариантов будет быстрее искать, легче обновлять, увеличивать попадания, которые можно более разумно индексировать?