Aparato, sistema, y método para un almacenamiento de estado sólido como memoria caché para un almacenamiento no volátil de alta capacidad.

Un aparato para gestionar el almacenamiento de datos sobre uno o más dispositivos de almacenamiento no volátiles de alta capacidad "HCNV"

(150, 3404), comprendiendo el aparato:

un controlador de almacenamiento (152) que comprende un controlador de almacenamiento de estado sólido (104) y un controlador de almacenamiento HCNV (3402);

un módulo del extremo frontal de la memoria caché (3502) que gestiona las transferencias de datos asociadas con una petición de almacenamiento, funcionando las transferencias de datos entre un dispositivo solicitante y un almacenamiento de estado sólido como memoria caché para uno o más dispositivos de almacenamiento HCNV, comprendiendo las transferencias de datos uno o más de datos, metadatos e índices de metadatos, comprendiendo el almacenamiento de estado sólido una red de elementos de almacenamientos de datos de estado sólido no volátiles;

un módulo del extremo posterior de la memoria caché (3504) que gestiona las transferencias de datos entre el almacenamiento de estado sólido y el uno o más dispositivos de almacenamiento HCNV; y

un módulo de almacenamiento secuencial (802) que almacena secuencialmente segmentos de datos de las transferencias de datos en divisiones de almacenamiento del almacenamiento de estado sólido por orden de procesamiento en el orden en el que los segmentos de datos llegan desde el dispositivo solicitante.

Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/US2007/025049.

Solicitante: Fusion-io, Inc.

Inventor/es: FLYNN,David, STRASSER,JOHN, THATCHER,JONATHAN, ZAPPE,MICHAEL.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > Disposiciones de entrada para la transferencia de... > G06F3/06 (Entrada digital a partir de, o salida digital hacia soportes de registro)
  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > Acceso, direccionamiento o asignación en sistemas... > G06F12/08 (en sistemas de memorias jerárquicas, p. ej. sistemas de memoria virtual)

PDF original: ES-2507072_T3.pdf

 

google+ twitter facebook

Fragmento de la descripción:

Aparato, sistema, y método para un almacenamiento de estado sólido como memoria caché para un almacenamiento no volátil de alta capacidad

Antecedentes de la Invención

Campo de la invención

La presente Invención se refiere a gestión de datos y más particularmente se refiere al uso de un almacenamiento de estado sólido como memoria caché para dispositivos de almacenamiento no volátiles de alta capacidad

Descripción de las técnicas relacionadas

En general, la memoria caché es ventajosa porque los datos que se acceden a menudo o que se cargan como parte de una aplicación o sistema operativo se pueden almacenar en memoria caché con un acceso posterior mucho más rápido que cuando los datos se tiene que acceder a través de un dispositivo de almacenamiento no volátil de alta capacidad ("HCNV"), tal como una unidad de disco duro ("HDD"), una unidad óptica, un almacenamiento de cinta, etc. La memoria caché está usualmente Incluida en un ordenador. Los documentos WO 2/1365, US 25/177687 y "Windows PC Accelerators" de Microsoft muestran el uso de la memoria no volátil como caché.

Sumario de la Invención

Algunos dispositivos de almacenamiento y sistemas Incluyen memoria caché en los dispositivos de almacenamiento de HCHV. Algunos dispositivos de almacenamiento HCNV contienen memoria caché de estado de estado sólido no volátil, esta proporciona el beneficio de reducción de los tiempos de acceso pero solo puede proporcionar un funcionamiento consistente con la capacidad usualmente limitada de la Interfaz del dispositivo de almacenamiento HCNV. Existen algunos dispositivos de almacenamiento de memoria caché de estado sólido no volátiles que están usualmente situados en la placa base; estos dispositivos no se pueden usar en entornos multi-usuario ya que no se proporciona la coherencia de la memoria caché. Algunos controladores de dispositivos HCNV también incluyen memoria caché. Cuando los controladores de la memoria caché de HCNV redundante se comparten entre múltiples clientes, se requieren algoritmos sofisticados de coherencia de la memoria caché para asegurar que no se corrompen los datos.

