MX2012012198A - Almacenamiento de datos distribuidos. - Google Patents

Almacenamiento de datos distribuidos.

Info

Publication number
MX2012012198A
MX2012012198A MX2012012198A MX2012012198A MX2012012198A MX 2012012198 A MX2012012198 A MX 2012012198A MX 2012012198 A MX2012012198 A MX 2012012198A MX 2012012198 A MX2012012198 A MX 2012012198A MX 2012012198 A MX2012012198 A MX 2012012198A
Authority
MX
Mexico
Prior art keywords
storage
data
nodes
storage node
storage nodes
Prior art date
Application number
MX2012012198A
Other languages
English (en)
Inventor
Christian Melander
Stefan Bernbo
Gustav Petersson
Roger Persson
Original Assignee
Ilt Productions Ab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ilt Productions Ab filed Critical Ilt Productions Ab
Publication of MX2012012198A publication Critical patent/MX2012012198A/es

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17331Distributed shared memory [DSM], e.g. remote direct memory access [RDMA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/184Distributed file systems implemented as replicated file system
    • G06F16/1844Management specifically adapted to replicated file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1845Arrangements for providing special services to substations for broadcast or conference, e.g. multicast broadcast or multicast in a specific location, e.g. geocast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Remote Sensing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

La presente invención se refiere a un sistema de almacenamiento de datos distribuido que comprende una pluralidad de nodos de memorización. Utilizando la transmisión de unidifusión y de multidifusión, una aplicación de servidor puede realizar la escritura de datos en el sistema de memorización. Cuando se realiza la escritura de datos, al menos dos nodos de memorización se seleccionan en función, en parte, de una función aleatorizada, que garantiza que los datos estén suficientemente dispersos para proporcionar una replicación eficiente y fiable de datos en caso de funcionamiento anómalo del nodo de memorización.

Description

ALMACENAMIENTO DE DATOS DISTRIBUIDOS Campo técnico La presente invención se refiere a un método para la escritura de datos en un sistema de almacenamiento de datos que comprende una pluralidad de nodos de memorización de datos, cuyo método se utiliza en un servidor en el sistema de almacenamiento de datos. La patente se refiere, además, a un servidor capaz de realizar el método.
Antecedentes Dicho método se da a conocer, a modo de ejemplo, en la patente de Estados Unidos 2005/0246393, Al. Este método se da a conocer para un sistema que utiliza una pluralidad de centros de memorización en zonas geográficas dispares. Los gestores de almacenamiento de objetos distribuido están incluidos para mantener la información respecto a los datos memorizados .
Un problema asociado con dicho sistema es cómo realizar una escritura simple, y no obstante, sólida y fiable, asi como el mantenimiento de los datos.
Sumario de la invención Un objeto de la presente invención es, por lo tanto, realizar una escritura segura de datos en un sistema de almacenamiento distribuido.
El objetivo de la invención se consigue también por medio de un método para la escritura de datos en un sistema de almacenamiento de datos de la clase inicialmente mencionada, que se realiza en un servidor que ejecuta una aplicación que accede a datos en el sistema de almacenamiento de datos. El método comprende: el envío de una interrogación de memorización de multidifusión a una pluralidad de nodos de memorización, la recepción de una pluralidad de respuestas desde un subconjunto de dichos nodos de memorización, incluyendo dichas respuestas la información de nodos de memorización, respectivamente, en relación con cada nodo de memorización y la selección de al menos dos nodos de memorización en el subconjunto, en función de dichas respuestas. La selección incluye la determinación, basada en un algoritmo, para cada nodo de memorización en el subconjunto, de un factor de probabilidad que es función de su información de nodo de memorización y la selección, de forma ¦ aleatoria, de dichos al menos dos nodos de memorización, en donde la probabilidad de que se seleccione un nodo de memorización depende de su factor de probabilidad. El método implica, además, el envío de datos y un identificador de datos, correspondientes a los datos, a los nodos de memorización seleccionados.
Este método realiza una escritura segura de datos, puesto que aún cuando se seleccionen nodos de memorización dependiendo de su aptitud temporal, la información se seguirá dispersando, en una cierta medida, a través del sistema incluso durante un intervalo de tiempo corto. Esto significa que el mantenimiento del sistema de memorización será menos exigente, puesto que la correlación de qué nodos de memorización soportan la misma información se puede reducir en alguna medida. Esto significa que un proceso de replicación, que puede realizarse cuando un nodo de memorización tenga una anomalía operativa, pueda realizarse el proceso mediante un mayor número de otros nodos de memorización y en consecuencia, con mucha mayor rapidez. Además, se reduce el riesgo de sobrecargar los nodos de memorización con alto nivel durante las operaciones de escritura intensivas, puesto que más nodos de memorización se utilizan para la escritura y menos están en el modo inactivo.
La información del nodo de memorización puede incluir datos geográficos en relación con la posición geográfica de cada nodo de memorización, tal como su latitud, longitud y altitud. Esto permite al servidor dispersar la información desde el punto de vista geográfico, dentro de un recinto, de un edificio, de un país o a escala mundial.
Es posible permitir que se realice la selección aleatoria de los nodos de memorización a partir de los nodos de memorización en el subconjunto que satisfagan un criterio primario basado en la separación geográfica, puesto que se trata de una importante característica para la redundancia.
La información del nodo de memorización puede incluir la antigüedad del sistema y/o la carga del sistema para el nodo de memorización en cuestión.
La interrogación de memorización de multidifusión puede incluir un identificador de datos, que identifica los datos que se van a memorizar.
Al menos se pueden seleccionar tres nodos y una lista de nodos de memorización, que memorizan satisfactoriamente los datos, puede enviarse a los nodos de memorización seleccionados .
La selección aleatoria de los nodos de memorización puede realizarse para una fracción de los nodos en el subconjunto, que incluye nodos de memorización con los más altos factores de probabilidad. De este modo, los nodos de memorización menos adecuados quedan excluidos, proporcionando una selección de nodos de memorización más fiables al mismo tiempo que se mantiene la distribución aleatoria de la información objeto de escritura.
La presente invención se refiere, además, a un servidor para realizar la escritura de datos, correspondiente al método. El servidor, en tal caso, suele comprender medios para realizar las acciones del método.
Breve descripción de los dibujos La Figura 1 ilustra un sistema de almacenamiento de datos distribuido.
Las Figuras 2A-2C y la Figura 3 ilustran un proceso de lectura de datos.
Las Figuras 4A a 4C y la Figura 5 ilustran un proceso de escritura de datos.
La Figura 6 ilustra, de forma esquemática, una situación en donde varios ficheros se memorizan entre varios nodos de memorización de datos.
La Figura 7 ilustra la transmisión de señales de pulsos de supervisión.
La Figura 8 es una descripción general de un proceso de mantenimiento de datos.
Descripción detallada La presente invención se refiere a un sistema de almacenamiento de datos distribuido que comprende una pluralidad de nodos de memorización. La estructura del sistema y el contexto en el que se utiliza se representa en la Figura 1.
Un ordenador de usuario 1 accede, a través de Internet 3, a una aplicación 5 que se ejecuta en un servidor 7. El contexto del usuario, según aqui se ilustra es, por lo tanto, una configuración de cliente-servidor regular, que es bien conocida por si misma. Sin embargo, conviene señalar que el sistema de almacenamiento de datos dado a conocer por la invención puede ser de utilidad también en otras configuraciones .
En el caso ilustrado, dos aplicaciones 5, 9 se ejecutan en el servidor 7. Por supuesto, sin embargo, este número de aplicaciones puede ser diferente. Cada aplicación tiene una API (Interfaz de Programación de Aplicación) 11 que proporciona una interfaz en relación con el sistema de almacenamiento de datos distribuido 13 y soporta demandas, normalmente demandas de escritura y de lectura, de las aplicaciones que se ejecutan en el servidor. Desde el punto de vista de una aplicación, la información de lectura o de escritura desde/al sistema de almacenamiento de datos 13 no necesita parecer diferente de la utilización de cualquier otro tipo de solución de memorización, a modo de ejemplo, un servidor de fichero o simplemente una unidad de disco duro.
Cada API 11 se comunica con los nodos de memorización 15 en el sistema de almacenamiento de datos 13 y los nodos de memorización se comunican entre si. Estas comunicaciones están basadas en TCP (Protocolo de Control de Transmisión) y UDP (Protocolo de Datagramas de Usuario) . Estos conceptos son bien conocidos para los expertos en esta materia y no se explicarán con mayor detalle.
Conviene señalar que diferentes interfaces API 11, en el mismo servidor 7 pueden acceder a diferentes conjuntos de nodos de memorización 15. Conviene señalar, además, que puede existir más de un servidor 7 que acceda a cada nodo de memorización 15. Esta circunstancia operativa, sin embargo, no afecta en mayor medida a la forma en la que operan los nodos de memorización, según se describirá más adelante.
Los componentes del sistema de almacenamiento de datos distribuido son los nodos de memorización 15 y las interfaces APIs 11, en el servidor 7 que accede a los nodos de memorización 15. Por lo tanto, la presente invención se refiere a métodos realizados en el servidor 7 y en los nodos de memorización 15. Dichos métodos estarán principalmente realizados como puesta en práctica de software que se ejecutan en el servidor y los nodos de memorización, respectivamente, y se determinan, juntos, para la operación y las propiedades del sistema de almacenamiento de datos distribuido global.
El nodo de memorización 15 suele poder realizarse mediante un servidor de ficheros que está provisto de varios bloques funcionales. El nodo de memorización puede comprender, de este modo, un medio de memorización 17, que suele incluir varias unidades de disco duro, opcionalmente configuradas como un sistema RAID (Conjunto Redundante de Discos Independientes). Otros tipos de medios de memorización son, sin embargo, también posibles.
El nodo de memorización 15 puede incluir, además, un directorio 19, que comprende listas de relaciones de entidad de datos/nodos de memorización como una lista de concentradores, según se describirá más adelante.
Además, de la lista de concentradores, cada nodo de memorización contiene, además, una lista de nodos que incluye las direcciones de IP de todos los nodos de memorización en su conjunto o grupo de nodos de memorización. El número de nodos de memorización en un grupo puede variar desde unos pocos a centenares de nodos de memorización. La lista de nodos puede tener, además, un número de versión.
Además, el nodo de memorización 15 puede incluir un bloque de replicación 21 y un bloque de monitor de agrupamiento operativo 23. El bloque de replicación 21 incluye una interfaz API de nodo de memorización 25 y está configurado para ejecutar funciones para identificar la necesidad y realizar un proceso de replicación, según se describirá con detalle más adelante. La interfaz API del nodo de memorización 25 del bloque de replicación 21 puede contener un código que, en gran medida, corresponde al código de la interfaz API del nodo de memorización 11 del servidor 7, puesto que el proceso de replicación comprende acciones que corresponden, en gran medida, a las acciones realizadas por el servidor 7 durante las operaciones de lectura y de escritura que se describen a continuación. A modo de ejemplo, la operación de escritura realizada durante la replicación corresponde, en gran medida, a la operación de escritura realizada por el servidor 7. El bloque de monitor de agrupamiento operativo 23 está configurado para realizar la supervisión de otros nodos de memorización en el sistema de almacenamiento de datos 13, según se describirá con más detalle a continuación.
Los nodos de memorización 15 del sistema de almacenamiento de datos distribuido puede considerarse que existen en el mismo nivel jerárquico. No existe necesidad de designar cualquier nodo de memorización maestro que sea responsable de mantener un directorio de entidades de datos memorizadas y de la supervisión de la coherencia de los datos, etc. En cambio, todos los nodos de memorización 15 se pueden considerar iguales y pueden, a veces, realizar las operaciones de gestión de datos frente a otros nodos de memorización en el sistema. Esta igualdad garantiza que el sistema sea operativamente seguro. En caso de anomalía operativa del nodo de memorización, otros nodos en el sistema cubrirán el nodo de funcionamiento anómalo y garantizarán una memorización de datos fiable.
La operación del sistema se describirá en el orden siguiente: lectura de datos, escritura de datos y mantenimiento de datos. Aún cuando estos métodos funcionan muy bien juntos, conviene señalar que pueden también, en principio, realizarse con independencia entre sí. Es decir, a modo de ejemplo, el método de lectura de datos puede proporcionar propiedades excelentes aún cuando no se utilice el método de escritura de datos de la presente invención y viceversa .
El método de lectura se describe, a continuación, con referencia a las Figuras 2A-2C y 3, siendo esta última un diagrama de flujo que ilustra el método.
La lectura, asi como otras funciones en el sistema, utilizan la comunicación de multidifusión para comunicarse simultáneamente con una pluralidad de nodos de memorización. Mediante una multidifusión o multidifusión IP se entiende, en este caso, una comunicación punto a multipunto que se realiza enviando un mensaje a una dirección de IP que está reservada para aplicaciones de multidifusión .
A modo de ejemplo, un mensaje, normalmente una demanda, se envía a dicha dirección de IP (p.e., 244.0.0.1) y varios servidores receptores están registrados como abonados a esa dirección de IP. Cada uno de los servidores receptores tiene su propia dirección de IP. Cuando un conmutador, en la red, recibe el mensaje dirigido a 244.0.0.1, el conmutador reenvía el mensaje a las direcciones de IP de cada servidor registrado como un abonado.
En principio, solamente un servidor puede registrarse como un abonado para una dirección de multidifusión, en cuyo caso se consigue una comunicación punto a punto. Sin embargo, dentro del contexto de esta invención, dicha comunicación es, no obstante, considerada una comunicación de multidifusión puesto que se utiliza un sistema de multidifusión .
La comunicación de unidifusión se utiliza también haciendo referencia a una comunicación con un receptor único.
Con referencia a la Figura 2A y la Figura 3, el método para la recuperación de datos desde un sistema de almacenamiento de datos comprende el envió 31 de una interrogación de multidifusión a una pluralidad de nodos de memorización 15. En el caso ilustrado, existen cinco nodos de memorización que tienen cada uno una dirección de dirección IP (Protocolo de Internet) 192.168.1.1, 192.168.1.2, etc. El número de nodos de memorización es, por supuesto, solamente a modo de ejemplo. La interrogación contiene, un identificador de datos "2B9B4A97-76E5-499E-A21A6D7932DD7927", que puede ser, a modo de ejemplo, un Identificador Universalmente Único, UUID, que es bien conocido por si mismo.
Los nodos de memorización exploran por si mismos los datos correspondientes al identificador . Si se encuentran dichos datos, un nodo de memorización envía una respuesta, que se recibe 33 por el servidor 7, véase Figura 2B. Según se ilustra, la respuesta puede contener opcionalmente información adicional además de una indicación de que el nodo de memorización tiene una copia de los datos pertinentes. Más concretamente, la respuesta puede contener información a partir del directorio de nodos de memorización sobre otros nodos de memorización que contienen los datos, información con respecto a qué versión de los datos está contenida en el nodo de memorización e información respecto a qué carga está expuesto el nodo de memorización en la situación actual.
En función de dichas respuestas, el servidor selecciona 35 uno o más nodos de memorización a partir de los datos que han de recuperarse y envia 37 una demanda de unidifusión de datos a esos nodos de memorización, véase Figura 2C.
En respuesta a la demanda de datos, el nodo/nodos de memorización envían los datos pertinentes mediante unidifusión al servidor que recibe 39 los datos. En el caso ilustrado, solamente se selecciona un nodo de memorización. Aunque esto es suficiente, es posible seleccionar más de un nodo de memorización con el fin de recibir dos conjuntos de datos que hacen posible una comprobación de la coherencia. Si falla la transferencia de datos, el servidor puede seleccionar otro nodo de memorización para realizar la recuperación.
La selección de nodos de memorización puede basarse en un algoritmo que tiene en cuenta varios factores con el fin de conseguir un rendimiento adecuado del sistema global. En condiciones normales, el nodo de memorización que tiene la más reciente versión de datos y la más baja carga se seleccionará aunque otros conceptos sean completamente admisibles .
De forma opcional, la operación puede concluirse por el servidor enviando una lista a todos los nodos de memorización implicados, indicando qué nodos contienen los datos y con qué versión. Sobre la base de esta información, los nodos de memorización pueden, por si mismos, mantener los datos adecuadamente mediante el proceso de replicación a describirse .
Las Figuras 4A-4C y la Figura 5 ilustran un proceso de escritura de datos para el sistema de almacenamiento de datos distribuido .
Con referencia a la Figura 4A y la Figura 5, el método comprende un servidor que envía 41 una interrogación de memorización de multidifusión a una pluralidad de nodos de memorización. La interrogación de memorización comprende un identificador de datos y consiste básicamente en una interrogación sobre si los nodos de memorización receptores pueden memorizar este fichero. De forma opcional, los nodos de memorización pueden comprobar sus directorios internos si tienen ya un fichero con este nombre y pueden notificar al servidor 7 en el supuesto improbable de que éste sea el caso, de modo que el servidor pueda renombrar el fichero correspondiente .
En cualquier caso, al menos un subconjunto de los nodos de memorización proporcionará respuesta mediante transmisión de unidifusión al servidor 7. En condiciones normales, los nodos de memorización que tengan un espacio de disco libre mínimo predeterminado darán respuesta a esta consulta operativa. El servidor 7 recibe 43 las respuestas que comprenden la información de nodos de memorización en relación con las propiedades de cada nodo de memorización, tales como datos geográficos relacionados con la situación geográfica de cada servidor. A modo de ejemplo, según se indica en la Figura 4B, dichos datos geográficos pueden incluir la latitud, la longitud y la altitud de cada servidor. Otros tipos de datos geográficos pueden, sin embargo, ser también admisibles, tales como un código postal ZIP, una cadena de localización (esto es, edificio, recinto, fila de bastidor, columna de bastidor) o datos similares.
Como alternativa, o en adición a los datos geográficos, puede proporcionarse información adicional relacionada con las propiedades de los nodos de memorización, que sirve como una entrada a un proceso de selección del nodo de memorización. En el ejemplo ilustrado, la magnitud de espacio libre en cada nodo de memorización se proporciona junto con una indicación de la antigüedad del sistema del nodo de memorización y una indicación de la carga que experimenta actualmente el nodo de memorización.
En función de las respuestas recibidas, el servidor selecciona 45 al menos dos, en una forma de realización típica tres, nodos de memorización en el subconjunto para memorizar los datos. La selección de nodos de memorización se realiza por medio de un algoritmo que tiene en cuenta datos diferentes. La selección puede realizarse con el fin de conseguir alguna clase de diversidad geográfica. Al menos podría evitarse, en una forma de realización preferida, que solamente servidores de ficheros en el mismo bastidor se seleccionen como nodos de memorización. En condiciones normales, se puede conseguir una gran diversidad geográfica, incluso seleccionando nodos de memorización en diferentes continentes. Además de la diversidad geográfica, otros parámetros pueden incluirse en el algoritmo de selección. Resulta ventajoso tener una característica aleatorizada en el proceso de selección según se describirá a continuación.
En condiciones normales, la selección puede iniciarse seleccionando varios nodos de memorización que estén suficientemente separados desde el punto de vista geográfico. Esta operación puede realizarse en varias maneras. A modo de ejemplo, puede existir un algoritmo que identifique varios grupos de nodos de memorización o los nodos de memorización pueden tener números de grupos, de modo que un solo nodo de memorización en cada grupo se pueda captar con facilidad.
La selección puede incluir, entonces, calcular, sobre la base de la información de nodos de memorización de cada nodo (antigüedad del sistema, carga del sistema, etc.), un factor de probabilidad que corresponda a una puntuación de aptitud de los nodos de memorización. Un sistema de poca antigüedad, a modo de ejemplo, que es menos probable que tenga una anomalía operativa, obtiene una más alta puntuación. El factor de probabilidad puede calcularse, de este modo, como un producto escalar de dos vectores, en donde un vector contiene los parámetros de información de los nodos de memorización (o cuando sea aplicable, sus inversos) y el otro contiene los parámetros de ponderación correspondientes.
La selección comprende, entonces, seleccionar aleatoriamente nodos de memorización, en donde la probabilidad de que se seleccione un nodo de memorización especifico depende de su factor de probabilidad. En condiciones normales, si un primer servidor tiene un factor de probabilidad dos veces más alto que un segundo servidor, el primer servidor tiene una doble más alta probabilidad para ser seleccionado.
Es posible eliminar un porcentaje de los nodos de memorización con los más bajos factores de probabilidad antes de realizar la selección aleatoria, de modo que esta selección se realice para una fracción de los nodos en el subconjunto, cuya fracción incluye nodos de memorización con los más altos factores de probabilidad. Esto es particularmente de utilidad si existen numerosos nodos de memorización disponibles que puedan asumir el cálculo del algoritmo de selección consumidor de tiempo.
Por supuesto, el proceso de selección se puede realizar en una forma diferente. A modo de ejemplo, es posible calcular primero el factor de probabilidad para todos los nodos de memorización en el subconjunto que responde y realizar la selección aleatorizada . Cuando esta operación se realiza, puede comprobarse que la diversidad geográfica resultante es suficiente y, si no es suficiente, repetir la selección con uno de los dos más próximos nodos de memorización seleccionados, excluidos del subconjunto. La realización de una primera selección basada en la diversidad geográfica, a modo de ejemplo, la captación de un nodo de memorización en cada grupo para la selección posterior en función de los otros parámetros, es de especial utilidad, de nuevo, en casos en donde existan numerosos nodos de memorización disponibles. En esos casos, se seguirá realizando una selección adecuada sin necesidad de realizar cálculos con parámetros de todos los nodos de memorización disponibles .
Cuando se han seleccionado los nodos de memorización, los datos a memorizar y un identificador de datos correspondiente se envían a cada nodo seleccionado, normalmente utilizando una transmisión de unidifusión.
De forma opcional, la operación puede concluirse por cada nodo de memorización, que haya realizado satisfactoriamente la operación de escritura, con el envío de una confirmación al servidor. El servidor envía, entonces, una lista a todos los nodos de memorización implicados en la que se indique qué nodos han realizado satisfactoriamente la escritura de los datos y qué nodos no lo han hecho adecuadamente. En función de esta información, los nodos de memorización podrán mantener, por si mismos, los datos adecuadamente mediante el proceso de replicación que se describe a continuación. A modo de ejemplo, si falla la escritura de un nodo de memorización, existe una necesidad de replicación del fichero a uno o más nodos de memorización con el fin de conseguir el número deseado de nodos de memorización para ese fichero.
El método de escritura de datos permite, por si mismo, una API en un servidor 7 para memorizar datos en una manera muy segura, cuando pueda proporcionarse una excelente diversidad geográfica.
Además de las operaciones de escritura y de lectura, la API en el servidor 7 puede realizar operaciones que supriman ficheros y actualicen ficheros. Estos procesos se describirán en relación con el proceso de mantenimiento de datos más adelante en esta descripción.
El objetivo del proceso de mantenimiento de datos es cerciorarse de que un número razonable de nodos de memorización, sin funcionamiento anómalo, memoricen cada uno la más reciente versión de cada fichero. Además, pueden proporcionar la función de que ningún fichero suprimido sea memorizado en cualquier nodo de memorización. El mantenimiento se realiza por los nodos de memorización por sí mismos. Por lo tanto, no existe necesidad de un "maestro" dedicado que asuma la responsabilidad del mantenimiento de la memorización de datos. Esto garantiza una mejor flabilidad puesto que el "maestro" seria, de no ser asi, un punto débil en el sistema.
La Figura 6 ilustra, de forma esquemática, una situación en donde varios ficheros se memorizan entre varios nodos de memorización de datos. En el caso ilustrado, doce nodos, que tienen direcciones de IP consecutivamente numeradas desde 192.168.1.1 a 192.168.1.12, se muestran para fines de ilustración. Por supuesto, sin embargo, . los números de direcciones de IP no necesitan estar en el mismo nivel en absoluto. Los nodos se colocan en un orden circular solamente para simplificar la descripción, esto es, los nodos no necesitan tener ningún orden particular. Cada nodo memoriza uno o dos ficheros identificados, para fines de simplicidad, por las letras A-F.
Con referencia a la Figura 8, el método para el mantenimiento de datos comprende la detección 51 de las condiciones en el sistema de almacenamiento de datos que implican la necesidad de replicación de datos entre los nodos en el sistema de almacenamiento de datos y un proceso de replicación 53. El resultado del proceso de detección 51 es una lista 55 de ficheros para los cuales se ha identificado una necesidad de replicación. La lista puede incluir, además, datos respecto a la prioridad de las diferentes necesidades de replicación. Sobre la base de esta lista, se realiza el proceso de replicación 53.
La solidez operativa del almacenamiento distribuido radica en que un número razonable de copias de cada fichero, en versiones correctas, se memorizan en el sistema. En el caso ilustrado, se memorizan tres copias de cada fichero. Sin embargo, si fallara, a modo de ejemplo, el nodo de memorización con la dirección 192.168.1.5, no se alcanzará el número deseado de copias memorizadas para los ficheros "B" y "C".
Una circunstancia operativa que da lugar a una necesidad de replicación es, por lo tanto, el funcionamiento anómalo de un nodo de memorización en el sistema.
Cada nodo de memorización en el sistema puede supervisar el estado operativo de otros nodos de memorización en el sistema. Lo anterior puede realizarse permitiendo a cada nodo de memorización emitir una asi denominada señal de pulsos de supervisión, a intervalos periódicos, según se ilustra en la Figura 7. En el caso ilustrado, el nodo de memorización con la dirección 192.168.1.7 emite una señal de multidifusión 57 a los otros nodos de memorización en el sistema, indicando que se está trabajando de forma correcta. Esta señal puede recibirse por todos los demás nodos de memorización en funcionamiento en el sistema que realizan la supervisión de señal de pulsos de supervisión 59 (véase Figura 8) o uno de sus subconjuntos . En el caso del nodo de memorización con dirección 192.168.1.5, sin embargo, este nodo está en funcionamiento anómalo y no emite ninguna señal de pulsos de supervisión. Por lo tanto, los otros nodos de memorización observarán que no se ha emitido ninguna señal de pulsos de supervisión por este nodo en un periodo de tiempo largo, lo que indica que el nodo de memorización en cuestión está inactivo .
La señal de pulsos de supervisión puede, además de la dirección del nodo de memorización, incluir su número de versión de la lista de nodos. Otro nodo de memorización, que escucha la señal de pulsos de supervisión y averigua que el nodo de memorización transmisor tiene una lista de nodos de memorización posterior, podrá, entonces, demandar que el nodo de memorización transmisor efectúe la transferencia de su lista de nodos. Esto significa que la adición y eliminación de nodos de memorización se puede obtener simplemente añadiendo o suprimiendo un nodo de memorización y enviando una nueva versión de la lista de nodos a un nodo de memorización único. Esta lista de nodos se difundirá, entonces, a todos los demás nodos de memorización en el sistema .
De nuevo haciendo referencia a la Figura 8, cada nodo de memorización busca 61 su directorio interno para los ficheros que se memoricen por el nodo de memorización en funcionamiento anómalo. Los nodos de memorización que memoricen, por si mismos, ficheros "B" y "C" encontrarán el nodo de memorización en funcionamiento anómalo y por lo tanto, pueden añadir el fichero correspondiente en sus listas 55.
El proceso de detección podrá también, sin embargo, revelar otras condiciones que implican la necesidad de replicación de un fichero. Normalmente, dichas condiciones pueden ser incoherentes, esto es, que uno o más nodos de memorización tengan una versión obsoleta del fichero. Una operación de supresión implica también un proceso de replicación puesto que este proceso puede realizar la supresión física real del fichero. La operación de supresión del servidor solamente necesita, entonces, cerciorarse de que los nodos de memorización establecen un indicador de supresión para el fichero en cuestión. Cada nodo puede, por lo tanto, supervisar las operaciones de lectura y de escritura realizadas en el sistema de memorización de datos. La información proporcionada por el servidor 7 a la conclusión de las operaciones de lectura y de escritura, respectivamente, pueden indicar que un solo nodo de memorización contiene una versión obsoleta de un fichero (en el caso de una operación de lectura) o que un nodo de memorización no realizó satisfactoriamente una operación de escritura. En ambos casos, existe una necesidad de mantener datos mediante replicacion, de modo que los objetos globales del proceso de mantenimiento se cumplan.
Además de las operaciones de lectura y de escritura básicas 63, 65, al menos dos procesos adicionales pueden proporcionar indicaciones de que existe una necesidad de replicacion, esto es, los procesos de supresión 67 y de actualización 69 de los que se proporcionará a continuación una breve explicación.
El proceso de supresión se inicia por el servidor 7 (véase Figura 1) . De modo similar al proceso de lectura, el servidor envía una interrogación de consulta mediante multidifusión a todos los nodos de memorización, con el fin de averiguar qué nodos de memorización tienen datos con un identificador de datos específico. Los nodos de memorización realizan, por sí mismos, una exploración de los datos con el identificador pertinente y responden mediante una transmisión de unidifusión si tienen los datos en cuestión. La respuesta puede incluir una lista, desde el directorio de nodos de memorización, de otros nodos de memorización que contienen los datos. El servidor 7 envía luego una demanda de unidifusión a los nodos de memorización que se consideran para memorizar el fichero, en el sentido de que se suprime el fichero. Cada nodo de memorización establece un indicador en relación con el fichero y que indica que debe suprimirse. A continuación, el fichero se añade a la lista de replicacion y se envía una confirmación al servidor. El proceso de replicacion suprime físicamente, entonces, el fichero según se describirá a continuación.
El proceso de actualización tiene una función de búsqueda, similar a la del proceso de supresión y una función de escritura, similar a la realizada en el proceso de escritura. El servidor envía una interrogación de consulta mediante multidifusión a todos los nodos de memorización, con el fin de averiguar qué nodos de memorización tienen datos con un identificador de datos específico. Los nodos de memorización exploran, por sí mismos, los datos con el identificador pertinente y responden mediante una transmisión de unidifusión si tienen los datos en cuestión. La respuesta puede incluir una lista, desde el directorio de nodos de memorización, de otros nodos de memorización que contienen los datos. El servidor 7 envía, entonces, una demanda de unidifusión, que comunica a los nodos de memorización la necesidad de actualizar los datos. Por supuesto, la demanda contiene los datos actualizados. Los nodos de memorización, que actualizan los datos, envían una confirmación al servidor, que responde enviando una transmisión de unidifusión que contiene una lista con los nodos de memorización que actualizaron, de forma satisfactoria los datos y los nodos de memorización que no lo hicieron. De nuevo, esta lista se puede utilizar por el proceso de mantenimiento .
De nuevo haciendo referencia a la Figura 8, las operaciones de lectura 63, la escritura 65, supresión 67 y actualización 69 pueden indicar todas ellas que existe una necesidad de replicación. Lo mismo se aplica a la supervisión de señales de pulsos 59. El proceso de detección global 51 genera, de este modo, datos con respecto a qué ficheros necesitan su replicación. A modo de ejemplo, una operación de lectura o de actualización puede revelar que un nodo de memorización especifico contiene una versión obsoleta de un fichero. Un proceso de supresión puede establecer un indicador de supresión para un fichero especifico. La supervisión por señales de pulsos de supervisión puede revelar que varios ficheros, memorizados en un nodo de memorización, con funcionamiento anómalo, necesitan replicarse para un nuevo nodo de memorización.
Cada uno de los nodos de memorización supervisa la necesidad de replicación para todos los ficheros y memoriza y mantiene una lista de replicación 55. La lista de replicación 55 contiene, por lo tanto, varios ficheros que necesitan su replicación. Los ficheros pueden estar ordenados en correspondencia con la prioridad para cada replicación. En condiciones normales, pueden existir tres niveles de prioridad diferentes. El más alto nivel se reserva para los ficheros que el nodo de memorización mantiene con la última copia online. Dicho fichero necesita una replicación rápida para otros nodos de memorización, de modo que se pueda conseguir un nivel razonable de redundancia. Un nivel medio de prioridad puede referirse a los ficheros en donde las versiones sean incoherentes entre los nodos de memorización. Un más bajo nivel de prioridad puede referirse a ficheros que se memoricen en un nodo de memorización que tenga un funcionamiento anómalo.
El nodo de memorización se relaciona con los ficheros en la lista de replicación 55 en función de su nivel de prioridad. El proceso de replicación se describe a continuación para un nodo de memorización que se denomina aquí el nodo de memorización en funcionamiento, aunque todos los nodos de memorización pueden operar de esta manera.
La parte de replicación 53 del proceso de mantenimiento comienza con el intento del nodo de memorización en funcionamiento 71 de convertirse en el nodo maestro para el fichero que intenta su replicación. Los nodos de memorización en funcionamiento envían una demanda de unidifusión para convertirse en nodo maestro para otros nodos de memorización que sea conocido que memorizan el fichero en cuestión. El directorio 19 (véase Figura 1) proporciona una lista de concentradores que comprende información respecto a qué nodos de memorización solicitar. En el supuesto, a modo de ejemplo, en caso de una demanda en colisión, de que uno de los nodos de memorización no responda de modo afirmativo, el fichero se desplazará de nuevo a la lista presente y se realiza un intento, en cambio, con el fichero siguiente en la lista. De no ser asi, el nodo de memorización en funcionamiento se considera como el maestro de este fichero y los demás nodos de memorización establecen un indicador de que el nodo de memorización en funcionamiento es el nodo maestro para el fichero en cuestión.
La siguiente etapa es encontrar 73 todas las copias del fichero en cuestión en el sistema de almacenamiento distribuido. Esta operación se puede realizar por el nodo de memorización en funcionamiento que envía una consulta de multidifusión a todos los nodos de memorización, preguntando cuáles de ellos tienen el fichero. Los nodos de memorización, que tengan el fichero, presentan respuestas a la consulta, que contiene la versión del fichero que mantiene así como sus listas de concentradores, esto es, se mantiene la lista de nodos de memorización que contienen el fichero pertinente en el directorio de cada nodo de memorización. Estas listas de concentradores son objeto luego de fusión 75 mediante el nodo de memorización en funcionamiento, de modo que se forme una lista de concentradores maestra en correspondencia con la unión de todas las listas de concentradores recuperadas. Si se encuentran nodos de memorización adicionales, que no fueron interrogados cuando el nodo de memorización en funcionamiento intentó convertirse en nodo maestro, dicha etapa se puede repetir ahora para los nodos de memorización adicionales. La lista de concentradores de nodos maestros contiene información respecto a qué versiones del fichero mantienen los diferentes nodos de memorización e ilustran el estado operativo del fichero dentro del sistema de almacenamiento completo.
Si el nodo de memorización en funcionamiento no tiene la más reciente versión del fichero en cuestión, este fichero se recupera luego 77 desde uno de los nodos de memorización que tienen la más reciente versión.
El nodo de memorización en funcionamiento decide luego 79 si necesita cambiarse la lista de concentradores, normalmente si deben añadirse nodos de memorización adicionales. Si es asi, el nodo de memorización en funcionamiento, puede realizar un proceso muy similar al proceso de escritura que se realiza por el servidor y según se describe en relación con las Figuras 4A-4C y 5. El resultado de este proceso es que se escribe el fichero en un nuevo nodo de memorización.
En caso de incoherencias de versiones, el nodo de memorización en funcionamiento puede autorizar 81 copias del fichero que se memorizan en otros nodos de memorización, de modo que todos los ficheros memorizados tengan la versión correcta .
Las copias superfluas del fichero memorizado se pueden suprimir 83. Si el proceso de replicación se inicia mediante una operación de supresión, el proceso puede pasar directamente a esta etapa. A continuación, tan pronto como todos los nodos de memorización hayan aceptado la supresión del fichero, el nodo de memorización en funcionamiento simplemente demanda, utilizando la unidifusión, todos los nodos de memorización para suprimir físicamente el fichero en cuestión. Los nodos de memorización confirman que el fichero está suprimido.
Además del estado operativo, esto es, la lista de concentradores maestra de ficheros se actualiza. Es posible, entonces, de forma opcional, repetir las etapas 73-83 para cerciorarse de que ya no existe la necesidad de replicación. Esta repetición debe dar lugar a una lista de concentradores maestra coherente que no necesita actualizarse en la etapa 85.
Más adelante, se concluye el proceso de replicación para ese fichero y el nodo de memorización en funcionamiento puede liberar 87 el estado operativo como maestro del fichero enviando un mensaje correspondiente a todos los demás nodos de memorización en la lista de concentradores.
Este sistema, en donde cada nodo de memorización asume la responsabilidad de mantener la totalidad de los ficheros que memoriza a través de todo el conjunto de nodos de memorización, proporciona un sistema de autoreparación (en caso de un funcionamiento anómalo del nodo de memorización) y de autodepuración (en caso de incoherencias de ficheros o ficheros a suprimir) con excelente fiabilidad. Es fácilmente escalable y puede memorizar ficheros para un gran número de diferentes aplicaciones simultáneamente.
La invención no está restringida a los ejemplos específicos dados a conocer y se puede variar y modificar en diferentes formas dentro del alcance de protección de las reivindicaciones adjuntas.
Se hace constar que con relación a esta fecha, el mejor método conocido por la solicitante para llevar a la práctica la citada invención, es el que resulta claro de la presente descripción de la invención.

Claims (11)

Reivindicaciones
1. Un método para la escritura de datos en un sistema de almacenamiento de datos que comprende una pluralidad de nodos de memorización de datos, utilizándose dicho método en un servidor que ejecuta una aplicación que accede a datos en el sistema de almacenamiento de datos y que comprende: el envió (41) de una consulta de memorización de multidifusión a una pluralidad de dichos nodos de memorización; - la recepción (43) de una pluralidad de respuestas desde un subconjunto de dichos nodos de memorización, incluyendo dichas respuestas información del nodo de memorización que se relaciona, respectivamente, con cada nodo de memorización; - la selección (45) de al menos dos nodos de memorización en el subconjunto, en función de dicha respuesta, en donde la selección comprende: - la determinación, basada en un algoritmo, para cada nodo de memorización en el subconjunto, de un factor de probabilidad que es función de su información del nodo de memorización y - la selección aleatoria de dichos al menos dos nodos de memorización, en donde la probabilidad de que se seleccione un nodo de memorización depende de su factor de probabilidad y - el envió (47) de datos y de un identificador de datos, correspondiente a los datos, a los nodos de memorización seleccionados .
2. Un método según la reivindicación 1, en donde la información del nodo de memorización incluye datos geográficos en relación con la posición geográfica de cada nodo de memorización.
3. Un método según la reivindicación 2, en donde la posición geográfica incluye la latitud y la longitud del nodo de memorización en cuestión.
4. Un método según la reivindicación 2 o 3, en donde la selección aleatoria de nodos de memorización se realiza para nodos de memorización en el subconjunto gue cumplan un criterio primario basado en una separación geográfica.
5. Un método según la reivindicación 1, en donde la información del nodo de memorización incluye la antigüedad del sistema para el nodo de memorización en cuestión.
6. Un método según cualquiera de las reivindicaciones precedentes, en donde la información del nodo de memorización incluye la carga del sistema para el nodo de memorización en cuestión .
7. Un método según cualquiera de las reivindicaciones precedentes, en donde la consulta operativa de memorización de multidifusión incluye un identificador de datos, que identifica los datos que se van a memorizar.
8. Un método según cualquiera de las reivindicaciones precedentes, en donde al menos se seleccionan tres nodos.
9. Un método según cualquiera de las reivindicaciones precedentes, en donde se envía una lista de nodos de memorización que memorizan satisfactoriamente los datos a los nodos de memorización seleccionados.
10. Un método según cualquiera de las reivindicaciones precedentes, en donde dicha selección aleatoria se realiza para una fracción de los nodos en el subconjunto, cuya fracción incluye nodos de memorización con los más altos factores de probabilidad.
11. Un servidor adaptado para la escritura de datos en un sistema de memorización de datos que comprende una pluralidad de nodos de memorización de datos, comprendiendo dicho servidor: medios para enviar una consulta operativa de memorización de multidifusión a una pluralidad de dichos nodos de memorización; medios para la recepción de una pluralidad de respuestas desde un subconjunto de dichos nodos de memorización, incluyendo dichas respuestas información del nodo de memorización, respectivamente, en relación con cada nodo de memorización; medios para seleccionar al menos dos nodos de memorización en el subconjunto, en función de dichas respuestas, en donde la selección incluye: - la determinación, basada en un algoritmo, para cada nodo de memorización en el subconjunto, de un factor de probabilidad que es función de su información del nodo de memorización y - la selección aleatoria de dichos al menos dos nodos de memorización, en donde la probabilidad de que se seleccione un nodo de memorización depende de su factor de probabilidad y - medios para el envió de datos y de un identificador de datos, correspondiente a los datos, al nodo de memorización seleccionado .
MX2012012198A 2010-04-23 2011-04-20 Almacenamiento de datos distribuidos. MX2012012198A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP10160910.5A EP2387200B1 (en) 2010-04-23 2010-04-23 Distributed data storage
PCT/EP2011/056317 WO2011131717A1 (en) 2010-04-23 2011-04-20 Distributed data storage

Publications (1)

Publication Number Publication Date
MX2012012198A true MX2012012198A (es) 2013-03-12

Family

ID=42342003

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2012012198A MX2012012198A (es) 2010-04-23 2011-04-20 Almacenamiento de datos distribuidos.

Country Status (13)

Country Link
US (3) US8850019B2 (es)
EP (2) EP2387200B1 (es)
JP (1) JP5612195B2 (es)
KR (1) KR101905198B1 (es)
CN (1) CN102939740B (es)
AU (1) AU2011244345B2 (es)
BR (1) BR112012027012A2 (es)
CA (1) CA2797053C (es)
EA (1) EA026842B1 (es)
IL (1) IL222630A (es)
MX (1) MX2012012198A (es)
WO (1) WO2011131717A1 (es)
ZA (1) ZA201208755B (es)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE533007C2 (sv) 2008-10-24 2010-06-08 Ilt Productions Ab Distribuerad datalagring
EP2387200B1 (en) 2010-04-23 2014-02-12 Compuverde AB Distributed data storage
US9137331B2 (en) * 2011-07-15 2015-09-15 Metalogix International Gmbh Adaptive replication
US9385875B2 (en) 2013-01-23 2016-07-05 Nexenta Systems, Inc. Scalable transport with cluster-consensus rendezvous
US9626378B2 (en) 2011-09-02 2017-04-18 Compuverde Ab Method for handling requests in a storage system and a storage node for a storage system
US8645978B2 (en) 2011-09-02 2014-02-04 Compuverde Ab Method for data maintenance
US9021053B2 (en) 2011-09-02 2015-04-28 Compuverde Ab Method and device for writing data to a data storage system comprising a plurality of data storage nodes
US8650365B2 (en) 2011-09-02 2014-02-11 Compuverde Ab Method and device for maintaining data in a data storage system comprising a plurality of data storage nodes
US8769138B2 (en) 2011-09-02 2014-07-01 Compuverde Ab Method for data retrieval from a distributed data storage system
US8997124B2 (en) 2011-09-02 2015-03-31 Compuverde Ab Method for updating data in a distributed data storage system
CN103019614B (zh) 2011-09-23 2015-11-25 阿里巴巴集团控股有限公司 分布式存储系统管理装置及方法
US8856549B2 (en) * 2011-11-28 2014-10-07 Cleversafe, Inc. Deleting encoded data slices in a dispersed storage network
US10558592B2 (en) 2011-11-28 2020-02-11 Pure Storage, Inc. Priority level adaptation in a dispersed storage network
US11474958B1 (en) 2011-11-28 2022-10-18 Pure Storage, Inc. Generating and queuing system messages with priorities in a storage network
CN102546782B (zh) * 2011-12-28 2015-04-29 北京奇虎科技有限公司 一种分布式系统及其数据操作方法
CN102646127A (zh) * 2012-02-29 2012-08-22 浪潮(北京)电子信息产业有限公司 分布式文件系统副本选择方法和装置
CN102638567B (zh) * 2012-03-02 2015-05-20 深圳市朗科科技股份有限公司 多应用云存储平台和云存储终端
US20180336097A1 (en) * 2012-06-25 2018-11-22 International Business Machines Corporation Namespace affinity and failover for processing units in a dispersed storage network
CN103514212B (zh) * 2012-06-27 2016-04-27 腾讯科技(深圳)有限公司 数据写入方法及系统
US10547693B2 (en) * 2012-09-07 2020-01-28 Avigilon Corporation Security device capability discovery and device selection
CN103064635B (zh) * 2012-12-19 2016-08-24 华为技术有限公司 分布式存储方法和分布式存储装置
CN103902568B (zh) * 2012-12-27 2017-05-31 中国银联股份有限公司 一种基于数据划分的多节点数据库同步方法和多节点数据库系统
US9479587B2 (en) 2013-01-23 2016-10-25 Nexenta Systems, Inc. Scalable object storage using multicast transport
CN103207897B (zh) * 2013-03-15 2016-08-17 北京京东世纪贸易有限公司 一种分布式存储查询系统及其运行方法和运行装置
CN104636327A (zh) * 2013-11-06 2015-05-20 上海语镜汽车信息技术有限公司 一种基于增量计算的分布式流式数据系统
US20150169609A1 (en) * 2013-12-06 2015-06-18 Zaius, Inc. System and method for load balancing in a data storage system
US20160191508A1 (en) * 2014-12-31 2016-06-30 Nexenta Systems, Inc. Methods and Systems for Block Sharding of Objects Stored in Distributed Storage System
US10523241B2 (en) * 2015-05-29 2019-12-31 Pure Storage, Inc. Object fan out write operation
US10601683B1 (en) * 2016-12-19 2020-03-24 Amazon Technologies, Inc. Availability of a distributed application using diversity scores
US10209901B2 (en) * 2017-01-04 2019-02-19 Walmart Apollo, Llc Systems and methods for distributive data storage
JP6990055B2 (ja) 2017-07-12 2022-01-12 株式会社日立製作所 分散コンピューティングシステムにおけるデータをリカバリする方法およびシステム
CN108429813B (zh) * 2018-03-22 2021-04-06 深圳市网心科技有限公司 云存储服务的容灾方法、系统及终端
RU2697961C1 (ru) * 2018-03-30 2019-08-21 Акционерное общество "Лаборатория Касперского" Система и способ оценки деградации устройства хранения данных и обеспечения сохранности наиболее важных данных
CN108681485A (zh) * 2018-04-27 2018-10-19 佛山市日日圣科技有限公司 一种接收信息的处理方法及处理装置
CN110162270B (zh) * 2019-04-29 2020-08-25 平安国际智慧城市科技股份有限公司 基于分布式存储系统的数据存储方法、存储节点及介质
CN110515916B (zh) * 2019-07-26 2022-12-23 济南浪潮数据技术有限公司 一种主从分布式文件处理方法、主节点、从节点及系统
CN110865987A (zh) * 2019-11-18 2020-03-06 杭州安恒信息技术股份有限公司 一种文件同步方法、装置、设备及介质
US20210294702A1 (en) * 2021-06-04 2021-09-23 Intel Corporation High-availability memory replication in one or more network devices

Family Cites Families (219)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3707707A (en) 1970-11-12 1972-12-26 Cipher Data Prod Digital cassette magnetic tape recorder and reproducer
JP3139884B2 (ja) 1993-06-14 2001-03-05 株式会社東芝 多重要素処理システム
US5713017A (en) 1995-06-07 1998-01-27 International Business Machines Corporation Dual counter consistency control for fault tolerant network file servers
JPH103421A (ja) 1995-11-20 1998-01-06 Matsushita Electric Ind Co Ltd 仮想ファイル管理システム
US5787247A (en) 1996-07-12 1998-07-28 Microsoft Corporation Replica administration without data loss in a store and forward replication enterprise
US5924094A (en) 1996-11-01 1999-07-13 Current Network Technologies Corporation Independent distributed database system
US6021118A (en) 1997-02-10 2000-02-01 Lucent Techologies Inc. Synchronization methods for distributed processing systems having replicated data
US6003065A (en) 1997-04-24 1999-12-14 Sun Microsystems, Inc. Method and system for distributed processing of applications on host and peripheral devices
US6259701B1 (en) 1997-09-11 2001-07-10 At&T Corp. Method and system for a unicast endpoint client to access a multicast internet protocol (IP) session
US6055543A (en) 1997-11-21 2000-04-25 Verano File wrapper containing cataloging information for content searching across multiple platforms
CA2318908C (en) 1998-01-23 2007-04-03 Filepool N.V. Content addressable information encapsulation, representation, and transfer
JPH11249874A (ja) 1998-02-27 1999-09-17 Toshiba Corp コンピュータシステム、同システムにおける同期処理方法および記録媒体
US6510162B1 (en) 1998-05-27 2003-01-21 3Com Corporation System and method for managing channel usage in a data over cable system
JP4146983B2 (ja) 1999-02-26 2008-09-10 インターナショナル・ビジネス・マシーンズ・コーポレーション サーバ・オブジェクトのメソッドを呼び出すプロセス方法及びデータ処理システム
WO2000052889A1 (en) 1999-03-05 2000-09-08 Allayer Technologies Corporation Packet switching fabric having a segmented ring with token based resource control protocol and output queuing control
US7774469B2 (en) 1999-03-26 2010-08-10 Massa Michael T Consistent cluster operational data in a server cluster using a quorum of replicas
US6389432B1 (en) 1999-04-05 2002-05-14 Auspex Systems, Inc. Intelligent virtual volume access
JP2000322292A (ja) * 1999-05-10 2000-11-24 Nec Corp クラスタ型データサーバシステム及びデータ格納方法
US6952741B1 (en) 1999-06-30 2005-10-04 Computer Sciences Corporation System and method for synchronizing copies of data in a computer system
US7634453B1 (en) 1999-08-13 2009-12-15 Storage Technology Corporation Distributed file data location
US6976165B1 (en) 1999-09-07 2005-12-13 Emc Corporation System and method for secure storage, transfer and retrieval of content addressable information
US7934251B2 (en) 1999-12-02 2011-04-26 Western Digital Technologies, Inc. Managed peer-to-peer applications, systems and methods for distributed data access and storage
US6499090B1 (en) 1999-12-28 2002-12-24 Intel Corporation Prioritized bus request scheduling mechanism for processing devices
US6546388B1 (en) 2000-01-14 2003-04-08 International Business Machines Corporation Metadata search results ranking system
US6542972B2 (en) 2000-01-31 2003-04-01 Commvault Systems, Inc. Logical view and access to physical storage in modular data and storage management system
US6928467B2 (en) 2000-02-02 2005-08-09 Inno Path Software, Inc. Apparatus and methods for providing data synchronization by facilitating data synchronization system design
US7506034B2 (en) 2000-03-03 2009-03-17 Intel Corporation Methods and apparatus for off loading content servers through direct file transfer from a storage center to an end-user
US6952737B1 (en) 2000-03-03 2005-10-04 Intel Corporation Method and apparatus for accessing remote storage in a distributed storage cluster architecture
US6470420B1 (en) 2000-03-31 2002-10-22 Western Digital Ventures, Inc. Method for designating one of a plurality of addressable storage devices to process a data transfer request
WO2001082678A2 (en) 2000-05-02 2001-11-08 Sun Microsystems, Inc. Cluster membership monitor
US6826564B2 (en) 2000-07-10 2004-11-30 Fastforward Networks Scalable and programmable query distribution and collection in a network of queryable devices
US6732237B1 (en) 2000-08-29 2004-05-04 Oracle International Corporation Multi-tier caching system
US20040236798A1 (en) 2001-09-11 2004-11-25 Sudhir Srinivasan Migration of control in a distributed segmented file system
US7406484B1 (en) 2000-09-12 2008-07-29 Tbrix, Inc. Storage allocation in a distributed segmented file system
US6782389B1 (en) 2000-09-12 2004-08-24 Ibrix, Inc. Distributing files across multiple, permissibly heterogeneous, storage devices
US6970939B2 (en) 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
EP1364510B1 (en) 2000-10-26 2007-12-12 Prismedia Networks, Inc. Method and system for managing distributed content and related metadata
SE520129C2 (sv) 2000-10-27 2003-05-27 Terraplay Systems Ab Kommunikationsinfrastrukturanordning i och en datorläsbar programprodukt för ett databearbetningssystem för fleranvändarapplikationer
US6985956B2 (en) 2000-11-02 2006-01-10 Sun Microsystems, Inc. Switching system
AU2002232411A1 (en) 2000-11-28 2002-06-11 Gregory L. Gingerich A method and system for software and hardware multiplicity
US7165096B2 (en) 2000-12-22 2007-01-16 Data Plow, Inc. Storage area network file system
WO2002052097A1 (de) 2000-12-27 2002-07-04 BSH Bosch und Siemens Hausgeräte GmbH Verfahren und vorrichtung zum glätten von kleidungsstücken
US7266556B1 (en) * 2000-12-29 2007-09-04 Intel Corporation Failover architecture for a distributed storage system
US6768871B2 (en) 2001-01-30 2004-07-27 The Regents Of The University Of California Optical layer multicasting using a multicast switch to effect survivability and security
US6865603B2 (en) 2001-01-31 2005-03-08 Hewlett-Packard Development Company, L.P. Correcting for network address changes
US7069295B2 (en) 2001-02-14 2006-06-27 The Escher Group, Ltd. Peer-to-peer enterprise storage
US20020156912A1 (en) 2001-02-15 2002-10-24 Hurst John T. Programming content distribution
US7062490B2 (en) 2001-03-26 2006-06-13 Microsoft Corporation Serverless distributed file system
US6839815B2 (en) 2001-05-07 2005-01-04 Hitachi, Ltd. System and method for storage on demand service in a global SAN environment
US6918013B2 (en) 2001-07-16 2005-07-12 Bea Systems, Inc. System and method for flushing bean cache
US7039622B2 (en) 2001-09-12 2006-05-02 Sas Institute Inc. Computer-implemented knowledge repository interface system and method
US7054867B2 (en) 2001-09-18 2006-05-30 Skyris Networks, Inc. Systems, methods and programming for routing and indexing globally addressable objects and associated business models
GB2381427A (en) 2001-10-27 2003-04-30 Hewlett Packard Co Spanning tree in peer to peer networks
US7975016B2 (en) 2001-10-29 2011-07-05 Oracle America, Inc. Method to manage high availability equipments
US7054910B1 (en) 2001-12-20 2006-05-30 Emc Corporation Data replication facility for distributed computing environments
US6917941B2 (en) 2001-12-28 2005-07-12 Channel Intelligence, Inc. Method and apparatus for creation and maintenance of database structure
JP4202026B2 (ja) 2002-01-31 2008-12-24 株式会社アンソナ ストレージシステムおよびストレージ装置
US7243103B2 (en) 2002-02-14 2007-07-10 The Escher Group, Ltd. Peer to peer enterprise storage system with lexical recovery sub-system
JP4198920B2 (ja) 2002-02-26 2008-12-17 エイディシーテクノロジー株式会社 バックアップシステム、バックアップ用プログラムおよびバックアップ方法
US7020665B2 (en) * 2002-03-07 2006-03-28 Microsoft Corporation File availability in distributed file storage systems
JP2003271316A (ja) 2002-03-14 2003-09-26 Hitachi Ltd ストレージシステム、その動作プログラム及びその運用方法、情報処理端末及びその動作プログラム、データ管理システム
US7257645B2 (en) 2002-05-01 2007-08-14 Bea Systems, Inc. System and method for storing large messages
US7305585B2 (en) 2002-05-23 2007-12-04 Exludus Technologies Inc. Asynchronous and autonomous data replication
US7574488B2 (en) 2002-05-31 2009-08-11 Hitachi, Ltd. Method and apparatus for peer-to-peer file sharing
US6732171B2 (en) 2002-05-31 2004-05-04 Lefthand Networks, Inc. Distributed network storage system with virtualization
US20030233455A1 (en) 2002-06-14 2003-12-18 Mike Leber Distributed file sharing system
US7631313B2 (en) 2002-06-17 2009-12-08 David Mayhew System and method for transferring data
US8060598B1 (en) 2002-07-01 2011-11-15 Sprint Communications Company L.P. Computer network multicasting traffic monitoring and compensation
JP4240930B2 (ja) 2002-07-15 2009-03-18 株式会社日立製作所 複数ネットワークストレージの仮送想一元化方法及び装置
DE10237875A1 (de) 2002-08-19 2004-03-04 Siemens Ag Vorrichtung, insbesondere Automatisierungsgerät, mit in Datei gespeicherter Dateiverzeichnisstruktur
AU2003273312A1 (en) 2002-09-10 2004-04-30 Exagrid Systems, Inc. Method and apparatus for integrating primary data storage with local remote data protection
US7206836B2 (en) 2002-09-23 2007-04-17 Sun Microsystems, Inc. System and method for reforming a distributed data system cluster after temporary node failures or restarts
US7146499B2 (en) 2002-09-30 2006-12-05 International Business Machines Corporation Security system for replicated storage devices on computer networks
US7774466B2 (en) 2002-10-17 2010-08-10 Intel Corporation Methods and apparatus for load balancing storage nodes in a distributed storage area network system
CA2500166A1 (en) 2002-10-29 2004-05-13 British Telecommunications Public Limited Company Method and apparatus for network management
US7945669B2 (en) * 2002-10-30 2011-05-17 Emc Corporation Method and apparatus for provisioning storage resources
US7328243B2 (en) 2002-10-31 2008-02-05 Sun Microsystems, Inc. Collaborative content coherence using mobile agents in peer-to-peer networks
US7565419B1 (en) 2002-11-22 2009-07-21 Symantec Operating Corporation Conflict resolution in a peer to peer network
US20040139167A1 (en) 2002-12-06 2004-07-15 Andiamo Systems Inc., A Delaware Corporation Apparatus and method for a scalable network attach storage system
US7624158B2 (en) 2003-01-14 2009-11-24 Eycast Inc. Method and apparatus for transmission and storage of digital medical data
US7320009B1 (en) 2003-03-28 2008-01-15 Novell, Inc. Methods and systems for file replication utilizing differences between versions of files
US7328256B2 (en) 2003-06-02 2008-02-05 Apple Inc. Method and apparatus for distributing computer files across a network to multiple clients
US20040260775A1 (en) 2003-06-20 2004-12-23 Xerox Corporation System and method for sending messages
US7694086B1 (en) 2003-06-30 2010-04-06 Symantec Operating Corporation Method and system for incremental backup of data volumes
US7523217B2 (en) 2003-07-15 2009-04-21 Hewlett-Packard Development Company, L.P. System and method having improved efficiency and reliability for distributing a file among a plurality of recipients
EP1649387B1 (en) * 2003-07-16 2010-11-10 Joltid Ltd. Distributed database system
US20050015461A1 (en) 2003-07-17 2005-01-20 Bruno Richard Distributed file system
JP2005044003A (ja) 2003-07-23 2005-02-17 Fujitsu Ltd 認証装置、方法、及びプログラム
US6983429B2 (en) 2003-09-30 2006-01-03 Bull Hn Information Systems Inc. Formal proof methods for analyzing circuit loading problems under operating conditions
US7340510B1 (en) 2003-11-18 2008-03-04 Cisco Technology, Inc. Content delivery network (CDN) replication status reporter
US7039661B1 (en) 2003-12-29 2006-05-02 Veritas Operating Corporation Coordinated dirty block tracking
US7822711B1 (en) 2003-12-31 2010-10-26 Symantec Operating Corporation Conflict resolution for a distributed file sharing system
US7383463B2 (en) 2004-02-04 2008-06-03 Emc Corporation Internet protocol based disaster recovery of a server
US7385978B1 (en) 2004-02-19 2008-06-10 Cisco Technology, Inc. Method and apparatus for reliable multicast distribution
US9160571B2 (en) 2004-03-11 2015-10-13 Hewlett-Packard Development Company, L.P. Requesting a service from a multicast network
JP4448719B2 (ja) 2004-03-19 2010-04-14 株式会社日立製作所 ストレージシステム
US7503052B2 (en) 2004-04-14 2009-03-10 Microsoft Corporation Asynchronous database API
US20060023969A1 (en) 2004-04-30 2006-02-02 Lara Eyal D Collaboration and multimedia authoring
CA2566984A1 (en) * 2004-05-18 2005-12-01 British Telecommunications Public Limited Company Peer-to-peer networks
US7433898B1 (en) 2004-06-01 2008-10-07 Sanbolic, Inc. Methods and apparatus for shared storage journaling
US7634566B2 (en) 2004-06-03 2009-12-15 Cisco Technology, Inc. Arrangement in a network for passing control of distributed data between network nodes for optimized client access based on locality
US7873650B1 (en) 2004-06-11 2011-01-18 Seisint, Inc. System and method for distributing data in a parallel processing system
US20050278552A1 (en) 2004-06-14 2005-12-15 Vincent Delisle Secure virtual account
US20060031230A1 (en) 2004-07-21 2006-02-09 Kumar Sinha M Data storage systems
US20060047776A1 (en) 2004-08-31 2006-03-02 Chieng Stephen S Automated failover in a cluster of geographically dispersed server nodes using data replication over a long distance communication link
US20060080574A1 (en) * 2004-10-08 2006-04-13 Yasushi Saito Redundant data storage reconfiguration
JP4222295B2 (ja) 2004-11-19 2009-02-12 パナソニック株式会社 ビデオサーバおよびこれを用いた映像配信システム
US7631023B1 (en) 2004-11-24 2009-12-08 Symantec Operating Corporation Performance-adjusted data allocation in a multi-device file system
JP4451293B2 (ja) 2004-12-10 2010-04-14 株式会社日立製作所 名前空間を共有するクラスタ構成のネットワークストレージシステム及びその制御方法
US7320088B1 (en) 2004-12-28 2008-01-15 Veritas Operating Corporation System and method to automate replication in a clustered environment
JP4843976B2 (ja) 2005-03-25 2011-12-21 日本電気株式会社 レプリケーションシステムと方法
US7454426B2 (en) 2005-04-12 2008-11-18 International Business Machines Corporation Referential integrity across a distributed directory
US7631016B2 (en) 2005-05-04 2009-12-08 Oracle International Corporation Providing the latest version of a data item from an N-replica set
WO2006124911A2 (en) 2005-05-18 2006-11-23 Ibrix, Inc. Balanced computer architecture
EP1889160A2 (en) 2005-06-09 2008-02-20 Whirlpool Corporation Software architecture system and method for communication with, and management of, at least one component within a household appliance
US7523146B2 (en) 2005-06-21 2009-04-21 Apple Inc. Apparatus and method for peer-to-peer N-way synchronization in a decentralized environment
US8401997B1 (en) 2005-06-30 2013-03-19 Symantec Operating Corporation System and method for replication using consistency interval markers in a distributed storage environment
US7631045B2 (en) 2005-07-14 2009-12-08 Yahoo! Inc. Content router asynchronous exchange
US7571168B2 (en) 2005-07-25 2009-08-04 Parascale, Inc. Asynchronous file replication and migration in a storage network
US9305011B2 (en) 2005-07-27 2016-04-05 Hitachi Data Systems Corporation Method for improving mean time to data loss (MTDL) in a fixed content distributed data storage
US20070028291A1 (en) 2005-07-29 2007-02-01 Bit 9, Inc. Parametric content control in a network security system
US7568069B2 (en) 2005-07-29 2009-07-28 Lsi Corporation Method for creating a large-scale storage array system out of multiple mid-range storage arrays
JP4747733B2 (ja) 2005-08-22 2011-08-17 ブラザー工業株式会社 ノード装置、共用情報更新処理プログラム、共用情報更新方法、及び情報共有システム
US20070055703A1 (en) 2005-09-07 2007-03-08 Eyal Zimran Namespace server using referral protocols
US9996413B2 (en) 2007-10-09 2018-06-12 International Business Machines Corporation Ensuring data integrity on a dispersed storage grid
US7558859B2 (en) * 2005-10-17 2009-07-07 Microsoft Corporation Peer-to-peer auction based data distribution
US7788303B2 (en) 2005-10-21 2010-08-31 Isilon Systems, Inc. Systems and methods for distributed system scanning
EP1949215A1 (en) 2005-11-04 2008-07-30 Thomson Licensing Method and apparatus for managing media storage devices
WO2007123577A1 (en) 2005-11-23 2007-11-01 Envisionit Llc Message broadcasting admission control system and method
EP1798934A1 (en) * 2005-12-13 2007-06-20 Deutsche Thomson-Brandt Gmbh Method and apparatus for organizing nodes in a network
US7716180B2 (en) 2005-12-29 2010-05-11 Amazon Technologies, Inc. Distributed storage system with web services client interface
US8589574B1 (en) 2005-12-29 2013-11-19 Amazon Technologies, Inc. Dynamic application instance discovery and state management within a distributed system
US7546484B2 (en) 2006-02-08 2009-06-09 Microsoft Corporation Managing backup solutions with light-weight storage nodes
US7623474B2 (en) 2006-02-14 2009-11-24 Cisco Technology, Inc. Techniques for distributing information using multicast subsets
US8185576B2 (en) 2006-03-14 2012-05-22 Altnet, Inc. Filter for a distributed network
US7778183B2 (en) * 2006-03-31 2010-08-17 International Business Machines Corporation Data replica selector
US7480817B2 (en) * 2006-03-31 2009-01-20 International Business Machines Corporation Method for replicating data based on probability of concurrent failure
US20070288638A1 (en) * 2006-04-03 2007-12-13 British Columbia, University Of Methods and distributed systems for data location and delivery
US8364891B2 (en) 2006-04-04 2013-01-29 Permabit Technology Corporation Storage assignment technique for scalable and fault tolerant storage system
US20080126357A1 (en) * 2006-05-04 2008-05-29 Wambo, Inc. Distributed file storage and transmission system
US8255420B2 (en) 2006-05-23 2012-08-28 Noryan Holding Corporation Distributed storage
JP5584910B2 (ja) 2006-05-23 2014-09-10 ノーリャン・ホールディング・コーポレイション 分散ストレージ
US8117155B2 (en) 2006-06-30 2012-02-14 Microsoft Corporation Collection-based object replication
US7546486B2 (en) 2006-08-28 2009-06-09 Bycast Inc. Scalable distributed object management in a distributed fixed content storage system
US20080077635A1 (en) * 2006-09-22 2008-03-27 Digital Bazaar, Inc. Highly Available Clustered Storage Network
US7840992B1 (en) 2006-09-28 2010-11-23 Emc Corporation System and method for environmentally aware data protection
US7680048B2 (en) 2006-10-06 2010-03-16 International Business Machiens Corporation Method and apparatus for routing data in an inter-nodal communications lattice of a massively parallel computer system by dynamically adjusting local routing strategies
US8176265B2 (en) 2006-10-30 2012-05-08 Nvidia Corporation Shared single-access memory with management of multiple parallel requests
US8094585B2 (en) 2006-10-31 2012-01-10 International Business Machines Corporation Membership management of network nodes
US8555335B2 (en) 2006-11-01 2013-10-08 Microsoft Corporation Securing distributed application information delivery
US8190561B1 (en) 2006-12-06 2012-05-29 At&T Mobility Ii Llc LDAP replication priority queuing mechanism
US7590672B2 (en) 2006-12-11 2009-09-15 Bycast Inc. Identification of fixed content objects in a distributed fixed content storage system
GB2445986A (en) 2007-01-17 2008-07-30 Connect Spot Ltd Database Update Systems for Wireless communications Systems
WO2008102195A1 (en) 2007-02-22 2008-08-28 Telefonaktiebolaget Lm Ericsson (Publ) Consistent and fault tolerant distributed hash table (dht) overlay network
US8635691B2 (en) 2007-03-02 2014-01-21 403 Labs, Llc Sensitive data scanner
US7584294B2 (en) 2007-03-12 2009-09-01 Citrix Systems, Inc. Systems and methods for prefetching objects for caching using QOS
JP2008234445A (ja) 2007-03-22 2008-10-02 Brother Ind Ltd コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム
US8150800B2 (en) 2007-03-28 2012-04-03 Netapp, Inc. Advanced clock synchronization technique
JP2008250773A (ja) 2007-03-30 2008-10-16 Brother Ind Ltd 情報配信システム、管理装置用プログラム及び情報処理装置用プログラム
JP4696089B2 (ja) 2007-03-30 2011-06-08 三菱電機インフォメーションシステムズ株式会社 分散ストレージシステム
TWI483584B (zh) 2007-06-04 2015-05-01 Graco Minnesota Inc 分配式監視及控制流體處理系統
US7676704B2 (en) 2007-06-29 2010-03-09 Symantec Corporation Resource management for scalable file system recovery
WO2009032710A2 (en) 2007-08-29 2009-03-12 Nirvanix, Inc. Filing system and method for data files stored in a distributed communications network
US8156117B2 (en) 2007-09-03 2012-04-10 Obschestvo S Ogranichennoi Otvetstvennostiyu “Meralabs” Method and system for storing, searching and retrieving information based on semistructured and de-centralized data sets
US8533256B2 (en) 2007-10-09 2013-09-10 Cleversafe, Inc. Object interface to a dispersed data storage network
US8185614B2 (en) 2007-10-09 2012-05-22 Cleversafe, Inc. Systems, methods, and apparatus for identifying accessible dispersed digital storage vaults utilizing a centralized registry
US7913030B2 (en) 2007-12-28 2011-03-22 Sandisk Il Ltd. Storage device with transaction logging capability
US7979662B2 (en) 2007-12-28 2011-07-12 Sandisk Il Ltd. Storage device with transaction indexing capability
US7899850B2 (en) 2008-02-22 2011-03-01 Bycast, Inc. Relational objects for the optimized management of fixed-content storage systems
US20090228669A1 (en) 2008-03-10 2009-09-10 Microsoft Corporation Storage Device Optimization Using File Characteristics
US20090249222A1 (en) 2008-03-25 2009-10-01 Square Products Corporation System and method for simultaneous media presentation
US8577957B2 (en) 2008-04-01 2013-11-05 Litl Llc System and method for streamlining user interaction with electronic content
JP2009259007A (ja) * 2008-04-17 2009-11-05 Nippon Telegr & Teleph Corp <Ntt> 分散格納方法、分散格納システム及び分散格納装置
WO2009134772A2 (en) 2008-04-29 2009-11-05 Maxiscale, Inc Peer-to-peer redundant file server system and methods
US8458128B2 (en) 2008-08-26 2013-06-04 Microsoft Corporation Minimal extensions required for multi-master offline and collaboration for devices and web services
US8255430B2 (en) 2008-08-26 2012-08-28 Caringo, Inc. Shared namespace for storage clusters
WO2010037117A1 (en) 2008-09-29 2010-04-01 Nirvanix, Inc. Client application program interface for network-attached storage system
JP5557840B2 (ja) * 2008-10-03 2014-07-23 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 分散データベースの監視メカニズム
EP2350854B1 (en) 2008-10-17 2018-12-05 Ericsson AB Method and apparatus for efficient http data streaming
US8347386B2 (en) 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
US9781148B2 (en) 2008-10-21 2017-10-03 Lookout, Inc. Methods and systems for sharing risk responses between collections of mobile communications devices
US8443062B2 (en) 2008-10-23 2013-05-14 Microsoft Corporation Quorum based transactionally consistent membership management in distributed storage systems
SE533007C2 (sv) 2008-10-24 2010-06-08 Ilt Productions Ab Distribuerad datalagring
US8898236B2 (en) 2008-10-31 2014-11-25 Netapp, Inc. Automated conversion of versioned data collections
US8561052B2 (en) 2008-12-08 2013-10-15 Harris Corporation Communications device with a plurality of processors and compatibility synchronization module for processor upgrades and related method
EP2377294B1 (en) 2008-12-18 2017-05-17 Scality, SA Multipurpose storage system based upon a distributed hashing mechanism with transactional support and failover capability
US20100185693A1 (en) 2009-01-20 2010-07-22 Murty Venkataesh V Methods and apparatus for creating an audit trail
US8832023B2 (en) 2009-01-30 2014-09-09 Apple Inc. System for managing distributed assets and metadata
US8533151B2 (en) 2009-05-26 2013-09-10 Microsoft Corporation Generating a local copy of a virtualized application package from a local installation
US8165122B2 (en) 2009-05-26 2012-04-24 Alcatel Lucent System and method for converting unicast client requests into multicast client requests
US20130254314A1 (en) 2009-06-09 2013-09-26 Edmond K. Chow Digital content delivery
US10108492B2 (en) 2009-07-30 2018-10-23 International Business Machines Corporation Rebuilding data stored in a dispersed storage network
US20110047413A1 (en) 2009-08-20 2011-02-24 Mcgill Robert E Methods and devices for detecting service failures and maintaining computing services using a resilient intelligent client computer
US8745170B2 (en) 2009-08-27 2014-06-03 Apple Inc. Dynamic file streaming
US8554993B2 (en) * 2009-09-21 2013-10-08 Translattice, Inc. Distributed content storage and retrieval
WO2011036707A1 (en) * 2009-09-24 2011-03-31 Hitachi, Ltd. Computer system for controlling backups using wide area network
US8620879B2 (en) 2009-10-13 2013-12-31 Google Inc. Cloud based file storage service
CN101710339B (zh) 2009-11-20 2012-02-01 中国科学院计算技术研究所 控制机群文件系统中数据存储方法和系统及创建文件方法
US8190578B2 (en) 2009-12-17 2012-05-29 International Business Machines Corporation Migration of versioned data between configuration management systems
US8578205B2 (en) 2010-03-15 2013-11-05 Cleversafe, Inc. Requesting cloud data storage
CN102985911B (zh) 2010-03-16 2016-07-06 科派恩股份有限公司 高度可伸缩和分布式重复数据删除
US20110238909A1 (en) 2010-03-29 2011-09-29 Pankaj Kumar Multicasting Write Requests To Multiple Storage Controllers
EP2387200B1 (en) 2010-04-23 2014-02-12 Compuverde AB Distributed data storage
US9357328B1 (en) 2010-06-15 2016-05-31 Thales Avionics, Inc. Systems and methods for distributing content using attributes
CN102947879B (zh) 2010-06-22 2015-11-25 索尼电脑娱乐公司 信息处理装置
CN101909058B (zh) 2010-07-30 2013-01-16 天维讯达无线电设备检测(北京)有限责任公司 一种适合可信连接架构的平台鉴别策略管理方法及系统
GB2486393B (en) 2010-09-08 2016-12-28 Saffron Digital Ltd Delivering a file from a content provider to a client
US9253199B2 (en) 2010-09-09 2016-02-02 Red Hat, Inc. Verifying authenticity of a sender of an electronic message sent to a recipient using message salt
US8660986B2 (en) 2010-10-27 2014-02-25 Microsoft Corporation Preserving user intent in merging ordered objects
CN103202045B (zh) 2010-11-05 2016-06-01 交互数字专利控股公司 设备检验、遇险指示和补救
US8949828B2 (en) 2011-01-11 2015-02-03 International Business Machines Corporation Single point, scalable data synchronization for management of a virtual input/output server cluster
US9020996B2 (en) 2011-06-24 2015-04-28 Stephen P. LORD Synthetic view
US9021053B2 (en) 2011-09-02 2015-04-28 Compuverde Ab Method and device for writing data to a data storage system comprising a plurality of data storage nodes
US9225780B2 (en) 2012-02-24 2015-12-29 Xyratex Technology Limited Data integrity in a networked storage system
US20130268632A1 (en) 2012-04-05 2013-10-10 Canon Kabushiki Kaisha Server assisted authenticated device
US9256765B2 (en) 2012-06-29 2016-02-09 Kip Sign P1 Lp System and method for identifying software changes
US9344521B2 (en) * 2012-12-13 2016-05-17 Red Hat, Inc. Pluggable infrastructure for cloud provider selection
US9367448B1 (en) 2013-06-04 2016-06-14 Emc Corporation Method and system for determining data integrity for garbage collection of data storage systems
US20150288659A1 (en) 2014-04-03 2015-10-08 Bitdefender IPR Management Ltd. Systems and Methods for Mutual Integrity Attestation Between A Network Endpoint And A Network Appliance

Also Published As

Publication number Publication date
IL222630A (en) 2017-05-29
US20140379845A1 (en) 2014-12-25
US8850019B2 (en) 2014-09-30
EP2712149A3 (en) 2014-05-14
JP2013525895A (ja) 2013-06-20
JP5612195B2 (ja) 2014-10-22
ZA201208755B (en) 2014-01-29
US9503524B2 (en) 2016-11-22
US9948716B2 (en) 2018-04-17
CA2797053C (en) 2016-05-31
AU2011244345A1 (en) 2012-11-08
CA2797053A1 (en) 2011-10-27
EP2712149A2 (en) 2014-03-26
AU2011244345B2 (en) 2015-01-15
KR101905198B1 (ko) 2018-10-05
EP2712149B1 (en) 2019-10-30
EP2387200B1 (en) 2014-02-12
BR112012027012A2 (pt) 2016-09-13
IL222630A0 (en) 2012-12-31
EP2387200A1 (en) 2011-11-16
US20120084383A1 (en) 2012-04-05
EA201291023A1 (ru) 2013-05-30
US20170048321A1 (en) 2017-02-16
CN102939740A (zh) 2013-02-20
CN102939740B (zh) 2016-08-03
EA026842B1 (ru) 2017-05-31
KR20130115983A (ko) 2013-10-22
WO2011131717A1 (en) 2011-10-27

Similar Documents

Publication Publication Date Title
MX2012012198A (es) Almacenamiento de datos distribuidos.
US11468088B2 (en) Selection of storage nodes for storage of data
US9021053B2 (en) Method and device for writing data to a data storage system comprising a plurality of data storage nodes
US8843710B2 (en) Method and device for maintaining data in a data storage system comprising a plurality of data storage nodes

Legal Events

Date Code Title Description
HC Change of company name or juridical status

Owner name: HENKEL IRELAND LIMITED

FG Grant or registration