Quale strategia di database dovrei scegliere?

0

Ho intenzione di registrare alcuni eventi che si verificano nel mio programma. Il mio programma sta lavorando su un database che non posso modificare (aggiungi tabella). Questi eventi possono essere memorizzati in una singola tabella senza relazioni.

Penso che, poiché non ci sono relazioni, un database SQL sarebbe una scelta sbagliata, ma non ho familiarità con altri tipi. I dati devono essere indicizzati per data, con una velocità di lettura molto più importante della scrittura. Questa tabella diventerà piuttosto grande nel tempo.

Esistono strategie / tecnologie migliori da utilizzare in questa situazione?

    
posta Chris Wohlert 18.09.2017 - 16:19
fonte

3 risposte

1

Are there better strategies / technologies to use in this situation?

Esistono database NoSQL specificamente progettati per essere negozi di eventi. Event Store è un esempio.

Naturalmente, è possibile implementare un archivio eventi utilizzando uno schema relazionale. Konrad Garus descrive un approccio per postgresql .

    
risposta data 18.09.2017 - 17:20
fonte
3

Considera di scrivere su un file di registro anziché su un database. Mentre un database è ottimo se si intende interrogare regolarmente il log per altri scopi dell'applicazione, la registrazione per motivi di registrazione è spesso più adatta a un filesystem:

Perché il filesystem è preferito per i log invece di RDBMS ?

Detto questo, non c'è motivo per cui non puoi avere un tavolo piatto pieno di eventi. Lo facciamo spesso. Anche se le soluzioni NoSQL potrebbero essere un adattamento "migliore", vale sicuramente la pena di considerare se valga la pena di crearne uno se si dispone già di un RDBMS a disposizione.

    
risposta data 18.09.2017 - 18:27
fonte
2

Scrivi in un commento che ti aspetti di registrare da 100 a 500 eventi al giorno. Qualsiasi tipo di database o formato di file sarà in grado di supportarlo facilmente. Quindi dovresti davvero scegliere quello che è il più semplice e conveniente per te. Il che significa utilizzare lo stesso motore di database che stai già utilizzando nel sistema.

    
risposta data 19.09.2017 - 11:22
fonte

Leggi altre domande sui tag