Sono all'inizio della creazione di un sito Web che utilizza Google Datastore per archiviare le informazioni relative ai clienti e sono curioso di sapere se il record è troppo profondo per NoSQL o se sto bene.
Essenzialmente memorizzerò i dettagli dei clienti in un'azienda di fitness che è abbastanza dettagliata.
Un esempio di record completamente composto potrebbe essere
{
firstName : "Jon",
lastName : "Doe",
assessment : [
{
date: "2013-01-31",
flexibility:
{
leftShoulder: "12 whatevers",
rightShoulder: "15 somethings",
...etc...
}
strength:
{
legPress: "100lb",
shoulderPress: "22lb",
...etc...
}
...etc...
},
{
date: "2013-02-28",
flexibility:
{
leftShoulder: "13 whatevers",
rightShoulder: "14 somethings",
...etc...
}
strength:
{
legPress: "110lb",
shoulderPress: "25lb",
...etc...
}
...etc...
}
],
appearance: [
{
date: "2013-04-12",
image: "http://blah"
}
...etc...
]
...lots of other sub items...
}
Questo record esisterebbe a lungo termine per i clienti e potrebbe diventare un record molto grande nel tempo. Ho visto su MongoDB, che è anche NoSQL, ha un limite di 16 MB su un record. Mentre questo è un grande spazio per il testo ed è pieno di grandi record, voglio assicurarmi che questo non indichi che dovrei separarli per quanto riguarda NoSQL.
Invece, dovrei separare i record assessment
e appearance
nei propri record separati, collegati da una chiave esterna di qualche tipo o ciò vanifica lo scopo di NoSQL?
Qual è la migliore pratica per la progettazione di record NoSQL profondi a lungo termine.