Usualmente, las memorias caché se implementan en DRAM, que tienen como objetivo la capacidad de la memoria caché y que requieren una potencia de funcionamiento relativamente alta. Si se pierde la potencia que soporta la memoria caché volátil, se pierden los datos almacenados en la memoria caché. Usualmente, se usa alguna batería de respaldo para evitar la pérdida de datos en el caso de fallo de potencia, con suficiente capacidad para traspasar la memoria caché a la memoria no volátil antes de que falle la batería de respaldo. Además, los sistemas de batería de respaldo consumen potencia, requieren redundancia, impactan negativamente en la fiabilidad y consumen espacio. Las baterías también se tienen que mantener en una base regular y la baterías de respaldo pueden ser relativamente cara.

A partir de la discusión anterior, debería ser evidente que existe una necesidad de un aparato, sistema y método que gestionen los datos usando un almacenamiento de estado sólido como memoria caché. Ventajosamente, tal aparato, sistema, y método proporcionarían una memoria caché no volátil que consume poca potencia, proporciona una capacidad significativamente mayor y no requiere una batería de respaldo para mantener los datos almacenados en la memoria caché.

La presente invención se ha desarrollado en respuesta al presente estado de la técnica, y en particular en respuesta a los problemas y necesidades en la técnica que no se han resuelto aun completamente por los sistemas disponibles actualmente para la gestión del almacenamiento de datos. Por consiguiente, la presente invención se ha desarrollado para proporcionar un aparato, sistema, y método para gestionar el almacenamiento de datos sobre uno o más dispositivos de almacenamiento no volátil de alta capacidad ("HCNV") que superen muchos o todos los Inconvenientes tratados anteriormente en la técnica.

El aparato se proporciona, en una realización con una pluralidad de módulos incluyendo un módulo del extremo frontal de la memoria caché y un módulo del extremo posterior de la memoria caché. El módulo del extremo frontal de la memoria caché gestiona las transferencias de datos asociadas con una petición de almacenamiento. Las transferencias de datos son entre un dispositivo solicitante y una función de almacenamiento de estado sólido como memoria caché para uno o más dispositivos de almacenamiento HCNV, y las transferencias de datos pueden incluir uno o más de datos, metadatos, e índices de metadatos. El almacenamiento de estado sólido puede incluir una red de elementos de almacenamiento de datos de estado sólido, no volátil. El módulo del extremo posterior de la memoria caché gestiona las transferencias de datos entre el almacenamiento de estado sólido y el uno o más dispositivos de almacenamiento HCNV.

En una realización del aparato el módulo del extremo frontal de la memoria caché y el módulo del extremo posterior de la memoria caché están localizadas conjuntamente con un controlador de almacenamiento de estado sólido que gestiona el almacenamiento de estado sólido. En una realización adicional, el módulo del extremo frontal de la memoria caché, el módulo del extremo posterior de la memoria caché y el controlador del almacenamiento de estado sólido pueden operar de forma autónoma desde el dispositivo solicitante.

En una realización, el aparato Incluye un módulo de RAID de HCNV que almacena datos almacenados en memoria caché en el almacenamiento de estado sólido en dos o más dispositivos de almacenamiento HCNV en una red redundante de unidades independientes ("RAID") consistente con un nivel de RAID. Los datos pueden aparecer a un dispositivo solicitante como un conjunto. En otra realización, el almacenamiento de estado sólido y el uno o más dispositivos de almacenamiento HCNV pueden incluir un dispositivo de almacenamiento híbrido dentro de un conjunto de dispositivos de almacenamiento híbrido que está configurado como un grupo de RAID. Un segmento de datos almacenados en memoria caché en el almacenamiento de estado sólido y más tarde almacenados sobre un dispositivo de HCNV puede incluir uno de N segmentos de datos de una banda o un segmento de datos de paridad de la banda. El dispositivo de almacenamiento híbrido usualmente recibe peticiones de almacenamiento de uno o más clientes independientes de los segmentos de datos de una banda de RAID. En una realización adicional, el dispositivo de almacenamiento híbrido puede ser un dispositivo de almacenamiento de un grupo de RAID distribuido de extremo frontal, compartido que recibe dos o más peticiones de almacenamiento simultáneas desde dos o más clientes.

