Non sono sicuro se questa sia la comunità che fa questa domanda, ma mi chiedevo quale sarebbe la migliore struttura per un logger di controllo basato su JSON.
Al momento eseguiamo Microsoft SQL Server, ma alcuni dei dirigenti superiori volevano testare una soluzione NoSQL (la specifica di Couchbase). Ma mi stanno facendo installare un'applicazione di test per vedere l'aumento delle prestazioni, ecc ... prima di andare avanti.
Quindi il documento dovrebbe essere configurato come:
{
"AuditLog":[
{"key0":"value"},
{"key1":"value"}
]
}
o
{
"AuditLog0":[
{"key0":"value"}
]
}
{
"AuditLog1":[
{"key0":"value"}
]
}
L'unica cosa che ho trovato è che con l'opzione 1, c'è un limite di dimensione in Couchbase per ogni documento (256kB), quindi ciò non implica che ti raccomandino di non avere un grande doucment? C'è un'impostazione nei file di configurazione per rimuovere / modificare quel limite.
Il mio problema con l'opzione 2 è più per la pulizia. Quando si crea un documento, viene assegnato un ID, questo significherebbe ogni volta che viene registrata un'azione, dovrei creare ogni volta un ID univoco per quell'evento di registro. Provenendo da SQL Server, questo non ha senso per me, ma se è così che funziona NoSQL, così sia.
Sono tutto nuovo in questo materiale NoSQL e JSON, grazie!