MXPA04004203A - Metodo y sistema para validar una base de datos remota. - Google Patents

Metodo y sistema para validar una base de datos remota.

Info

Publication number
MXPA04004203A
MXPA04004203A MXPA04004203A MXPA04004203A MXPA04004203A MX PA04004203 A MXPA04004203 A MX PA04004203A MX PA04004203 A MXPA04004203 A MX PA04004203A MX PA04004203 A MXPA04004203 A MX PA04004203A MX PA04004203 A MXPA04004203 A MX PA04004203A
Authority
MX
Mexico
Prior art keywords
database
exception
record
update
remote
Prior art date
Application number
MXPA04004203A
Other languages
English (en)
Inventor
Thomas Mcmillen Bradley
Original Assignee
Verisign Inc
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=26987480&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=MXPA04004203(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Verisign Inc filed Critical Verisign Inc
Publication of MXPA04004203A publication Critical patent/MXPA04004203A/es

Links

Classifications

    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • 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/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • 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/23Updating
    • G06F16/2358Change logging, detection, and notification
    • 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/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • 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/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/953Organization of data
    • Y10S707/959Network
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/964Database arrangement
    • Y10S707/966Distributed
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

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)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Probability & Statistics with Applications (AREA)
  • Fuzzy Systems (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)
  • Small-Scale Networks (AREA)
  • Selective Calling Equipment (AREA)

Abstract

Las modalidades de la presente invencion proporcionan un metodo y sistema para validar actualizaciones de base de datos remota a traves de una red. Un registro de base de datos local (200) y un registro de base de datos remota pueden ser comparados y se pueden generar excepciones. Cada excepcion puede describir una discrepancia entre los registros de bases de datos remota y local (200). Un identificador de excepcion puede ser asociado con cada excepcion, en donde el identificador de excepcion puede ser asociado con un identificador del registro. Un identificador de evento puede ser asociado con cada evento en la actualizacion, cuando en identificador de evento puede estar asociado con un identificador del registro. Los eventos y las excepciones corresponden al registro pueden ser comparados para determinar si la actualizacion es valida.

Description

