Trabajando con cachés. Parte I

Publicado: junio 30, 2014 de elvenbyte en Tecnología
Etiquetas:

memoria cachéTener que ponerse a trabajar con cachés, sin tener apenas idea, con los únicos conocimientos que te brinda este o aquel artículo, es duro. Nadie pone en duda el gran avance, en muchos aspectos, que supone trabajar con la velocidad de acceso que proporcionan en ciertos casos, pero es complicado.

Como siempre que hago en mis artículos sobre programación, y tecnología en general, intentaré dar algunas claves en forma de pequeña chuleta, a tener en cuenta cuando usamos este inestimable recurso. El por qué no es más, de nuevo, que la falta de información general que hay en Internet a este respecto.

Qué es una caché de datos

Hay muchos tipos de caché: de sistema, de memoria, de datos…, y más. En este caso hablaré de las de datos. Las más importantes o de uso más generalizado son Spaces y Coherence, de ORACLE, esta última con la que me he visto obligado a trabajar últimamente.


No voy a entrar a nombrar las virtudes y defectos de cada una (para eso recomiendo la lectura de este artículo), sino de las cachés de datos y funcionamiento en general.


Cuando tenemos necesidad de almacenar datos de forma permanente utilizamos unos almacenes a los que llamamos bases de datos, y unos programas que nos ayudan a acceder y manejar fácilmente esos datos, a los que llamamos motores de datos.Así tenemos, por ejemplo, ORACLE, MySQL, DB2, etc.

Pero cuando necesitamos manejar y operar con enormes cantidades de datos, incluso con ordenadores potentes y potentes motores también, este trabajo, el acceso y la operativa con esos datos, se hace lenta. Al fin y al cabo, esos datos se guardan como archivos en disco, y el acceso a disco siempre es lento.

Por eso necesitamos un acceso a datos más rápido. Lo ideal es tenerlos en memoria, cuya velocidad de acceso es significativamente mayor, en cualquier caso, que el acceso a disco. El inconveniente de tener los datos en memoria es que esta es volátil, y los datos sólo permanecen en lla momentáneamente. Luego desaparecen.

Pero si disponemos de un sistema que nos permita conservar en memoria esos datos el tiempo suficiente, sólo mientras necesitamos ese acceso a los mismos, ya hemos ganado. Ese sistema en el que los datos se mantienen en memoria durante un tiempo determinado, ofreciéndonos ese acceso rápido a los mismos, es lo que llamamos caché de datos.

Cómo funciona una caché de datos

Entender el funcionamiento de una caché de datos no debería ser muy complicado.

Al comienzo de la aplicación que utilizará los datos, estos se cargarán en memoria (la caché), y luego la aplicación accede a los datos en la caché, en lugar de hacerlo directamente contra el motor de datos. Luego, por motivos de persistencia y coherencia, que explicaré más adelante en este mismo artículo, se van recargando los datos en períodos regulares de tiempo, y de forma absolutamente transparente para el usuario de la aplicación.

El siguiente gráfico lo demuestra en su forma más básica:cache

comentarios
  1. UN AN dice:

    Te veo muy abandonado en los articulos politicos.

    Me gusta

  2. David dice:

    Ahora estoy en plan un poco más técnico.

    Me gusta

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s