Sistemi di database costituiscono elementi chiave all'interno di molte applicazioni, tra cui desktop e web programmi . Al momento di decidere su un modello di archiviazione dati per un progetto come un sito web, gli sviluppatori considerano il contesto di applicazione . Un sistema di database in grado di migliorare i vari aspetti delle prestazioni e di efficienza , ma può anche imporre un requisito inevitabile in termini di competenze e risorse . Poche considerazioni centrali si applicano a qualunque decisione sull'opportunità di utilizzare un sistema di database . Query
Quando i dati per un'applicazione vengono memorizzati all'interno di un sistema di database , questo permette al contesto di applicazione di accedere ai dati mediante query ben definite , normalmente in Structured Query Language . Se i dati vengono memorizzati in un'altra struttura come ad esempio un file di testo semplice , la possibilità di interrogare i dati in un modo mirato efficiente sarà limitato . Sistemi di database possono utilizzare Entity Relationship modellazione, la definizione e la conservazione dei dati per un'applicazione in termini di entità con relazioni. Questo modello consente agli sviluppatori di creare query che siano efficienti e in modo efficace su misura per le attività delle applicazioni .
Data Maintenance
Memorizzazione di dati in un sistema di database idealmente significa che ogni elemento di dati è memorizzati solo in un unico luogo . Quando questo è il caso , i dati devono essere aggiornati solo in questo luogo durante la manutenzione . Quando i dati non sono memorizzati in un sistema di database , non ci può essere una tendenza a memorizzare gli elementi singoli in più posti , replicando i dati e l'applicazione di maggiori requisiti per la manutenzione . Tuttavia, il vantaggio di avere un unico punto di modifica si applica solo ai sistemi di database che sono stati progettati in modo efficace .
Competenze
La creazione , il mantenimento e l'accesso a un sistema di database richiede un alto livello di competenza dal punto di vista dello sviluppo . Questo può essere un problema nel caso in cui le persone che lavorano su un sistema non sono sufficienti. Tuttavia, la maggior parte sviluppatori web hanno almeno le competenze di base per lo sviluppo di database . Conoscenza di database e la competenza è necessaria non solo per creare il sistema di database , in primo luogo , ma anche per mantenere nel lungo termine .
Risorse
sistemi di database
richiedere determinate risorse di calcolo che possono o non possono essere presenti. Se un progetto richiede soltanto un database di base , ad esempio per un semplice sito web , le risorse sono normalmente minime. Per esempio, molti Web host forniscono servizi di database MySQL come standard all'interno di tutti i loro pacchetti di hosting . Se un progetto richiede una soluzione di database più grave , utilizzando un sistema come Oracle , ci sarà necessariamente essere aumentate esigenze in termini di tecnologia dei server e dei costi .
Altre tecnologie
< p > Quando si sceglie se utilizzare un sistema di database , o quale sistema utilizzare , gli sviluppatori hanno bisogno di prendere in considerazione le altre tecnologie coinvolte in un progetto . La maggior parte dei database Web sono facilmente accessibili dalle tecnologie lato server, tra cui il PHP e linguaggi di programmazione ASP . Allo stesso modo , i database Oracle sono facilmente accessibili da applicazioni Java . Tali linguaggi forniscono funzioni di database standard , ad esempio, le funzioni di MySQL in PHP , che consentono agli sviluppatori di effettuare query e aggiornamenti in poche righe di codice .