METODO Y SISTEMA PARA VALIDAR UNA BASE DE DATOS REMOTA RECLAMACION DE PRIORIDAD/REFERENCIA CRUZADA A SOLICITUDES RELACIONADAS Esta solicitud no provisional reclama el beneficio de la Patente Provisional de E.U.A. No. 60/330,842, presentada el 1o. de noviembre del 2001, la cual se incorpora por referencia en su totalidad, y la Solicitud de Patente Provisional de E.U.A. No. 60/365,169, presentada el 19 de marzo del 2002, la cual se incorpora por referencia en su totalidad.
CAMPO TECNICO Las modalidades de la presente invención se refieren en general a bases de datos de computadoras. Más específicamente, las modalidades proporcionan un método y sistema para validar de manera confiable actualizaciones de bases de datos remotas.
ANTECEDENTES DE LA INVENCION Con el tamaño incrementante y altamente distribuidas estructuras de las bases de datos, se ha convertido más difícil de manera increméntate asegurar que las bases de datos relacionadas en una red contienen las mismas versiones de datos. Si existen cambios significativos en una base de datos, otras bases de datos pueden necesitar ser actualizadas para incluir estos cambios tan pronto como sea posible. Hacer estos cambios puede involucrar mover frecuentemente gran cantidad de datos actualizados a múltiples bases de datos. La complejidad potencial de dicho proceso puede ser tremenda. Este problema además se combina en sistemas en donde las comunicaciones no son confiables. En este caso, los datos pueden perderse durante el transporte. Es decir, los datos deben ser retransmitidos y las otras bases de datos actualizadas otra vez. Dicha repetición significativamente reduce la eficiencia del sistema el extensión a la cual las bases de datos contienen datos actualizados a la fecha decir.
BREVE DESCRIPCION DE LOS DIBUJOS La Figura 1 es un diagrama de bloque, de acuerdo con una modalidad de la presente invención. La Figura 2 es un diagrama de bloque de un concentrador de puertos del sistema de acuerdo con una modalidad de la presente invención. La Figura 3 describe una transmisión ilustrativa de actualizaciones de base de datos a partir de una base de datos local a una base datos remota de acuerdo con una modalidad de la presente invención. La Figura 4 muestra un archivo de envío de acuerdo con la modalidad de la presente invención. La Figura 5 muestra un archivo de envío de inicialización de acuerdo con una modalidad de la presente invención. La Figura 6 es una gráfica de cronometraje ilustrativa de la generación del archivo de envío y de la inicialización del archivo de envío de acuerdo con una modalidad de la presente invención. La Figura 7 es una gráfica de flujo de una modalidad de la presente invención en la cual los archivos actualizados de una base de datos local pueden ser generados. La Figura 8 es una gráfica de flujo de una modalidad de la presente invención en la cual la base de datos remota puede recibir archivos actualizados de una base de datos local. La Figura 9 es una gráfica de flujo de otra modalidad de la presente invención en la cual una base de datos remota puede recibir y validar archivos actualizados de una base de datos local. La Figura 10A es una gráfica de flujo de una modalidad de la presente invención en la cual los archivos actualizados pueden ser validados. La Figura 10B es una gráfica de flujo de otra modalidad de la presente invención en la cual los archivos actualizados pueden ser validados. La Figura 11 es una ilustración de la validación de un archivo actualizado de acuerdo con una modalidad de la presente invención.
DESCRIPCION DETALLADA Las modalidades de la presente invención proporcionan un método y sistema para validar actualizaciones de bases de datos remotas. Un registro de una base de datos local y un registro de una base de datos remota pueden ser comparados y las excepciones generadas. Cada excepción puede describir una discrepancia entre los registros de la base de datos local y la remota. Un identificador de excepción puede estar asociado con cada excepción, en donde el identificador de excepción puede estar asociado con un identificador del registro. Un identificador de evento puede estar asociado con cada evento en la actualización, en donde el identificador del evento puede estar asociado con un identificador del registro. Los eventos y las excepciones que corresponde al registro pueden ser comparados para determinar si esta actualización es válida. La Figura 1 es un diagrama de bloque que ilustra un sistema de acuerdo con una modalidad de la presente invención. Generalmente el sistema 100 puede hospedar una base de datos residente en memoria, grande, recibir solicitudes de búsqueda y proporcionar respuestas de búsqueda a través de una red. Por ejemplo, el sistema 100 puede ser una computadora de multiprocesamiento, simétrica (SMP), tal como, por ejemplo, una IBM RS/6000® o S80 fabricada por International Business Machines Corporation of Armonk, Nueva York, una Sun Enterprise™ 1000 fabricada por Sun Microsystems, Inc. de Santa Clara, California, etc. El sistema 100 también puede ser una computadora personal multiprocesador, tal como por ejemplo, una Compaq ProLiant™ (incluyendo dos procesadores Intel Pentium® III 866 MHz) fabricada por Hewlett-Packard Company de Palo Alto, California. El sistema ciento 100 puede incluir un sistema operativo de multiprocesamiento, tal como, por ejemplo, el Ambiente Operativo IBM AIX® 4, Sun Solaris™, Red Hat Linux® 6.2, etc. El sistema 100 puede recibir actualizaciones periódicas a través de la red 124, las cuales pueden ser concurrentemente incorporadas en la base de datos. Las modalidades de la presente invención pueden lograr el rendimiento total de búsquedas y actualizaciones de bases de datos muy altas a través de la incorporación de cada actualización a la base de datos sin el uso de controles de bloqueo o acceso a la base de datos. En una modalidad, el sistema 100 puede incluir por lo menos un procesador 102-1 acoplado al conductor común 101. El procesador 102-1 puede incluir un caché de memoria interna (por ejemplo, un caché L1, no mostrado para clarificar). Un caché de memoria secundaria 103-1 (por ejemplo un caché L2, cachés L2/L3, etc.) pueden residir entre procesador 102-1 y el conductor común 101. En una modalidad preferida, el sistema 100 puede incluir una pluralidad de procesadores 102-1...102-P acoplados al conductor común 101. Una pluralidad de cachés de memoria secundaria 103- 1...103-P también reside entre la pluralidad de procesadores 102- 1...102-P y el conductor común 101 (por ejemplo, una arquitectura de echar una ojeada), o, alternativamente, por lo menos un caché de memoria secundaria 103-1 puede estar acoplada al conductor común 101 (por ejemplo, una arquitectura de ver además). El sistema 100 puede incluir la memoria 104, tal como, por ejemplo, la memoria de acceso aleatorio (RAM), etc., está acoplada al conductor común 101, para almacenar información e instrucciones que se van ejecutar a través de la pluralidad de procesadores 102-1....102-P. La memoria 104 puede almacenar grandes bases de datos, por ejemplo, para traducir nombres de dominio en direcciones de Internet, para traducir nombres y números telefónicos en direcciones de red, para proporcionar y actualizar los datos del perfil de suscriptor, para proporcionar y actualizar los datos de la presencia del usuario, etcétera. Ventajosamente, ambos, el tamaño de la base de datos y el número de traducciones por segundo pueden ser muy grandes. Por ejemplo, la memoria 104 puede incluir por lo menos 64 GB de RAM y puede hospedar 500M (es decir, 500x106) de registros de bases de datos de nombre de dominio, un registro de 500M de la base de datos del suscriptor, un registro de 450M de la base de datos de probabilidades de números telefónicos, etc. En una arquitectura del sistema de 64 bits ilustrativo, tal como por ejemplo, un sistema que incluye por lo menos un procesador big-endian (bit más significativo primero) 102-1 acoplado a por lo menos al conductor común 101 de 64 bits y una memoria de 64 bits 104, un valor de apuntador de 8 bytes puede ser escrito en una dirección de memoria en un límite de 8 bytes (es decir, una dirección de memoria visible a través de ocho, o por ejemplo 8N) utilizando una operación ininterrumpible, individual. Generalmente, la presencia del caché de la memoria secundaria 103-1 puede simplemente retrasar la escritura del apuntador de 8 bytes a la memoria 104. Por ejemplo, en una modalidad, el caché de memoria secundaria 103-1 puede ser un caché de mirar-a través de de operando en modo de escribir-a través de, por lo que una instrucción de almacenamiento de 8 bytes puede mover ocho bytes de los datos desde el procesador 102-1 a la memoria 104, sin interrupción, y tan poco como dos ciclos del reloj del sistema. En otra modalidad, el caché de memoria secundaria 103-1 puede ser un caché de mirar-a través de operando en un modo de escribir-otra vez, por lo que el apuntador de 8 bytes puede primero ser escrito en el caché de la memoria secundaria 103-1, la cual puede entonces escribir el apuntador de 8 bytes en la memoria 104 después, tal como, por ejemplo, cuando la línea del caché en la cual el apuntador de 8 bytes está almacenado es escrito a la memoria 104 (es decir, por ejemplo, cuando la línea de caché particular, o el caché de la memoria secundaria total, es "descargado"). Finalmente, a partir de la perspectiva del procesador 102-1, una vez que los datos son asegurados en los pins de salida del procesador 102-1, todos los ocho bytes de datos son escritos en la memoria 104 en una transferencia ininterrumpida, contigua, la cual puede ser retrasada por los efectos del caché de la memoria secundaria 103-1 si está presente. A partir de la perspectiva de los procesadores 102-2...102-P, una vez que los datos son asegurados en los pins de salida del procesador 102-1, todos los ocho bytes de los datos son escritos en la memoria 104 en una transferencia ininterrumpida, contigua, lo cual se refuerza a través del protocolo de coherencia del caché a lo largo de los cachés de memoria secundaria 103-1....103-P, lo cual puede retrasar la escritura en la memoria 104 si está presente. Sin embargo, si un valor de apuntador de 8 bytes es escrito en una ubicación desalineada en la memoria 104, tal como la dirección de memoria que cruza el límite de 8 bytes, todos los ocho bytes de los datos no pueden ser transferidos del procesador 102-1 utilizando una instrucción de almacenamiento de 8 bytes, individual. En su lugar, el procesador 102-1 puede emitir dos instrucciones de almacenamiento separadas. Por ejemplo, sí la dirección de la memoria empieza cuatro bytes antes del límite de 8 bytes (por ejemplo, 8N - 4), la primera instrucción de almacenamiento transfiere los cuatro bytes más significativos a la memoria (por ejemplo, 8N - 4), mientras que la segunda instrucción de almacenamiento transfiere los cuatro bytes de memoria menos significativos a la memoria 104 (por ejemplo, 8N). Es muy importante entre estas dos instrucciones separadas, que el procesador 102-1 pueda ser interrumpido, o el procesador 102-1 pueda perder el control del conductor común 101 a otro componente del sistema (por ejemplo, procesador 102-P, etc.). Consecuentemente, el valor de apuntador que reside en la memoria 104 será inválido hasta que el procesador 102-1 pueda completar la segunda instrucción de almacenamiento. Si otro componente inicia una lectura de memoria ininterrumpible, individual en su ubicación de memoria, un valor inválido será devuelto como uno presumiblemente válido. Similarmente, un nuevo valor de apuntador de 4 bytes puede ser escrito a una dirección de memoria disponible por cuatro (por ejemplo, 4N), utilizando una operación ininterrumpible, individual. Notar que en el ejemplo discutido anteriormente, un valor de apuntador de 4 bytes puede ser escrito a una ubicación de memoria de 8N - 4 utilizando una instrucción de almacenamiento individual. Por supuesto, si un valor de apuntador de 4 bytes que cruza un límite de 4 bytes, por ejemplo 4N - 2, los cuatro bytes de datos no pueden ser transferidos desde el procesador 102-1 utilizando una instrucción de almacenamiento individual, y el valor del apuntador residente en la memoria 104 puede ser inválido durante algún periodo de tiempo. El sistema 100 también puede incluir una memoria de solo lectura (ROM) 106, u otro dispositivo de almacenamiento estático, acoplado al conductor común 101 para almacenar información estática e instrucciones para el procesador 102-1. Un dispositivo de almacenamiento 108, tal como un disco magnético u óptico, puede estar acoplado al conductor común 10 para almacenar información e instrucciones. El sistema 100 también puede incluir el despliegue 110 (por ejemplo, un monitor LCD) y el dispositivo de entrada 112 (por ejemplo, teclado, ratón, seguibola, etc.) acoplado a conductor común 101. El sistema 100 también puede incluir una pluralidad de interfases de red 114-1 ,...114-0, la cual puede enviar y recibir señales eléctricas, electromagnéticas u ópticas que pueden llevar corrientes de datos representando varios tipos de información. En una modalidad, la interfase de red 114-1 puede estar acoplado al conductor común 101 y una red de área local (LAN) 122, mientras la interfase de red 114-0 puede estar acoplado al conductor común 101 y red de área amplia (WAN) 124. La pluralidad de interfases de red 114-1 , ....114-0 puede soportar varios protocolos de red, incluyendo, por ejemplo. Gigabit Ethernet (por ejemplo, IEEE Estándar 802.3-2002, publicado en 2002). El Canal de Fibra (por ejemplo, ANSI Estándar X.3230-1994, publicado en 1994), etc. La pluralidad de las computadoras de red 120-1 , ....120-N puede estar acopladas a la LAN 122 y WAN 124. En una modalidad, LAN 122 y WAN 124 pueden ser físicamente distintas redes, mientras en otra modalidad, LAN 122 y WAN 124 pueden ser a través de una compuerta de red o direccionador (no mostrado para claridad). Alternativamente, LAN 122 y WAN 124 pueden ser la misma red. Como se observó anteriormente, el sistema 100 proporciona servicios de resolución DNS. En una modalidad de resolución DNS, lo servicios de resolución DNS pueden generalmente ser divididos entre las funciones de transporte de datos y de búsqueda de datos. Por ejemplo, el sistema 100 puede ser un motor secundario o de búsqueda (LUE) optimizado para la búsqueda de datos en grandes datos fijos, mientras la pluralidad de las computadoras de red 120-1,.,.120-N puede ser una pluralidad de motores del protocolo del extremo frontal (PEs) optimizados para el procesamiento de la red y transporte. El LUE puede ser un servidor multiprocesador poderoso que almacena el grupo de registros DNS completo en la memoria 104 para facilitar la búsqueda y actualización de alto rendimiento, y alta velocidad. En una modalidad alternativa, los servicios de resolución DNS pueden ser provistos a través de series de servidores multiprocesador poderosos, o LUEs, cada uno almacenando un subgrupo de grupos de registro DNS completos para facilitar la búsqueda y actualización de alto rendimiento, alta velocidad. Inversamente, la pluralidad de PEs puede ser máquinas en base a PC, bajo perfil, genéricas, corriendo un sistema operativo multitareas eficiente (por ejemplo, Red Hat Linux® 6.2), que minimiza la carga de transporte de procesamiento de la red en el LUR con el fin de maximizar los recursos' disponibles para la resolución DNS. Las PEs pueden manejar las matrices del protocolo DNS de línea cableada, responde a investigaciones DNS inválidas y multiplaza investigaciones DNS válidas para el LUE a través de la LAN 122. En una modalidad alternativa incluyendo múltiples LUEs almacenando subgrupos de registro DNS, los PEs pueden determinar que LUE deberá recibir cada investigación DNS válida, e investigaciones DNS válidas multiplexadas a los LUEs apropiados. El número de PEs para un LUE individual puede ser determinado, por ejemplo, mediante el número de búsquedas DNS que van a ser procesadas por segundo y las características de funcionamiento del sistema particular. Otras mediciones también pueden ser utilizadas para determinar las relaciones de mapeo y comportamientos apropiados. Generalmente, otras modalidades basadas en búsquedas, de volumen grande puede ser soportadas, incluyendo, por ejemplo, resolución de números de teléfono, procesamiento de señalización SS7, determinación de ubicación geográfica, mapeo del número-a-suscriptor telefónico, ubicación del suscriptor y determinación de presencia, etc. En una modalidad, un servidor de procesamiento de transacción en línea central (OLTP) 140-1 puede estar acoplado a WAN 124 y recibe adiciones, modificaciones y eliminaciones (es decir, tráfico de actualizaciones) a la base.de datos 142-1 de varias fuentes. El servidor OLTP 140-1 puede enviar actualizaciones al sistema 124. El servidor OLTP 140-1 puede ser optimizado para procesar tráfico de actualizaciones. En varios formatos y protocolos, incluyendo, por ejemplo, el Protocolo de Transmisión de Hipertexto (HTTP), el Protocolo de Registro de Registros (RRP), el Protocolo de Aprovisionamiento Extensible (EEP), la Interfase Genérica Mecanizada del Sistema/800 de Administración del Servicio (MGI), y otros protocolos de aprovisionamiento en linea. Una constelación de LUEs de solo lectura puede ser utilizada en un concentrador de puertos y arquitectura de palabras para proporcionar capacidad de búsqueda de alta velocidad con actualizaciones increméntales, de alto volumen desde el servidor OLTP 140-1. En una modalidad alternativa, los datos pueden ser distribuidos a través de múltiples servidores OLTP 140-1, ...140-S, cada uno de los cuales puede estar acoplado a la WAN 124. Los servidores OLTP 140-1 140-S pueden recibir adiciones, modificaciones y eliminaciones (es decir, tráfico de actualización) a sus respectivas bases de datos 142-1....142-S (no mostradas por claridad) de varias fuentes. Los servidores OLTP 140-1 140-S pueden enviar actualizaciones al sistema 100, el cual puede incluir copias de bases de datos 142-1 , ...142-S, otros datos dinámicamente creados, etc. a través de la WAN 124. Por ejemplo, en una modalidad de ubicación geográfica, los servidores OLTP 1401-1.....140-S pueden recibir tráfico de actualización de grupos de sensores remotos. En otra modalidad alternativa, la pluralidad de computadoras de red 120- 1 120-N también pueden recibir adiciones, modificaciones y eliminaciones (es decir, tráfico de actualización) de varias fuentes a través de la WAN 124 o LAN 122. En esta modalidad, la pluralidad de redes de computadora 120-1 , ...120-N puede enviar actualizaciones, así como búsquedas, al sistema 100. En una modalidad, el sistema 100 puede incluir una base de datos remota (por ejemplo, base de datos remota 210). La nueva información, o el tráfico de actualización, pueden ser recibidos, por ejemplo, a través de la WAN 124 a partir del servidor OLTP 140-1. En una modalidad, la nueva información puede incluir modificaciones a por lo menos un elemento existente dentro de la base de datos remota. El sistema 100 puede crear un nuevo elemento de la base de datos remota sobre la nueva información recibida a través de la red, y sin acceso de búsqueda restringido para la base de datos remota, escribir un apuntador en el nuevo elemento a la base de datos remota utilizando una operación ininterrumpible individual, tal como, por ejemplo, una instrucción de almacenamiento. En una modalidad, el procesador 102-1 puede incluir un tamaño de palabra de por lo menos n bytes, la memoria 104 puede incluir un ancho de por lo menos n bytes y la instrucción de almacenamiento puede escribir n bytes a una dirección de memoria remota localizada en un límite de n bytes. En otra modalidad, el sistema 100 puede físicamente eliminar un elemento existente de la memoria 104, correspondiente al nuevo elemento, después de que el apuntador es escrito en la base de datos remota. En la modalidad de resolución DNS, cada PE (por ejemplo, cada una de la pluralidad de redes de computadora 120- 1 , ...120-N) puede combinar, o multiplexar varios mensajes de búsqueda DNS, recibir a través de una red de área amplia (por ejemplo, WAN 124), en un Super Paquete de Solicitud y enviar el Super Paquete de Solicitud a LUE (por ejemplo, sistema 100) a través de una red de área local (por ejemplo, LAN 122). El LUE puede combinar, o multiplexar, varias contestaciones de mensajes de búsqueda DNS en un Super Paquete de Respuesta y enviar el Super Paquete de Respuesta al PE apropiado a través de la red de área local. Generalmente, el tamaño máximo de una Super Paquete de Respuesta o de Solicitud puede estar limitado por la unidad de transmisión máxima (MTU) de la capa de la red física (por ejemplo, Ethernet Gigabit). Por ejemplo, el tamaño de los mensajes de búsqueda y de respuesta DNS típico de menos de 100 bytes y 200 bytes, respectivamente, permite que aproximadamente 30 búsquedas sean multiplexadas en un Super Paquete de solicitud individual, así como alrededor de 15 respuestas sean multiplexadas supimos en un Super Paquete de respuesta individual. Sin embargo, un número más pequeño de búsquedas (por ejemplo, 20 búsquedas) puede estar incluido en un Super Paquete de solicitud individual con el fin evitar el sobre flujo MTU en la respuesta (por ejemplo 10 contestaciones). Para tamaños de MTU más grandes, el número de búsquedas y contestaciones multiplexadas puede ser incrementado por consiguiente. Cada PE de multitareas puede incluir un paquete entrante y un paquete saliente para manejar búsquedas y respuestas DNS, respectivamente. Por ejemplo, el paquete entrante puede no estar colocado los componentes de búsqueda DNS a partir de los paquetes de búsqueda DNS entrantes recibidos a través de la red de área amplia y multiplexar varios milisegundos de búsquedas en un Super Paquete de solicitud. El paquete entrante entonces puede enviar el Super Paquete de Solicitud a LUE a través de una red de área local. Adversamente, el paquete de salida puede recibir el Super Paquete de Respuesta desde LUE, desmultiplicar las respuestas contenidas ahí, y colocar los varios campos en una contestación DNS válida, la cual después puede ser transmitida a través de una red de área amplia. Generalmente, como se notó anteriormente, otras modalidades basadas en búsquedas, de volumen grande pueden ser soportadas. En una modalidad, el Super Paquete de Solicitud también puede incluir información de estado asociada con cada búsqueda DNS, tal como, por ejemplo, la dirección fuente, el tipo de protocolo, etc. El LUE puede incluir la información de estado, y contestaciones DNS asociadas, dentro del Super Paquete de Respuesta. Cada PE entonces puede ser construido y devolver mensajes de contestación DNS válidos utilizando la información transmitida de LUE. En consecuencia, cada PE puede ventajosamente operar como una máquina sin información sobre el estado anterior, es decir, las contestaciones DNS válidas pueden estar formadas a partir de la información contenida en el Super Paquete de Respuesta. Generalmente, LUE puede devolver el Super Paquete de Respuesta a PE a partir del Super Paquete de origen entrante; sin embargo, otras variaciones pueden obviamente ser posibles. En una modalidad alternativa, cada PE puede mantener la información de estado asociada con cada búsqueda DNS e incluir una referencia, o manipulador, de la información de estado dentro del Super Paquete de Solicitud. LUE también puede incluir las referencias de la información de estado, y contestaciones DNS asociadas, dentro del Super Paquete de Respuesta. Cada PE puede entonces ser construido y devolver mensajes de contestación DNS válidos utilizando las referencias de la información de estado transmitidas desde LUE, así como la información de estado mantenida en el mismo. En esta modalidad, LUE puede devolver el Super Paquete de Respuesta a PE a partir del cual el Super Paquete de Entrante se origina. La Figura 2 es un diagrama de bloque de un concentrador de puertos y una arquitectura de palabras de acuerdo con una modalidad de la presente invención. Generalmente, el sistema puede incluir una base de datos local 200 (la cual puede estar incluida en el concentrador de puertos OLPT central 140) y una o más bases de datos remotas 210 (las cuales pueden estar incluidas en LUEs 100) conectadas a la base de datos local 200 a través de cualquier mecanismo de conexión, por ejemplo Internet o LAN 122. Las bases de datos pueden enviar y recibir datos actualizados. Haciendo referencia ahora a la Figura 3, en las modalidades de la presente invención, las bases de datos locales 200 envían archivos de envío F 300- .300-F e inicializan el archivo de envió 310 en la base de datos remota 210 con el fin de actualizar la base de datos remota 210. Los archivos de actualización pueden ser enviados individualmente o en lotes, tales como archivos de envió múltiples 300, un archivo de envió 300 y un archivo de envió de inicialización 310, múltiples archivos de envió 300 y un archivo de envío de inicialización 310, archivo de envió 300 solo, o archivo de envío de inicialización 300 solo. En una modalidad de la presente invención, el procesador 104 puede recibir el archivo de envío 310 incluyendo datos actualizados de la base de datos local 200. El sistema 150 recibe el archivo de envío 300 y el archivo de envío de inicialización 310 en la base de datos remota 210 a través de una ¡nterfase de comunicación 118. El procesador 104 puede entonces comparar los datos actualizados en el archivo de envío 300 o el archivo de envío de inicialización 310 contra los datos correspondientes en la base de datos remota 210. Si los datos son diferentes en la base de datos remota 210, entonces el procesador 104 puede aplicar el archivo de envío 300 o el archivo de envío de inicialización 310 a la base de datos remota 210. Por consiguiente, la base de datos remota 210 puede subsecuentemente tener datos actualizados que coincidan con los datos actualizados de la base de datos local 200. La Figura 4 muestra el archivo de envío 300 de acuerdo con una modalidad de la presente invención. Los campos del archivo 300 pueden incluir, por ejemplo, un identif icador de archivo 400, el tiempo de generación del archivo 402, el número de transacciones N en el archivo 404, el tamaño total del archivo 406, una suma de - control o cualquier indicador de verificación de error 408, y transacciones 410-1,... 400-N (incluyendo los identif icadores transacciones). Estos campos del archivo de envío son ejemplos que pretenden ilustrar, y no limitar, el alcance de las modalidades de la presente invención. Cualquier campo útil puede ser incluido en el archivo de envío 300. El archivo de envío 300 incluye los cambios a la base de datos local 200 entre dos puntos en el tiempo. Estos cambios pueden incluir, por ejemplo, adiciones de nuevos identif icadores (es decir, identificadores de registros de datos), eliminaciones de identificadores existentes, modificaciones de uno o más registros de datos con un identificador, renombrar un identif icador, un no-op, etc. Uno o más de estos cambios pueden ocurrir en un secuencia y pueden ser llamados transacciones. El archivo de envío 300 puede incluir identificadores únicos de estas transacciones. El archivo de envío 300 puede incluir identificadores únicos de estas transacciones. Las transacciones pueden ser registradas en el archivo de envío 300 con el fin de que ocurran en la base de datos local 200. Adicionalmente, para transacciones que incluyen más de un cambio, los cambios deben ser registrados dentro de la transacción con el fin de que ocurran en la base de datos local 200.
Generalmente, los identificadores de transacción pueden ser asignados a transacciones en cualquier orden. Es decir, los identificadores de transacción no necesitan ser incrementados de manera monotónica a través del tiempo. Por ejemplo, dos transacciones secuenciales pueden tener identificadores transacción de 10004 seguido por 10002. Por consiguiente, el orden en que una transacción ocurre puede ser determinado a través de su colocación en el archivo actual 300-F o su colocación en un archivo precedente 300-(F-1). Generalmente, las transacciones no deben extenderse a archivos adyacentes con el fin de completar totalmente una actualización de la base de datos remota dentro de una aplicación de archivo de envío. Esto previene una interrupción de una actualización debido a un retraso en la red, lo cual podría resultar en datos erróneos en la base de datos remota 210. La Figura 5 muestra el archivo de envío de inicialización 310 de acuerdo con una modalidad de la presente invención. Los campos del archivo de envío de inicialización 310 pueden incluir, por ejemplo, un ¡dentif icador de archivo 500, el tiempo de generación del archivo 502, el número de transacciones N en el archivo 504, el tamaño total del archivo 506, una suma de control o cualquier indicador de verificación de error 508, y la copia de la base de datos local completa (datos) 516. El archivo de envío de inicialización 310 además puede incluir el campo 510, el cual es el identificador del archivo 400 del último archivo de envío 300 generado antes de la generación del archivo 310, y el campo 512 el cual es el identificador de la última transacción comprometida con la base del datos local 200 antes de la generación del archivo de envío de inicialización 310. Los datos en las bases de datos local y remota 200, 210 pueden ser asignados en cuadros residentes en las bases de datos 200, 210. Las bases de datos 200, 210 pueden soportar un número arbitrario de cuadros. Por lo tanto, cuando las bases de datos tienen cuadros, el archivo de envío de inicialización 310 puede incluir un campo para cada cuadro incluyendo el número de registros grabados en el cuadro. Por ejemplo, una base de datos de nombre de dominio puede incluir un cuadro de dominio y un cuadro de nombre de servidor. Por lo tanto, el archivo de envío de inicialización puede incluir un campo indicando el número de registros en el cuadro de dominio y un campo indicando el número de registros en el cuadro de nombre de servidor.
El campo puede especificar, por ejemplo, el nombre del cuadro, una clave utilizada para indexar registros el cuadro, y el número de registros en el cuadro. Adicionalmente, el archivo de inicialización 310 puede incluir un campo indicando la versión del archivo de envío de inicialización 310, usualmente 1.0. Estos campos del archivo de envío de inicialización son ejemplos que pretenden ilustrar, y no limitar, el alcance de las modalidades de la presente invención. Cualquier campo útil puede ser incluido en el archivo de envío de inicialización presuntos 310. El archivo de envío de inicialización 310 puede incluir, por ejemplo, una copia consistente de lectura de la base de datos local completa 200, como se manifestó previamente. El archivo de envío de inicialización 310 puede volverse consistente con la base de datos local 200 en un punto en el tiempo entre ts y tf, en donde ts es el tiempo en el cual la generación del archivo de envío de inicialización 310 se inicia y tf es el tiempo en el cual la generación se completa. Es decir, la única operación que debe ocurrir en el archivo de envío de inicialización 310 es una operación "Agregar". Es decir, cuando el archivo de envío de inicialización 310 es generado, las copias de la base de datos local completa 200 en el tiempo t pueden ser registradas en el archivo de envío de inicialización 310. Por lo tanto, una operación de "Agregar" puede ser realizada para registrar la base de datos local 200 en el archivo de envío de inicialización 310. Los identif icadores pueden ser registrados en el archivo de envío de inicialización 310 en cualquier orden. Alternativamente, en presencia de identificadores foráneos, los registros de los datos referenciados pueden ser registrados antes de un registro de datos referenciados. La adición de los campos 510 y 512 puede proporcionar un archivo de envío de i nicialización 310 con algunas advertencias de que los archivos de envío 300 que pueden ser generados y comprometidos con la base de datos remota 210 mientras el archivo de envío de inicialización 310 está siendo generado. Sin embargo, las generaciones del archivo de envío 300 y del archivo de envío de inicialización 310 pueden ser desacopladas una de la otra con respecto a la carencia de la dependencia de uno con el otro para la generación. Dicha estructura y proceso pueden prevenir un método menos eficiente, en el cual la generación del archivo de envío y la aplicación se pueden suspender hasta que la generación del archivo de impíos de inicialización puede ser completada. Al continuar generando y aplicando archivos envío 300 mientras se generan archivos de envío de inicialización 310, como en una modalidad de la presente invención, la verificación de error fuerte, de los archivos envío 300 puede ser hecha así como la colocación de limitantes en la base de datos remota 210, por ejemplo limitantes únicos o limitantes de identif icador foráneo, pueden ser hechos. La colocación de limitantes puede proteger la integridad de los datos en las bases de datos remota 210, no permitir a las transacciones que violan modelos relaciónales de la base de datos remota 210. Por ejemplo, una limitante única puede prevenir que la misma clave sea almacenada en la base de datos 210 más de una vez. La Figura 6 es una gráfica de cronometraje si ilustrativa de la generación de un archivo de envío y de un archivo de envío de inicialización de acuerdo con una modalidad de la presente invención. En la Figura 6, los archivos envío 300 (sf- 1 a s-21) son generados en intervalos de tiempo regulares. En una modalidad alternativa, los archivos envío 300 pueden ser generados a intervalos de tiempo irregulares. Generalmente, la generación del archivo de envío no toma el intervalo de tiempo completo. Por ejemplo, si los archivos son generados en intervalos de cinco minutos, no toma los cinco minutos completos para completar la generación del archivo. Adicionalmente, si ocurren cambios en la base datos local 200 mientras el archivo de envío 300 está siendo generado, esos cambios serán capturados en el siguiente archivo de envío 300. Por ejemplo, si el archivo de envío sf-4 inicia su generación a las 12:05:00 y se termina a las 12:05:02, entonces cualesquiera cambios a la base de datos local 200 que ocurran entre las 12:05:00 y las 12:05:02 son capturados en el archivo de envío sf-5 (por ejemplo, 300-5), el cual captura el periodo de tiempo de las 12:05:00 a las 12:10:00. Los archivos envío 300-5 y 300-19 se ilustran en la Figura 6. Estos archivos muestran, entre otros campos, un identif icador de archivo 601 (sf-5, sf-19), un tiempo de generación de archivo 603, e identificadores de transacción 605 (por ejemplo, 10002). Observar que los identificadores de transacción pueden mostrar ordenados en forma monotónica. Como se mencionó previamente los identificadores de transacción pueden tener valores aleatorios. Sin embargo, las transacciones asociadas mismas son registradas en el archivo de envío 300 con el fin de que ocurran en la base de datos local 200. Ya que la generación del archivo de envío de inicializacion 310 y la generación del archivo de envío 300 pueden estar desacopladas, el archivo de envío de inicialización 310 puede ser generado en cualquier momento. Por ejemplo, el archivo de envío de inicialización 310 puede ser generado antes, durante o después de la generación del archivo de envío 300. La Figura 6 ilustra el archivo de inicialización 310 siendo generado en medio entre el cuarto y el quinto archivo de envío (por ejemplo, sf-4 y sf-5). En una modalidad, el archivo envío de inicialización 310 puede incluir, entre otros campos, un identificador de archivo 610 (sf-1), un identif icador de archivo 615 del último archivo de envío generado antes de la generación del archivo de envío de inicialización, y el identificador de transacción 620 de la última transacción comprometida antes de la generación del archivo de envío de inicialización. En este ejemplo, el último archivo de envío generado es el archivo de envío sf-4 y la última transacción comprometida es la transacción 10001. El archivo de envío de inicialización 310 inicia la generación 611 a las 12:07:29. La primera mitad de las transacciones en el archivo de envío 300-5 (sf-5), transacciones 10002, 10005, y 10001 ya han estado comprometidas con la base de datos local 200 cuando el archivo de envío de inicialización 310 inicia la generación. Por consiguiente, el archivo de envío de inicialización 310 puede tener una advertencia de estas transacciones y puede capturar estas transacciones en el archivo de envío de inicialización 310. Sin embargo, el archivo de envío de inicialización 310 puede no estaba advertido la transacciones subsiguientes 10003 y 10004 que ocurran después del inicio de la generación del archivo de envío de inicialización. Mientras se genera el archivo de envío de inicialización 310, los archivos de envío que inician con el archivo de inicia 300-5 pueden continuar siendo generados a intervalos regulares. Estos archivos pueden ser enviados a la base de datos remota 210 y ser aplicados. El archivo de envío de inicialización 310 puede completar la generación a la 1:15:29, a la mitad entre la generación del 18° y del 19° archivo de envío 300 (sf-18 y sf-19), y puede no afectar la generación del 19° archivo de envío 300-19. Después de recibir y cargar el archivo de envío de inicialización 310 en la base de datos remota 210, la base de datos remota 210 puede no considerar los archivos de envío generados antes de la generación del archivo de envío de inicialización 310.
Esto puede ser debido a, por ejemplo, el archivo de y motivo de inicialización 310 incluyendo todos los cambios a la base de datos local 200 que fueron registrados en archivos envío anteriores 300. En este ejemplo, la base datos remota 210 puede no necesitar considerar del primero al cuarto archivo de envío (sf-1 a sf-4). Estos cambios registrados en estos archivos envío sf-1 a sf-4 también puede ser registrados en el archivo de envío de inicialización 310. Estos archivos envío anteriores (sf-q a sf-4) pueden ser eliminados o, alternativamente archivados. Similarmente, la base de datos remota 210 puede no considerar transacciones comprometidas antes de la generación del archivo de envío de inicialización 310 que fueron incluidas en un archivo de envío 300 generado posteriormente. El archivo de envío de inicialización 310 puede incluir estas transacciones cuando el archivo de envío de inicialización 310 es generado. Por ejemplo, la base de datos remota 210 puede no necesitar considerar las primeras tres transacciones 10002, 10005, 10001 el archivo de envío sf-5 debido a estas transacciones. Estas transacciones registradas en el archivo de envío sf-5 también pueden ser registradas en el archivo de envío de inicialización 310. Las transacciones comprometidas pueden ser eliminadas, cual alternativamente archivadas. La Figura 7 es una gráfica de flujo de una modalidad de la presente invención en la cual los archivos actualizados de una base de datos local pueden ser generados. Un sistema puede generar (705) una pluralidad de actualizaciones periódicas en base a los cambios increméntales a la base datos local. Cada actualización puede incluir una o más transacciones. El sistema entonces puede enviar (710) las actualizaciones periódicas a la base datos remota. Mientras datos actualizaciones periódicas están siendo generadas, el sistema puede inicia la generación (715) de una actualización de inicialización en el tiempo de inicio. La actualización de inicialización puede incluir una versión de la base de datos local completa. El sistema puede determinar (720) la última actualización periódica generada antes de tiempo de inicio en la última transacción comprometida antes de tiempo de inicio. Entonces el sistema puede enviar (725) la actualización de inicialización a la base datos remota. La actualización de inicialización puede incluir un identificador de actualización asociado con la última actualización periódica y el identificador de transacción asociado con la última transacción comprometida. Por ejemplo, OLTP 140 puede generar (705) los archivos envío 300 a un intervalo de tiempo regular o irregular. OLTP 140 puede entonces enviar (710) archivos envío 300 a la base datos remota 210. Mientras los archivos envío 300 están siendo generados, OLTP 140 puede iniciar la generación (715) del archivo de envío de inicialización 310 en el tiempo de inicio 611. El archivo de envío de inicialización 310 puede entre una copia de la base datos local completa 200. OLTP 140 puede entonces determinar (720) el último archivo de inicio 300 generado antes de tiempo de inicio 611 para la generación del archivo de envío de inicialización 310 y la última transacción comprometida antes de tiempo de inicio 611 para la generación del archivo de envío de inicialización 310. OLTP 140 entonces puede enviar (725) el archivo de envío de inicialización 310 a la base de datos remota 210. El archivo de envío de inicialización 310 puede incluir el identificador del archivo de envío 615 asociado con el último archivo de envío 300 generado y un identificador de transacción 620 asociado con la última transacción comprometida. La Figura 8 es una gráfica de flujo de una modalidad de la presente invención en la cual ha base de datos remota puede recibir archivos actualizados de la base datos local. Un sistema puede recibir (805) una pluralidad de actualizaciones periódicas. Cada actualización puede incluir una o más transacciones. Las actualizaciones periódicas pueden ser recibidas individualmente o en lotes. El sistema puede recibir (810) una actualización de inicialización en algún momento. La actualización de inicialización puede incluir una versión de la base de datos local completa. El sistema puede leer (815) el identificador de la última actualización periódica y el identificador de la última transacción a partir de la actualización de inicialización. El sistema puede entonces determinar (820) la última actualización periódica asociada con el identificador de actualización y la última transacción asociada con el identificador de transacción. La actualización periódica y la transacción pueden ser las últimas generadas y comprometidas, respectivamente, antes de la generación de la actualización de inicialización. El sistema puede aplicar (825) las transacciones no comprometidas restantes en la actualización periódica correspondiente a la base de datos remota. El sistema puede entonces aplicar (830) las actualizaciones periódicas restantes generadas después de la última actualización periódica a la base datos remota. La aplicación de la actualización de inicialización ventajosamente aplica cualquier actualización periódica perdida previamente. Por ejemplo, LUE 100 puede recibir (805) archivos envío 300 a intervalos de tiempo regulares o irregulares. Los archivos de envío 300 pueden ser recibidos individualmente o en lotes. LUE 100 puede recibir (810) el archivo de envío de inicialización 310 en algún momento. LUE 100 puede leer (815) el identif icador del archivo de envío 615 y el identificador de transacción 620 a partir del archivo de envío de inicialización 310. LUE 100 puede entonces determinar (820) el archivo de envío 300 asociado con el identificador del archivo de envío 615 y la transacción 605 asociada con el identificador de transacción 620. El archivo de envío y la transacción pueden ser los últimos generados y comprometidos, respectivamente, antes de la generación del archivo de envío de inicialización 310. LUE 100 puede aplicar (825) las transacciones no comprometidas restantes 605 en el archivo de envío 300 correspondiente a la base de datos remota 210. LUE 100 puede entonces aplicar (830) los archivos de envío restantes 300 después del último archivo de envío sf-4 a la base de datos remota 210. En una modalidad alternativa, por ejemplo, LUE 100 puede descartar o archivar archivos de envío 300 que no han sido aplicados a la base de datos remota 210 y/o que tienen un tiempo de generación 603 anterior a la generación del archivo de envío de inicialización 611. Los archivos de envío 300 descartados o archivados pueden incluir el archivo de envío sf-4 asociado con el identif icador del archivo de envío 615. Se puede entender que después de que el archivo de envío de inicialización 310 es aplicado, cualesquiera archivos de envío 300 posteriores que pueden haber sido ya aplicados a la base de datos remota 210 pueden perderse debido a que la base de datos remota 210 se puede volver en consistente en la lectura con el archivo de envío de inicialización 310. Por consiguiente, estos últimos archivos de envío 300 pueden ser reaplicados. En una modalidad de la presente invención, los archivos de envío 300 y el archivo de envío de inicialización 310 pueden ser enviados de la base de datos local 200 a la base de datos remota 210 sin aprobación, es decir, sin una señal ACK/NACK para indicar que los archivos fueron exitosamente recibidos. Esto ventajosamente reduce los gastos indirectos que una señal ACK/NACK puede crear. En una modalidad alternativa, una señal ACK/NACK puede ser enviada de la base de datos remota 210 para indicar la recepción exitosa de los archivos. En esta modalidad, la señal ACK/NACK puede ser enviada en sistemas con comunicaciones no confiables. La Figura 9 es una gráfica de flujo de otra modalidad de la presente invención en la cual el sistema puede validar los archivos actualizados enviados desde la base de datos local y recibidos en la base de datos remota. Aquí, un sistema puede enviar (905) una pluralidad de actualizaciones periódicas. Cada actualización puede incluir una o más transacciones. Las actualizaciones periódicas pueden ser enviadas individualmente o en lotes. El sistema puede enviar (910) una actualización de inicialización en algún momento y aplicar la actualización de inicialización a la base de datos remota. La actualización de inicialización puede incluir una versión de la base de datos local completa. El sistema puede primero identificar (915) las discrepancias entre la base de datos local y remota comparando las bases de datos. El sistema puede determinar (920) si las discrepancias son válidas o erróneas. El sistema entonces puede aplicar (925) las actualizaciones periódicas a la base de datos remota de acuerdo con una modalidad de la presente invención. Esta modalidad ventajosamente puede asegurar que no hay errores en la base de datos remota como un resultado de la recepción de actualizaciones de la base de datos local. Por ejemplo, OLTP 140 puede enviar (905) archivos de envío 300 en intervalos de tiempo regulares o irregulares a la base de datos remota 210. Los archivos de envío 300 pueden ser enviados individualmente o en lotes. OLTP 140 puede enviar (910) el archivo de envío de inicialización 310 en algún momento a LUE 100 y LUE 100 puede aplicar el archivo de envío de inicialización a la base de datos remota 210. OLTP 140 puede comparar la base de datos local 200 con la base de datos remota 210 e identificar (915) las discrepancias entre ellas. OLTP 140 puede entonces determinar (920) si las discrepancias son válidas o erróneas. OLTP 140 puede entonces notificar a LEU 100 aplicar (925) los archivos de envío 300 a la base de datos remota 210 de acuerdo con una modalidad de la presente invención. LUE 100 puede entonces aplicar los archivos de envío 300 a la base de datos remota 210. En una modalidad alternativa, el sistema puede aplicar ambos, los archivos de envío y el archivo de envío de inicialización antes de la identificación y validación de las discrepancias. Alternativamente, el sistema puede aplicar ambos, el archivo de envío y el archivo de envío de inicialización después de identificar y validar las discrepancias. Se puede entender que el proceso de validación puede ser realizado en cualquier dato transmitido a través de una red de una fuente a un destino para el propósito de aplicar los datos transmitidos al destino. La Figura 10A es una gráfica de flujo de una modalidad de la validación del archivo de envío y del archivo de envío de inicialización de acuerdo con la presente invención. Después de enviar una pluralidad de actualizaciones periódicas y una actualización de inicialización a la base de datos remota, un sistema puede validar estas actualizaciones. Cada actualización puede incluir una o más transacciones realizadas en la base de datos local. Cada transacción puede incluir uno o más eventos. Un evento en una acción u ocurrencia de la base de datos, por ejemplo adición, modificación, eliminación, etc. con respecto a los datos en la base de datos. Primero, el sistema puede comparar (1000) un registro en la base de datos remota con un registro correspondiente en la base de datos local. El sistema puede generar (1005) una excepción que describe una discrepancia entre los registros de la base de datos local y la remota, en donde una excepción puede ser generada para cada discrepancia. Una discrepancia puede ser cualquier diferencia en por lo menos un valor de dato entre dos versiones del mismo registro. Por ejemplo, un registro de datos en la base de datos local puede ser (12345, xyz.com, 123.234.345). Un registro de datos correspondiente en la base de datos remota, el cual se supone que es el mismo, puede ser (12345, abc.com, 123.234.345). Por consiguiente, existe una discrepancia en el segundo valor de datos del registro. De esta manera, una modalidad de la presente invención puede generar una excepción que describe esta discrepancia. Una excepción puede describir una discrepancia simplemente indicando que esa discrepancia existe; especificando la ubicación de la discrepancia; describiendo la diferencia entre los dos valores de datos en la discrepancia, etc. Un registro de datos en la base de datos local corresponde a un registro de datos en la base de datos remota (y viceversa) si dos registros se suponen que contienen los mismos datos. Se puede entender que una discrepancia puede referir una diferencia entre uno o más valores de datos en un registro o el registro en su totalidad. El sistema puede asociar (1010) un identif icador de excepción con cada excepción, en donde el identif icador de excepción puede estar asociado con un identificador del registro. Por ejemplo, el registro de datos (12345. xyz.com, 123.234.345) puede tener un identif icador d10. Por consiguiente, el identif icador de excepción también puede ser d10. Cada excepción puede ser clasificada como perteneciendo a cualquiera de muchos tipos de excepciones (o discrepancias). Una lista de excepciones puede ser formada para incluir los tipos de excepción y el identif icador de excepción de la excepción clasificada en la misma. La lista de excepción y los diferentes tipos de excepciones se describirán en detalle más adelante. El sistema también puede asociar (1015) un identificador de evento con cada evento en la actualización, en donde el identificador del evento puede estar asociado con un identificador del registro. Por ejemplo, el registro de datos (12345, xyz.com, 123.234.345) puede tener un identificador d10. Por consiguiente, el identificador del evento puede también ser d10. Cada evento en la actualización se puede encontrar a partir de un historial de eventos. Un historial de eventos puede ser un listado, etc. de los eventos realizados en los registros en la base de datos local durante un período de tiempo. El historial de eventos será descrito más adelante en detalle. El sistema entonces puede determinar (1020) s la actualización del registro es válida. La Figura 10B es una gráfica de flujo de una modalidad de la determinación de la validación. Esta determinación puede ser hecha como sigue. Cada evento puede ser comparado (1022) con cada excepción. Si cada excepción es justificada (1024) a través de un evento, entonces la actualización puede ser designada (1026) como válida y la actualización puede ser aplicada a la base de datos remota. De lo contrario, si cada excepción no es justificada (1024) por un evento, entonces la actualización puede ser designada (1028) como inválida y las excepciones pueden ser registradas como errores. Una excepción puede ser justificada cuando un identificador de evento corresponde al identificador de la excepción y el evento asociado corresponde a una secuencia válida de eventos asociados con el tipo de excepción. Las secuencias válidas serán descritas en detalle más adelante. Si la excepción es justificada, el sistema puede remover el identificador de la excepción de las lista de excepciones. La excepción que está siendo justificada puede indicar que la discrepancia es una válida, por ejemplo, la base de datos remota aún no ha recibido la actualización, pero ciertamente coincidirá con la base de datos local cuando se reciba la actualización. Durante la validación, el sistema puede identificar los errores latentes o fallas en actualizaciones periódicas y de inicialización. El sistema puede asegurar que estas actualizaciones pueden ser estructuralmente y semánticamente correctas, que estas actualizaciones pueden ser aplicadas exitosamente sin generar excepciones o por el contrario dañar de forma torpe, que las comparaciones entre las bases de datos local y remota pueden exactamente detectar errores, y que los datos del perfil alto pueden no ser accidentalmente eliminados. El sistema puede asegurar que las actualizaciones periódicas y de inicialización pueden ser exitosamente aplicadas a la base de datos remota.
Muchos errores pueden ventajosamente ser descubiertos a través del intento de aplicar las actualizaciones a la base de datos remota durante la validación. Por ejemplo, las advertencias de errores céntricos de datos de que un objeto ya existe en la base de datos remota, o advertencias de que existe una violación del identificador foráneo pueden ser descubiertas durante un intento de aplicación. De esta manera, después de realizar el proceso de validación de una modalidad de la presente invención, el sistema puede intentar aplicar estas actualizaciones a la base de datos remota. El intento puede fallar, lo cual puede indicar que hay errores adicionales en las actualizaciones que invalidan las actualizaciones. Por consiguiente, no se debe hacer ningún intento adicional para aplicar estas actualizaciones a la base de datos remota. En una modalidad alternativa, se puede hacer un intento de aplicar por lo menos una de las actualizaciones antes de llevar a cabo la validación. Si el intento falla, entonces la validación deber ser saltada y la actualización descartada. Por otro lado, sin intento es exitoso, entonces la validación puede ser llevada a cabo y la actualización válida se mantiene el actualización inválida se registra para discrepancias. En una modalidad ilustrativa, OLTP 140 puede validar archivos envió 300 y archivos de envío de inicialización 310 para asegurar que los archivos envío 300 y los archivos de envío de inicialización 310 pueden ser exitosamente aplicados a la base de datos remota 210.
En modalidades alternativas, las computadoras entre 121, LUE 100, o cualquier combinación de los sistemas existentes pueden llevar a cabo la validación. Haciendo referencia Figura 10A, OLTP 140 puede comparar la base de datos local 200 y la base de datos remota 210 para determinar cualesquiera excepciones entre ellas. La excepciones pueden incluir tres tipos: los datos puede estar en la base de datos remota 210 y no en la base de datos local 200; los datos puede estar en la base de datos local 200 y no en la base de datos remota 210; o, los datos correspondientes puede estar en la base local 200 y en la base de datos remota 210, pero los datos pueden ser diferentes. Por supuesto, los datos correspondientes pueden estar en la base de datos local 200 y la base de datos remota 210 y los datos pueden ser los mismos, en cuyo caso, los datos pueden ser considerados válidos, esta manera no requiriendo procesamiento adicional a través de OLTP 140. Se puede entender que la discrepancia puede referirse a uno o más valores de datos en el registro o el registro su totalidad. Por consiguiente, OLP que 140 puede comparar (1000) registros correspondientes en la base de datos local 200 y la base de datos remota 210. OLTP 140 puede generar (1005) una excepción que describe una discrepancia entre el registro en la base de datos remota 210 y el registro la base de datos local 200, en donde una excepción puede ser generada para cada discrepancia. OLTP 140 puede asociar (1010) un identif icador de excepción con cada excepción, en donde el identificador de excepción puede estar asociado con un identificador del registro. Una lista de excepción puede ser formada para incluir los tipos de excepción y el identificador de excepción para la excepción que pertenece a ese tipo de excepción. En una modalidad, la excepción puede ser designada como una excepción "Lista 1" (o discrepancia) si la excepción pertenece al primer tipo de excepción, o una excepción "Lista 2" si la excepción pertenece al segundo tipo de excepción, o una excepción "Lista 3" si la excepción pertenece al tercer tipo de excepción. La Figura 11 muestra una lista de excepción ilustrativa 1140. Se puede entender que la presencia de un identificador de excepción en la lista de excepción puede no implicar que el archivo de envío 300 o el archivos de envío de inicialización 310 es malo, ya que, por ejemplo, los tres tipos excepciones pueden legítimamente ocurrir debido a un retraso del tiempo entre los cambios de la base de datos local 200 y las actualizaciones aplicadas a la base de datos remota 310. Dicho retraso puede ser causado por congestión de red, por ejemplo. Es decir, la validación puede proporcionar un mecanismo para limpias datos legítimos de los datos erróneos. Para el archivo de envío de inicialización 310, OLTP 140 puede comparar la base de datos local 200 y la base de datos remota 210 realizando una exploración de cuadro completo bidireccional en ambas bases de datos 200, 210. Es decir, todos los datos en la base de datos local 200 pueden ser comparados contra todos los datos en la base de datos remota 210. Entonces, todos los datos en la base de datos remota 210 pueden ser comparados contra todos los datos en la base de datos local 200. Esto ventajosamente proporciona una comparación exhaustiva de las bases de datos 200, 210 para descubrir todas las discrepancias. Para el archivo de envío 300, OLTP 140 puede comparar solamente los registros de datos en la base de datos local 200 y la base de datos remota 210 está registrada en el archivo de envío 300. Esto ventajosamente proporciona una búsqueda rápida para descubrir discrepancias objetivo. Alternativamente, un muestreo aleatorio de los datos en el archivo de envío de inicialización 310 y/o el archivo de envió 300 puede ser conducido. OLTP 140 entonces puede comparar los datos muestreados aleatoriamente en la base de datos local 200 y la base de datos remota 210. La lista de excepción 1140 puede corresponder a eventos perdidos, por ejemplo, adiciones (agregar), modificaciones (modificar), y eliminaciones (eliminar) a la base de datos local 200 que son inconsistentes con la base de datos remota 210. Por lo tanto, para identificar estos eventos candidato, OLTP 140 puede examinar las transacciones recientes comprometidas con la base de datos local 200. Generalmente, para cada transacción comprometida, se debe hacer una entrada, en un cuadro de registro almacenado la base de datos local 200. La entrada puede incluir el identificador del registro que fue cambiado, la transacción (o eventos) que cambiaron el registro (por ejemplo, un agregar, modificar y/o del evento), un número de secuencia de registro que indica la ordenación de la transacción, etc. Un cuadro de registro ilustrativo 1100 se muestra en la Figura 11. En este ejemplo, el archivo de envío 300 incluir transacciones 1108-1114, mostrados en el cuadro de registro 1100. La primera entrada 1101 muestra que, en la primera transacciones 1108, los datos (nombres de servidor) n1 y n2 fueron agregados a los datos (dominio) asociados con el identificador d1. Por lo tanto, el identificador es d1, elemento es "agregar" y el número de secuencia de registro es 11526. Similarmente, la segunda entrada 1102 indica que, en la segunda transacción 1109, los datos n8 y n9 fueron agregados a los datos asociados con el identificador d2. La tercera entrada 1103 indica que, en la tercera transacción 1110, los datos asociados con el identificador d3 fueron eliminados. La cuarta entrada 1104 indica que, en la cuarta transacción 1111, los datos asociados con el identificador d1 fueron modificados para agregar datos n5. Para la quinta transacción 1112, la quinta entrada 1105 indica que los datos n6 y n7 fueron agregados a los datos asociados con el identificador d3. Para la sexta transacción 1113, la sexta entrada 1106 indica que los datos asociados con el identificador d4 fueron modificados para remover los datos n3. La entrada Rava 1107, en la transacción Rava 1114, indica que los datos asociados con el identificador d5 fueron eliminados. Por consiguiente, como se muestra en Figura 10A, OLTP 140 puede asociar (1015) un identificador de evento con cada evento en la actualización, en donde el identificador del evento puede estar asociado con un identificador del registro. Cada evento en la actualización puede ser encontrado a partir un historial eventos. Un historial eventos, indexado y ordenado mediante identificador eventos puede ser generado partir del cuadro de registro 1100. Un historial de evento ilustrativo 1120 se muestra en la Figura 11. Aquí, la primera y cuarta entradas 1101, 1104 en el cuadro de registro 1100 indica cambios a los datos asociados con el identificador d1. Esta manera, el historial eventos 1120 incluyen el identificador d1 1121, y dos eventos 1126, "agregar" seguido por "modificar", realizados sobre los datos asociados con el identificador d1. La segunda entrada 1102 indica los cambios a los datos asociados con el identificador d2. Esta manera el historial eventos 1120 incluyen el identificador d2 1122 y un evento "agregar" 1127. El historial eventos 1120 incluye el identificador d3 1123 y dos eventos 1128, "eliminar" seguido por "modificar", indicativo de la tercera y quinta entradas 1103, 1105, las cuales incluyen cambios a los datos asociados con el identificador d3. La sexta entrada 1106 indica cambios a los datos asociados con el identificador d4. Por consiguiente el historial eventos 1120 incluye el identificador d4 1124 y un evento "modificar" 1129. La entrada Rava 1107 indica cambios a los datos asociados con el identificador d5 y un historial eventos 1120 incluye el identificador d5 1125 y un evento "eliminar" 1130. Los identificador es 1121-1125 están ordenados de d1 a d5.
Haciendo referencia otra vez a la Figura 10A, OLTP 140 puede determinar (1020) si la actualización es válida. Esta determinación puede ser realizada, de acuerdo con una modalidad de la Figura 10b. Primero OLTP 140 puede comparar (1022) los identificadores de evento 1121-1125 con los identificadores de excepción 1140 para determinar que identificadores corresponden. Por ejemplo, en la Figura 11, el identificador de evento d1 1121 en el identificador de historial 1120 corresponde a identificador de excepción d1 en la "Lista 2" de la lista de excepción 1140. Después de encontrar un evento correspondiente y una excepción, OLTP 140 puede determinar (1024) si el evento justifica la excepción. La justificación puede ser hecha como sigue. Para cada identificador de evento 1121-1125 en el historial de eventos 1120, OLTP 140 puede determinar si cada secuencia de eventos 1126-1130 en el historial de eventos 1120 es válida. Esto puede ser hecho, por ejemplo, examinando la lista de excepción 1140 para determinar a que tipo de excepción cada identificador de excepción pertenece, determinando cual debe ser una secuencia válida de eventos para ese tipo de excepción, y después buscando en el historial de eventos 1120 el identificador de evento correspondiente y la secuencia del identificador del evento de los eventos. Las secuencias válidas para cada tipo de excepción se detallarán más adelante. Si una secuencia de eventos 1126-1130 en el historial de eventos 1120 coincide con una secuencia válida, en entonces el identificador de evento correspondiente 1121-1125 tiene una secuencia válida. Es decir, la excepción asociada con el identificador de excepción puede ser justificada. Y, la transacción correspondiente 1108-1114 la cual incluye que el identificador del evento es uno legítimo y no erróneo. En este caso, OLTP 140 puede remover el identificador de excepción de la lista de excepción 1140. Una secuencia de eventos válida para la el tipo de excepción de la "Lista 1" puede ser (modificar)* (eliminada). Esta secuencia puede incluir una secuencia de cero o más eventos "modificar" seguida por un evento "eliminar" seguido de nada. El tipo de excepción de la "Lista 1" puede corresponder a los datos que pueden existir en la base de datos remota 210, pero no en la base de datos local 200. En este caso, los datos deben haber sido eliminados recientemente de la base de datos local 200 y la transacción aún no se escribe en el archivo de envío 300. Por lo tanto, el archivo de envío 300 puede aún no haber sido aplicado a la base de datos remota 210. Esto puede ser considerado como siendo una discrepancia legítima debido a que en algún punto del archivo de envío 300 se espera que sea generado y aplicado a la base de datos remota 210. Por lo que, si cualquiera de dichas secuencias 1126-1130 se encuentra en el historial de eventos 1120 para un identificador de excepción en la Lista 1 de la lista de excepción 1140, entonces la transacción correspondiente puede ser considerada válida. Por ejemplo, en la Figura 11, el identificador d5 1125 y sus datos asociados han sido eliminados de la base de datos local 200, como se muestra en la entrada Rava 1114 del cuadro de registro 1100 e indexado en el historial de eventos 1120. En el momento de la validación, d5 ha sido eliminado de la base de datos local 200, pero no de la base de datos remota 210. Por lo que, la lista de excepción 1140 incluye el identificador d5 en la Lista 1. De acuerdo con el historial de eventos 1120, el evento 1130 asociado con el identificador d5 1125 es "eliminar". OTLP 140 puede comparar la secuencia válida del tipo de excepción de la "Lista 1", es decir (modificar)*, contra el evento d5 1130 en el historial de eventos 1120. Ya que la secuencia válida de la "Lista 1" y el evento 1130 coinciden, la transacción de eliminación 1114 asociada el identificador d5 puede ser considerada como legítima y no un error. Por consiguiente, el identificador d5 pude ser removido de la lista de excepción 1140. Una secuencia válida de eventos para el tipo de excepción de la "Lista 2" puede ser (agregar). Esta secuencia puede incluir un evento "agregar" seguido de nada. El tipo de excepción de la "Lista 2" puede corresponder a los datos que existen en la base de datos local 200, pero no en la base de datos remota 210. En este caso, los datos puede haber sido recientemente agregados a la base de datos local 200 y la transacción aún no se escribe en el archivo de envío 300. Por lo tanto, el archivo de envío 300 puede aún no haber sido aplicado a la base de datos remota 210. Por lo que, los datos pueden no existir en la base de datos remota 210. Esto también puede ser considerado como siendo una discrepancia legítima debido a que en algún punto del archivo de envío 300 se espera que se genere y aplique a la base de datos remota 210. Por consiguiente, si cualquiera de dichas secuencias 1126-1130 se encuentra en el historial de eventos 1120 para un identif icador de excepción en la Lista 2 de la lista de excepción 1140, entonces la transacción correspondiente puede ser considerada válida. Haciendo referencia otra vez a la Figura 11, los identificadores d1 y d2 1121,1123 pueden estar asociados con los datos que fueron inicialmente agregados a la base de datos local 200, por ejemplo. Ya que sus secuencias de eventos 1126, 1127 empiezan con los eventos "agregar", los identificadores d1 y d2 1121, 1123 coinciden con las secuencias válidas para un tipo de excepción de la "Lista 2". Por consiguiente, las transacciones 1108, 1109 incluyendo estos identificadores pueden ser consideradas válidas y los identificadores d1 y d2 ser removidos de la lista de excepción 1140. Notar que el identif icador d3 1123 también incluye un evento "agregar" en su secuencia 1128. Sin embargo, el evento "agregar" no es el primero en la secuencia. Por consiguiente, la secuencia 1128 no califica como un tipo de la "Lista 2". Adicionalmente, ya que d3 no está designado en la Lista 2 de la lista de excepción 1140, OLTP 140 puede no verificarlo para la secuencia válida de la Lista 2. Las secuencias válidas de eventos para el tipo de excepción de la "Lista 3" pueden ser (eliminar) (agregar) o (modificar). Estas secuencias pueden incluir un evento "eliminar" seguido de nada. El tipo de excepción de la "Lista 3" corresponde a los datos que existen en ambas bases de datos 200, 210, pero es diferente. En este caso, los datos pueden haber sido recientemente modificados en la base de datos local 200 y la transacción aún no se escribe en el archivo de envío 300. Por lo tanto, el archivo de envío 300 puede aún no haber sido aplicado a la base de datos remota 210. Por lo que, los datos asociados con el identificador pueden aún no estar modificados en la base de datos remota 210. Otra vez, esto puede ser considerado como siendo una discrepancia legítima debido a que en algún punto el archivo de envío 300 se espera que sea generado y aplicado a la base de datos 210. Por consiguiente, si cualquiera de dichas secuencias 1126-1130 se encuentra en el historial de eventos 1120 para un identificador de excepción en la Lista 3 de la lista de excepción 1140, entonces la transacción correspondiente puede ser considerada válida. Por ejemplo, en la Figura 11, los identificadores d3 y d4 pueden estar asociados con los datos que fueron modificados en la base de datos 200. En el caso del identificador d3 1123, el identificador d3 1123 y sus datos fueron inicialmente eliminados y después vueltos agregar con nuevos datos, de tal manera que sus secuencias de eventos 1128 pueden incluir "eliminar" seguido de "agregar". En el caso del identificador d4 1124, los datos d4 fueron modificados para remover los datos, es decir su secuencia de eventos 1129 puede incluir "modificar". Ya que estas secuencias de eventos 1128, 1129 coinciden con las secuencias válidas para un tipo de excepción de la "Lista 3", sus transacciones correspondientes 1110, 1112, 1113 pueden ser consideradas válidas y los identificadores d3 y d4 removidos de la lista de excepción 1140. Haciendo referencia a la Figura 10B, si todas las excepciones indicadas a través de sus identificadores en la lista de excepción 1140 ha sido justificadas (1024) por los evento, es decir, si la lista de excepción 1140 está vacía, OLTP 140 puede designar (1026) el archivo de envío 300 o el archivo de envío de inicialización 310 como válido y notificar a LUE 100 que aplique el archivo de envío 300 o el archivo de envío de inicialización 310 a la base de datos remota 210. LUE 100 puede entonces aplicar el archivo de envío 300 o el archivo de envío de inicialización 310 a la base de datos remota 210. Por el contrario, si todas las excepciones no han sido justificadas (1024) por los eventos, es decir, si la lista de excepción 1140 no está vacía, entonces las excepciones restantes pueden indicar errores en el archivo de envío 300 o el archivo de envío de inicialización 310. Por consiguiente, OLTP 140 puede designar (1028) el archivo de envío 300 o el archivo de envío de inicialización 310 como inválido y registrar los errores en un archivo de error. En una modalidad alternativa, por ejemplo, si el archivo de envío 300 o el archivo de envío de inicialización 310 fue designado como inválido, después de un período predeterminado de tiempo, OLTP 140 puede repetir el proceso de validación sobre el archivo de envío 300 o el archivo de envío de inicialización 310 inválido para asegurar que las discrepancias son ciertamente errores. Este retraso predeterminado permite a la red más tiempo para transmitir cualesquiera archivos de envío 300, 310 lentos y las bases de datos 200, 210 más tiempo para volverse consistentes en lectura. En una modalidad de la presente invención, los datos en la base de datos remota 210 pueden "rezagar" los datos en la base de datos 200 a través de un período de tiempo significativo. Por consiguiente, con el fin de comparar las bases de datos 200, 210 y detectar errores, las bases de datos 200, 210 pueden ser hechas consistentes en lectura en el mismo punto en el tiempo de tal manera que son copias exactas una de la otra. Generalmente, la base de datos remota 210 puede ser recorrida hacia delante a la base de datos local 200, en donde los datos en la base de datos remota 210 pueden ser hechos esencialmente los mismos que los datos en la base de datos local 200. Por consiguiente, para acelerar la validación, cualquier archivo de envío de inicíalización generado actualmente 310 y archivos de envío subsecuentes 300 pueden ser aplicados a la base de datos remota 210 antes de iniciar la validación. Es decir, el número de discrepancias puede ser significativamente reducido. Este procesamiento de lotes de los archivos de envío 300, 310 puede ser referido como agrupación. El primero y el último de estos archivos de envío 300, 310 en la agrupación puede ser llamado marcas de agua baja y alta, respectivamente. La primera agrupación, llamada la agrupación inicial, puede incluir el archivo de envío de inicíalización 310. Todas las siguientes agrupaciones, llamadas agrupaciones terminales, pueden incluir solamente los archivos de envío 300. La agrupación puede proporcionar la validación de grupo en lugar de la validación en aislamiento. Por consiguiente, si un error es detectado en una agrupación, la agrupación completa puede ser designada como inválida, no solamente el archivo de envío 300 o el archivo de envío de inicialización 310 en donde ocurrió el error. Los mecanismos y métodos de las modalidades de la presente invención pueden ser implementados utilizando un microprocesador de propósito general programado de acuerdo con las enseñanzas de las modalidades. Las modalidades de la presente invención de esta manera incluyen un medio legible por máquina, el cual puede incluir instrucciones, las cuales pueden ser utilizadas para programar un procesador para realizar un método de acuerdo con las modalidades de la presente invención. Este medio puede incluir, pero no está limitado a, cualquier tipo de disco incluyendo disco flexible, disco óptico, y CD-ROMs. Varias modalidades de la presente invención son específicamente ilustradas y descritas aquí. Sin embargo, se apreciará que las modificaciones y variaciones de la presente invención están cubiertas por las enseñanzas anteriores y dentro del rango de las reivindicaciones anexas sin apartarse del espíritu y el alcance pretendido de la invención.