En una realización adicional del aparato, el dispositivo de almacenamiento HCNV puede ser una unidad de disco duro ("HDD"), una unidad óptica, un almacenamiento de cinta. En otra realización, el almacenamiento de estado sólido y el uno o más dispositivos de almacenamiento HCNV pueden ser un dispositivo de almacenamiento híbrido. En una realización, el aparato también puede incluir un módulo de emulación del dispositivo normalizado que proporciona acceso al dispositivo de almacenamiento híbrido emulando un dispositivo normalizado conectado a uno o más dispositivos solicitantes antes de cargar el uno o más dispositivos solicitantes con código específico para la operación del dispositivo de almacenamiento híbrido. El dispositivo normalizado usualmente se puede soportar por la normativa BIOS de la industria.

En otra realización, el dispositivo de almacenamiento de estado sólido se puede dividir en dos o más regiones, en el que una o más particiones se pueden usar como... [Seguir leyendo]

 


Reivindicaciones:

1. Un aparato para gestionar el almacenamiento de datos sobre uno o más dispositivos de almacenamiento no volátiles de alta capacidad "HCNV" (15, 344), comprendiendo el aparato:

un controlador de almacenamiento (152) que comprende un controlador de almacenamiento de estado sólido (14) y un controlador de almacenamiento HCNV (342);

un módulo del extremo frontal de la memoria caché (352) que gestiona las transferencias de datos asociadas con una petición de almacenamiento, funcionando las transferencias de datos entre un dispositivo solicitante y un almacenamiento de estado sólido como memoria caché para uno o más dispositivos de almacenamiento HCNV, comprendiendo las transferencias de datos uno o más de datos, metadatos e índices de metadatos, comprendiendo el almacenamiento de estado sólido una red de elementos de almacenamientos de datos de estado sólido no volátiles;

un módulo del extremo posterior de la memoria caché (354) que gestiona las transferencias de datos entre el almacenamiento de estado sólido y el uno o más dispositivos de almacenamiento HCNV; y un módulo de almacenamiento secuencial (82) que almacena secuencialmente segmentos de datos de las transferencias de datos en divisiones de almacenamiento del almacenamiento de estado sólido por orden de procesamiento en el orden en el que los segmentos de datos llegan desde el dispositivo solicitante.

2. El aparato de la reivindicación 1, en el que el módulo del extremo frontal de la memoria caché, el módulo del extremo posterior de la memoria caché, y el controlador de almacenamiento de estado sólido operan de forma autónoma del dispositivo solicitante.

3. El aparato de la reivindicación 1, que comprende además un módulo de RAID de HCNV (358) que almacena los datos almacenados en memoria caché en al almacenamiento de estado sólido en dos o más dispositivos de almacenamiento HCNV en una red redundante de unidades independientes, "RAID", consistentes con un nivel de RAID, en el que los datos aparecen al dispositivo solicitante como un todo.

4. El aparato de la reivindicación 1, en el que el almacenamiento de estado sólido y el uno o más dispositivos de almacenamiento HCNV comprende un dispositivo de almacenamiento híbrido dentro de un conjunto de dispositivos de almacenamiento híbrido que se configuran como un grupo de RAID, en el que un segmento de datos almacenado en memoria caché en el almacenamiento de estado sólido y almacenado más tarde sobre un dispositivo de HCNV comprende uno de N segmentos de datos de una banda o segmentos de datos de paridad de la banda, en el que el dispositivo de almacenamiento híbrido recibe peticiones de almacenamiento desde uno o más clientes independientes de los segmentos de datos de una banda de RAID.

5. El aparato de la reivindicación 4, en el que el dispositivo de almacenamiento híbrido es un dispositivo de almacenamiento de un grupo de RAID distribuido del extremo frontal compartido que recibe dos o más peticiones simultáneas de almacenamiento desde dos o más clientes.

6. El aparato de la reivindicación 1, en el que el almacenamiento de estado sólido y el uno o más dispositivos de almacenamiento HCNV comprenden un dispositivo de almacenamiento híbrido y comprenden además un módulo de emulación de un dispositivo normalizado (351) que proporciona acceso al dispositivo de almacenamiento híbrido emulando un dispositivo normalizado conectado al uno o más dispositivos solicitantes antes de cargar el uno o más dispositivos solicitantes con código específico para la operación del dispositivo de almacenamiento híbrido, estando soportado el dispositivo normalizado por una normativa BIOS de la industria.

