Persistència (informàtica)

En informàtica, la persistència es refereix a la propietat de les dades que permet que romanguin més enllà de l'execució del procés o aplicatiu que les ha creades. Sense persistència, les dades perdrien el seu estat des del moment en què el procés que les gestiona deixa de referenciar-les o aquestes desapareixen del suport on es guardaven, com pot ser la memòria o un fitxer temporal d'un perifèric.

Programació

modifica

En programació, la persistència es refereix concretament a la capacitat de preservar estructures de dades entre execucions diferents. Això s'aconsegueix a la pràctica guardant les dades en dispositius d'emmagatzemament no volàtils : sistema de fitxers, una base de dades relacional o una base de dades orientada a objectes. Els patrons de disseny que resolen aquest problema són: persistència basada en el contenidor, persistència basada en el component i el model Data Access Object. Quan foren presentats, la idea era que la persistència fos una propietat intrínseca de les dades, en contraposició a la pràctica habitual on la dada és llegida i escrita de i al disc usant verbs imperatius en un llenguatge de programació. Aquest concepte ha evolucionat juntament amb els sistemes gestors de bases de dades i actualment és el programa qui comprova que les transaccions són correctes i se n'encarreguen de fer persistent tot allò que ha estat modificat. Exemples de persistència són: l'ús de la serialització Java per emmagatzemar objectes Java al disc, usant Java EE per guardar Enterprise JavaBeans en bases de dades relacionals.

Persistència incorporada a una sistema operatiu o llenguatge de programació

modifica

La persistència ortogonal es refereix al suport ofert per un llenguatge de programació o sistema operatiu que habilita l'estat dels programes escrits en un llenguatge de programació persistent, o del sistema operatiu en ell mateix, per romandre persistent inclús després d'una caiguda o apagada inesperada. En tornar, l'ordinador continua al mateix punt de l'apagada. Els sistemes operatius que inclouen aquesta funcionalitat són:

Els llenguatges de programació que inclouen persitència ortogonal són:

Interfície d'usuari

modifica

La majoria d'aplicacions inclouen persistència com a funcionalitat bàsica sense la qual no poden ser considerades tancades. En aquest context, les operacions de persistència se separen en categories ben diferenciades, basades en els tipus de les dades a emmagatzemar. Les categories són:

  • capacitat per afegir noves entrades (objectes o registres)
  • recuperació d'entrades
  • modificació d'entrades
  • eliminació d'entrades

A més, encara que no siguin funcionalitats bàsiques, les operacions següents acostumen a estar associades a la persistència quan cal manejar un nombre elevat d'entrades:

  • cerca
  • ordenació
  • filtratge

Dispositius d'emmagatzemament

modifica

L'emmagatzamament persistent (Persistent Storage o PSD, en anglès) és la capacitat d'un dispositiu de mantenir les dades inclús quan està apagat. Els anomenem dispositius dispositius de memòria no volàtil, per exemple, el disc dur, llapis de memòria o CD.

Vegeu també

modifica