Claims (28)

REIVINDICACIONES
1. Un método para validar una actualización de un registro en una base de datos remota a través de una red, la actualización incluye por lo menos un evento, que comprende: comparar el registro en la base de datos remota con un registro correspondiente en la base de datos local; generar una excepción que describe una discrepancia entre el registro de la base de datos remota y el registro de la base de datos local, para cada discrepancia; asociar un identificador de excepción con cada excepción, en donde cada identificador de excepción está asociado con un identificador del registro; asociar un identificador del evento con cada evento en la actualización, en donde cada identificador de evento está asociado con un identificador del registro; y determinar si la actualización es válida comparando los eventos y las excepciones que corresponden a este registro.
2. El método de acuerdo con la reivindicación 1, en donde la actualización del registro es válido si cada excepción correspondiente al registro está justificado a través de un evento correspondiente al registro.
3. El método de acuerdo con la reivindicación 2, en donde los tipos de excepciones incluyen: un primer tipo de excepción en el cual el registro está en la base de datos remota y no en la base de datos local; un segundo tipo de excepción en donde el registro está en la base de datos local y no en la base de datos remota; y un tercer tipo de excepción en donde el registro está en la base de datos local y la base de datos remota y un valor de un campo del registro en la base de datos local es diferente que el valor del mismo campo en el registro de la base de datos remota.
4. El método de acuerdo con la reivindicación 3, en donde el evento justifica la excepción si: el evento es una eliminación del registro de la base de datos local y la excepción es el primer tipo de excepción, el evento es una modificación del registro en la base de datos local y la excepción es el tercer tipo de excepción, o el evento es una eliminación seguida por una adición del registro en la base de datos local y la excepción en el tercer tipo de excepción.
5. El método de acuerdo con la reivindicación 1, que comprende además: repetir el método para validar la actualización de una cantidad de tiempo dada después de que la actualización se determinó como inválida, si la actualización se determina como siendo inválida.
6. El método de acuerdo con la reivindicación 1, en donde la comparación incluye: comparar la base de datos completa contra la base de datos remota completa.
7. Un método para validar una base de datos, que comprende: enviar a la base de datos una pluralidad de actualizaciones periódicas sobre cambios increméntales a una base de datos local, cada una de la pluralidad de actualizaciones periódicas tiene por lo menos una transacción; enviar a la base de datos remota una actualización de inicialización que incluye una versión de la base de datos como la base de datos local en el tiempo de inicio, en donde la actualización de inicialización se aplica a la base de datos remota; identificar las discrepancias entre la base de datos local y la base de datos remota; determinar si las discrepancias son válidas; y notificar a la base de datos remota para aplicar las actualizaciones periódicas que tienen un tipo de inicio posterior al tiempo de inicio de la actualización de inicialización.
8. El método de acuerdo con la reivindicación 7, que comprende además: repetir el método para validar la actualización en una cantidad dada de tiempo después de que la actualización se determinó como inválida, si la actualización se determina como siendo inválida.
9. El método de acuerdo con la reivindicación 7, en donde las discrepancias incluyen: un primer tipo de discrepancia en el cual un registro está en la base de datos remota y no en la base de datos local; un segundo tipo de discrepancia en donde el registro está en la base de datos local y no en la base de datos remota; y un tercer tipo de discrepancia en el cual el registro está en la base de datos local y en la base de datos remota y un valor de un campo del registro en la base de datos local es diferente del valor del mismo campo en el registro de la base de datos remota.
10. Un sistema para validar una actualización para un registro en una segunda base de datos remota a través de una red, en donde la actualización incluye por lo menos un evento, el sistema comprende: por lo menos un procesador acoplado a la red; y una memoria acoplada al procesador, la memoria incluye una base de datos e instrucciones adaptadas para ser ejecutadas mediante el procesador para implementar un método para validar la actualización del registro en la base de datos remota a través de la red, el método incluye: comparar el registro en la base de datos remota con un registro correspondiente en la base de datos local; generar una excepción que describe una discrepancia entre la base de datos remota y la base de datos local, para cada discrepancia, asociar un identificador de excepción con cada excepción, en donde cada identificador de excepción está asociado con un identificador del registro, asociar un identificador de evento con cada evento en la actualización, en donde cada identificador de evento está asociado con un identificador del registro, y determinar si la actualización es válida a través de la comparación con los eventos y excepciones que correspondan al registro.
11. El sistema de acuerdo con la reivindicación 10, en donde la actualización del registro es válida si cada excepción correspondiente al registro se justifica a través de un evento correspondiente al registro.
12. El sistema de acuerdo con la reivindicación 11, en donde los tipos de excepciones incluyen: un primer tipo de excepción en el cual el registro está en la base de datos remota y no en la base de datos local; un segundo tipo de excepción en el cual el registro está en la base de datos local y no en la base de datos remota; y un tercer tipo de excepción en el cual el registro está en la base de datos local y el base de datos remota y un valor de un campo del registro en la base de datos local es diferente del valor del mismo campo en la base de datos remota.
13. El sistema de acuerdo con la rei indicación 12, en donde el evento justifica la excepción si: el evento es una eliminación del registro de la base de datos local y la excepción es el primer tipo de excepción, el evento es una adición del registro a la base de datos local y la excepción es el segundo tipo de excepción, el evento es una modificación del registro en la base de datos local y la excepción es el tercer tipo de excepción, o el evento es una eliminación seguida por una adición del registro a la base de datos local y la excepción es el tercer tipo de excepción.
14. El sistema de acuerdo con la reivindicación 10, en donde si la actualización se determina como siendo inválida, el procesador repite el método para validar la actualización una cantidad de tiempo dada después de que la actualización se determinó como siendo inválida.
15. El sistema de acuerdo con la reivindicación 11, en donde el procesador compara la base de datos local completa contra la base de datos remota completa.
16. Un medio legible por máquina que incluye instrucciones de programa adaptadas para ser ejecutadas a través de un procesador para implementar un método para validar una actualización a un registro en una base de datos remota a través de una red, el método comprende: comparar el registro en la base de datos remota con un registro correspondiente en una base de datos local; generar una excepción que describe una discrepancia entre el registro de la base de datos remota y el registro de la base de datos local, para cada discrepancia; asociar un identificador de excepción con cada excepción, en donde cada identificador de excepción está asociado con un identificador del registro, asociar un identificador de evento con cada evento en la actualización, en donde cada identificador de evento está asociado con un identificador del registro; y determinar si la actualización es válida a través de la comparación con los eventos y excepciones que correspondan al registro.
17. El medio legible por máquina de acuerdo con la reivindicación 16, en donde, si la actualización se determina como siendo inválida, el procesador repite el método para validar la actualización en un cantidad de tiempo dada después de que la actualización fue determinada como siendo inválida.
18. El medio legible por máquina de acuerdo con la reivindicación 16, en donde la actualización del registro es válida si cada excepción correspondiente al registro se justifica a través de un evento correspondiente al registro.
19. El medio legible por máquina de acuerdo con la reivindicación 16, en donde los tipos de excepciones incluyen: un primer tipo de excepción en el cual el registro está en la base de datos remota y no en la base de datos local; un segundo tipo de excepción en el cual el registro está en la base de datos local y no en la base de datos remota; y un tercer tipo de excepción en el cual el registro está en la base de datos local y el base de datos remota y un valor de un campo en el registro en la base de datos local es diferente del valor del mismo campo en la base de datos remota.
20. Un método para validar una transmisión de datos a través de una red, que comprende: Identificar las discrepancias de datos entre una fuente y un destino; Identificar los cambios de datos en la fuente que fueron incluidos en la transmisión; y comparar las discrepancias con los cambios para determinar si la transmisión es válida.
21. El método de acuerdo con la reivindicación 20, en donde la fuente y el destino son servidores de nombre de dominio.
22. El método de acuerdo con la reivindicación 20, en donde las discrepancias incluyen: un nombre de dominio que está en la fuente y no en el destino; un nombre de dominio que está en el destino y no en la fuente; y los nombres de dominio correspondientes que son diferentes en la fuente y en el destino.
23. El método de acuerdo con la reivindicación 20, en donde los cambios incluyen por lo menos uno de la adición de un nombre de dominio a un servidor de nombre de dominio, eliminación de un nombre de dominio de un servidor de nombre de dominio, y modificación de un nombre de dominio en un servidor de nombre de dominio.
24. Un validador, que comprende: medios para identificar discrepancias de datos entre una fuente y un destino; medios para identificar cambios de datos en la fuente que fueron incluidos en la transmisión; y medios para comparar las discrepancias con los cambios para determinar si la transmisión es válida.
25. El sistema de acuerdo con la reivindicación 10, que comprende además: por lo menos un procesador remoto acoplado a la red; y una memoria remota acoplada al procesador remoto, la memoria remota almacena la base de datos remota e instrucciones adaptadas para ser ejecutadas mediante el procesador remoto para: crear un nuevo elemento basado en la nueva información recibida de la base de datos a través de la red; y sin restricción en el acceso de búsqueda a la base de datos remota, escribir un apuntador al nuevo elemento a la base de datos remota utilizando un operación ininterrumpible individual.
26. El sistema de acuerdo con la reivindicación 25, en donde las instrucciones además están adaptadas para: físicamente eliminar un elemento existente después de que el apuntador es escrito en la base de datos.
27. El sistema de acuerdo con la reivindicación 25, en donde la operación ininterrumpible individual es una instrucción de almacenamiento.
28. El sistema de acuerdo con la reivindicación 27, en donde el procesador remoto tiene un tamaño de palabra de por lo menos n bytes, la memoria remota tiene un ancho de por lo menos n bytes y la instrucción de almacenamiento escribe n bytes a una dirección de memoria remota localizada en un límite de n bytes.
MXPA04004203A 2001-11-01 2002-11-01 Metodo y sistema para validar una base de datos remota. MXPA04004203A (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US33084201P 2001-11-01 2001-11-01
US36516902P 2002-03-19 2002-03-19
PCT/US2002/035081 WO2003038653A1 (en) 2001-11-01 2002-11-01 Method and system for validating remote database

Publications (1)

Publication Number Publication Date
MXPA04004203A true MXPA04004203A (es) 2005-05-16

Family

ID=26987480

Family Applications (4)

Application Number Title Priority Date Filing Date
MXPA04004202A MXPA04004202A (es) 2001-11-01 2002-11-01 Administrador de memoria de transaccion.
MXPA04004203A MXPA04004203A (es) 2001-11-01 2002-11-01 Metodo y sistema para validar una base de datos remota.
MXPA04004201A MXPA04004201A (es) 2001-11-01 2002-11-01 Metodo y sistema para actualizar una base de datos remota.
MXPA04004169A MXPA04004169A (es) 2001-11-01 2002-11-01 Base de datos controlada, sin concurrencia, de alta velocidad.

Family Applications Before (1)

Application Number Title Priority Date Filing Date
MXPA04004202A MXPA04004202A (es) 2001-11-01 2002-11-01 Administrador de memoria de transaccion.

Family Applications After (2)

Application Number Title Priority Date Filing Date
MXPA04004201A MXPA04004201A (es) 2001-11-01 2002-11-01 Metodo y sistema para actualizar una base de datos remota.
MXPA04004169A MXPA04004169A (es) 2001-11-01 2002-11-01 Base de datos controlada, sin concurrencia, de alta velocidad.

Country Status (16)

Country Link
US (10) US6681228B2 (es)
EP (10) EP1461723A4 (es)
JP (4) JP4897196B2 (es)
KR (4) KR100970122B1 (es)
CN (4) CN1610877B (es)
AU (5) AU2002356884B2 (es)
BR (4) BR0213864A (es)
CA (4) CA2466107C (es)
EA (4) EA005646B1 (es)
HK (1) HK1075308A1 (es)
IL (8) IL161723A0 (es)
MX (4) MXPA04004202A (es)
NO (4) NO20042259L (es)
NZ (4) NZ533166A (es)
WO (5) WO2003038683A1 (es)
ZA (4) ZA200403597B (es)

Families Citing this family (269)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7272604B1 (en) * 1999-09-03 2007-09-18 Atle Hedloy Method, system and computer readable medium for addressing handling from an operating system
US6745248B1 (en) * 2000-08-02 2004-06-01 Register.Com, Inc. Method and apparatus for analyzing domain name registrations
AU2001286786A1 (en) * 2000-08-25 2002-03-13 Stuart E. Massey Transaction-based enterprise application integration (eai) and development system
US20030182447A1 (en) * 2001-05-31 2003-09-25 Schilling Frank T. Generic top-level domain re-routing system
EP1461723A4 (en) * 2001-11-01 2009-08-05 Verisign Inc METHOD AND SYSTEM FOR VALIDATING A REMOTE DATA BANK
US20040005892A1 (en) * 2002-04-18 2004-01-08 Arnaldo Mayer System and method for managing parameter exchange between telecommunications operators
CA2384185A1 (en) * 2002-04-29 2003-10-29 Ibm Canada Limited-Ibm Canada Limitee Resizable cache sensitive hash table
JP3971984B2 (ja) * 2002-10-15 2007-09-05 松下電器産業株式会社 通信装置および通信方法
US8255361B2 (en) * 2003-01-31 2012-08-28 Oracle America, Inc. Method and system for validating differential computer system update
US7162495B2 (en) * 2003-03-31 2007-01-09 Qwest Communications Inc. Systems and methods for clearing telephone number porting assignments EN masse
US7689569B2 (en) * 2003-03-31 2010-03-30 Qwest Communications International Inc. Systems and methods for managing large data environments
US20040193509A1 (en) * 2003-03-31 2004-09-30 Qwest Communications International Inc. Systems and methods for managing telephone number inventory
US20040193604A1 (en) * 2003-03-31 2004-09-30 Qwest Communications International Inc. Systems and methods for restricting a telephone number's availability for assignment
US7395276B2 (en) * 2003-03-31 2008-07-01 Qwest Communications International Inc. Systems and methods for resolving telephone number discrepancies en masse
US7624112B2 (en) * 2003-04-03 2009-11-24 Oracle International Corporation Asynchronously storing transaction information from memory to a persistent storage
US7212817B2 (en) * 2003-04-30 2007-05-01 Hewlett-Packard Development Company, L.P. Partitioning a database keyed with variable length keys
US20040220941A1 (en) * 2003-04-30 2004-11-04 Nielson Mark R. Sorting variable length keys in a database
JP4124348B2 (ja) * 2003-06-27 2008-07-23 株式会社日立製作所 記憶システム
US7130975B2 (en) * 2003-06-27 2006-10-31 Hitachi, Ltd. Data processing system
JP4374953B2 (ja) * 2003-09-09 2009-12-02 株式会社日立製作所 データ処理システム
JP2005309550A (ja) 2004-04-19 2005-11-04 Hitachi Ltd リモートコピー方法及びリモートコピーシステム
TW591441B (en) * 2003-07-28 2004-06-11 Accton Technology Corp Database system and data access method thereof
US8949304B2 (en) * 2003-08-20 2015-02-03 Apple Inc. Method and apparatus for accelerating the expiration of resource records in a local cache
US7590643B2 (en) * 2003-08-21 2009-09-15 Microsoft Corporation Systems and methods for extensions and inheritance for units of information manageable by a hardware/software interface system
US8238696B2 (en) 2003-08-21 2012-08-07 Microsoft Corporation Systems and methods for the implementation of a digital images schema for organizing units of information manageable by a hardware/software interface system
US8131739B2 (en) * 2003-08-21 2012-03-06 Microsoft Corporation Systems and methods for interfacing application programs with an item-based storage platform
US8166101B2 (en) 2003-08-21 2012-04-24 Microsoft Corporation Systems and methods for the implementation of a synchronization schemas for units of information manageable by a hardware/software interface system
US7606788B2 (en) * 2003-08-22 2009-10-20 Oracle International Corporation Method and apparatus for protecting private information within a database
CN100337236C (zh) * 2003-08-26 2007-09-12 华为技术有限公司 一种使前后台数据库中数据相一致的方法
US20050060566A1 (en) * 2003-09-16 2005-03-17 Chebolu Anil Kumar Online user-access reports with authorization features
US20050066290A1 (en) * 2003-09-16 2005-03-24 Chebolu Anil Kumar Pop-up capture
US7219201B2 (en) * 2003-09-17 2007-05-15 Hitachi, Ltd. Remote storage disk control device and method for controlling the same
US7702628B1 (en) * 2003-09-29 2010-04-20 Sun Microsystems, Inc. Implementing a fully dynamic lock-free hash table without dummy nodes
US7158976B1 (en) * 2003-09-30 2007-01-02 Emc Corporation Spatial domain mechanism
US20060008256A1 (en) 2003-10-01 2006-01-12 Khedouri Robert K Audio visual player apparatus and system and method of content distribution using the same
US20130097302A9 (en) 2003-10-01 2013-04-18 Robert Khedouri Audio visual player apparatus and system and method of content distribution using the same
US7127587B2 (en) * 2003-12-11 2006-10-24 International Business Machines Corporation Intent seizes in a multi-processor environment
JP4412989B2 (ja) 2003-12-15 2010-02-10 株式会社日立製作所 複数の記憶システムを有するデータ処理システム
WO2005064823A1 (en) * 2003-12-30 2005-07-14 Telefonaktiebolaget Lm Ericsson (Publ) Method device for transmitting data packets belong to different users in a common transmittal protocol packet
JP4477370B2 (ja) * 2004-01-30 2010-06-09 株式会社日立製作所 データ処理システム
US7895199B2 (en) * 2004-04-20 2011-02-22 Honda Motor Co., Ltd. Method and system for modifying orders
CA2465558A1 (en) * 2004-04-22 2005-10-22 Ibm Canada Limited - Ibm Canada Limitee Framework for retrieval and display of large result sets
US7555634B1 (en) 2004-04-22 2009-06-30 Sun Microsystems, Inc. Multiple data hazards detection and resolution unit
DE602004002850T2 (de) * 2004-05-11 2007-03-15 Alcatel Netzelement und Verfahren zur Abbildung von Adressinformationen
US7483426B2 (en) * 2004-05-13 2009-01-27 Micrel, Inc. Look-up table expansion method
US8943050B2 (en) * 2004-05-21 2015-01-27 Ca, Inc. Method and apparatus for optimizing directory performance
US20060036720A1 (en) * 2004-06-14 2006-02-16 Faulk Robert L Jr Rate limiting of events
ATE368902T1 (de) * 2004-06-22 2007-08-15 Sap Ag Datenverarbeitungsvorrichtung von online- transaktionsdaten
US7774298B2 (en) * 2004-06-30 2010-08-10 Sap Ag Method and system for data extraction from a transaction system to an analytics system
JP4519563B2 (ja) * 2004-08-04 2010-08-04 株式会社日立製作所 記憶システム及びデータ処理システム
US7359923B2 (en) * 2004-08-20 2008-04-15 International Business Machines Corporation Online incremental deferred integrity processing and maintenance of rolled in and rolled out data
US7788282B2 (en) * 2004-09-16 2010-08-31 International Business Machines Corporation Methods and computer programs for database structure comparison
JP2006127028A (ja) * 2004-10-27 2006-05-18 Hitachi Ltd 記憶システム及び記憶制御装置
US8356127B2 (en) * 2004-12-09 2013-01-15 Rambus Inc. Memory interface with workload adaptive encode/decode
US7805422B2 (en) * 2005-02-28 2010-09-28 Microsoft Corporation Change notification query multiplexing
US20060218176A1 (en) * 2005-03-24 2006-09-28 International Business Machines Corporation System, method, and service for organizing data for fast retrieval
US9547780B2 (en) * 2005-03-28 2017-01-17 Absolute Software Corporation Method for determining identification of an electronic device
US7693082B2 (en) * 2005-04-12 2010-04-06 Azimuth Systems, Inc. Latency measurement apparatus and method
CN1878164A (zh) * 2005-06-08 2006-12-13 华为技术有限公司 E.164号码域名存储和查询方法
CN100395996C (zh) * 2005-06-23 2008-06-18 华为技术有限公司 一种网络管理系统的信息同步方法
US7743028B1 (en) * 2005-07-13 2010-06-22 Symantec Corporation Incremental backup of partial volumes
US8819048B1 (en) * 2005-10-24 2014-08-26 Emc Corporation Virtual repository management to provide retention management services
US8015222B2 (en) 2005-10-24 2011-09-06 Emc Corporation Virtual repository management
US20070100783A1 (en) * 2005-10-29 2007-05-03 International Business Machines Corporation Method, system, and program for determining discrepancies between database management systems
US20070106729A1 (en) * 2005-11-04 2007-05-10 Research In Motion Limited Method and system for updating message threads
US8799882B2 (en) * 2005-12-07 2014-08-05 Microsoft Corporation Compiler support for optimizing decomposed software transactional memory operations
US7747565B2 (en) 2005-12-07 2010-06-29 Microsoft Corporation Garbage collector support for transactional memory
EP1974522B1 (fr) * 2005-12-27 2012-10-17 France Telecom Serveur, client et procédé pour gérer des requetes DNSSEC
US20070192374A1 (en) * 2006-02-16 2007-08-16 Emc Corporation Virtual repository management to provide functionality
US8990153B2 (en) * 2006-02-07 2015-03-24 Dot Hill Systems Corporation Pull data replication model
US20070208564A1 (en) * 2006-03-06 2007-09-06 Available For Licensing Telephone based search system
US7761293B2 (en) * 2006-03-06 2010-07-20 Tran Bao Q Spoken mobile engine
US20070226264A1 (en) * 2006-03-22 2007-09-27 Gang Luo System and method for real-time materialized view maintenance
US7783850B2 (en) * 2006-03-28 2010-08-24 Dot Hill Systems Corporation Method and apparatus for master volume access during volume copy
KR100728983B1 (ko) * 2006-04-14 2007-06-15 주식회사 하이닉스반도체 상변환 기억 소자 및 그의 제조방법
KR100728982B1 (ko) * 2006-04-14 2007-06-15 주식회사 하이닉스반도체 상변환 기억 소자 및 그의 제조방법
US7636829B2 (en) * 2006-05-02 2009-12-22 Intel Corporation System and method for allocating and deallocating memory within transactional code
TW200743000A (en) * 2006-05-11 2007-11-16 Ming-Ta Hsu Report retrieval and presentation methods and systems
US8606926B2 (en) * 2006-06-14 2013-12-10 Opendns, Inc. Recursive DNS nameserver
US8713188B2 (en) * 2007-12-13 2014-04-29 Opendns, Inc. Per-request control of DNS behavior
US7575163B2 (en) 2006-07-18 2009-08-18 At&T Intellectual Property I, L.P. Interactive management of storefront purchases
US8400947B2 (en) * 2006-07-20 2013-03-19 Tekelec, Inc. Methods, systems, and computer program products for specifying a particular ENUM service type in a communications network that utilizes a plurality of different ENUM service types
US20080034053A1 (en) * 2006-08-04 2008-02-07 Apple Computer, Inc. Mail Server Clustering
US20080052270A1 (en) * 2006-08-23 2008-02-28 Telefonaktiebolaget Lm Ericsson (Publ) Hash table structure and search method
US7921075B2 (en) * 2006-09-29 2011-04-05 International Business Machines Corporation Generic sequencing service for business integration
US9274857B2 (en) * 2006-10-13 2016-03-01 International Business Machines Corporation Method and system for detecting work completion in loosely coupled components
US9514201B2 (en) * 2006-10-13 2016-12-06 International Business Machines Corporation Method and system for non-intrusive event sequencing
US7680956B2 (en) * 2006-10-24 2010-03-16 Cisco Technology, Inc. Communicating additional information in a DNS update response by requesting deletion of a specific record
US9824107B2 (en) * 2006-10-25 2017-11-21 Entit Software Llc Tracking changing state data to assist in computer network security
KR100898995B1 (ko) * 2006-10-25 2009-05-21 노키아 코포레이션 원격 전자 거래
US7593973B2 (en) * 2006-11-15 2009-09-22 Dot Hill Systems Corp. Method and apparatus for transferring snapshot data
US20080254436A1 (en) * 2006-11-16 2008-10-16 Morgia Michael A Selection Of A Consensus From A Plurality Of Ideas
US8688749B1 (en) 2011-03-31 2014-04-01 Palantir Technologies, Inc. Cross-ontology multi-master replication
US8515912B2 (en) 2010-07-15 2013-08-20 Palantir Technologies, Inc. Sharing and deconflicting data changes in a multimaster database system
US8181187B2 (en) * 2006-12-01 2012-05-15 Portico Systems Gateways having localized in-memory databases and business logic execution
US8615635B2 (en) * 2007-01-05 2013-12-24 Sony Corporation Database management methodology
US7831565B2 (en) * 2007-01-18 2010-11-09 Dot Hill Systems Corporation Deletion of rollback snapshot partition
US8751467B2 (en) * 2007-01-18 2014-06-10 Dot Hill Systems Corporation Method and apparatus for quickly accessing backing store metadata
DE102007008293B4 (de) * 2007-02-16 2010-02-25 Continental Automotive Gmbh Verfahren und Vorrichtung zum gesicherten Speichern und zum gesicherten Lesen von Nutzdaten
US9690790B2 (en) 2007-03-05 2017-06-27 Dell Software Inc. Method and apparatus for efficiently merging, storing and retrieving incremental data
JP2008226167A (ja) * 2007-03-15 2008-09-25 Toshiba Corp データ配布システム及びデータ配布プログラム
US7975115B2 (en) * 2007-04-11 2011-07-05 Dot Hill Systems Corporation Method and apparatus for separating snapshot preserved and write data
US7716183B2 (en) * 2007-04-11 2010-05-11 Dot Hill Systems Corporation Snapshot preserved data cloning
US8768898B1 (en) * 2007-04-26 2014-07-01 Netapp, Inc. Performing direct data manipulation on a storage device
US20090182718A1 (en) * 2007-05-08 2009-07-16 Digital River, Inc. Remote Segmentation System and Method Applied To A Segmentation Data Mart
US8856094B2 (en) * 2007-05-08 2014-10-07 Digital River, Inc. Remote segmentation system and method
US8001345B2 (en) * 2007-05-10 2011-08-16 Dot Hill Systems Corporation Automatic triggering of backing store re-initialization
US7783603B2 (en) * 2007-05-10 2010-08-24 Dot Hill Systems Corporation Backing store re-initialization method and apparatus
US8688920B2 (en) 2007-05-14 2014-04-01 International Business Machines Corporation Computing system with guest code support of transactional memory
US8117403B2 (en) * 2007-05-14 2012-02-14 International Business Machines Corporation Transactional memory system which employs thread assists using address history tables
US9009452B2 (en) 2007-05-14 2015-04-14 International Business Machines Corporation Computing system with transactional memory using millicode assists
US8095741B2 (en) * 2007-05-14 2012-01-10 International Business Machines Corporation Transactional memory computing system with support for chained transactions
US8095750B2 (en) * 2007-05-14 2012-01-10 International Business Machines Corporation Transactional memory system with fast processing of common conflicts
US8175099B2 (en) * 2007-05-14 2012-05-08 Microsoft Corporation Embedded system development platform
US8321637B2 (en) * 2007-05-14 2012-11-27 International Business Machines Corporation Computing system with optimized support for transactional memory
US7882337B2 (en) * 2007-05-19 2011-02-01 International Business Machines Corporation Method and system for efficient tentative tracing of software in multiprocessors
US8204858B2 (en) 2007-06-25 2012-06-19 Dot Hill Systems Corporation Snapshot reset method and apparatus
US8140961B2 (en) * 2007-11-21 2012-03-20 Hewlett-Packard Development Company, L.P. Automated re-ordering of columns for alignment trap reduction
US11347771B2 (en) * 2007-11-28 2022-05-31 International Business Machines Corporation Content engine asynchronous upgrade framework
US8412700B2 (en) 2008-01-11 2013-04-02 International Business Machines Corporation Database query optimization using index carryover to subset an index
US7912867B2 (en) * 2008-02-25 2011-03-22 United Parcel Services Of America, Inc. Systems and methods of profiling data for integration
US8015191B2 (en) * 2008-03-27 2011-09-06 International Business Machines Corporation Implementing dynamic processor allocation based upon data density
US8170988B2 (en) * 2008-04-17 2012-05-01 The Boeing Company System and method for synchronizing databases
US8768349B1 (en) * 2008-04-24 2014-07-01 Sprint Communications Company L.P. Real-time subscriber profile consolidation system
US9094140B2 (en) * 2008-04-28 2015-07-28 Time Warner Cable Enterprises Llc Methods and apparatus for audience research in a content-based network
DE102008022415A1 (de) * 2008-05-06 2009-11-12 TÜV Rheinland Industrie Service GmbH Absinkverhinderungsvorrichtung
US8140520B2 (en) * 2008-05-15 2012-03-20 International Business Machines Corporation Embedding densities in a data structure
US8275761B2 (en) * 2008-05-15 2012-09-25 International Business Machines Corporation Determining a density of a key value referenced in a database query over a range of rows
EP2134122A1 (en) * 2008-06-13 2009-12-16 Hewlett-Packard Development Company, L.P. Controlling access to a communication network using a local device database and a shared device database
US8312033B1 (en) 2008-06-26 2012-11-13 Experian Marketing Solutions, Inc. Systems and methods for providing an integrated identifier
CN101309177B (zh) * 2008-07-11 2012-01-11 中国移动通信集团云南有限公司 一种网络资源数据管理方法及系统
US9418005B2 (en) 2008-07-15 2016-08-16 International Business Machines Corporation Managing garbage collection in a data processing system
CN101639950B (zh) * 2008-07-29 2011-07-13 中兴通讯股份有限公司 一种车道收费系统中的数据同步方法及装置
US8751441B2 (en) * 2008-07-31 2014-06-10 Sybase, Inc. System, method, and computer program product for determining SQL replication process
US8239417B2 (en) * 2008-08-07 2012-08-07 Armanta, Inc. System, method, and computer program product for accessing and manipulating remote datasets
US8768933B2 (en) * 2008-08-08 2014-07-01 Kabushiki Kaisha Toshiba System and method for type-ahead address lookup employing historically weighted address placement
CN101727383B (zh) * 2008-10-16 2012-07-04 上海市医疗保险信息中心 数据库的仿真测试方法和系统
US9292612B2 (en) 2009-04-22 2016-03-22 Verisign, Inc. Internet profile service
US8676989B2 (en) 2009-04-23 2014-03-18 Opendns, Inc. Robust domain name resolution
US8527945B2 (en) 2009-05-07 2013-09-03 Verisign, Inc. Method and system for integrating multiple scripts
US8037076B2 (en) * 2009-05-11 2011-10-11 Red Hat, Inc. Federated indexing from hashed primary key slices
US8510263B2 (en) * 2009-06-15 2013-08-13 Verisign, Inc. Method and system for auditing transaction data from database operations
US8739125B2 (en) * 2009-06-16 2014-05-27 Red Hat, Inc. Automated and unattended process for testing software applications
US20100333071A1 (en) * 2009-06-30 2010-12-30 International Business Machines Corporation Time Based Context Sampling of Trace Data with Support for Multiple Virtual Machines
US8977705B2 (en) * 2009-07-27 2015-03-10 Verisign, Inc. Method and system for data logging and analysis
US8874694B2 (en) * 2009-08-18 2014-10-28 Facebook, Inc. Adaptive packaging of network resources
US8856344B2 (en) 2009-08-18 2014-10-07 Verisign, Inc. Method and system for intelligent many-to-many service routing over EPP
US8327019B2 (en) 2009-08-18 2012-12-04 Verisign, Inc. Method and system for intelligent routing of requests over EPP
US20110044320A1 (en) * 2009-08-21 2011-02-24 Avaya Inc. Mechanism for fast evaluation of policies in work assignment
US8175098B2 (en) 2009-08-27 2012-05-08 Verisign, Inc. Method for optimizing a route cache
US8566524B2 (en) * 2009-08-31 2013-10-22 International Business Machines Corporation Transactional memory system with efficient cache support
US9569753B2 (en) 2009-10-30 2017-02-14 Verisign, Inc. Hierarchical publish/subscribe system performed by multiple central relays
US9047589B2 (en) 2009-10-30 2015-06-02 Verisign, Inc. Hierarchical publish and subscribe system
US9235829B2 (en) 2009-10-30 2016-01-12 Verisign, Inc. Hierarchical publish/subscribe system
US9269080B2 (en) 2009-10-30 2016-02-23 Verisign, Inc. Hierarchical publish/subscribe system
US8982882B2 (en) 2009-11-09 2015-03-17 Verisign, Inc. Method and system for application level load balancing in a publish/subscribe message architecture
US9762405B2 (en) 2009-10-30 2017-09-12 Verisign, Inc. Hierarchical publish/subscribe system
CN102096676B (zh) * 2009-12-11 2014-04-09 中国移动通信集团公司 数据更新及查询控制方法及系统
US20110178984A1 (en) * 2010-01-18 2011-07-21 Microsoft Corporation Replication protocol for database systems
US8825601B2 (en) * 2010-02-01 2014-09-02 Microsoft Corporation Logical data backup and rollback using incremental capture in a distributed database
US9176783B2 (en) 2010-05-24 2015-11-03 International Business Machines Corporation Idle transitions sampling with execution context
US8843684B2 (en) 2010-06-11 2014-09-23 International Business Machines Corporation Performing call stack sampling by setting affinity of target thread to a current process to prevent target thread migration
US8799872B2 (en) 2010-06-27 2014-08-05 International Business Machines Corporation Sampling with sample pacing
FR2964213B1 (fr) * 2010-09-01 2013-04-26 Evidian Annuaire d'identite et procede de mise a jour d'un annuaire d'identite
US8489724B2 (en) * 2010-09-14 2013-07-16 Cdnetworks Co., Ltd. CNAME-based round-trip time measurement in a content delivery network
US20120089646A1 (en) * 2010-10-08 2012-04-12 Jain Rohit N Processing change data
US8332433B2 (en) 2010-10-18 2012-12-11 Verisign, Inc. Database synchronization and validation
US8799904B2 (en) 2011-01-21 2014-08-05 International Business Machines Corporation Scalable system call stack sampling
JP5652281B2 (ja) * 2011-03-18 2015-01-14 富士通株式会社 業務処理サーバ、業務処理方法及び業務処理プログラム
RU2480819C2 (ru) * 2011-06-28 2013-04-27 Закрытое акционерное общество "Лаборатория Касперского" Способ оптимизации работы со связными списками
US8549579B2 (en) * 2011-07-06 2013-10-01 International Business Machines Corporation Dynamic data-protection policies within a request-reply message queuing environment
US9087071B2 (en) * 2011-08-03 2015-07-21 Amazon Technologies, Inc. Gathering transaction data associated with locally stored data files
US8782352B2 (en) * 2011-09-29 2014-07-15 Oracle International Corporation System and method for supporting a self-tuning locking mechanism in a transactional middleware machine environment
US8738516B1 (en) 2011-10-13 2014-05-27 Consumerinfo.Com, Inc. Debt services candidate locator
IL216056B (en) * 2011-10-31 2018-04-30 Verint Systems Ltd A system and method for integrating databases
US9679009B2 (en) * 2011-11-17 2017-06-13 Sap Se Component independent process integration message search
EP2780796B1 (en) 2011-11-18 2019-01-02 Dell Software Inc. Method of and system for merging, storing and retrieving incremental backup data
US8782004B2 (en) 2012-01-23 2014-07-15 Palantir Technologies, Inc. Cross-ACL multi-master replication
KR101375794B1 (ko) 2012-01-27 2014-03-18 네이버비즈니스플랫폼 주식회사 데이터베이스의 성능을 향상하기 위한 방법 및 장치
JP2013182588A (ja) * 2012-03-05 2013-09-12 Oki Electric Ind Co Ltd バックアップシステムにおけるバックアップデータの同期方法
US9065855B2 (en) * 2012-06-29 2015-06-23 Verisign, Inc. Systems and methods for automatically providing Whois service to top level domains
US9244846B2 (en) 2012-07-06 2016-01-26 International Business Machines Corporation Ensuring causality of transactional storage accesses interacting with non-transactional storage accesses
US9369395B2 (en) 2012-08-31 2016-06-14 At&T Intellectual Property I, L.P. Methods and apparatus to negotiate flow control for a communication session
US20140101150A1 (en) * 2012-10-05 2014-04-10 Axis Semiconductor, Inc. Efficient high performance scalable pipelined searching method using variable stride multibit tries
US9081975B2 (en) 2012-10-22 2015-07-14 Palantir Technologies, Inc. Sharing information between nexuses that use different classification schemes for information access control
US9501761B2 (en) 2012-11-05 2016-11-22 Palantir Technologies, Inc. System and method for sharing investigation results
US9654541B1 (en) 2012-11-12 2017-05-16 Consumerinfo.Com, Inc. Aggregating user web browsing data
US9613165B2 (en) 2012-11-13 2017-04-04 Oracle International Corporation Autocomplete searching with security filtering and ranking
US9916621B1 (en) 2012-11-30 2018-03-13 Consumerinfo.Com, Inc. Presentation of credit score factors
CN103929763A (zh) * 2013-01-11 2014-07-16 阿尔卡特朗讯 一种用于比较和重构地理冗余的数据库的方法
US9406085B1 (en) 2013-03-14 2016-08-02 Consumerinfo.Com, Inc. System and methods for credit dispute processing, resolution, and reporting
US10102570B1 (en) 2013-03-14 2018-10-16 Consumerinfo.Com, Inc. Account vulnerability alerts
WO2014195804A2 (en) * 2013-06-04 2014-12-11 Marvell World Trade Ltd. Internal search engine architecture
US8886601B1 (en) 2013-06-20 2014-11-11 Palantir Technologies, Inc. System and method for incrementally replicating investigative analysis data
WO2015026971A2 (en) * 2013-08-20 2015-02-26 Shanklin Steven Dale Application trust-listing security service
GB2517932B (en) * 2013-09-04 2021-05-05 1Spatial Group Ltd Modification and validation of spatial data
US9922043B1 (en) * 2013-10-28 2018-03-20 Pivotal Software, Inc. Data management platform
US9569070B1 (en) 2013-11-11 2017-02-14 Palantir Technologies, Inc. Assisting in deconflicting concurrency conflicts
US9477737B1 (en) * 2013-11-20 2016-10-25 Consumerinfo.Com, Inc. Systems and user interfaces for dynamic access of multiple remote databases and synchronization of data based on user rules
US10095800B1 (en) 2013-12-16 2018-10-09 Amazon Technologies, Inc. Multi-tenant data store management
US9009827B1 (en) 2014-02-20 2015-04-14 Palantir Technologies Inc. Security sharing system
US9405655B2 (en) * 2014-03-19 2016-08-02 Dell Products, Lp System and method for running a validation process for an information handling system during a factory process
US9561469B2 (en) 2014-03-24 2017-02-07 Johnson Matthey Public Limited Company Catalyst for treating exhaust gas
US9971987B1 (en) 2014-03-25 2018-05-15 Amazon Technologies, Inc. Out of order data management
US9910883B2 (en) 2014-04-07 2018-03-06 International Business Machines Corporation Enhanced batch updates on records and related records system and method
US20170147408A1 (en) * 2014-04-22 2017-05-25 Hitachi, Ltd. Common resource updating apparatus and common resource updating method
CN106471486B (zh) 2014-04-30 2019-05-17 甲骨文国际公司 用于在事务中间件机器环境中支持自适应自调整锁定机制的系统和方法
US9778949B2 (en) * 2014-05-05 2017-10-03 Google Inc. Thread waiting in a multithreaded processor architecture
US9021260B1 (en) 2014-07-03 2015-04-28 Palantir Technologies Inc. Malware data item analysis
US10572496B1 (en) 2014-07-03 2020-02-25 Palantir Technologies Inc. Distributed workflow system and database with access controls for city resiliency
US9785773B2 (en) 2014-07-03 2017-10-10 Palantir Technologies Inc. Malware data item analysis
US9699023B2 (en) * 2014-07-18 2017-07-04 Fujitsu Limited Initializing a network interface based on stored data
US10204134B2 (en) 2014-08-14 2019-02-12 International Business Machines Corporation Automatic detection of problems in a large-scale multi-record update system and method
US11176106B2 (en) * 2014-11-19 2021-11-16 Unisys Corporation Dynamic modification of database schema
CN104572881A (zh) * 2014-12-23 2015-04-29 国家电网公司 基于多任务并发的配网图模导入方法
US9734016B2 (en) * 2015-02-24 2017-08-15 Red Hat Israel, Ltd. Secure live virtual machine guest based snapshot recovery
US20160378824A1 (en) * 2015-06-24 2016-12-29 Futurewei Technologies, Inc. Systems and Methods for Parallelizing Hash-based Operators in SMP Databases
US20160378812A1 (en) * 2015-06-25 2016-12-29 International Business Machines Corporation Reduction of bind breaks
CN104965923B (zh) * 2015-07-08 2018-09-28 安徽兆尹信息科技股份有限公司 一种用于生成现金流量表的云计算应用平台构建方法
WO2017063048A1 (en) * 2015-10-15 2017-04-20 Big Ip Pty Ltd A system, method, computer program and data signal for the provision of a database of information for lead generating purposes
AU2016340043A1 (en) * 2015-10-15 2018-05-24 Big Ip Pty Ltd A system, method, computer program and data signal for conducting an electronic search of a database
IL242218B (en) 2015-10-22 2020-11-30 Verint Systems Ltd A system and method for maintaining a dynamic dictionary
IL242219B (en) * 2015-10-22 2020-11-30 Verint Systems Ltd System and method for keyword searching using both static and dynamic dictionaries
US10530758B2 (en) * 2015-12-18 2020-01-07 F5 Networks, Inc. Methods of collaborative hardware and software DNS acceleration and DDOS protection
US20170177656A1 (en) * 2015-12-18 2017-06-22 Wal-Mart Stores, Inc. Systems and methods for resolving data discrepancy
CN105574407B (zh) * 2015-12-28 2018-09-25 无锡天脉聚源传媒科技有限公司 一种共享的处理方法和装置
US10621198B1 (en) 2015-12-30 2020-04-14 Palantir Technologies Inc. System and method for secure database replication
RU2623882C1 (ru) * 2016-02-18 2017-06-29 Акционерное общество "Лаборатория Касперского" Способ поиска входной строки в дереве поиска с индексацией узлов дерева поиска
US10353888B1 (en) * 2016-03-03 2019-07-16 Amdocs Development Limited Event processing system, method, and computer program
US10642780B2 (en) 2016-03-07 2020-05-05 Mellanox Technologies, Ltd. Atomic access to object pool over RDMA transport network
WO2017191495A1 (en) * 2016-05-05 2017-11-09 Askarov Bauyrzhan New domain name system and usage thereof
US10089339B2 (en) * 2016-07-18 2018-10-02 Arm Limited Datagram reassembly
CN106250487B (zh) * 2016-07-29 2020-07-03 新华三技术有限公司 一种数据库并发控制方法及装置
US11005977B2 (en) 2016-08-31 2021-05-11 Viavi Solutions Inc. Packet filtering using binary search trees
US10382562B2 (en) * 2016-11-04 2019-08-13 A10 Networks, Inc. Verification of server certificates using hash codes
TWI643146B (zh) * 2016-12-22 2018-12-01 經貿聯網科技股份有限公司 動態更新金融資料的方法及其處理系統以及動態調整電源配置的方法及其處理系統
US10262053B2 (en) 2016-12-22 2019-04-16 Palantir Technologies Inc. Systems and methods for data replication synchronization
CN106790544A (zh) * 2016-12-22 2017-05-31 郑州云海信息技术有限公司 减少远程客户端与数据中心间通信数据量的方法及装置
CN111107175B (zh) * 2017-03-31 2023-08-08 贵州白山云科技股份有限公司 一种构建dns应答报文的方法及装置
GB2561176A (en) * 2017-04-03 2018-10-10 Edinburgh Napier Univ System and method for management of confidential data
US10068002B1 (en) 2017-04-25 2018-09-04 Palantir Technologies Inc. Systems and methods for adaptive data replication
US10430062B2 (en) 2017-05-30 2019-10-01 Palantir Technologies Inc. Systems and methods for geo-fenced dynamic dissemination
US11030494B1 (en) 2017-06-15 2021-06-08 Palantir Technologies Inc. Systems and methods for managing data spills
US10552367B2 (en) 2017-07-26 2020-02-04 Mellanox Technologies, Ltd. Network data transactions using posted and non-posted operations
US10380196B2 (en) 2017-12-08 2019-08-13 Palantir Technologies Inc. Systems and methods for using linked documents
US10915542B1 (en) 2017-12-19 2021-02-09 Palantir Technologies Inc. Contextual modification of data sharing constraints in a distributed database system that uses a multi-master replication scheme
US10528556B1 (en) * 2017-12-31 2020-01-07 Allscripts Software, Llc Database methodology for searching encrypted data records
US20190213271A1 (en) * 2018-01-09 2019-07-11 Unisys Corporation Method and system for data exchange critical event notification
KR102034679B1 (ko) 2018-01-17 2019-10-23 (주)비아이매트릭스 그리드 인터페이스 기반 데이터 입출력 시스템
CN110083596A (zh) * 2018-05-16 2019-08-02 陈刚 一种数据历史跟踪和数据变化历史跟踪的方法
CN108876143A (zh) * 2018-06-13 2018-11-23 亳州市药通信息咨询有限公司 一种中药材价格指数系统
CN110798332B (zh) * 2018-08-03 2022-09-06 Emc Ip控股有限公司 用于搜索目录访问组的方法和系统
US10880313B2 (en) 2018-09-05 2020-12-29 Consumerinfo.Com, Inc. Database platform for realtime updating of user data from third party sources
US11238656B1 (en) 2019-02-22 2022-02-01 Consumerinfo.Com, Inc. System and method for an augmented reality experience via an artificial intelligence bot
CN111831639B (zh) * 2019-04-19 2024-01-30 北京车和家信息技术有限公司 一种全局唯一id生成方法及装置、车辆管理系统
US11303606B1 (en) 2019-06-03 2022-04-12 Amazon Technologies, Inc. Hashing name resolution requests according to an identified routing policy
JP7245954B2 (ja) * 2019-07-30 2023-03-24 ファルコンリー インコーポレイテッド 大量の時系列データの滑らか且つ解像度が扱いやすいビュー
US11941065B1 (en) 2019-09-13 2024-03-26 Experian Information Solutions, Inc. Single identifier platform for storing entity data
CN110990377B (zh) * 2019-11-21 2023-08-22 上海达梦数据库有限公司 一种数据装载方法、装置、服务器及存储介质
US11500849B2 (en) * 2019-12-02 2022-11-15 International Business Machines Corporation Universal streaming change data capture
US11269836B2 (en) 2019-12-17 2022-03-08 Cerner Innovation, Inc. System and method for generating multi-category searchable ternary tree data structure
CN111240762B (zh) * 2020-01-10 2021-11-23 珠海格力电器股份有限公司 线程管理方法、存储介质及电子设备
CN113966591B (zh) * 2020-02-24 2023-09-19 森斯通株式会社 利用虚拟代码的使用者设定信息认证方法、记录介质以及装置
WO2021172875A1 (ko) * 2020-02-24 2021-09-02 주식회사 센스톤 가상코드를 이용한 사용자 설정 정보 인증 방법, 프로그램 및 장치
WO2022173423A1 (en) * 2021-02-09 2022-08-18 Micro Focus Llc System for retrieval of large datasets in cloud environments
US11934377B2 (en) * 2021-02-25 2024-03-19 Microsoft Technology Licensing, Llc Consistency checking for distributed analytical database systems
US20220335049A1 (en) * 2021-04-14 2022-10-20 Google Llc Powering Scalable Data Warehousing with Robust Query Performance
CN113806342A (zh) * 2021-07-21 2021-12-17 厦门莲隐科技有限公司 一种提取以太坊区块链底层数据的系统
US20240045753A1 (en) * 2022-08-02 2024-02-08 Nxp B.V. Dynamic Configuration Of Reaction Policies In Virtualized Fault Management System

Family Cites Families (140)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4412285A (en) 1981-04-01 1983-10-25 Teradata Corporation Multiprocessor intercommunication system and method
US5010478A (en) * 1986-04-11 1991-04-23 Deran Roger L Entity-attribute value database system with inverse attribute for selectively relating two different entities
GB8704882D0 (en) * 1987-03-03 1987-04-08 Hewlett Packard Co Secure messaging systems
US4947366A (en) * 1987-10-02 1990-08-07 Advanced Micro Devices, Inc. Input/output controller incorporating address mapped input/output windows and read ahead/write behind capabilities
US5175849A (en) * 1988-07-28 1992-12-29 Amdahl Corporation Capturing data of a database system
US5089952A (en) * 1988-10-07 1992-02-18 International Business Machines Corporation Method for allowing weak searchers to access pointer-connected data structures without locking
US5161223A (en) * 1989-10-23 1992-11-03 International Business Machines Corporation Resumeable batch query for processing time consuming queries in an object oriented database management system
EP0447145B1 (en) 1990-03-12 2000-07-12 Hewlett-Packard Company User scheduled direct memory access using virtual addresses
CA2045705A1 (en) * 1990-06-29 1991-12-30 Richard Lee Sites In-register data manipulation in reduced instruction set processor
US5893117A (en) * 1990-08-17 1999-04-06 Texas Instruments Incorporated Time-stamped database transaction and version management system
US5287496A (en) * 1991-02-25 1994-02-15 International Business Machines Corporation Dynamic, finite versioning for concurrent transaction and query processing
US5369757A (en) * 1991-06-18 1994-11-29 Digital Equipment Corporation Recovery logging in the presence of snapshot files by ordering of buffer pool flushing
US6188428B1 (en) * 1992-02-11 2001-02-13 Mark Koz Transcoding video file server and methods for its use
US5749079A (en) * 1992-03-04 1998-05-05 Singapore Computer Systems Limited End user query facility including a query connectivity driver
US5260942A (en) * 1992-03-06 1993-11-09 International Business Machines Corporation Method and apparatus for batching the receipt of data packets
DE69324204T2 (de) * 1992-10-22 1999-12-23 Cabletron Systems Inc Aufsuchen von Adressen bei Paketübertragung mittels Hashing und eines inhaltsadressierten Speichers
US5684990A (en) * 1995-01-11 1997-11-04 Puma Technology, Inc. Synchronization of disparate databases
US5729735A (en) * 1995-02-08 1998-03-17 Meyering; Samuel C. Remote database file synchronizer
US5615337A (en) * 1995-04-06 1997-03-25 International Business Machines Corporation System and method for efficiently processing diverse result sets returned by a stored procedures
US5974409A (en) * 1995-08-23 1999-10-26 Microsoft Corporation System and method for locating information in an on-line network
US5758150A (en) * 1995-10-06 1998-05-26 Tele-Communications, Inc. System and method for database synchronization
US6047323A (en) * 1995-10-19 2000-04-04 Hewlett-Packard Company Creation and migration of distributed streams in clusters of networked computers
US5875443A (en) * 1996-01-30 1999-02-23 Sun Microsystems, Inc. Internet-based spelling checker dictionary system with automatic updating
US5852715A (en) * 1996-03-19 1998-12-22 Emc Corporation System for currently updating database by one host and reading the database by different host for the purpose of implementing decision support functions
US5765028A (en) * 1996-05-07 1998-06-09 Ncr Corporation Method and apparatus for providing neural intelligence to a mail query agent in an online analytical processing system
US5787452A (en) * 1996-05-21 1998-07-28 Sybase, Inc. Client/server database system with methods for multi-threaded data processing in a heterogeneous language environment
US6154777A (en) * 1996-07-01 2000-11-28 Sun Microsystems, Inc. System for context-dependent name resolution
US5995980A (en) * 1996-07-23 1999-11-30 Olson; Jack E. System and method for database update replication
US5926816A (en) * 1996-10-09 1999-07-20 Oracle Corporation Database Synchronizer
US6044381A (en) * 1997-09-11 2000-03-28 Puma Technology, Inc. Using distributed history files in synchronizing databases
US6330568B1 (en) * 1996-11-13 2001-12-11 Pumatech, Inc. Synchronization of databases
AU6183698A (en) * 1997-02-26 1998-09-18 Siebel Systems, Inc. Method of determining visibility to a remote database client of a plurality of database transactions having variable visibility strengths
US5937414A (en) * 1997-02-28 1999-08-10 Oracle Corporation Method and apparatus for providing database system replication in a mixed propagation environment
US6862602B2 (en) * 1997-03-07 2005-03-01 Apple Computer, Inc. System and method for rapidly identifying the existence and location of an item in a file
US5920886A (en) * 1997-03-14 1999-07-06 Music Semiconductor Corporation Accelerated hierarchical address filtering and translation using binary and ternary CAMs
KR19990001093A (ko) * 1997-06-12 1999-01-15 윤종용 교환기 시스템의 운영 프로그램 및 데이터베이스 인스톨 방법
US5924098A (en) * 1997-06-30 1999-07-13 Sun Microsystems, Inc. Method and apparatus for managing a linked-list data structure
US6098108A (en) * 1997-07-02 2000-08-01 Sitara Networks, Inc. Distributed directory for enhanced network communication
US6148070A (en) * 1997-07-02 2000-11-14 Ameritech Corporation Method, system, and database for providing a telecommunication service
US5924096A (en) 1997-10-15 1999-07-13 Novell, Inc. Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand
US6061678A (en) * 1997-10-31 2000-05-09 Oracle Corporation Approach for managing access to large objects in database systems using large object indexes
US6058389A (en) * 1997-10-31 2000-05-02 Oracle Corporation Apparatus and method for message queuing in a database system
US6029170A (en) * 1997-11-25 2000-02-22 International Business Machines Corporation Hybrid tree array data structure and method
US6044448A (en) * 1997-12-16 2000-03-28 S3 Incorporated Processor having multiple datapath instances
US6256256B1 (en) * 1998-01-30 2001-07-03 Silicon Aquarius, Inc. Dual port random access memories and systems using the same
US6304259B1 (en) * 1998-02-09 2001-10-16 International Business Machines Corporation Computer system, method and user interface components for abstracting and accessing a body of knowledge
US6304881B1 (en) * 1998-03-03 2001-10-16 Pumatech, Inc. Remote data access and synchronization
US6237019B1 (en) 1998-03-18 2001-05-22 International Business Machines Corporation Method and apparatus for performing a semaphore operation
US6185567B1 (en) * 1998-05-29 2001-02-06 The Trustees Of The University Of Pennsylvania Authenticated access to internet based research and data services
US6131122A (en) * 1998-06-01 2000-10-10 Nortel Networks Corporation Programmable internet automation
WO1999063441A1 (en) * 1998-06-05 1999-12-09 Mylex Corporation Snapshot backup strategy
US6434144B1 (en) * 1998-07-06 2002-08-13 Aleksey Romanov Multi-level table lookup
US6360220B1 (en) * 1998-08-04 2002-03-19 Microsoft Corporation Lock-free methods and systems for accessing and storing information in an indexed computer data structure having modifiable entries
US6092178A (en) * 1998-09-03 2000-07-18 Sun Microsystems, Inc. System for responding to a resource request
US6411966B1 (en) * 1998-09-21 2002-06-25 Microsoft Corporation Method and computer readable medium for DNS dynamic update to minimize client-server and incremental zone transfer traffic
US6243715B1 (en) * 1998-11-09 2001-06-05 Lucent Technologies Inc. Replicated database synchronization method whereby primary database is selected queries to secondary databases are referred to primary database, primary database is updated, then secondary databases are updated
JP2002534842A (ja) * 1998-12-23 2002-10-15 ノキア・ワイヤレス・ルーターズ・インコーポレーテッド アドホック・インターネットワーキングのための統一されたルーティング方式
US6516327B1 (en) * 1998-12-24 2003-02-04 International Business Machines Corporation System and method for synchronizing data in multiple databases
US6304924B1 (en) * 1999-02-02 2001-10-16 International Business Machines Corporation Two lock-free, constant-space, multiple-(impure)-reader, single-writer structures
US6553392B1 (en) * 1999-02-04 2003-04-22 Hewlett-Packard Development Company, L.P. System and method for purging database update image files after completion of associated transactions
FI106493B (fi) * 1999-02-09 2001-02-15 Nokia Mobile Phones Ltd Menetelmä ja järjestelmä pakettimuotoisen datan luotettavaksi siirtämiseksi
US6721334B1 (en) * 1999-02-18 2004-04-13 3Com Corporation Method and apparatus for packet aggregation in packet-based network
US6314469B1 (en) * 1999-02-26 2001-11-06 I-Dns.Net International Pte Ltd Multi-language domain name service
WO2000052594A2 (en) * 1999-03-03 2000-09-08 Ultradns, Inc. Scalable and efficient domain name resolution
US6484185B1 (en) * 1999-04-05 2002-11-19 Microsoft Corporation Atomic operations on data structures
US6745177B2 (en) * 1999-04-09 2004-06-01 Metro One Telecommunications, Inc. Method and system for retrieving data from multiple data sources using a search routing database
US6938057B2 (en) * 1999-05-21 2005-08-30 International Business Machines Corporation Method and apparatus for networked backup storage
US6529504B1 (en) * 1999-06-02 2003-03-04 Sprint Communications Company, L.P. Telecommunications service control point interface
US6449657B2 (en) * 1999-08-06 2002-09-10 Namezero.Com, Inc. Internet hosting system
WO2001011443A2 (en) * 1999-08-06 2001-02-15 Namezero.Com, Inc. Internet hosting system
US6785704B1 (en) * 1999-12-20 2004-08-31 Fastforward Networks Content distribution system for operation over an internetwork including content peering arrangements
US6792458B1 (en) * 1999-10-04 2004-09-14 Urchin Software Corporation System and method for monitoring and analyzing internet traffic
US6560614B1 (en) * 1999-11-12 2003-05-06 Xosoft Inc. Nonintrusive update of files
KR100751622B1 (ko) 1999-11-26 2007-08-22 네테카 인코포레이티드 네트워크 어드레스 서버, 도메인 명칭 분석 방법, 및 컴퓨터 판독 가능 기록 매체
US6980990B2 (en) * 1999-12-01 2005-12-27 Barry Fellman Internet domain name registration system
US6434681B1 (en) * 1999-12-02 2002-08-13 Emc Corporation Snapshot copy facility for a data storage system permitting continued host read/write access
US6625621B2 (en) * 2000-01-04 2003-09-23 Starfish Software, Inc. System and methods for a fast and scalable synchronization server
US6727918B1 (en) * 2000-02-18 2004-04-27 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US6789073B1 (en) * 2000-02-22 2004-09-07 Harvey Lunenfeld Client-server multitasking
JP2001236257A (ja) 2000-02-24 2001-08-31 Fujitsu Ltd 情報記憶装置及び加入者データのデータ更新方法並びに移動通信システム
US6615223B1 (en) * 2000-02-29 2003-09-02 Oracle International Corporation Method and system for data replication
US6643669B1 (en) * 2000-03-14 2003-11-04 Telefonaktiebolaget Lm Ericsson (Publ) Method for optimization of synchronization between a client's database and a server database
JP2001290689A (ja) 2000-04-07 2001-10-19 Hitachi Ltd 複数データベース間のレプリケーションのデータ検証方法
US6976090B2 (en) * 2000-04-20 2005-12-13 Actona Technologies Ltd. Differentiated content and application delivery via internet
US6725218B1 (en) * 2000-04-28 2004-04-20 Cisco Technology, Inc. Computerized database system and method
US7734815B2 (en) 2006-09-18 2010-06-08 Akamai Technologies, Inc. Global load balancing across mirrored data centers
US7165116B2 (en) * 2000-07-10 2007-01-16 Netli, Inc. Method for network discovery using name servers
US7725602B2 (en) 2000-07-19 2010-05-25 Akamai Technologies, Inc. Domain name resolution using a distributed DNS network
US20020029226A1 (en) 2000-09-05 2002-03-07 Gang Li Method for combining data with maps
FR2813986B1 (fr) * 2000-09-08 2002-11-29 Eric Vincenot Dispositif de sonorisation a guide d'onde acoustique
JP2002108836A (ja) * 2000-09-29 2002-04-12 Hitachi Ltd プロセッサシステム
US6785675B1 (en) * 2000-11-13 2004-08-31 Convey Development, Inc. Aggregation of resource requests from multiple individual requestors
US6636854B2 (en) * 2000-12-07 2003-10-21 International Business Machines Corporation Method and system for augmenting web-indexed search engine results with peer-to-peer search results
US6868414B2 (en) * 2001-01-03 2005-03-15 International Business Machines Corporation Technique for serializing data structure updates and retrievals without requiring searchers to use locks
US6728736B2 (en) * 2001-03-14 2004-04-27 Storage Technology Corporation System and method for synchronizing a data copy using an accumulation remote copy trio
US6691124B2 (en) * 2001-04-04 2004-02-10 Cypress Semiconductor Corp. Compact data structures for pipelined message forwarding lookups
GB2374951B (en) 2001-04-24 2005-06-15 Discreet Logic Inc Asynchronous database updates
US7171415B2 (en) * 2001-05-04 2007-01-30 Sun Microsystems, Inc. Distributed information discovery through searching selected registered information providers
US20030182447A1 (en) * 2001-05-31 2003-09-25 Schilling Frank T. Generic top-level domain re-routing system
US6744652B2 (en) * 2001-08-22 2004-06-01 Netlogic Microsystems, Inc. Concurrent searching of different tables within a content addressable memory
EP1461723A4 (en) 2001-11-01 2009-08-05 Verisign Inc METHOD AND SYSTEM FOR VALIDATING A REMOTE DATA BANK
US20030208511A1 (en) * 2002-05-02 2003-11-06 Earl Leroy D. Database replication system
US20050105513A1 (en) 2002-10-27 2005-05-19 Alan Sullivan Systems and methods for direction of communication traffic
US7310686B2 (en) 2002-10-27 2007-12-18 Paxfire, Inc. Apparatus and method for transparent selection of an Internet server based on geographic location of a user
US20050027882A1 (en) 2003-05-05 2005-02-03 Sullivan Alan T. Systems and methods for direction of communication traffic
US7769826B2 (en) 2003-06-26 2010-08-03 Nominum, Inc. Systems and methods of providing DNS services using separate answer and referral caches
US7761570B1 (en) 2003-06-26 2010-07-20 Nominum, Inc. Extensible domain name service
US7761678B1 (en) 2004-09-29 2010-07-20 Verisign, Inc. Method and apparatus for an improved file repository
US7685270B1 (en) 2005-03-31 2010-03-23 Amazon Technologies, Inc. Method and apparatus for measuring latency in web services
JP4884463B2 (ja) 2005-05-24 2012-02-29 パックスファイアー インコーポレイテッド 通信トラフィック誘導のための強化特性
US7546368B2 (en) 2005-06-01 2009-06-09 Neustar, Inc. Systems and methods for isolating local performance variation in website monitoring
US7477575B2 (en) 2005-09-23 2009-01-13 Verisign, Inc. Redundant timer system and method
EP1999622A2 (en) 2006-01-20 2008-12-10 Paxfire, Inc. Systems and methods for discerning and controlling communication traffic
US8606926B2 (en) 2006-06-14 2013-12-10 Opendns, Inc. Recursive DNS nameserver
US8713188B2 (en) 2007-12-13 2014-04-29 Opendns, Inc. Per-request control of DNS behavior
WO2008021514A2 (en) 2006-08-17 2008-02-21 Neustar, Inc. System and method for managing domain policy for interconnected communication networks
US20080059152A1 (en) 2006-08-17 2008-03-06 Neustar, Inc. System and method for handling jargon in communication systems
US8234379B2 (en) 2006-09-14 2012-07-31 Afilias Limited System and method for facilitating distribution of limited resources
US20080155254A1 (en) 2006-12-20 2008-06-26 Comodo Ca, Ltd. Method and system for installing a root certificate on a computer with a root update mechanism
US7694016B2 (en) 2007-02-07 2010-04-06 Nominum, Inc. Composite DNS zones
US7925747B2 (en) 2007-10-18 2011-04-12 Neustar, Inc. System and method for sharing web performance monitoring data
US20090235359A1 (en) 2008-03-12 2009-09-17 Comodo Ca Limited Method and system for performing security and vulnerability scans on devices behind a network security device
US7925782B2 (en) 2008-06-30 2011-04-12 Amazon Technologies, Inc. Request routing using network computing components
US7991737B2 (en) * 2008-09-04 2011-08-02 Microsoft Corporation Synchronization of records of a table using bookmarks
US20090282038A1 (en) 2008-09-23 2009-11-12 Michael Subotin Probabilistic Association Based Method and System for Determining Topical Relatedness of Domain Names
US9172713B2 (en) 2008-09-24 2015-10-27 Neustar, Inc. Secure domain name system
US7930393B1 (en) 2008-09-29 2011-04-19 Amazon Technologies, Inc. Monitoring domain allocation performance
US9292612B2 (en) 2009-04-22 2016-03-22 Verisign, Inc. Internet profile service
US8527658B2 (en) 2009-04-07 2013-09-03 Verisign, Inc Domain traffic ranking
US8676989B2 (en) 2009-04-23 2014-03-18 Opendns, Inc. Robust domain name resolution
US8527945B2 (en) 2009-05-07 2013-09-03 Verisign, Inc. Method and system for integrating multiple scripts
US8510263B2 (en) 2009-06-15 2013-08-13 Verisign, Inc. Method and system for auditing transaction data from database operations
US8977705B2 (en) 2009-07-27 2015-03-10 Verisign, Inc. Method and system for data logging and analysis
US8380870B2 (en) 2009-08-05 2013-02-19 Verisign, Inc. Method and system for filtering of network traffic
US20110035497A1 (en) 2009-08-05 2011-02-10 Dynamic Network Services, Inc. System and method for providing global server load balancing
US8327019B2 (en) 2009-08-18 2012-12-04 Verisign, Inc. Method and system for intelligent routing of requests over EPP
US8175098B2 (en) 2009-08-27 2012-05-08 Verisign, Inc. Method for optimizing a route cache
US8982882B2 (en) 2009-11-09 2015-03-17 Verisign, Inc. Method and system for application level load balancing in a publish/subscribe message architecture
US9047589B2 (en) 2009-10-30 2015-06-02 Verisign, Inc. Hierarchical publish and subscribe system
US9286369B2 (en) 2009-12-30 2016-03-15 Symantec Corporation Data replication across enterprise boundaries

Also Published As

Publication number Publication date
US20070100808A1 (en) 2007-05-03
ZA200404266B (en) 2005-10-26
NZ532773A (en) 2005-11-25
AU2002356886A1 (en) 2003-05-12
EA200400618A1 (ru) 2004-10-28
US20030084039A1 (en) 2003-05-01
CN1610906A (zh) 2005-04-27
EP2503476A1 (en) 2012-09-26
EA200400614A1 (ru) 2004-10-28
WO2003038596A1 (en) 2003-05-08
WO2003038653A1 (en) 2003-05-08
BR0213807A (pt) 2004-12-07
EP1449049A4 (en) 2009-10-28
MXPA04004201A (es) 2005-01-25
CA2466117C (en) 2013-12-31
CN100557595C (zh) 2009-11-04
MXPA04004202A (es) 2005-05-16
EP2477126A3 (en) 2013-09-11
US20090106211A1 (en) 2009-04-23
BR0213862A (pt) 2004-12-21
CA2472014A1 (en) 2003-05-08
IL161723A (en) 2010-06-30
NO20042258L (no) 2004-08-02
BR0213863A (pt) 2004-12-21
EP1451714A1 (en) 2004-09-01
CA2466107A1 (en) 2003-05-08
NO20042260L (no) 2004-08-02
KR20040053254A (ko) 2004-06-23
EA200400612A1 (ru) 2004-12-30
WO2003038654A1 (en) 2003-05-08
JP4420325B2 (ja) 2010-02-24
EP2477126A2 (en) 2012-07-18
EP2562661A2 (en) 2013-02-27
CA2472014C (en) 2012-07-10
NZ533166A (en) 2005-12-23
EP2495671A1 (en) 2012-09-05
KR20040053268A (ko) 2004-06-23
EA006223B1 (ru) 2005-10-27
AU2002356885B2 (en) 2008-10-02
US20120102016A1 (en) 2012-04-26
KR100977161B1 (ko) 2010-08-20
US8630988B2 (en) 2014-01-14
ZA200404268B (en) 2005-10-26
AU2002350106B2 (en) 2008-09-11
US20140108452A1 (en) 2014-04-17
EP1451714A4 (en) 2009-08-05
US7047258B2 (en) 2006-05-16
EP1449049A2 (en) 2004-08-25
JP2005508050A (ja) 2005-03-24
JP4420324B2 (ja) 2010-02-24
US8171019B2 (en) 2012-05-01
EA006038B1 (ru) 2005-08-25
EP1461723A1 (en) 2004-09-29
EA005646B1 (ru) 2005-04-28
CN1610877A (zh) 2005-04-27
EP1451728A4 (en) 2009-08-05
ZA200403597B (en) 2005-10-26
US20030084074A1 (en) 2003-05-01
HK1075308A1 (en) 2005-12-09
US20030084075A1 (en) 2003-05-01
IL161721A (en) 2011-08-31
US6681228B2 (en) 2004-01-20
CA2466117A1 (en) 2003-05-08
IL161721A0 (en) 2005-11-20
US20030084038A1 (en) 2003-05-01
BR0213864A (pt) 2004-12-21
NO20042259L (no) 2004-08-02
EP2562661A3 (en) 2016-05-25
EP1449062A4 (en) 2009-08-05
WO2003038565A3 (en) 2004-02-26
NO20042261L (no) 2004-08-02
IL161712A0 (en) 2004-09-27
KR100941350B1 (ko) 2010-02-11
EA200400613A1 (ru) 2004-10-28
CN1610902A (zh) 2005-04-27
CA2466110C (en) 2011-04-19
CA2466107C (en) 2013-01-08
KR100970122B1 (ko) 2010-07-13
MXPA04004169A (es) 2004-07-08
NZ532771A (en) 2005-12-23
WO2003038565A2 (en) 2003-05-08
IL161712A (en) 2011-02-28
US8682856B2 (en) 2014-03-25
US7167877B2 (en) 2007-01-23
EP1449062A1 (en) 2004-08-25
EP1461723A4 (en) 2009-08-05
ZA200404267B (en) 2005-08-31
US20040254926A1 (en) 2004-12-16
IL161723A0 (en) 2005-11-20
US20030084057A1 (en) 2003-05-01
CN1610902B (zh) 2010-05-05
AU2002350104B2 (en) 2008-12-04
EP1451728A1 (en) 2004-09-01
EP1449062B1 (en) 2018-05-16
JP4897196B2 (ja) 2012-03-14
EP2450812A1 (en) 2012-05-09
KR20040053255A (ko) 2004-06-23
IL161722A (en) 2009-07-20
EP1451714B1 (en) 2018-05-02
CA2466110A1 (en) 2003-05-08
KR100953137B1 (ko) 2010-04-16
NZ532772A (en) 2005-12-23
JP2005508051A (ja) 2005-03-24
JP2005510782A (ja) 2005-04-21
NO331574B1 (no) 2012-01-30
IL161722A0 (en) 2005-11-20
CN1610906B (zh) 2012-05-09
WO2003038683A1 (en) 2003-05-08
US7203682B2 (en) 2007-04-10
EA006045B1 (ru) 2005-08-25
JP4399552B2 (ja) 2010-01-20
AU2002356884B2 (en) 2008-12-04
KR20040053266A (ko) 2004-06-23
CN1610901A (zh) 2005-04-27
CN1610877B (zh) 2010-06-02
JP2005508042A (ja) 2005-03-24

Similar Documents

Publication Publication Date Title
MXPA04004203A (es) Metodo y sistema para validar una base de datos remota.
AU2002356885A1 (en) Method and system for updating a remote database
AU2002350104A1 (en) Method and system for validating remote database
US7490083B2 (en) Parallel apply processing in data replication with preservation of transaction integrity and source ordering of dependent updates
UA79943C2 (uk) Спосіб і система для оновлення віддаленої бази даних (варіанти)
UA80540C2 (uk) Спосіб, система, пристрій та носій інформації для перевірки достовірності оновлення для запису у віддаленій базі даних, спосіб перевірки достовірності віддаленої бази даних і достовірності передачі даних через мережу

Legal Events

Date Code Title Description
FG Grant or registration