7. El aparato de la reivindicación 1, en el que el dispositivo de almacenamiento de estado sólido se puede dividir en dos o más regiones, en el que una o más particiones se pueden usar como almacenamiento de estado sólido independiente del almacenamiento de estado sólido que funciona como memoria caché para los dispositivos de almacenamiento HCNV.

8. El aparato de la reivindicación 1, en el que uno o más clientes (114) envían mensajes de control de la memoria caché al módulo del extremo del extremo frontal de la memoria caché y al módulo del extremo posterior de la memoria caché para gestionar un estado de uno o más ficheros u objetos almacenados dentro del dispositivo de almacenamiento de estado sólido y el uno o más dispositivos de almacenamiento HCNV.

9. El aparato de la reivindicación 8, en el que los mensajes de control de la memoria caché se comunican mediante metadatos, "metadatos de control de la memoria caché", para el objeto o fichero.

1. El aparato de la reivindicación 9, en el que los metadatos de control de la memoria caché son uno de: persistentes, establecidos a través del conjunto de atributos en el momento de la creación del fichero u objeto; y obtenidos desde un sistema de gestión de ficheros u objetos.

11. El aparato de la reivindicación 1, en el que uno o más de los metadatos y metadatos de índices para los objetos y ficheros almacenados en los dispositivos de almacenamiento HCNM se mantienen dentro del dispositivo de almacenamiento de estado sólido.

12. El aparato de la reivindicación 1, en el que el almacenamiento de estado sólido y el uno o más dispositivos de almacenamiento HCNV comprenden un dispositivo de almacenamiento de modo que los dispositivos de almacenamiento HCNV están ocultos de la vista de un cliente conectado al dispositivo de almacenamiento y aparecen al dispositivo solicitante como un único dispositivo de almacenamiento.

13. Un sistema para la gestión del almacenamiento de datos sobre uno o más dispositivos de almacenamiento no volátiles de alta capacidad "HCNV", comprendiendo el sistema:

un almacenamiento de estado sólido (11) que comprende una red de elementos de almacenamiento de datos de estado sólido no volátiles;

uno o más dispositivos de almacenamiento HCNV (15, 344); y un controlador de almacenamiento (152) que comprende un controlador del almacenamiento de estado sólido (14); un controlador del dispositivo de almacenamiento HCNV (342); y el aparato de acuerdo con la reivindicación 1.

14. El sistema de la reivindicación 13 que comprende además una interfaz de red (156) conectada al controlador de almacenamiento, facilitando la interfaz de red las transferencias de datos entre el dispositivo solicitante y el controlador del almacenamiento de estado sólido a través de una red de ordenadores.

15. El sistema de la reivindicación 13, en el que el uno o más dispositivos de almacenamiento HCNV están conectados al controlador de almacenamiento a través de una red de área de almacenamiento ("SAN").

16. Un producto de programa de ordenador que comprende un medio legible por ordenador que tiene un código de programa utilizable por el ordenador que, cuando se ejecuta sobre un procesador, realiza operaciones para la gestión del almacenamiento de datos sobre uno o más dispositivos de almacenamiento no volátiles de alta capacidad "HCNV" (15, 344), comprendiendo las operaciones del producto de programa de ordenador:

gestionar las transferencias de datos asociadas con una petición de almacenamiento usando un módulo del extremo frontal de la memoria caché (352), las transferencias de datos entre un dispositivo solicitante y el almacenamiento de estado sólido que funciona como una memoria caché para uno o más dispositivos de almacenamiento HCNV, comprendiendo las transferencias de datos uno o más de datos, metadatos e índices de metadatos, comprendiendo el almacenamiento de estado sólido una red de elementos de almacenamiento de datos de estados sólido no volátil;

gestionar transferencias de datos entre el almacenamiento de estado sólido y el uno o más dispositivos de almacenamiento HCNV usando un módulo del extremo posterior de la memoria caché (354); y almacenar secuencialmente los segmentos de datos de las transferencias de datos en divisiones de almacenamiento del almacenamiento de estado sólido por orden de procesamiento en el orden que llegan los segmentos de datos desde el dispositivo solicitante.