KR100953137B1 - 원격 데이터베이스를 업데이트하기 위한 방법 및 시스템 - Google Patents
원격 데이터베이스를 업데이트하기 위한 방법 및 시스템 Download PDFInfo
- Publication number
- KR100953137B1 KR100953137B1 KR1020047006649A KR20047006649A KR100953137B1 KR 100953137 B1 KR100953137 B1 KR 100953137B1 KR 1020047006649 A KR1020047006649 A KR 1020047006649A KR 20047006649 A KR20047006649 A KR 20047006649A KR 100953137 B1 KR100953137 B1 KR 100953137B1
- Authority
- KR
- South Korea
- Prior art keywords
- update
- periodic
- identifier
- start time
- initialization
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation 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/505—Allocation 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/40—Data acquisition and logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/953—Organization of data
- Y10S707/959—Network
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/964—Database arrangement
- Y10S707/966—Distributed
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99938—Concurrency, e.g. lock management in shared database
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Security & Cryptography (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
네트워크 기반 위에 원격 데이터베이스(210)의 업데이트를 위한 방법과 시스템이다. 센드파일(300-F)로 불리우는 다수의 주기적 업데이트가 점증적 변화의 기반 위에 로컬 업데이트(200)에 생성된다. 주기적 업데이트 각각은 적어도 하나의 트랜스액션을 포함한다. 초기화 센드파일이라고 불리우는 초기화 업데이트는 스타트 타임에 로컬 데이터베이스의 버전을 포함하는 것으로 생성된다. 덧붙여 스타트 타임 이전에 생성된 최종 주기적 업데이트와 연관된 아이덴티파이어와 스타트 타임 이전에 언급된 최종 트랜스액션에 연관된 아이덴티파이어가 발생되는 것이다.
원격 데이터베이스, 업데이트, 센드파일, 트랜스액션, 로컬 데이터베이스, 초기화 센드파일, 네트워크
Description
본 출원은 2001년 11월 1일 출원된 미국 프로비져널 특허 60/330,842호의 전부와 2002년 3월 19일 출원된 미국 프로비져널 특허 60/365,169호의 전부를 참조하여 결합하여 출원된 것이다.
본 발명의 실시태양은 일반적으로 컴퓨터 데이터베이스에 관한 것이다. 특히, 본 실시태양은 데이터베이스의 신뢰할 수 있는 업데이팅을 위한 방법과 시스템을 제공한다.
증가하는 사이즈와 고도로 분화된 데이터베이스의 구조로 인해, 네트워크 상에서 동일한 버전의 데이터를 포함하는 관련된 데이터베이스를 확신시키는 것이 점점 어려워지고 있다. 만약 하나의 데이터베이스로부터 중요한 변화가 있을 경우, 다른 데이터베이스는 가능한 빨리 이들 변화를 포함하기 위하여 업데이트될 필요가 있다. 업데이트를 실시하는 것은 멀티플 데이터베이스에 많은 양의 업데이팅 데이터를 수시로 이동하는 것을 포함한다. 이러한 프로세스의 잠재적 복잡성은 매우 번거로울 수 있다.
이 문제점은 통신이 신뢰할 수 없는 곳의 시스템에서 더욱 복잡하게 될 것이다. 이 경우, 데이터는 전송되는 동안 손실될 수 있다. 그러므로, 데이터는 재전송되어야 하고 다른 데이터베이스는 다시 모두 업데이트되어야한다. 이와 같은 반복은 데이터베이스의 업-투-데이트 데이터를 포함하는 정도로 실시태양 상의 효율성을 크게 저하시킨다.
도 1은 본 발명의 실시태양에 의한 시스템 블록 다이어그램이다.
도 2는 본 발명의 실시태양에 의한 시스템 허브의 블록 다이어그램이다.
도 3은 본 발명의 실시태양에 따른 로컬 데이터베이스로부터 원격 데이터베이스로의 데이터베이스의 업데이트를 위한 전송의 실시예를 나타낸 것이다.
도 4는 본 발명의 실시태양에 의한 센드파일을 나타낸 것이다.
도 5는 본 발명의 실시태양에 의한 초기화 센드파일을 나타낸 것이다.
도 6은 본 발명의 실시태양에 따른 센드파일의 타이밍 차트와 초기화 센드파일 제너레이션을 나타낸 것이다.
도 7은 로컬 데이터베이스의 업데이트 파일이 제너레이트되는 본 발명의 실시태양의 플로우 차트이다.
도 8은 원격 데이터베이스가 로컬 데이터베이스로부터 업데이트 파일을 수령하는 본 발명의 실시태양을 나타내는 플로우 차트이다.
도 9는 원격 데이터베이스가 로컬 데이터베이스로부터 업데이트 파일을 수령하고 유효화시키는 본 발명의 또 다른 실시태양을 나타내는 플로우 차트이다.
도 10A는 업데이트 파일을 유효화시키는 본 발명의 실시태양의 플로우 차트이다.
도 10B는 업데이트 파일을 유효화시키는 본 발명의 또 다른 실시태양을 나타 내는 플로우 차트이다.
도 11은 본 발명의 실시태양에 따라 업데이트 파일을 유효화시키는 모식도이다.
본 발명의 실시태양은 네트워크 기반의 원격 데이터베이스 업데이트를 유효화(validating)시키기 위한 방법 및 시스템을 제공하는 것이다. 로컬 데이터베이스 레코드와 원격 데이터베이스 레코드는 비교될 수 있고 익셉션이 생성될 수 있다. 각각의 익셉션은 원격 데이터베이스와 로컬 데이터베이스간의 디스크레펀시(discrepancy)로 기술된다. 익셉션 아이덴티파이어(exception identifier)는 각각의 익셉션과 결합되어 있고 그곳에서 익셉션 아이덴티파이어는 레코드의 아이덴티파이어와 결합될 수 있다. 이벤트 아이덴티파이어는 그 이벤트 아이덴티파이어가 레코드의 아이덴티파이어와 결합되는 곳에서 업데이트 상에 각각의 이벤트와 결합될 수 있다. 이벤트와 익셉션은 레코드에 상응하고 업데이트가 유효한지를 결정하기 위해 비교될 수 있다.
도 1은 본 발명의 실시태양에 따른 시스템을 나타내는 블록 다이어그램이다. 일반적으로 시스템(100)은 네트워크 기반의 큰 메모리를 지니는 데이터베이스를 지 닐 수 있고 서치 리퀘스트를 수령하고 서치 리스폰스를 제공한다. 예를 들면 시스템(100)은 대칭적이고 International Business Machines Corporation of Armonk에서 제조된 IBM RS/6000ⓡ M80 또는 S80, 캘리포니아주 산타클라라의 Sun Microsystems, Inc.에서 제조된 Sun EnterpriseTM 10000과 같은 멀티프로세싱(SMP) 컴퓨터이다. 시스템(100)은 예를 들면 캘리포니아주 팔로 알토에 소재한 Hewlett-Packard Company에 의해 제조된 Compaq ProLiantMLTM530(두개 의 인텔 펜티엄Ⅲ 866㎒ 프로세서를 포함하는) 멀티프로세서 퍼스널 컴퓨터일 수 있다. 시스템(100)은 IBM AIXⓡ4, Sun SolarisTM8 Operating Environment, Red Hat Linuxⓡ6.2와 같은 멀티프로세싱 오퍼레이팅 시스템일 수 있다. 시스템(100)은 네트워크(124) 기반의 주기적 업데이트를 수령하고 이것은 동시에 데이터베이스 내에 합체될 수 있는 것이다. 본 발명의 실시태양은 데이터베이스 록 또는 어세스 컨트롤의 사용 없이 데이터베이스에 각각 업데이트를 합체하여 고도의 데이터베이스 서치와 업데이트된 스루 풋을 성취하는 것이다.
본 실시태양에 있어서, 시스템(100)은 버스(101)에 커플된 적어도 하나의 프로세서(102-1)를 포함한다. 프로세서(102-1)는 내부의 메모리 캐쉬(예를 들면 L1 캐쉬, 정확하게 나타나지는 않음)를 포함한다. 두 번째 메모리 캐쉬(103-1)(예를 들면 L2 캐쉬, L2/L3 캐쉬 등)는 프로세서(102-1)와 버스(101) 사이에 위치한다. 바람직한 실시태양에서 시스템(100)은 버스(101)에 커플된 다수의 프로세서(102- 1.....102-P)를 포함한다. 다수의 두 번째 메모리 캐쉬(103-1.....103-P)는 다수의 프로세서(102-1....102-P)와 버스(101)(예를 들면 록-스루 설계) 사이에 위치한다. 선택적으로 두 번째 메모리 캐쉬(103-1)의 적어도 하나는 버스(101)(예를 들면 록-어사이드 설계)에 커플될 수 있다. 시스템(100)은 예를 들면 랜덤 어세스 메모리(RAM)와 같은 메모리(104)를 포함하고 버스(101)에 커플되며 다수의 프로세서(102-1....102-P)에 의해 수행되는 정보와 지시를 저장한다.
메모리(104)는 예를 들면 인터넷 도메인 이름을 인터넷 도메인 어드레스로 번역하기 위하여, 이름 또는 전화번호를 네트워크 어드레스로 번역하기 위하여, 가입자 프로파일 데이터를 업데이트 하거나 제공하기 위하여, 유저 프레즌스 데이터를 업데이트하거나 제공하기 위하여 많은 양의 데이터베이스를 저장한다. 데이터베이스의 사이즈와 초당 번역 수 모두를 만족하기 위해서는 매우 큰 것이다. 예를 들면 메모리(104)는 적어도 64GB의 램과 500M(500 ×10^6)의 레코드 도메인 네임 데이터베이스를 포함하고 500M의 서브스크라이버 데이터베이스와 450M의 레코드 전화번호 포터빌리티 데이터베이스등을 포함하는 것이다.
64비트 설계의 하나의 예로써, 예를 들면 적어도 하나의 64비트 빅 앤디안 프로세서(102-1)와 64비트 버스(101) 및 64비트 메모리(104)를 포함하는 시스템과 8비트 포인터 밸류는 단일 연속된 조작을 통해 8비트 바운더리(예를 들면 8로 나누어지는 메모리 어드레스 또는 8N)위에 메모리 어드레스를 작성할 수 있다. 일반 적으로 두 번째 메모리 캐쉬(103-1)의 존재는 메모리(104)에 8비트 포인터 라이트를 단순히 지연시킬 수 있다. 예를 들면 하나의 실시태양에서 두 번째 메모리 캐쉬(103-1)은 라이트-스루 모드 속에 작동되는 룩-스루 캐쉬이고, 이는 단일한 8비트 저장 지시를 프로세서(102-1)로부터 메모리(104)로의 8비트 데이터를 중단없이 이동시키고 두 개의 시스템 클록은 순환된다. 또 다른 실시태양에서 두 번째 메모리 캐쉬(103-1)은 라이트-백 모드 안에 작동되는 룩-스루 캐쉬 일 수 있고 이는 8비트 포인터가 두 번째 메모리 캐쉬(103-1)에 처음 쓰여지게 되고 이는 그 후에, 예를 들면 8비트 포인터가 저장되어 있는 캐쉬 라인이 메모리(104)에 쓰여질 때(예를 들면 특정한 캐쉬 라인 또는 전체의 두 번째 메모리 캐쉬가 "flushed" 일 때) 메모리(104)에 8비트 포인터를 쓰게 되는 것이다.
결과적으로, 프로세서(102-1)의 시각으로부터 일단 데이터가 프로세서(102-1)의 아웃풋 핀으로 래치되면 모든 8비트 데이터는 하나에 인접한 연속적인 전달 속에 메모리(104)에 쓰여지고 이는 만약 존재한다면 두 번째 메모리 캐쉬(103-1)의 효과를 지연시킬 수 있는 것이다. 프로세서(100-2....100-P)의 시각으로부터 일단 데이터가 프로세서(102-1)의 아웃풋 핀으로 래치되면 모든 8비트 데이터는 하나에 인접한 연속적인 전달 속에 메모리(104)에 쓰여지고 이것은 두 번째 메모리 캐쉬(103-1.....103-P)에 엇갈린 캐쉬 코히어런시 프로토콜에 의해 영향받고 이 역시 만약 존재한다면 메모리(104)에 지연을 야기시킬 수 있는 것이다.
그러나, 만약 8비트 포인터 밸류가 8비트 바운더리를 크로스하는 메모리 어드레스와 같은 메모리(104)속에 잘못 배열된 위치에 쓰여진다면 모든 8비트의 데이터는 프로세서(102-1)로부터 단일 8비트 저장 지시를 이용하여 전달될 수 없을 것이다. 대신에 프로세서(102-1)은 두 개의 별개 저장 지시를 발행한다. 예를 들면 만약 메모리 어드레스가 8비트 바운더리(예를 들면 8N-4)전에 4비트를 시작한다면 첫 번째 저장 지시는 메모리(104)(예를 들면 8N-4)에 네 개의 가장 중요한 바이트를 전달할 것이다. 반면 두 번째 저장 지시는 메모리(104)(예를 들면 8N)에 네 개의 최소한의 바이트를 전달할 것이다. 중요하게도 이 두 개의 별개의 저장 지시 사이에 프로세서(102-1)이 삽입될 수 있고, 프로세서(102-1)은 버스(101)의 콘트롤을 다른 시스템 콤포넌트(예를들면 프로세서(102-P))에 루스 시킬 수 있다. 결과적으로 메모리(104)에 위치하는 포인터 밸류는 프로세서(102-1)이 두 번째 저장지시를 완성할 때까지 유효하지 않을 것이다. 만약 또 다른 콤포넌트가 단일, 연속적인 메모리 리드를 이 메모리 위치에 시작한다면 이와 같은 유효하지 않은 밸류가 아마도 유효한 것과 같이 되돌아 올 것이다.
이와 유사하게 새로운 4비트 포인터 밸류는 단일 연속적 조작을 통해 4(4N)에 의해 나누어 질 수 있는 메모리 어드레스로 쓰여질 것이다. 상기 예에서 언급한 바를 주목하여 보면 4비트 포인트 밸류는 8N-4 메모리 위치에 단일 저장 지시를 이용하여 쓰여질 것이다. 물론 만약 4비트 포인터 밸류가 4비트 바운더리를 거슬리는(예를 들면 4N-2) 위치에 쓰여진다면 모든 4비트 데이터는 프로세서(102-1)로 부터 단일 저장 지시를 이용하여 전달될 수 없을 것이다. 그리고 메모리(104)에 위치하는 포인터 밸류는 어느 기간동안 유효하지 않을 것이다.
시스템(100)은 리드 온리 메모리(ROM)를 포함할 수 있고 또는 다른 정적 저장 기구와 버스(101)를 커플시켜 프로세서(102-1)를 위한 정보와 지시를 저장하기 위해 사용할 수 있다. 마그네틱 또는 옵티칼 디스크와 같은 저장기구(108)은 정보와 지시를 저장하기 위해 버스(101)에 커플될 수 있다. 시스템(100)은 또한 디스플레이(110)(예를 들면 LCD 모니터)와 인풋 기구(112)(예를 들면 키보드, 마우스, 트랙볼 등)를 버스(101)과 커플시켜 포함할 수 있다. 시스템(100)은 다수의 네트워크 인터페이스(114-1...114-O)를 포함할 수 있고 이것은 전기적, 전자기적 또는 옵티칼 시그널을 전송하거나 수령할 수 있고 이를 통해 여러 종의 정보를 표시하는 디지털 데이터 스트림을 처리할 수 있다. 본 발명의 실시태양에서 네트워크 인터페이스(114-1)은 버스(101) 및 로컬 에어리어 네트워크(LAN)(122)에 커플될 수 있고, 또한 네트워크 인터페이스(114-O)는 버스(101)과 와이드 에어리어 네트워크(WAN)(124)에 커플될 수 있다. 다수의 네트워크 인터페이스(114-1...114-O)는 다양한 네트워크 프로토콜을 지지할 수 있고 예를 들면 Gigabit Ethernet(예를 들면 IEEE Standard 802.3-2002, 2002년 발행), Fiber Channel(예를 들면, ANSI Standard X. 3230-1994, 1994년 발행)등을 포함할 수 있다. 다수의 네트워크 컴퓨터(120-1...120-N)는 LAN (122)와 WAN(124)에 커플될 수 있다. 하나의 실시태양에서 LAN(122)와 WAN(124)는 네트워크 게이트웨이를 통하거나 라우터(명확하게 도시되지 않음)를 통할 수 있다. 선택적으로 LAN(122)와 WAN(124)는 같은 네트워크일 수 있다.
상기한 바와 같이 시스템(100)은 DNS 레졸루션 서비스를 제공할 수 있다. DNS 레졸루션 실시태양에서 DNS 레졸루션 서비스는 네트워크 트랜스포트와 데이터 룩-업 기능으로 일반적으로 나뉠 수 있다. 예를 들면 시스템(100)은 큰 데이터 세트 위에 데이터 룩-업을 위해 최적화된 백-앤드룩-업 엔진(LUE)일 수 있다. 한편 다수의 네트워크 컴퓨터(120-1...120-N)은 네트워크 프로세싱과 트랜스포트를 위해 최적화된 다수의 프론트-앤드프로토콜 엔진(PEs)이다. LUE는 초고속 하이 스루푸트 서칭과 업데이팅을 가능케 하는 메모리(104) 속에 전체의 DNS 레코드 세트를 저장할 수 있는 강력한 멀티 프로세서 서버일 것이다. 선택적 실시태양에서 DNS 레졸루션 서비스는 강력한 멀티 프로세서 서버 또는 LUE에 의해 제공되고, 이와 같은 고속 하이 tm루푸트 서칭과 업데이팅을 가능케하는 메모리(104)속에 전체 DNS 레코드의 서브세트를 저장하는 것이다.
이와는 대조적으로 다수의 PEs는 일반적이고 낮은 프로파일 PC-베이스 머신으로 효율적인 멀티 테스킹 오퍼레이팅 시스템(예를 들면 Red Hat Linux 6.2)을 작동시킬 수 있고 DNS 레졸루션을 위한 이용가능한 자원을 최대화하기 위해 LUE 위에 네트워크 프로세싱 트랜스포트 로드를 최소화하는 것이다. PEs는 LAN(122)위에 LUE로 유효하지 않은 DNS 퀘어리와 멀티플렉스 유효 DNS 퀘어리에 응답하여 와이어 라인 DNS 프로토콜의 뉘앙스를 핸들한다. DNS 레코드 서브 세트를 저장하는 다수의 LUE를 포함하는 선택적 실시태양에서 PE는 어느 LUE가 각각의 유효한 DNS 퀘어리를 수령할 지를 결정하고 다양한 유효한 DNS 퀘어리는 LUE에 도달케 한다. 단일 LUE를 위한 PE의 넘버가 결정될 수 있고 예를 들면 초당 처리되는 DNS 퀘어리의 숫자와 특정 시스템의 수행 특성에 의해 결정될 수 있다. 다른 메트릭이 적절한 맵핑 비율과 행동를 결정하기 위해 사용될 수 있다.
일반적으로 다른 큰 볼륨 퀘어리 베이스 실시태양이 지지될 수 있고 예를 들면 전화번호 레졸루션, SS7 시그널링 프로세싱, 지오로케이션 결정, 전화번호-투-가입자 맵핑, 가입자 로케이션과 프레즌스 결정 등을 포함할 수 있다.
하나의 실시태양에서 중앙 온라인 트랜스액션 프로세싱(OLTP)서버(140-1)는 WAN(124)에 커플될 수 있고 추가, 수정 및 삭제(예를 들면 업데이트 트래픽)를 여러 소스로부터 데이터베이스(142-1)에 가할 수 있다. OLTP 서버(140-1)는 시스템(100)에 업데이트를 전송하고 이는 WAN(124)위에 데이터베이스(142-1)의 로컬 카피를 포함하는 것이다. OLTP서버(140-1)는 여러종의 포맷과 프로토콜 속에서 업데이트 트래픽을 처리하기 위해 최적화 시킬 수 있고 예를 들면 Hyper Text Transmission Protocol(HTTP), Registry Registrar Protocol(RRP), Extensible Provisioning Protocol(EPP), Service Management System/ 800 Mechanized Generic Interface(MGI) 및 다른 온라인 프로비져닝 프로토콜 등을 포함할 수 있다. 리드 온리 LUE의 배치는 허브 속에 위치할 수 있고 초고속 서치 기능과 연관된 높은 볼륨 증가하는 OLTP서버(140-1)의 업데이트를 제공하기 위해 설계될 수 있다.
선택적 실시태양에서 데이터는 다수의 OLTP서버(140-1...140-S)에 분포되고 이들의 각각은 WAN(124)에 커플될 수 있다. OLTP 서버(140-1...140-S)는 추가, 수정, 삭제(예를 들면 업데이트 트래픽)를 다양한 공급원으로부터 각각의 데이터베이스(142-1...142-S)(명확히 도시하지 않음)에 수령할 수 있다. OLTP서버(140-1...140-S)는 데이터베이스(142-1...142-S)의 카피와 다른 역동적으로 창출된 데이터를 WAN(124)밖에서 포함하는 시스템(100)에 업데이트를 전송할 수 있다. 예를 들면 지오로케이션 실시태양에서 OLTP서버(140-1...140-S)는 원격센서 그룹으로부터 업데이트 트래픽을 수령할 수 있다. 또 다른 실시태양에서 다수의 네트워크 컴퓨터(120-1...120-N)는 WAN(124) 또는 LAN(122) 위에 다양한 정보로부터 추가, 수정, 삭제(예를 들면 업데이트 트래픽)등을 수령할 수 있다. 이와 같은 실시태양에서 다수의 네트워크 컴퓨터(120-1...120-N)는 시스템(100)에 퀘어리 뿐만 아니라 업데이트를 전송할 수 있는 것이다.
DNS 레졸루션 실시태양에서 각각의 PE(예를 들면 다수의 네트워크 컴퓨터(200-1...200-N)각각)은 단일 Request SuperPacket을 통한 광역 에어리어 네트워크(예를 들면 WAN(124))를 수령하고 로컬 에어리어 네트워크(예를 들면 LAN(122))로의 Request SuperPacket to the LUE(예를 들면 시스템(100))을 전송함 으로써 각각의 DNS 퀘어리 메시지를 결합하거나 멀티플렉스 할 수 있다. LUE는 단일 Response SuperPacket에 각각의 DNS 퀘어리 메시지 리플라이를 결합하거나 멀티플렉스 할 수 있고 로컬 에어리어 네트워크 기반위에 적정한 PE Response SuperPacket를 전송한다. 일반적으로 리퀘스트 또는 리스폰스 SuperPacket의 사이즈를 최대화함으로써 물리적 네트워크 레이어(예를 들면 Gigabit Ethernet)의 최대 전송 유니트(MTU)에 의해 제한될 수 있다. 예를 들면 100바이트 및 200바이트 이내의 통상적인 DNS 퀘어리와 리플라이 메시지는 각각 단일 Request SuperPacket에 멀티플렉스되어 30개 이상의 퀘어리를 가능케 하고 단일 Response SuperPacket에 멀티플렉스되어 15개 이상의 리플라이를 가능케 한다. 그러나 적은 수의 퀘어리(예를 들면 20 퀘어리)는 리스폰스(예를 들면 10 리플라이) 위에 MTU의 오버플로우를 피하기 위해 단일 Request SuperPacket에 포함될 수 있다. 더 큰 MTU 규모에서 멀티플렉스 퀘어리와 리플라이의 수는 이에 따라 증가한다.
각각의 멀티태스킹 PE는 DNS 퀘어리와 리플라이를 관리하기 위해 인바운드 쓰레드와 아웃바운드 쓰레드를 포함할 수 있다. 예를 들면 인바운드 쓰레드는 광역 에어리어 네트워크 위에 수령된 인커밍 DNS 퀘어리 패킷으로부터 DNS 퀘어리 콤포넌트를 언마셜할 수 있고 단일 Request SuperPacket으로 밀리세컨드 퀘어리를 멀티플렉스한다. 인바운드 쓰레드는 로컬 에어리어 네트워크 위에 LUE에로 Request SuperPacket을 전송한다. 그 반대로 아웃바운드 쓰레드는 LUE로부터 Response SuperPacket를 수령하고 여기에 함유된 리플라이를 디-멀티플렉스 시킨다. 유효 한 DNS 리플라이를 각종 필드에 정렬시키고 이는 광역 에어리어 네트워크 위에 전송되는 것이다. 일반적으로 상기한 바와 같이 다른 볼륨 퀘어리 기반 실시태양이 지지될 수 있다.
하나의 실시태양에서 Request SuperPacket은 예를 들면 소스어드레스, 프로토콜 타입과 같은 각각의 DNS 퀘어리를 결합시킨 스테이트 정보를 포함할 수 있다. LUE는 스테이트 정보를 포함하고 Response SuperPacket속에서 DNS 리플라이를 연합시킨다. 각각의 PE는 구축되고 LUE로부터 전송된 정보를 이용하여 유효한 DNS 리플라이 메시지를 리턴시킨다. 결과적으로 각각의 PE는 스테이트레스 머신처럼 유리하게 작동되고 유효한 DNS 리플라이가 Response SuperPacket속에 함유된 정보로부터 형성될 수 있다. 일반적으로 LUE는 인커밍 SuperPacket이 생성되는 PE에 Response SuperPacket를 리턴시킨다. 그러나 다른 변형이 가능하다.
또 다른 실시태양에서 각각의 PE는 DNS 퀘어리와 결합된 스테이트 정보를 유지하고 레퍼런스를 포함하며 Request SuperPacket 속에 스테이트 정보를 핸들링 한다. LUE는 스테이트 정보 레퍼런스를 포함하고 DNS 리플라이를 Response SuperPacket속에서 결합시킨다. 각각의 PE는 구축되고 LUE로부터 전송된 스테이트 정보 레퍼런스를 이용하여 유효한 DNS 리플라이 메시지를 리턴시키며 이때 스테이트 정보를 유지한다. 이러한 실시태양에서 LUE는 인커밍 SuperPacket에 기인한 것으로부터 PE에 Response SuperPacket를 리턴시킨다.
도 2는 본 발명의 실시태양에 따른 허브와 스포크의 블록 다이어그램이다. 일반적으로 시스템은 로컬 데이터베이스(200)(중앙 OLTP허브(140)속에 포함되어 있는)를 포함한다. 하나 또는 그 이상의 원격 데이터베이스(210)(LUE(100)을 포함한다)는 연결 메카니즘 예를 들면 인터넷 또는 LAN(122)를 통해 연결된다. 데이터베이스는 업데이트 데이터를 전송하고 수령한다.
도 3을 참조하여 본 발명의 실시태양에서 로컬 데이터베이스(200)은 F 센드파일(300-1...300-F)을 전송하고 원격 데이터베이스(210)을 업데이트시키기 위해 원격데이터베이스(210)에 센드파일(310)을 초기화한다. 업데이트 파일은 각각 또는 배치로 전송되고 이는 멀티플 센드파일(300), 하나의 센드파일(300)과 초기화 센드파일(310), 멀티플 센드파일(300)과 하나의 초기화 센드파일(310), 센드파일(300) 단일, 또는 초기화 센드파일(310)단일 등의 형태로 전송되는 것이다.
본 발명의 하나의 실시태양에서 프로세서(104)는 센드파일(300)을 수령하고 로컬 데이터베이스(200)으로부터 업데이트된 데이터를 포함하는 초기화 센드파일(310)을 수령할 수 있다. 실시태양(150)은 센드파일(300)을 수령하고 커뮤니케이션 인터페이스(118)을 통해 원격 데이터베이스(210)에 초기화 센드파일(310)을 수령한다. 프로세서(104)는 초기화 센드파일(310) 또는 센드파 일(300)속의 업데이트 데이터를 원격 데이터베이스(210)속에 상응하는 데이터와 비교한다. 만약 데이터가 원격 데이터베이스(210) 와 다르다면 프로세서(104)는 센드파일(300) 또는 초기화 센드파일(310)을 원격 데이터베이스(210)에 적용한다. 이에 따라 원격 데이터베이스(210)은 로컬 데이터베이스(200)속에 업데이팅 데이터에 매치하는 연속적인 업데이트 데이터를 지닌다.
도 4는 본 발명의 실시태양에 따른 센드파일(300)을 나타낸 것이다. 파일(300)의 분야는 예를 들면 파일 아이덴티파이어(400), 파일 생성 타임(402), 파일 속에 트랜스액션 N 의 회수(404), 파일의 총 사이즈(406), 체크섬 또는 어떤 에러-체킹 인디케이터(408), 와 트랜스액션(400-1...400-N)(트랜스액션 아이덴티파이어를 포함함)을 포함하는 것이다. 이러한 센드파일의 분야는 예시된 것으로 본 발명의 실시태양의 범위에 한정되지 않는다. 어떠한 유용한 기술이 센드파일(300)에 포함될 수 있다.
센트파일(300)은 시간 내 두 포인트 간에 로컬 데이터베이스(200)의 변화를 포함한다. 이러한 변화는 예를 들면 새로운 아이덴티파이어의 첨가(예를 들면 데이터 레코드의 아이덴티파이어), 존재하는 아이덴티파이어의 삭제, 아이덴티파이어와 결합된 하나 또는 그 이상의 데이터 레코드의 수정, 아이덴티파이어의 리네이밍, no-op 등을 포함할 수 있다. 하나 또는 그 이상의 이러한 변화는 연속적으로 발생하고 트랜스액션이라 불리운다. 센드파일(300)은 이러한 트랜스액션의 유니 크한 아이덴티파이어를 포함한다. 트랜스액션은 로컬 데이터베이스(200)에서 발생된 오더속에 센드파일(300)속에 기록된다. 부수적으로 하나 이상의 변화를 포함하는 트랜스액션을 위해 이러한 변화는 로컬 데이터베이스(200) 속에 발생하는 오더 속에서 트랜스 액션에 레코드된다.
일반적으로 트랜스액션 아이덴티파이어는 어떠한 오더 순으로 트랜스액션을 정렬한다. 이는 트랜스액션 아이덴티파이어가 시간적으로 단조롭게 증가할 필요가 없다는 것이다. 예를 들면 두 개의 연속적인 트랜스액션은 10002에 뒤따른 10004 트랜스액션 아이덴티파이어를 지닐 수 있다. 이에 따라 트랜스액션을 유발하는 오더는 커런트 파일(300-F)의 배치에 의하거나 이전파일(300-(F-1))의 배치에 결정될 수 있다. 일반적으로 트랜스액션은 하나의 센드파일 적용 속에 원격 데이터베이스 업데이트를 완성하기 위해 인접파일(300)을 포함하지 않을 수 있다. 이는 원격 데이터베이스(210)에 에러를 야기할 수 있는 네트워크 지연에 의한 업데이트의 불연속을 방지하기 위한 것이다.
도 5는 본 발명에 따른 실시태양에 의한 초기화 센드파일(310)을 나타낸 것이다. 초기화 센드파일(310)의 분야는 예를 들면 파일 아이덴티파이어(500), 파일 제너레이션 타임(502), 파일 속에서 트랜스액션 N의 회수(504), 파일의 총 사이즈(506), 체크섬 또는 에러-체킹 인디케이터(508)와 전체 로컬 데이터베이스의 카피(516)을 포함한다. 초기화 센드파일(310)은 분야(510)을 더욱 포함할 수 있고 이것은 파일의 제너레이션(310)전에 형성된 마지막 센드파일(300)의 파일 아이덴티파이어(400)을 포함할 수 있고 초기화 센드파일(310)의 생성 전에 로컬 데이터베이스(200)에 언급된 마지막 트랜스액션의 아이덴티파이어에 관한 분야(512)를 포함할 수 있다. 로컬 및 원격 데이터베이스(200,210) 속에 데이터는 데이터베이스(200,210)속에 위치하는 테이블에 분배된다. 데이터베이스(200,210)은 임의의 수의 테이블을 지지한다. 그러므로 데이터베이스가 테이블을 가졌을 때 초기화 센드파일(310)은 그 테이블 속에 기록된 레코드의 수를 지적하는 각각의 테이블을 위한 분야를 포함할 수 있다. 예를 들면 도메인 네임 데이터베이스는 도메인 테이블과 네임서버 테이블을 포함한다. 그러므로 초기화 센드파일은 도메인 테이블 속에 레코드의 수를 나타내는 분야와 네임서버 테이블 속에 레코드의 수를 나타내는 분야를 포함할 수 있다. 이와 같은 분야는 예를 들면 테이블 네임, 테이블 속에 인덱스 레코드에 사용된 키, 테이블 속에 레코드의 수로 상세화 될 수 있다. 덧붙여서 초기화 센드파일(310)은 통상 1.0의 초기화 센드파일 버전(310)을 지시하는 분야를 포함한다. 이 초기화 센드파일 분야는 본 발명의 실시태양의 범위에서 특별히 한정되는 것은 아니고 예시적으로 사용된 것이다. 유용한 분야는 초기화 센드파일(310)속에 포함될 수 있다.
초기화 센드파일(310)은 예를 들면 로컬 데이터베이스(200) 전체의 리드-콘시스턴트 카피를 이미 상술한 바와 같이 포함할 수 있다. 초기화 센드파일(310)은 ts와 tf사이의 시간 t의 시점에서 로컬 데이터베이스(200)과 양립할 수 있다. 이곳에서 ts는 초기화 센드파일(310)의 생성이 시작되는 시간이고 tf는 생성이 완료되는 시간이다. 이와 같이 초기화 센드파일(310)을 발생시키는 조작은 'add'조작이다. 이는 초기화 센드파일(310)이 생성됨에 따라 시간 t에 전체 로컬 데이터베이스(200)의 카피는 초기화 센드파일(310) 속에서 기록된다. 그러므로 'add' 조작은 초기화 센드파일(310) 속에 로컬 데이터베이스(200)을 레코드 하기 위해 수행되는 것이다. 아이덴티파이어는 어떠한 오더속에서 초기화 센드파일(310)을 기록할 수 있다. 선택적으로 외부 아이덴티파이어의 존재하에 레퍼런스 데이터 레코드는 레퍼런싱 데이터 레코드 이전에 기록되는 것이다.
분야(510)과 (512)의 첨가는 초기화 센드파일(310)에 초기화 센드파일(310)이 생성되는 동안에 원격 데이터베이스(210)에 언급되고 생성되는 센드파일(300)의 인지를 제공하는 것이다. 그러나 센드파일(300)의 생성과 초기화 센드파일(310)의 생성은 서로 디커플드되고 서로간에 생성에 의존하지 않는 것이다. 이와 같은 구조와 과정은 효과적이지 못한 방법일 수 있다. 그 이유는 센드파일의 생성과 응용이 초기화 센드파일의 생성이 완료될 때 까지 중지될 수 있기 때문이다. 초기화 센드파일(310)의 생성중에 센드파일(300)의 생성과 응용의 연속을 위해 본 발명의 상세한 실시태양에서 강한 에러-체킹 센드파일(300)이 행해지고 원격 데이터베이스(212)에 배열이 행해진다. 예를 들면 유니크 콘스트레인트 또는 외부 아이덴티파이어 콘스트레인트 등이 행해질 수 있다. 콘스트레인트의 배치는 원격 데이터베이스(212)의 관련된 모델을 위배하는 트랜스액션을 허용하지 않음으로써 원 격데이터베이스(210)속에 데이터베이스의 인테그리티를 보호한다. 예를 들면 유니크 콘스트레인트는 한 번 이상 데이터베이스(210) 속에 저장되어 있는 것으로부터 동일한 키를 방지하는 것이다.
도 6은 본 발명의 실시태양에 따른 센드파일의 타이밍 차트와 초기화 센드파일의 생성을 나타낸 것이다. 도 6에서 센드파일(300)(sf-1 내지 s-21) 은 일정한 시간간격에 의해 생성된다. 선택적 실시태양에서 센드파일(300)은 불규칙적 시간간격에서 생성될 수 있다. 일반적으로 센드파일 생성은 전체 시간 인터벌을 요하지 않는다. 예를 들면 만약 파일이 5분 간격으로 생성된다면 이것은 파일이 생성되기 위해 총 5분이 소요된다는 것을 의미하지 않는다. 또한 만약 센드파일(300)이 생성되는 동안 로컬 데이터베이스(200)에 변화가 발생한다면, 이러한 변화는 다음 센드파일(300)에서 포착될 것이다. 예를 들면 만약 센드파일 sf-4 의 시작이 12:05:00 이고 완료가 12:05:02이면 12:05:00에서 12:05:02 사이에 발생한 로컬 데이터베이스(200)의 어떠한 변화는 센드파일 sf-5(예를 들면 300-5)에서 포착되고 이것은 12:05:00 내지 12:10:00의 기간 중에 포착되는 것이다.
센드파일(300-5)와 (300-19)는 도 6에 나타나 있다. 이러한 파일은 다른 분야 중에서 파일 아이덴티파이어(601)(sf-5, sf-19), 파일생성시간(603) 및 트랜스액션 아이덴티파이어(605)(예를 들면 10002)를 나타내는 것이다. 이러한 트랜스액션 아이덴티파이어가 단조롭게 오더되지 않음을 주목하라. 이미 전술한 바와 같이, 트랜스액션 아이덴티파이어는 랜덤 밸류를 지닌다. 그러나 결합된 트랜스액션 자체는 로컬데이터베이스(200) 속에서 발생하는 오더로 센드파일(300)에 기록된다.
초기화 센드파일(310)의 생성과 센드파일(300)의 생성이 디커플드 되기 때문에 초기화 센드파일(310)은 언제든지 생성될 수 있다. 예를 들면 초기화 센드파일(310)은 센드파일(300)의 생성 전,후, 중간 어느 때던지 생성될 수 있다. 도 6은 네 번째 다섯 번째 센드파일(예를 들면 sf-4 및 sf-5)의 사이에 생성되는 초기화 센드파일(310)을 나타낸 것이다.
바람직한 실시태양에서 초기화 센드파일(310)은 다른 분야중에 파일 아이덴티파이어(610)(isf-1), 초기화 센드파일 생성전에 생성된 마지막 센드파일의 파일 아이덴티파이어(615), 및 초기화 센드파일 생성 이전에 언급된 트랜스액션 아이덴티파이어(620)을 포함하는 것이다. 이와 같은 실시예에서 마지막으로 생성된 센드파일은 센드파일 sf-4이고 마지막 언급된 트랜스액션은 트랜스액션 10001이다. 초기화 센드파일(310)은 12:07:29에서 생성(611)을 시작한다. 센드파일(300-5)(sf-5)속에 트랜스액션의 전반부, 트랜스액션 (10002, 10005) 및 (10001)은 초기화 센드파일(312) 생성될 때 로컬 데이터베이스(200)에 이미 언급된 것이다. 따라서 초기화 센드파일(310)은 이러한 트랜스액션의 인식을 통해 이루어지며 초기화 센드파일(310)속에 이 같은 트랜스액션이 포착되는 것이다. 그러나 초기화 센드 파일(310)은 연차적인 트랜스액션 10003과 10004를 인지하지 못하며 이는 초기화 센드파일 생성이 시작된 뒤에 발생한 것이기 때문이다.
초기화 센드파일(310)이 생성되는 동안에 센드파일(300-5)와 함께 시작한 센드파일은 일정한 인터벌로 발생하여 계속된다. 이러한 파일은 원격데이터베이스(210)에 전달되고 응용된다.
초기화 센드파일(310)은 1;15:29에 완전히 생성되고 센드파일 (300)의 18번째 및 19번째 (sf-18 및 sf-19) 생성 중간에 위치한다. 또한 센드파일(300-19)의 19번째 생성에 영향을 주지 않는다.
원격 데이터베이스(210)에 초기화 센드파일(310)에 수령 및 로딩 후에 원격 데이터베이스(210)은 초기화 센드파일(310)의 생성 이전에 생성된 센드파일을 고려하지 않는다. 이것은 예를 들면 이전 센드파일(300)에 기록된 로컬 데이터베이스(200)의 모든 변화를 포함하는 초기화 센드파일(310)에 기인하기 때문이다. 예를 들면 원격 데이터베이스(210)은 첫 번째부터 네 번째 센드파일(sf-1 내지 sf-4)를 고려할 필요가 없다. sf-1 내지 sf-4에 센드파일 속에 기록된 변화는 초기화 센드파일(310)속에 기록될 수 있다. 이와 같은 이전 센드파일(sf-1 내지 sf-4)는 삭제되거나 선택적으로 아키브 될 수 있다. 이와 유사하게 원격 데이터베이스(210)은 그 후에 생성된 센드파일(300)속에 포함된 초기화 센드파일(310) 의 생성에 앞서 언급된 트랜스액션을 고려하지 않는다. 초기화 센드파일(310)은 초기화 센드파일(310)이 생성되었을 때 트랜스액션을 포함할 수 있다. 예를 들면 원격 데이터베이스(210)은 센드파일 sf-5의 첫 번째 세 개의 트랜스액션 10002, 10005, 10001을 고려할 필요가 없다. 이와 같은 센드파일 sf-5에 기록된 트랜스액션은 초기화 센드파일(310)에 기록되기 때문이다. 이와 같이 언급된 트랜스액션은 삭제되거나 선택적으로 아키브될 수 있다.
도 7은 로컬 데이터베이스 파일의 업데이트 생성에 관련된 본 발명의 실시태양의 플로우 차트이다. 시스템은 로컬 데이터 파일의 점증적인 변화에 기인한 다수의 주기적 업데이트를 생성(705)한다. 각각의 업데이트는 하나 또는 그 이상의 트랜스액션을 포함한다. 시스템은 원격 데이터베이스에 주기적 업데이트를 송부(710)한다. 주기적 업데이트가 생성되는 동안 시스템은 스타트 시간에 업데이트 초기화를 생성(715)한다. 업데이트의 초기화는 로컬 데이터베이스 전체의 버전을 포함한다. 시스템은 스타트 타임 이전에 생성된 마지막 주기적 업데이트와 스타트 타임 이전에 언급된 마지막 트랜스액션을 결정(720)한다. 그리고 시스템은 원격 데이터베이스에 초기화 업데이트를 송부(725)한다. 초기화 업데이트는 최종 주기적 업데이트의 생성과 관련된 업데이트 아이덴티파이어와 언급된 최종 트랜스액션에 관련된 트랜스액션 아이덴티파이어를 포함하는 것이다.
예를 들면 OLTP (140)은 규칙적 또는 불규칙적 시간 간격으로 센드파일(300) 을 생성(705)한다. OLTP(140)은 원격 데이터베이스(210)에 센드파일(300)을 전송(710)한다. 센드파일(300)이 생성되는 동안 OLTP(140)은 스타트 타임(611)에 초기화 센드파일(310)의 생성(715)를 시작한다. 초기화 센드파일(310)은 전체 로컬 데이터베이스(200) 카피를 포함한다. OLTP(140)은 초기화 센드파일(310)의 생성을 위한 스타트 타임(611)이전에 생성된 마지막 센드파일(300)과 초기화 센드파일(310)의 생성을 위한 스타트 타임(611)이전에 언급된 마지막 트랜스액션을 결정(720)하는 것이다. OLTP(140)은 원격 데이터베이스(210)에 초기화 센드파일(310)을 전송(725)한다. 초기화 센드파일(310)은 마지막 생성된 센드파일(300)과 결합된 센드파일 아이덴티파이어(615)와 마지막 언급된 트랜스액션과 관련된 트랜스액션 아이덴티파이어(620)을 포함하는 것이다.
도 8은 원격 데이터베이스가 로컬 데이터베이스로부터 업데이트 파일을 수령하는 것에 관한 본 발명의 실시태양을 나타내는 플로우 차트이다. 시스템은 다수의 주기적 업데이트를 수령(805)한다. 각각의 업데이트는 하나 또는 그 이상의 트랜스액션을 포함한다. 주기적 업데이트는 별개로 또는 배취상으로 수령된다. 시스템은 어느 시간에 업데이트 초기화를 수령(810)한다. 초기화 업데이트는 전체 로컬 데이터베이스 버전을 포함한다. 시스템은 마지막 주기적 업데이트 아이덴티파이어와 트랜스액션 아이덴티파이어와 결합된 마지막 트랜스액션을 판독(820)한다. 주기적 업데이트와 트랜스액션은 각각 초기화 업데이트 생성이전에, 생성되고 언급된 마지막 것이다. 시스템은 원격 데이터베이스에 주기적 업데이트에 상응하는 잔존된 언급되지 않은 트랜스액션을 적용(825)한다. 시스템은 원격 데이터베이스에 최종 주기적 업데이트 후에 생성된 잔존된 주기적 업데이트를 적용(830)한다. 초기화 업데이트를 적용하는 것은 이미 잃어버린 주기적 업데이트를 위한 것이다.
예를 들면 LUE(100)은 규칙적 또는 불규칙적 시간 간격속에 센드파일(300)을 수령(805)한다. 센드파일(300)은 각각 또는 배취로 수령된다. LUE(100)은 어떤 시간에 초기화 센드파일(310)을 수령(810)한다. LUE(100)은 초기화 센드파일(310)로부터 센드파일 아이덴티파이어(615)와 트랜스액션 아이덴티파이어(620)을 판독(815)한다. LUE(100)은 센드파일 아이덴티파이어(615)와 결합된 센드파일(300)과 트랜스액션 아이덴티파이어(620)과 결합된 트랜스액션(605)을 결정(820)한다. 센드파일과 트랜스액션은 초기화 센드파일(310) 생성 이전에 각각 생성되고 언급된 마지막의 것에 의한다. LUE(100)은 원격 데이터베이스(210)에 상응하는 센드파일(300) 속의 잔존하는 언급되지 않은 트랜스액션(605)을 적용(825)한다. LUE(100)은 원격 데이터베이스(210)에 마지막 센드파일 sf-4 후에 잔존하는 센드파일(300)을 적용(830)한다.
선택적인 실시태양으로 예를 들면 LUE(100)은 초기화 센드파일 생성시간(611)이전에 생성시간(603)을 지닌 원격 데이터베이스(210)에 적용되지 않은 센드파일(300)을 디스카드 하거나 아키브 할 수 있다. 디스카드 되거나 아키 브된 센드파일(300)은 센드파일 아이덴티파이어(615)와 연관된 센드파일 sf-4를 포함할 수 있다.
초기화 센드파일(310)이 적용된 후에 원격 데이터베이스(210)에 적용된 어느 이후 센드파일(300)은 버려질 수 있는 것으로 인식되며 그 이유는 원격 데이터베이스(210)가 초기화 센드파일(310)과 리드-콘시스턴트 되기 때문이다. 따라서 그 이후 센드파일(300)은 재적용 될 수 있다.
본 발명의 실시태양에 따라, 센드파일(300)과 초기화 센드파일(310)은 로컬 데이터베이스(200)으로부터 원격 데이터베이스(210)으로 애크날리지먼트 없이 예를 들면 파일이 성공적으로 수령되었다는 것을 표현하는 ACK/NACK 시그널 없이 전송될 수 있다. ACK/NACK 시그널이 생성되는 것을 효과적으로 줄일 수 있다.
선택적 실시태양에서 ACK/NACK 시그널은 성공적인 파일의 접수를 표시하기 위해 원격 데이터베이스(210)으로부터 전송될 수 있다. 이와같은 실시태양에서 ACK/NACK 시그널은 신뢰할 수 없는 커뮤니케이션으로부터 시스템에 전송되는 것이다.
도 9는 로컬 데이터베이스로부터 송부된 업데이트 파일과 원격 데이터베이스로부터 접수된 업데이트파일의 유효화에 관한 본 발명의 또 다른 실시태양을 나타 내는 플로우 차트이다. 여기에서 시스템은 다수의 주기적 업데이트를 송부(905)한다. 각각의 업데이트는 하나 또는 그 이상의 트랜스액션을 포함한다. 주기적 업데이트는 각각 또는 배취로 전송된다. 시스템은 어떤 시간에 초기화 업데이트를 전송(910)하고 원격 데이터베이스에 초기화 업데이트를 적용한다. 초기화 업데이트는 전체의 로컬 업데이트 버전을 포함한다. 시스템은 데이터베이스를 비교함으로써 로컬과 원격 데이터베이스간에 디스크레펀시를 일단 확인(915)한다. 시스템은 이와 같은 디스크레펀시가 유효한지 또는 잘못된 것인지를 결정(920)한다. 시스템은 본 발명의 실시태양에 따라 원격 데이터베이스에 주기적 업데이트를 적용(925)한다. 효과적인 실시태양에서 로컬 데이터베이스로부터 업데이트 수령의 결과가 원격 데이터베이스에 에러가 없는지를 확인시킨다.
예를 들면 OLTP(140)은 원격 데이터베이스(210)에 규칙적 또는 불규칙적 시간 간격으로 센드파일(300)을 전송(905)한다. 센드파일(300)은 각각 또는 배취로 전송된다. OLTP(140)은 어느 시기에 LUE(100)에 초기화 센드파일(310)을 전송(910)하고 LUE(100)은 원격 데이터베이스(210)에 초기화 센드파일(310)을 적용한다. OLTP(140)은 원격 데이터베이스(210)과 로컬 데이터베이스(200)을 비교하고 그들간의 디스크레펀시를 확인(915)한다. OLTP(140)은 디스크레펀시가 유효한 것인지 잘못된 것인지를 결정(920)한다. OLTP(140)은 본 발명의 실시태양에 따라 원격 데이터베이스(210)에 센드파일(300)을 적용(925)하는 것을 LUE(100)에 통보할 수 있다. LUE(100)은 원격 데이터베이스(210)에 센드파일(300)을 적용한다.
본 발명의 선택적 실시태양에서 시스템은 디스크레펀시의 확인과 유효화 이전에 센드파일과 초기화 센드파일 모두를 적용할 수 있다. 선택적으로 시스템은 디스크레펀시의 확인과 유효화 이후에 센드파일과 초기화 센드파일 모두를 적용할 수 있다.
소스로부터 데이터를 적용하기 위한 목적으로 데스티네이션에 네트워크를 통해 전송된 어떠한 데이터는 유효화 과정을 수행하는 것으로 이해되어야 한다.
도 10A는 본 발명에 따른 센드파일과 초기화 센드파일의 유효화의 실시태양을 나타낸 플로우 차트이다. 다수의 주기적 업데이트와 초기화 업데이트를 원격 데이터베이스에 전송한 후에 시스템은 이러한 업데이트를 유효화시킨다. 각각의 업데이트는 로컬 데이터베이스에서 수행되는 하나 또는 그 이상의 트랜스액션을 포함한다. 각각의 트랜스액션은 하나 또는 그 이상의 이벤트를 포함한다. 이벤트는 데이터베이스 액션 또는 출현이다. 예를 들면 데이터베이스 속에 각각의 데이터의 추가, 수정, 삭제 등이다.
먼저 시스템은 로컬 데이터베이스에 기록된 것과 상응하는 원격 데이터베이스의 기록을 비교(1000)한다. 시스템은 원격 데이터베이스와 로컬 데이터베이스 기록간에 디스크레펀시를 기재한 익셉션을 생성(1005)한다. 익셉션은 각각의 디 스크레펀시를 위해 생성되는 것이다. 하나의 동일한 기록의 두 개의 버전 간에 적어도 하나 데이터 밸류의 차이가 디스크레펀시이다. 예를 들면 로컬 데이터베이스에 기록된 데이터는 (12345, xyz.com, 123.234.345) 일 수 있다. 원격 데이터베이스에 기록된 상응하는 데이터는 이와 동일한 것으로 추정되지만 (12345, abc.com , 123.234.345)일 수 있다. 따라서 기록의 두 번째 데이터 밸류는 디스크레펀시인 것이다. 그러므로 이러한 디스크레펀시를 기재한 익셉션을 생성하는 것이 본 발명의 실시태양이다. 익셉션은 디스크레펀시의 존재를 단순히 지시하는 디스크레펀시를 기재할 수도 있고 디스크레펀시의 위치를 상세화 할 수도 있고, 디스크레펀시 속에 두 개의 데이터 밸류 간의 차이를 기술할 수도 있다. 만약 동일한 데이터를 포함하는 것으로 예측되는 두 개의 기록이 있다면 로컬 데이터베이스에 기록된 데이터는 원격 데이터베이스에 기록된 데이터와 상응할 것이다.
디스크레펀시는 하나 또는 그 이상의 데이터 밸류의 기록상의 차이 또는 전체 기록상의 차이로 언급될 수 있는 것으로 이해되는 것이다.
시스템은 익셉션 아이덴티파이어가 기록의 아이덴티파이어와 결합되는 곳에서 각각의 익셉션과 결합된 익셉션 아이덴티파이어와 관련(1010)되어 있다. 예를 들면 데이터 기록(12345, xyz.com , 123.234.345)은 아이덴티파이어 d10일 수 있다. 따라서 익셉션 아이덴티파이어는 d10일 수 있다. 각각의 익셉션은 하나 또는 많은 익셉션(또는 디스크레펀시) 타입에 따라 분류될 수 있다. 익셉션 리스트 는 익셉션 아이덴티파이어가 속하는 익셉션의 형태를 포함하도록 작성될 수 있다. 익셉션 리스트와 서로 다른 익셉션 형태는 후에 상술하기로 한다. 시스템은 이벤트 아이덴티파이어와 기록의 아이덴티파이어가 결합되는 곳에서 각각의 이벤트의 업데이트를 포함하는 이벤트 아이덴티파이어와 결합(1015)될 수 있다. 예를 들면 데이터 레코드 (12345, xyz.com , 123.234.345)는 아이덴티파이어 d10을 지닐 수 있다. 따라서 이벤트 아이덴티파이어는 d10일 수 있다. 업데이트상의 각각의 이벤트는 이벤트 히스토리로부터 발견된다. 이벤트 히스토리는 리스팅이고 이것은 일정한 시간동안 로컬 데이터베이스 속에 기록된 이벤트 등이다. 이벤트 히스토리는 추후 상술할 것이다.
시스템은 만약 기록의 업데이트가 유효한 지를 결정(1020)한다. 도 10B는 유효화 결정의 실시태양을 나타낸 플로우 차트이다. 이와 같은 결정은 다음과 같이 행해진다. 각각의 이벤트는 각각의 익셉션과 비교(1022)한다. 만약 익셉션이 이벤트에 의해 정당화(1024)된다면 업데이트는 유효한 것으로 지시(1026)된다. 또한 업데이트는 원격 데이터베이스에 적용될 수 있는 것이다. 한편 만약 각각의 익셉션이 이벤트에 의해 정당화되지 않는다(1024)면 업데이트는 유효하지 않은 것으로 지시(1028)되고 익셉션은 에러로 로그된다. 익셉션은 이벤트 아이덴티파이어가 익셉션 아이덴티파이어와 상응할 때 및 관련된 이벤트와 익셉션 타입에 관련된 이벤트의 서열이 유효하게 상응할 때 정당화 되는 것이다. 유효한 서열은 추후 상술할 것이다. 만약 익셉션이 정당화되면 시스템은 익셉션 리스트로부터 익 셉션 아이덴티파이어를 제거시킨다. 정당화된 익셉션은 디스크레펀시가 유효한 것으로 지시되고 예를 들면 원격 데이터베이스는 업데이트를 수령하지 않았고 업데이트를 수령할 때 로컬 데이터베이스가 진정하게 매치될 것이다.
유효화 기간동안 시스템은 주기적으로 초기화 업데이트의 잠재적인 에러와 폴트를 아이덴티파이한다. 시스템은 이러한 업데이트가 구조적으로 정확하고 이러한 업데이트는 익셉션의 생성없이 성공적으로 적용되며 그렇지 않으면 로컬 및 원격 데이터베이스간에 차이를 통해 정확하게 에러를 감지할 수 있고 고도의 프로파일 데이터는 우연하게 삭제되지 않는다는 것을 명확히 인식 시킬 수 있는 것이다. 또한 시스템은 주기적 초기화 업데이트가 원격 데이터베이스에 성공적으로 적용되는 것을 확신시킬 수 있다.
많은 에러는 유효화 기간동안 원격 데이터베이스의 업데이트 시도를 통해 발견될 것이다. 예를 들면 데이터-센트릭 에러 원격데이터베이스에 존재하는 객관적인 경고 또는 외부 아이덴티파이어 침해에 의한 경고 등이 이러한 시도를 통해 발견될 것이다. 그러므로 본 발명의 유효화 실시태양을 수행한 후에 시스템은 원격 데이터베이스에 이와 같은 업데이트를 적용하도록 시도될 수 있는 것이다. 시도는 업데이트를 무효화 할수 있는 추가적 에러를 지니는 경우에 실패할 수 있다. 따라서 원격 데이터베이스에 이러한 업데이트의 적용은 더 이상 시도할 필요가 없어진다.
선택적인 실시태양에서 유효화 수행이전에 적어도 하나의 업데이트를 적용하는 시도가 가능하다. 만약 시도가 실패한다면 유효화는 스킵되며 업데이트는 버려질 것이다. 한편 만약 시도가 성공한다면 유효화를 수행하고 유효한 업데이트는 유지되고 유효하지 않은 업데이트는 디스크레펀시로 로그된다.
예시적인 실시태양에서 OLTP(140)은 센드파일(300)과 초기화 센드파일(310)을 유효화 시키고 이는 센드파일(300)과 초기화 센드파일(310)이 원격 데이터베이스(210)에 성공적으로 적용시킬 수 있는 것이다.
선택적인 실시태양에서 네트워크 컴퓨터(121), LUE(100) 또는 이들의 결합 시스템은 유효화를 위해 사용될 수 있다.
도 10A를 참조하여 OLTP(140)은 로컬 데이터베이스(200)와 원격 데이터베이스(210)간에 존재하는 익셉션(또는 디스크레펀시)를 결정하기 위해 비교된다. 익셉션은 세 가지 형태를 포함한다. 원격 데이터베이스(210)의 데이터가 로컬 데이터베이스(200)에 존재하지 않는 경우, 로컬 데이터베이스(200)의 데이터가 원격 데이터베이스(210)에 존재하지 않는 경우 로컬 데이터베이스(200)과 원격 데이터베이스(210)에 존재하는 상응하는 데이터가 서로 다른 경우 등이다. 물론 로컬 데이터베이스(200)과 원격 데이터베이스(210)의 상응하는 데이터가 서로 동일하다면 이 경우 데이터는 신뢰할 수 있는 것으로 인정되고 OLTP(140)에 더 이상의 프로세스를 할 필요는 없다.
디스크레펀시는 레코드 상의 하나 또는 그 이상의 데이터 밸류 또는 전체 레코드로 언급될 수 있는 것으로 이해될 것이다.
따라서 OLTP(140)는 로컬 데이터베이스(200)과 원격 데이터베이스(210)에 상응하는 레코드를 비교(1000)한다. OLTP(140)은 원격 데이터베이스(210)의 기록과 로컬 데이터베이스(200)의 기록 상에 디스크레펀시를 기록하는 익셉션을 생성(1005)한다. 이 때 익셉션은 각각의 디스크레펀시에 따라 생성되는 것이다. OLTP(140)은 각각의 익셉션과 함께 익셉션 아이덴티파이어를 결합(1010)시킨다. 이때 익셉션 아이덴티파이어는 레코드의 아이덴티파이어와 결합되는 것이다. 익셉션 리스트는 익셉션 타입이 속하는 익셉션을 위한 익셉션 아이덴티파이어와 익셉션 타입을 포함하도록 형성되어 있다. 실시태양에서 익셉션은 만약 첫 번째 익셉션 타입에 속한다면 'List 1'익셉션(또는 디스크레펀시)로 지시될 수 있다. 한편 만약 두 번째 익셉션 타입에 속한다면 'List 2'로 지시될 수 있고, 만약 세 번째 익셉션 타입에 속한다면 'List 3'로 지시될 수 있다. 도 11은 익셉션 리스트(1140)의 예시를 나타낸 것이다.
익셉션 리스트 위에 익셉션 아이덴티파이어의 존재는 센드파일(300) 또는 초기화 센드파일(310)이 잘못되었다는 것을 의미하는 것은 아니다. 그 이유는 예를 들면 모두 세 개 타입의 익셉션은 적절하게 발생될 수 있으며 이는 로컬 데이터베이스(200)의 변화와 원격 데이터베이스(210)의 업데이트 적용간의 시간적 지연에 기인할 수 있기 때문이다. 이와 같은 지연은 네트워크의 복잡에 의한 것일 수 있고 따라서 잘못된 데이터로부터 레지티메이트를 제거하기 위한 메카니즘을 부여하여 유효화 시킬 수 있다.
초기화 센드파일(310)을 위해 OLTP(140)은 데이터베이스(200,210) 모두를 이중 방향으로 모든 테이블 스캔을 수행함으로써 로컬 데이터베이스(200)과 원격 데이터베이스(210)을 비교할 수 있다. 이것은 로컬 데이터베이스(200)의 모든 데이터는 원격 데이터베이스(210)의 모든 데이터와 비교될 수 있는 것이다. 그러므로 원격 데이터베이스(210)의 모든 데이터는 로컬 데이터베이스(200)의 모든 데이터와 비교한다. 이는 모든 디스크레펀시를 발견하기 위해 데이터베이스(200,210)의 전체적인 비교를 제공하는 것이다.
센드파일(300)을 위해 OLTP(140)은 센드파일(300)에 기록된 로컬 데이터베이스(200)과 원격 데이터베이스(210)의 데이터 레코드 만을 비교할 수 있다. 이것은 목적 디스크레펀시를 발견할 수 있는 신속한 퀘어리를 제공하는 것이다.
선택적으로 초기화 센드파일(310)과 센드파일(300)의 랜덤 셈플링에 대한 데이터의 비교를 행할 수 있다. OLTP(140)은 이때 로컬 데이터베이스(200)과 원격 데이터베이스(210)의 랜덤하게 셈플링된 데이터만을 비교하는 것이다.
익셉션 리스트(1140)은 미싱 이벤트 예를 들면 원격 데이터베이스(210)과 불일치하는 로컬 데이터베이스(200)위에 추가(add), 수정(mod), 삭제(del)등의 미싱 이벤트에 상응하는 것이다. 그러므로 이와 같은 후보 이벤트를 확인하기 위해 OLTP(140)은 로컬 데이터베이스(200)에 언급된 최근의 트랜스액션을 심사한다. 일반적으로 각각 언급된 트랜스액션을 위해 로컬 데이터베이스(200)에 저장된 로그 테이블에 엔트리를 정할 수 있다. 이와 같은 엔트리는 변화된 기록의 아이덴티파이어, 레코드의 변화(예를 들면 추가,수정,삭제 이벤트)의 트랜스액션(또는 이벤트), 트랜스액션을 오더링하기 위해 지적되는 로그 시퀀스의 수 등을 포함할 수 있다.
예시적인 로그 테이블(1100)이 도 11에 나타나 있다. 이와 같은 예시에서 센드파일(300)은 로그 테이블(1100)에 나타난 트랜스액션(1108-1114)을 포함한다. 첫 번째 엔트리(1101)은 첫 번째 트랜스액션 (1108) 중에서 데이터(네임서버) n1 및 n2가 아이덴티파이어 d1에 결합된 데이터(도메인)를 추가하는 것을 표시한다. 그러므로 아이덴티파이어는 d1이고 이벤트는 추가되며 로그 시퀀스 번호는 11526이다. 이와 유사하게 두 번째 엔트리(1102)는 두 번째 트랜스액션 (1109) 중에서 데이터 n8 및 n9가 아이덴티파이어 d2에 결합된 데이터를 추가하는 것을 표시한다. 세 번째 엔트리(1103)은 세 번째 트랜스액션(1110) 중에서 아이덴티파이어 d3에 결 합된 데이터를 삭제하는 것을 표시한다. 네 번째 엔트리(1104)은 네 번째 트랜스액션(1111) 중에서 아이덴티파이어 d1에 결합된 데이터를 데이터 n5에 추가시켜 수정하는 것을 표시한다. 다섯 번째 엔트리(1105)는 다섯 번째 트랜스액션(1112)를 위해 아이덴티파이어 d3에 결합된 데이터를 데이터 n6 및 n7에 추가하는 것을 표시한다. 여섯 번째 엔트리(1106)은 아이덴티파이어 d4와 결합된 데이터를 데이터 n3에 삭제시켜 수정하는 것을 표시한다. R번째 엔트리(1107)은 R번째 트랜스액션(1114) 중에서 아이덴티파이어 d5와 결합된 데이터를 삭제시키는 것을 표시한다.
따라서 도10A에 나타난 바와 같이, OLTP(140)은 업데이트된 각각의 이벤트의 이벤트 아이덴티파이어와 결합(1015)된다. 이 곳에서 이벤트 아이덴티파이어는 레코드의 아이덴티파이어와 결합되는 것이다. 업데이트된 각각의 이벤트는 이벤트 히스토리로부터 발견된다. 이벤트 히스토리 , 이벤트 아이덴티파이어에 의한 인덱스와 오더는 로그 테이블(1100)으로부터 생성된다. 예시적 이벤트 히스토리(1120)은 도11에 나타나 있다. 여기에 로그테이블(1100) 속에 첫 번째(1101) 및 네 번째 엔트리(1104)는 아이덴티파이어 d1과 결합된 데이터의 변화를 표시한다. 그러므로 이벤트 히스토리(1120)은 d1 아이덴티파이어(1121)과 두 개의 이벤트(1126)을 포함하는 것으로 첨가후 수정이 아이덴티파이어 d1에 결합된 데이터 상에서 이루어짐을 포함하는 것이다. 두 번째 엔트리(1102)는 아이덴티파이어 d2와 결합된 데이터의 변화를 포함한다. 그러므로 이벤트 히스토리(1120)은 d2 아이덴티파이어(1122)와 추가 이벤트(1127)을 포함한다. 이벤트 히스토리(1120)은 d3 아이덴티파이어(1123)과 두 개의 이벤트 삭제와 첨가가 이루어진다. 지시적인 세 번째(1103) 및 다섯 번째 엔트리(1105)는 아이덴티파이어 d3과 결합된 데이터의 변화를 나타내는 것을 포함하는 것이다. 여섯 번째 엔트리(1106)은 아이덴티파이어 d4와 결합된 데이터의 변화를 지시한다. 따라서 이벤트 히스토리(1120)은 d4 아이덴티파이어(1124)와 수정 이벤트(1129)를 포함하는 것이다. R번째 엔트리(1107)은 d5 아이덴티파이어와 결합된 데이터의 변화를 지시하고 이벤트 히스토리(1120)은 d5 아이덴티파이어(1125)와 삭제이벤트(1130)을 포함한다. 아이덴티파이어(1121- 1125)는 d1으로부터 d5까지 오더되는 것이다.
도 10A를 참조하여 OLTP(140)은 업데이트가 유효한지를 결정(1020)한다. 이와 같은 결정은 예를 들면 도10B에 나타난 실시태양에 따라 수행된다. 먼저 OLTP(140)은 이벤트 아이덴티파이어(1121-1125)를 익셉션 아이덴티파이어(1140)와 이들 아이덴티파이어가 일치하는지를 결정하기 위한 비교(1022)를 행한다. 예를 들면 도 11에 있어서 이벤트 히스토리(1120) 속에 아이덴티파이어 d1(1121)은 익셉션 리스트(1140)의 List 2의 익셉션 아이덴티파이어 d1과 상응한다. 이벤트와 익셉션의 상응을 확인한 후에 OLTP(140)은 만약 이벤트가 익셉션을 정당화시킨다면 결정(1024)한다. 이와 같은 정당화 과정은 다음과 같은 방법에 따른다. 이벤트 히스토리(1120)속에 각각의 이벤트 아이덴티파이어(1121-1125)를 위해 OLTP(140)은 이벤트 히스토리(1120)속에 이벤트(1126-1130)의 각각의 순서가 유효한지 여부를 결정한다. 이것은 예를 들면 다음과 같은 절차를 요구한다. 익셉션 타입을 위한 이벤트의 유효한 순서를 결정하는 것, 상응하는 이벤트 아이덴티파이어를 위한 이벤트 히스토리(1120)과 이벤트의 이벤트 아이덴티파이어 시퀀스를 조사하는 것이다. 각각의 익셉션 타입의 유효 순서는 이하 설명한다. 이벤트 히스토리(1120) 속에 이벤트 순서(1126-1130)가 유효한 순서와 매치된다면 상응하는 이벤트 아이덴티파이어 (1121-1125)는 유효한 순서이다. 이와 같이 익셉션 아이덴티파이어와 결합된 익셉션은 정당화될 수 있다. 그리고 이벤트 아이덴티파이어를 포함하는 상응하는 트랜스액션(1108-1114)는 적법한 것이며 에러가 없는 것이다. 이와 같은 경우 OLTP(140)은 익셉션 리스트(1140)으로부터 익셉션 아이덴티파이어를 제거시킨다.
익셉션 타입의 List 1의 유효한 이벤트 순서는 (mod)*(del)이다. 이와 같은 순서는 없거나 존재하는 'mod'이벤트와 이에 따른 'del'이벤트를 포함하는 것이다. 'List 1'의 익셉션 타입은 원격 데이터베이스(210)에 존재하는 데이터와 상응한다. 그러나 로컬 데이터베이스(200)은 아니다. 이와 같은 경우 데이터는 로컬 데이터베이스(200)으로부터 최근 삭제되며 트랜스액션은 센드파일(300)에 아직 쓰여지지 않는다. 그러므로 센드파일(300)은 원격 데이터베이스(210)에 아직 적용되지 않는다. 그러므로 데이터는 원격 데이터베이스(210)에 아직 존재하는 것이다. 이것은 적법한 디스크레펀시로 여겨진다. 왜냐하면 같은 포인트에서 센드파일(300)은 원격 데이터베이스(210)에 생성되거나 적용되도록 예측되기 때문 이다. 그러므로 이와 같은 순서(1126-1130)가 익셉션 리스트(1140)의 List 1속에 익셉션 아이덴티파이어를 위한 이벤트 히스토리(1120)속에 발견된다면 상응하는 트랜스액션은 유효한 것으로 간주되는 것이다.
예를 들면 도 11에 있어서 d5 아이덴티파이어(1125)와 이와 관련된 데이터는 이벤트 히스토리(1120) 속에 인덱스된 로그테이블(1100)의 R번째 엔트리(1114)에 나타난 바와 같이 로컬 데이터베이스(200)으로부터 삭제되는 것이다. 유효화 하는 시기에 d5는 로컬 데이터베이스(200)으로부터 삭제되나 원격 데이터베이스(210)으로부터 삭제되지는 않는다. 그러므로 익셉션 리스트(1140)은 List 1 속에 아이덴티파이어 d5를 포함한다. 이벤트 히스토리(1120)에 따라 d5 아이덴티파이어(1125)와 결합된 이벤트(1130)은 'del'이다. OLTP(140)는 익셉션 타입의 List 1 의 유효한 순서를 비교한다. 예를 들면 이벤트 히스토리(1120)속에 d5 이벤트(1130)을 거슬리는 (mod)*(del) 등을 들 수 있다. List 1은 유효한 순서이고 이벤트(1130)과 매치되기 때문에 아이덴티파이어 d5와 결합된 삭제 트랜스액션(1114)는 적법하고 에러가 아닌 것으로 간주된다. 따라서 아이덴티파이어 d5는 익셉션 리스트(1140)으로부터 제거된다.
List 2 익셉션 타입을 위한 유효한 순서의 이벤트는 (add) 일 수 있다. 이 순서는 'add' 이벤트 뒤에 어느 것이 오는 지를 포함하는 것이다. 'List 2' 익셉션 타입은 로컬 데이터베이스(200)에 존재하는 데이터와 일치하나 원격 데이터베이 스(210)과는 다르다. 이 경우에 있어서 데이터는 로컬 데이터베이스(200)에 최근 첨가되었고 트랜스액션은 센드파일(300)에 아직 기재되지 않았다. 그러므로 센드파일(300)은 원격 데이터베이스(210)에 아직 적용되지 않은 것이다. 그러므로 원격 데이터베이스(210)에는 존재하지 않는 것이다. 이것은 정당한 디스크레펀시로 여겨질 것이며 그 이유는 약간의 포인터 센드파일(300)이 원격 데이터베이스(210)에 생성되고 적용될 것으로 예견되기 때문이다. 따라서 만약 이와 같은 순서(1126-1130)이 익셉션 리스트(1140)의 List 2에 익셉션 아이덴티파이어를 위한 이벤트 히스토리(1120) 속에서 발견되며 상응하는 트랜스액션은 유효한 것으로 여겨지는 것이다.
도 11을 참조하여 d2 아이덴티파이어(1121,1123)은 최초 로컬 데이터베이스(200)에 첨가된 데이터와 결합될 수 있다. 이벤트의 순서(1126,1127)이 'add' 이벤트로 시작하기 때문에 d1과 d2 아이덴티파이어(1121, 1123)은 List 2 익셉션 타입을 위한 유효한 순서에 매치된다. 따라서 이 아이덴티파이어를 포함하는 트랜스액션(1108,1109)는 유효한 것으로 간주되고 아이덴티파이어 d1 및 d2는 익셉션 리스트(1140)로부터 제외된다. d3 아이덴티파이어(1123)은 그 순서(1128) 속에 'add' 이벤트를 포함하고 있음을 주목하라. 그러나 'add' 이벤트는 순서(1128) 속에 첫 번째 것은 아니다. 따라서 순서(1128)은 List 2 타입으로 자격을 주는 것은 아니다. 덧붙여 d3 는 익셉션 리스트(1140)의 List 2에 지시되지 않았기 때문에 OLTP(140)은 이것을 List 2 유효한 순서로 체크하지 않는 다.
'List 3' 익셉션 타입을 위한 유효한 이벤트 순서는 (del)(add) 또는 (mod)이다. 이 순서는 'del' 이벤트 뒤에 'add'이벤트나 'mod'이벤트가 따라오는 것을 포함한다. List 3 익셉션 타입은 데이터베이스(200,210) 모두에 존재하는 데이터와 상응하나 다른 것이다. 이 경우에 있어서 데이터는 로컬 데이터베이스(200)에 최근 수정되고 트랜스액션은 센드파일(300)에 아직 쓰여지지 않을 수 있다. 그러므로 센드파일(300)은 원격 데이터베이스(210)에 아직 적용되지 않을 수 있는 것이다. 그러므로 아이덴티파이어와 결합된 데이터는 원격 데이터베이스(210) 속에서 아직 수정되지 않은 것이다. 또한 이것은 어떤 시점에서 센드파일(300)이 원격 데이터베이스(210)에 적용되거나 생성될 것을 예측하고 있기 때문에 적법한 디스크레펀시로 간주되는 것이다. 따라서 만약 이와 같은 순서(1126-1130)이 익셉션 리스트(1140)의 List 3 익셉션 아이덴티파이어를 위한 이벤트 히스토리(1120) 속에서 발견된다면 상응하는 트랜스액션은 유효한 것으로 간주되는 것이다.
예를 들면 도 11에 있어서 d3 및 d4 아이덴티파이어(1123,1124)는 로컬 데이터베이스(200)에 수정된 데이터와 결합되어 있다. d3 아이덴티파이어(1123)인 경우, d3 아이덴티파이어(1123)과 그 데이터가 최초로 삭제되고 새로운 데이터가 다시 추가되며, 이벤트(1128)의 순서는 'del' 과 'add'를 포함하는 순서이다. d4 아이덴티파이어(1124)인 경우에는 d4 데이터는 삭제 데이터로 수정되며 이는 이벤 트(1129)의 순서가 'mod'를 포함하기 때문이다. 이벤트의 순서(1128,1129)가 익셉션 타입 List 3을 위한 유효한 순서와 매치되기 때문에 그의 상응하는 트랜스액션(1110, 1112, 1113)은 유효한 것으로 인정되고 아이덴티파이어 d3과 d4는 익셉션 리스트(1140)으로부터 제거된다.
도 10B를 참조하여 익셉션 리스트(1140) 속에 그들의 아이덴티파이어에 의해 지시된 모든 익셉션은 이벤트에 의해 정당화(1024)된다. 예를 들면 만약 익셉션 리스트(1140)이 비어 있는 경우, OLTP(140)은 센드파일(300) 또는 초기화 센드파일(310)을 유효한 것으로 지시(1026)할 것이고 원격 데이터베이스(210)에 센드파일(300) 또는 초기화 센드파일(310)을 적용시킬 것을 LUE(100)에 통보한다. LUE(100)은 원격 데이터베이스(210)에 센드파일(300) 또는 초기화 센드파일(310)을 적용할 수 있다.
이와는 반대로 만약 모든 익셉션 들이 이벤트에 의해 정당화되지 않는다면(1024) 예를 들면 익셉션 리스트(1140)은 비어있지 않으며 남아있는 익셉션은 센드파일(300) 또는 초기화 센드파일(310)속에 에러를 지시하는 경우이다. 따라서 OLTP(140)은 센드파일(300) 또는 초기화 센드파일(310)이 유효하지 않음을 지시하고(1028) 에러파일 속에 에러를 로그시킨다.
선택적 실시태양에서 예를 들면 만약 이미 지정된 시간 후에, 센드파일(300) 또는 초기화 센드파일(310)이 유효하지 않은 것으로 지시된다면, OLTP(140)은 유효하지 않은 센드파일(300) 또는 초기화 센드파일(310)을 위에 디스크레펀시가 실지로 에러임을 확신시키기 위해 유효화 과정을 반복한다. 이와 같은 미리 결정된 지연은 센드파일(300, 310)과 데이터베이스(200,210)의 늦은 전송보다 더 많은 시간을 네트워크에 요하며 리드-콘시스턴트한 것이다.
본 발명의 실시태양에서 원격 데이터베이스(210)의 데이터는 중요한 시점에 의해 로컬 데이터베이스(200)에 데이터를 래그시킬 수 있다. 따라서 데이터베이스(200,210)를 비교하고 에러를 찾기 위해서 데이터베이스(200,210)을 서로서로 동일한 카피가 되는 특정 시점에 리드-콘시스턴트 할 것이다. 일반적으로 원격 데이터베이스(210)은 로컬 데이터베이스(200)을 향하여 로울되며 여기서 원격 데이터베이스(210)속의 데이터는 로컬 데이터베이스(200)속의 데이터와 본질적으로 동일한 것이다.
따라서, 유효화를 신속히 하기 위해 어떤 현재 생성된 초기화 센드파일(310)과 후속하는 센드파일(300)은 유효화 시기 이전에 원격 데이터베이스(210)에 적용될 수 있다. 이와 같이 디스크레펀시의 수는 현격히 줄어든다. 센드파일(300,310)의 배취 프로세싱은 천킹(chunking)이라 불리운다. 천크 속에 첫 번째 및 마지막 센드파일(300,310)은 각각 낮고 높은 워터마크를 칭한다. 첫 번째 천크, 초기 천크라 칭하는 것은 초기화 센드파일(310)을 포함한다. 모든 그 후의 천크는 터미널 천크로 불리우고 오직 센드파일(300)만을 포함한다.
천킹은 단독 유효화가 아닌 그룹 유효화를 위해 제공되는 것이다. 따라서 만약 에러가 천크 속에서 감지된다면 전체 천크는 유효하지 않은 것으로 지시되며 오직 센드파일(300) 또는 초기화 센드파일(310) 뿐만 아니라 어느 곳에서도 에러는 발생할 수 있는 것이다.
본 발명의 실시태양에 따른 메카니즘과 방법은 이와 같은 실시태양의 가르침에 따라 일반적 목적의 마이크로프로세서 프로그램의 수행을 위해 사용될 수 있다. 본 발명의 실시태양은 따라서 지시를 포함하는 기계가 판독할 수 있는 매체를 포함하며 이는 본 발명의 실시태양에 따른 방법을 수행함으로써 프로세서의 프로그램을 사용할 수 있을 것이다. 이와 같은 매체는 특히 한정되지 않으나 플로피디스크, 광디스크 및 CD 롬 등이다.
본 발명의 여러 가지 실시태양은 여기에 설명하고 도시한 바와 같다. 그러나 본 발명은 다양한 변형과 모디피케이션이 가능하고 본 발명의 정신을 벗어나지 않는다면 첨부하는 클레임의 목적 내에서 변형이 가능한 것이다.
Claims (34)
- 적어도 하나의 트랜스액션을 지니는 점진적인 변화에 기인하는 다수의 주기적 업데이트를 로컬 데이터베이스에 생성시키는 단계; 네트워크 기반 위에 다수의 주기적 업데이트를 원격 데이터베이스에 전송하는 단계를 포함하는 네트워크 기반 위에 원격 데이터베이스를 업데이트 시키는 방법에 있어서, 상기 다수의 주기적 업데이트의 생성은 스타트 타임에 로컬 데이터베이스의 버전을 포함하는 초기화 업데이트를 생성시키는 단계; 스타트 타임에 기반을 둔 다수의 주기적 업데이트의 마지막 주기적 업데이트를 결정하는 단계; 스타트 타임에 기반을 둔 마지막 트랜스 액션을 결정하는 단계; 및 네크워크 기반 위에 원격 데이터베이스에 초기화 업데이트, 최종 주기적 업데이트 아이덴티파이어 및 최종 트랜스액션 아이덴티파이어를 전송하는 단계를 포함함을 특징으로 하는 원격 데이터베이스를 업데이트 시키는 방법
- 제 1항에 있어서, 상기 초기화 업데이트를 전송하는 단계는 최종 주기적 업데이트 아이덴티파이어와 최종 주기적 업데이트를 결합하는 단계; 최종 트랜스액션 아이덴티파이어와 최종 트랜스액션을 결합하는 단계로 구성되어 있음을 특징으로 하는 방법
- 제 1항에 있어서, 상기 다수의 주기적 업데이트는 규칙적 또는 불규칙적 시간 간격에 생성됨을 특징으로 하는 방법
- 제 1항에 있어서, 상기 초기화 업데이트 생성의 스타트 타임은 주기적 업데이트 생성의 스타트 타임과 동일함을 특징으로 하는 방법
- 제 1항에 있어서, 상기 초기화 업데이트 생성의 스타트 타임은 주기적 업데이트 생성의 스타트 타임 이후 임을 특징으로 하는 방법
- 제 1항에 있어서, 상기 주기적 업데이트는 고유한 트랜스액션 아이덴티파이어를 지니는 다수의 트랜스액션을 포함함을 특징으로 하는 방법
- 적어도 하나의 트랜스액션을 지니는 점진적인 변화에 기인하는 다수의 주기적 업데이트를 로컬 데이터베이스에 수령하는 단계; 네트워크 기반 위에 스타트 타임에서 로컬 데이터베이스의 버전을 포함하는 초기화 업데이트를 수령하는 단계; 초기화 업데이트로부터 최종 주기적 업데이트 아이덴티파이어를 판독하는 단계; 초기화 업데이트로부터 최종 트랜스액션 아이덴티파이어를 판독하는 단계; 최종 주기적 업데이트는 스타트 타임 기반에 의한 것인 최종 주기적 업데이트 아이덴티파이어로부터 최종 주기적 업데이트를 결정하는 단계; 최종 트랜스액션은 스타트 타임 기반에 의한 것인 최종 트랜스액션 아이덴티파이어로부터 최종 트랜스액션을 결정하는 단계; 최종 트랜스액션 이후에 생성된 트랜스액션을 원격 데이터베이스에 적용하는 단계; 및 최종 주기적 업데이트 이후에 생성된 주기적 업데이트를 원격 데이터베이스에 적용하는 단계를 포함하는 네트워크 기반 위에 원격 데이터베이스를 업데이트 하는 방법
- 제 7항에 있어서, 초기화 업데이트의 스타트 타임이전에 생성된 주기적 업데이트를 버리는 단계를 더욱 포함함을 특징으로 하는 방법
- 제 7항에 있어서, 다수의 주기적 업데이트는 주기적 시간 간격으로 일정 시간에 수령하는 것을 특징으로 하는 방법
- 제 7항에 있어서, 다수의 주기적 업데이트는 주기적 시간 간격에 배취로 수령하는 것을 특징으로 하는 방법
- 제 7항에 있어서, 주기적 업데이트는 다수의 트랜스액션을 포함하고 다수의 트랜스액션 각각은 고유의 트랜스액션 아이덴티파이어를 지님을 특징으로 하는 방법
- 적어도 하나의 트랜스액션을 지니는 점진적인 변화에 기인하는 다수의 주기적 업데이트를 로컬 데이터베이스에 생성시키는 단계; 스타트 타임 전에 생성된 마지막 주기적 업데이트와 관련된 업데이트 아이덴티파이어, 스타트 타임 전에 언급된 마지막 트랜스액션에 관련된 트랜스액션 아이덴티파이어, 스타트 타임에 로컬 데이터베이스의 버전을 포함하는 초기화 업데이트를 생성시키는 단계; 및 네크워크 기반 위에 원격 데이터베이스에 초기화 업데이트, 최종 주기적 업데이트 아이덴티파이어 및 최종 트랜스액션 아이덴티파이어를 전송하는 단계를 포함하는 네트워크 기반위에 원격 데이터베이스를 업데이트 시키는 방법
- 제 12항에 있어서, 상기 다수의 주기적 업데이트는 규칙적인 시간 간격에 의해 생성됨을 특징으로 하는 방법
- 제 12항에 있어서, 상기 다수의 주기적 업데이트는 불규칙적인 시간 간격에 의해 생성됨을 특징으로 하는 방법
- 제 12항에 있어서, 초기화 업데이트 생성의 스타트 타임은 주기적 업데이트 생성의 스타트 타임과 동일함을 특징으로 하는 방법
- 제 12항에 있어서, 초기화 업데이트 생성의 스타트 타임은 주기적 업데이트 생성의 스타트 타임 이후 임을 특징으로 하는 방법
- 적어도 하나의 네트워크와 결합된 프로세서; 네트워크 기반 위에서 원격 데이터베이스를 업데이팅 하기 위한 방법을 수행하기 위한 프로세서에 의해 수행되어지는 로컬 데이터베이스와 인스트럭션을 지닌 메모리로서 프로세서와 결합된 메모리로 구성된 네트워크 기반 위에 원격 데이터베이스를 업데이트 하기 위한 시스템에 있어서, 상기 업데이트 방법은 적어도 하나의 트랜스액션을 지니는 점진적인 변화에 기인하는 다수의 주기적 업데이트를 로컬 데이터베이스에 생성시키는 단계; 네트워크 기반 위에 다수의 주기적 업데이트를 원격 데이터베이스에 전송하는 단계로 구성되며, 상기 다수의 주기적 업데이트의 생성은 스타트 타임에 로컬 데이터베이스의 버전을 포함하는 초기화 업데이트를 생성시키는 단계; 스타트 타임에 기반을 둔 다수의 주기적 업데이트의 마지막 주기적 업데이트를 결정하는 단계; 스타트 타임에 기반을 둔 마지막 트랜스 액션을 결정하는 단계; 및 네크워크 기반 위에 원격 데이터베이스에 초기화 업데이트, 최종 주기적 업데이트 아이덴티파이어 및 최종 트랜스액션 아이덴티파이어를 전송하는 단계를 포함함을 특징으로 하는 원격 데이터베이스를 업데이트 시키는 시스템
- 제 17항에 있어서, 상기 초기화 업데이트를 전송하는 단계는 최종 주기적 업데이트 아이덴티파이어와 최종 주기적 업데이트를 결합하는 단계; 최종 트랜스액션 아이덴티파이어와 최종 트랜스액션을 결합하는 단계로 구성되어 있음을 특징으로 하는 시스템
- 제 17항에 있어서, 상기 다수의 주기적 업데이트는 규칙적 또는 불규칙적 시간 간격에 생성됨을 특징으로 하는 시스템
- 제 17항에 있어서, 상기 초기화 업데이트 생성의 스타트 타임은 주기적 업데이트 생성의 스타트 타임과 동일함을 특징으로 하는 시스템
- 제 17항에 있어서, 상기 초기화 업데이트 생성의 스타트 타임은 주기적 업데이트 생성의 스타트 타임 이후 임을 특징으로 하는 시스템
- 제 17항에 있어서, 상기 주기적 업데이트는 고유한 트랜스액션 아이덴티파이어를 지니는 다수의 트랜스액션을 포함함을 특징으로 하는 시스템
- 적어도 하나의 네트워크와 결합된 프로세서; 네트워크 기반 위에서 원격 데이터베이스를 업데이팅 하기 위한 방법을 수행하기 위한 프로세서에 의해 수행되어지는 로컬 데이터베이스와 인스트럭션을 지닌 메모리로서 프로세서와 결합된 메모리로 구성된 네트워크 기반 위에 원격 데이터베이스를 업데이트 하기 위한 시스템에 있어서, 상기 업데이트 방법은 적어도 하나의 트랜스액션을 지니는 점진적인 변화에 기인하는 다수의 주기적 업데이트를 로컬 데이터베이스에 수령하는 단계; 네트워크 기반 위에 스타트 타임에서 로컬 데이터베이스의 버전을 포함하는 초기화 업데이트를 수령하는 단계; 초기화 업데이트로부터 최종 주기적 업데이트 아이덴티파이어를 판독하는 단계; 초기화 업데이트로부터 최종 트랜스액션 아이덴티파이어를 판독하는 단계; 최종 주기적 업데이트는 스타트 타임 기반에 의한 것인 최종 주기적 업데이트 아이덴티파이어로부터 최종 주기적 업데이트를 결정하는 단계; 최종 트랜스액션은 스타트 타임 기반에 의한 것인 최종 트랜스액션 아이덴티파이어로부터 최종 트랜스액션을 결정하는 단계; 최종 트랜스액션 이후에 생성된 트랜스액션을 원격 데이터베이스에 적용하는 단계; 및 최종 주기적 업데이트 이후에 생성된 주기적 업데이트를 원격 데이터베이스에 적용하는 단계를 포함하는 네트워크 기반 위에 원격 데이터베이스를 업데이트 하는 시스템
- 제 23항에 있어서, 초기화 업데이트의 스타트 타임이전에 생성된 주기적 업데이트를 버리는 단계를 더욱 포함함을 특징으로 하는 시스템
- 제 23항에 있어서, 다수의 주기적 업데이트는 규칙적 또는 불규칙적 주기적 시간 간격에 일정 시간에 수령하는 것을 특징으로 하는 시스템
- 제 23항에 있어서, 다수의 주기적 업데이트는 규칙적 또는 불규칙적 주기적 시간 간격에 배취로 수령하는 것을 특징으로 하는 시스템
- 제 23항에 있어서, 주기적 업데이트는 다수의 트랜스액션을 포함하고 다수의 트랜스액션 각각은 고유의 트랜스액션 아이덴티파이어, 랜덤 오더의 트랜스액션 아이덴티파이어를 지님을 특징으로 하는 시스템
- 적어도 하나의 트랜스액션을 지니는 점진적인 변화에 기인하는 다수의 주기적 업데이트를 로컬 데이터베이스에 생성시키는 단계; 네트워크 기반 위에 다수의 주기적 업데이트를 원격 데이터베이스에 전송하는 단계를 포함하고 이때, 상기 다수의 주기적 업데이트의 생성은 스타트 타임에 로컬 데이터베이스의 버전을 포함하는 초기화 업데이트를 생성시키는 단계; 스타트 타임에 기반을 둔 다수의 주기적 업데이트의 마지막 주기적 업데이트를 결정하는 단계; 스타트 타임에 기반을 둔 마지막 트랜스 액션을 결정하는 단계; 및 네크워크 기반 위에 원격 데이터베이스에 초기화 업데이트, 최종 주기적 업데이트 아이덴티파이어 및 최종 트랜스액션 아이덴티파이어를 전송하는 단계를 포함하는 원격 데이터베이스를 업데이트 시키는 방법을 수행시킬 수 있는 프로세서에 의해 수행되어지는 프로그램 인스트럭션을 포함하는 기계가 판독 가능한 매체
- 적어도 하나의 트랜스액션을 지니는 점진적인 변화에 기인하는 다수의 주기적 업데이트를 로컬 데이터베이스에 수령하는 단계; 네트워크 기반 위에 스타트 타임에서 로컬 데이터베이스의 버전을 포함하는 초기화 업데이트를 수령하는 단계; 초기화 업데이트로부터 최종 주기적 업데이트 아이덴티파이어를 판독하는 단계; 초기화 업데이트로부터 최종 트랜스액션 아이덴티파이어를 판독하는 단계; 최종 주기적 업데이트는 스타트 타임 기반에 의한 것인 최종 주기적 업데이트 아이덴티파이어로부터 최종 주기적 업데이트를 결정하는 단계; 최종 트랜스액션은 스타트 타임 기반에 의한 것인 최종 트랜스액션 아이덴티파이어로부터 최종 트랜스액션을 결정하는 단계; 최종 트랜스액션 이후에 생성된 트랜스액션을 원격 데이터베이스에 적용하는 단계; 및 최종 주기적 업데이트 이후에 생성된 주기적 업데이트를 원격 데이터베이스에 적용하는 단계를 포함하는 네트워크 기반 위에 원격 데이터베이스를 업데이트 하는 방법을 수행시킬 수 있는 프로세서에 의해 수행되어지는 프로그램 인스트럭션을 포함하는 기계가 판독 가능한 매체
- 삭제
- 삭제
- 삭제
- 삭제
- 적어도 하나의 트랜스액션을 지니는 로컬 데이터베이스의 점진적 변화에 기반을 둔 다수의 주기적 업데이트를 생성하는 수단; 스타트 타임에 로컬 데이터베이스의 버전, 스타트 타임 전에 생성된 최종 주기적 업데이트와 관련된 업데이트 아이덴티파이어, 스타트 타임전에 언급된 마지막 트랜스액션과 관련된 트랜스액션 아이덴티파이어를 포함하는 초기화 업데이트를 생성하기 위한 수단; 및 네크워크 기반 위에 원격 데이터베이스에 초기화 업데이트, 최종 주기적 업데이트 아이덴티파이어 및 최종 트랜스액션 아이덴티파이어를 전송하는 수단으로 구성된 업데이트 발생기
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US33084201P | 2001-11-01 | 2001-11-01 | |
US60/330,842 | 2001-11-01 | ||
US36516902P | 2002-03-19 | 2002-03-19 | |
US60/365,169 | 2002-03-19 | ||
PCT/US2002/035083 WO2003038654A1 (en) | 2001-11-01 | 2002-11-01 | Method and system for updating a remote database |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040053254A KR20040053254A (ko) | 2004-06-23 |
KR100953137B1 true KR100953137B1 (ko) | 2010-04-16 |
Family
ID=26987480
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020047006689A KR100941350B1 (ko) | 2001-11-01 | 2002-11-01 | 트랜잭셔널 메모리 매니저 |
KR1020047006649A KR100953137B1 (ko) | 2001-11-01 | 2002-11-01 | 원격 데이터베이스를 업데이트하기 위한 방법 및 시스템 |
KR1020047006658A KR100977161B1 (ko) | 2001-11-01 | 2002-11-01 | 원격 데이터베이스를 유효화시키기 위한 방법 및 시스템 |
KR1020047006695A KR100970122B1 (ko) | 2001-11-01 | 2002-11-01 | 고속 논-콘커런시 제어된 데이터베이스 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020047006689A KR100941350B1 (ko) | 2001-11-01 | 2002-11-01 | 트랜잭셔널 메모리 매니저 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020047006658A KR100977161B1 (ko) | 2001-11-01 | 2002-11-01 | 원격 데이터베이스를 유효화시키기 위한 방법 및 시스템 |
KR1020047006695A KR100970122B1 (ko) | 2001-11-01 | 2002-11-01 | 고속 논-콘커런시 제어된 데이터베이스 |
Country Status (16)
Country | Link |
---|---|
US (10) | US20030084038A1 (ko) |
EP (10) | EP1449062B1 (ko) |
JP (4) | JP4420324B2 (ko) |
KR (4) | KR100941350B1 (ko) |
CN (4) | CN1610902B (ko) |
AU (5) | AU2002356886A1 (ko) |
BR (4) | BR0213863A (ko) |
CA (4) | CA2466110C (ko) |
EA (4) | EA005646B1 (ko) |
HK (1) | HK1075308A1 (ko) |
IL (8) | IL161721A0 (ko) |
MX (4) | MXPA04004203A (ko) |
NO (4) | NO20042258L (ko) |
NZ (4) | NZ532773A (ko) |
WO (5) | WO2003038683A1 (ko) |
ZA (4) | ZA200403597B (ko) |
Families Citing this family (268)
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 |
WO2002019127A1 (en) * | 2000-08-25 | 2002-03-07 | Integrated Business Systems And Services, Inc. | 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 |
WO2003038683A1 (en) * | 2001-11-01 | 2003-05-08 | Verisign, Inc. | Transactional memory manager |
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 |
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 |
US7162495B2 (en) * | 2003-03-31 | 2007-01-09 | Qwest Communications Inc. | Systems and methods for clearing telephone number porting assignments EN masse |
US7395276B2 (en) * | 2003-03-31 | 2008-07-01 | Qwest Communications International Inc. | Systems and methods for resolving telephone number discrepancies en masse |
US20040193604A1 (en) * | 2003-03-31 | 2004-09-30 | Qwest Communications International Inc. | Systems and methods for restricting a telephone number's availability for assignment |
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 |
JP2005309550A (ja) | 2004-04-19 | 2005-11-04 | Hitachi Ltd | リモートコピー方法及びリモートコピーシステム |
US7130975B2 (en) * | 2003-06-27 | 2006-10-31 | Hitachi, Ltd. | Data processing system |
JP4124348B2 (ja) | 2003-06-27 | 2008-07-23 | 株式会社日立製作所 | 記憶システム |
JP4374953B2 (ja) * | 2003-09-09 | 2009-12-02 | 株式会社日立製作所 | データ処理システム |
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 |
US8131739B2 (en) * | 2003-08-21 | 2012-03-06 | Microsoft Corporation | Systems and methods for interfacing application programs with an item-based storage platform |
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 |
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 |
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 |
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 | 株式会社日立製作所 | 複数の記憶システムを有するデータ処理システム |
CN1943140A (zh) * | 2003-12-30 | 2007-04-04 | 艾利森电话股份有限公司 | 在共用传输协议包中传送属于不同用户的数据包的方法和装置 |
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 |
ATE343303T1 (de) * | 2004-05-11 | 2006-11-15 | Cit Alcatel | Netzelement und verfahren zur abbildung von adressinformationen |
US7483426B2 (en) * | 2004-05-13 | 2009-01-27 | Micrel, Inc. | Look-up table expansion method |
WO2005114490A2 (en) * | 2004-05-21 | 2005-12-01 | Computer Associates Think, Inc. | Method and apparatus for handling directory operations |
US20060036720A1 (en) * | 2004-06-14 | 2006-02-16 | Faulk Robert L Jr | Rate limiting of events |
DE602004007903T2 (de) * | 2004-06-22 | 2008-04-17 | 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 |
US7590806B2 (en) * | 2005-12-07 | 2009-09-15 | Microsoft Corporation | Filtering of transactional memory operations using associative tables |
CN101336535B (zh) * | 2005-12-27 | 2011-10-12 | 法国电信公司 | 管理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 |
US7761293B2 (en) * | 2006-03-06 | 2010-07-20 | Tran Bao Q | Spoken mobile engine |
US20070208564A1 (en) * | 2006-03-06 | 2007-09-06 | Available For Licensing | Telephone based search system |
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 |
US8713188B2 (en) * | 2007-12-13 | 2014-04-29 | Opendns, Inc. | Per-request control of DNS behavior |
US8606926B2 (en) | 2006-06-14 | 2013-12-10 | Opendns, Inc. | Recursive DNS nameserver |
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 |
US9514201B2 (en) * | 2006-10-13 | 2016-12-06 | International Business Machines Corporation | Method and system for non-intrusive event sequencing |
US9274857B2 (en) * | 2006-10-13 | 2016-03-01 | International Business Machines Corporation | Method and system for detecting work completion in loosely coupled components |
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 |
US8515912B2 (en) | 2010-07-15 | 2013-08-20 | Palantir Technologies, Inc. | Sharing and deconflicting data changes in a multimaster database system |
US8688749B1 (en) | 2011-03-31 | 2014-04-01 | Palantir Technologies, Inc. | Cross-ontology multi-master replication |
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 |
US8751467B2 (en) * | 2007-01-18 | 2014-06-10 | Dot Hill Systems Corporation | Method and apparatus for quickly accessing backing store metadata |
US7831565B2 (en) * | 2007-01-18 | 2010-11-09 | Dot Hill Systems Corporation | Deletion of rollback snapshot partition |
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 |
US8856094B2 (en) * | 2007-05-08 | 2014-10-07 | Digital River, Inc. | Remote segmentation system and method |
US20090182718A1 (en) * | 2007-05-08 | 2009-07-16 | Digital River, Inc. | Remote Segmentation System and Method Applied To A Segmentation Data Mart |
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 |
US8117403B2 (en) * | 2007-05-14 | 2012-02-14 | International Business Machines Corporation | Transactional memory system which employs thread assists using address history tables |
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 |
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 |
US9009452B2 (en) | 2007-05-14 | 2015-04-14 | International Business Machines Corporation | Computing system with transactional memory using millicode assists |
US8688920B2 (en) | 2007-05-14 | 2014-04-01 | International Business Machines Corporation | Computing system with guest code support of 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 |
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 |
US8140520B2 (en) * | 2008-05-15 | 2012-03-20 | International Business Machines Corporation | Embedding densities in a data structure |
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 |
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 |
US8874694B2 (en) * | 2009-08-18 | 2014-10-28 | Facebook, Inc. | Adaptive packaging of network resources |
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 |
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 |
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 |
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 |
WO2013016868A1 (en) * | 2011-08-03 | 2013-02-07 | 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 |
US8965850B2 (en) | 2011-11-18 | 2015-02-24 | 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 | 阿尔卡特朗讯 | 一种用于比较和重构地理冗余的数据库的方法 |
US10102570B1 (en) | 2013-03-14 | 2018-10-16 | Consumerinfo.Com, Inc. | Account vulnerability alerts |
CN105264525A (zh) * | 2013-06-04 | 2016-01-20 | 马维尔国际贸易有限公司 | 内部搜索引擎架构 |
US8886601B1 (en) | 2013-06-20 | 2014-11-11 | Palantir Technologies, Inc. | System and method for incrementally replicating investigative analysis data |
US9589130B2 (en) * | 2013-08-20 | 2017-03-07 | White Cloud Security, L.L.C. | Application trust-listing security service |
GB2517932B (en) * | 2013-09-04 | 2021-05-05 | 1Spatial Group Ltd | Modification and validation of spatial data |
US10382549B1 (en) * | 2013-10-28 | 2019-08-13 | 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 |
US9925492B2 (en) | 2014-03-24 | 2018-03-27 | Mellanox Technologies, Ltd. | Remote transactional memory |
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 |
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 |
US9021260B1 (en) | 2014-07-03 | 2015-04-28 | 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 | 安徽兆尹信息科技股份有限公司 | 一种用于生成现金流量表的云计算应用平台构建方法 |
AU2016340042A1 (en) * | 2015-10-15 | 2018-05-24 | Big Ip Pty Ltd | A system, method, computer program and data signal for the provision of a database of information for lead generating purposes |
WO2017063049A1 (en) * | 2015-10-15 | 2017-04-20 | Big Ip Pty Ltd | A system, method, computer program and data signal for conducting an electronic search of a database |
IL242219B (en) * | 2015-10-22 | 2020-11-30 | Verint Systems Ltd | System and method for keyword searching using both static and dynamic dictionaries |
IL242218B (en) | 2015-10-22 | 2020-11-30 | Verint Systems Ltd | A system and method for maintaining a dynamic dictionary |
MX2018007425A (es) * | 2015-12-18 | 2018-08-15 | Walmart Apollo Llc | Sistemas y metodos para resolver discrepancia de datos. |
WO2017106779A1 (en) * | 2015-12-18 | 2017-06-22 | F5 Networks, Inc. | Methods of collaborative hardware and software dns acceleration and ddos protection |
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 |
US10262053B2 (en) | 2016-12-22 | 2019-04-16 | Palantir Technologies Inc. | Systems and methods for data replication synchronization |
TWI643146B (zh) * | 2016-12-22 | 2018-12-01 | 經貿聯網科技股份有限公司 | 動態更新金融資料的方法及其處理系統以及動態調整電源配置的方法及其處理系統 |
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控股有限公司 | 用于搜索目录访问组的方法和系统 |
US11265324B2 (en) | 2018-09-05 | 2022-03-01 | Consumerinfo.Com, Inc. | User permissions for access to secure data at third-party |
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 |
CA3148975C (en) * | 2019-07-30 | 2023-04-25 | Falkonry Inc. | Fluid and resolution-friendly view of large volumes of time series data |
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 | 珠海格力电器股份有限公司 | 线程管理方法、存储介质及电子设备 |
JP7297107B2 (ja) * | 2020-02-24 | 2023-06-23 | センストーン インコーポレイテッド | 仮想コードを用いたユーザ設定情報認証方法、プログラム及び装置 |
EP3968253B1 (en) * | 2020-02-24 | 2024-04-17 | SSenStone Inc. | Method, program, and device for authenticating user setting information by using virtual code |
US20230138113A1 (en) * | 2021-02-09 | 2023-05-04 | 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 |
WO2022221533A2 (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 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5758150A (en) * | 1995-10-06 | 1998-05-26 | Tele-Communications, Inc. | System and method for database synchronization |
US5893117A (en) * | 1990-08-17 | 1999-04-06 | Texas Instruments Incorporated | Time-stamped database transaction and version management system |
US5995980A (en) * | 1996-07-23 | 1999-11-30 | Olson; Jack E. | System and method for database update replication |
Family Cites Families (137)
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 |
JP3369580B2 (ja) | 1990-03-12 | 2003-01-20 | ヒューレット・パッカード・カンパニー | 直接メモリアクセスを行うためのインターフェース装置及び方法 |
CA2045705A1 (en) * | 1990-06-29 | 1991-12-30 | Richard Lee Sites | In-register data manipulation in reduced instruction set processor |
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 |
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 |
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 |
US6058389A (en) * | 1997-10-31 | 2000-05-02 | Oracle Corporation | Apparatus and method for message queuing in a database system |
US6061678A (en) * | 1997-10-31 | 2000-05-09 | Oracle Corporation | Approach for managing access to large objects in database systems using large object indexes |
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 |
US6182198B1 (en) * | 1998-06-05 | 2001-01-30 | International Business Machines Corporation | Method and apparatus for providing a disc drive snapshot backup while allowing normal drive read, write, and buffering operations |
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 |
CA2356947A1 (en) * | 1998-12-23 | 2000-07-06 | Nokia Wireless Routers, Inc. | A unified routing scheme for ad-hoc internetworking |
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 |
DE60037502T2 (de) | 1999-03-03 | 2008-12-11 | Ultradns, Inc., Danville | Domänennamen-Auflösungssystem mit einem oder mehreren Servern |
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 |
AU6624100A (en) * | 1999-08-06 | 2001-03-05 | Namezero.Com, Inc. | Internet hosting system |
US6449657B2 (en) * | 1999-08-06 | 2002-09-10 | 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 |
US6892359B1 (en) * | 2000-02-18 | 2005-05-10 | Xside 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 |
WO2003038683A1 (en) | 2001-11-01 | 2003-05-08 | Verisign, Inc. | Transactional memory manager |
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 |
US20050027882A1 (en) | 2003-05-05 | 2005-02-03 | Sullivan Alan T. | 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 |
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 |
EP1891539A2 (en) | 2005-05-24 | 2008-02-27 | Paxfire, Inc. | Enhanced features for direction of communication traffic |
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 |
JP2009524355A (ja) | 2006-01-20 | 2009-06-25 | パックスファイアー インコーポレイテッド | 通信トラフィックを判別し、制御するためのシステムおよび方法 |
US8713188B2 (en) | 2007-12-13 | 2014-04-29 | Opendns, Inc. | Per-request control of DNS behavior |
US8606926B2 (en) | 2006-06-14 | 2013-12-10 | Opendns, Inc. | Recursive DNS nameserver |
WO2008021512A2 (en) | 2006-08-17 | 2008-02-21 | Neustar, Inc. | System and method for handling jargon in communication systems |
EP2054830A2 (en) | 2006-08-17 | 2009-05-06 | Neustar, Inc. | System and method for managing domain policy for interconnected communication networks |
US8234379B2 (en) | 2006-09-14 | 2012-07-31 | Afilias Limited | System and method for facilitating distribution of limited resources |
US20100030897A1 (en) | 2006-12-20 | 2010-02-04 | Rob Stradling | 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 |
CA2701098A1 (en) | 2007-10-18 | 2009-04-23 | 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 |
US20110035497A1 (en) | 2009-08-05 | 2011-02-10 | Dynamic Network Services, Inc. | System and method for providing global server load balancing |
US8380870B2 (en) | 2009-08-05 | 2013-02-19 | Verisign, Inc. | Method and system for filtering of network traffic |
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 |
-
2002
- 2002-11-01 WO PCT/US2002/035080 patent/WO2003038683A1/en active IP Right Grant
- 2002-11-01 EA EA200400618A patent/EA005646B1/ru not_active IP Right Cessation
- 2002-11-01 AU AU2002356886A patent/AU2002356886A1/en not_active Abandoned
- 2002-11-01 JP JP2003540792A patent/JP4420324B2/ja not_active Expired - Fee Related
- 2002-11-01 US US10/285,544 patent/US20030084038A1/en not_active Abandoned
- 2002-11-01 AU AU2002356884A patent/AU2002356884B2/en not_active Ceased
- 2002-11-01 CN CN02826620XA patent/CN1610902B/zh not_active Expired - Fee Related
- 2002-11-01 NZ NZ532773A patent/NZ532773A/en not_active IP Right Cessation
- 2002-11-01 CA CA2466110A patent/CA2466110C/en not_active Expired - Fee Related
- 2002-11-01 KR KR1020047006689A patent/KR100941350B1/ko not_active IP Right Cessation
- 2002-11-01 EP EP02786633.4A patent/EP1449062B1/en not_active Expired - Lifetime
- 2002-11-01 IL IL16172102A patent/IL161721A0/xx unknown
- 2002-11-01 MX MXPA04004203A patent/MXPA04004203A/es active IP Right Grant
- 2002-11-01 US US10/285,575 patent/US6681228B2/en not_active Expired - Lifetime
- 2002-11-01 EP EP12153543A patent/EP2503476A1/en not_active Withdrawn
- 2002-11-01 NZ NZ532771A patent/NZ532771A/en not_active IP Right Cessation
- 2002-11-01 CA CA2466117A patent/CA2466117C/en not_active Expired - Fee Related
- 2002-11-01 EA EA200400614A patent/EA006223B1/ru not_active IP Right Cessation
- 2002-11-01 EP EP12153314A patent/EP2450812A1/en not_active Withdrawn
- 2002-11-01 EP EP02786632A patent/EP1461723A4/en not_active Ceased
- 2002-11-01 CN CN028266196A patent/CN1610877B/zh not_active Expired - Fee Related
- 2002-11-01 MX MXPA04004201A patent/MXPA04004201A/es active IP Right Grant
- 2002-11-01 US US10/285,549 patent/US7167877B2/en not_active Expired - Lifetime
- 2002-11-01 US US10/285,547 patent/US7047258B2/en not_active Expired - Lifetime
- 2002-11-01 BR BR0213863-8A patent/BR0213863A/pt not_active Application Discontinuation
- 2002-11-01 KR KR1020047006649A patent/KR100953137B1/ko not_active IP Right Cessation
- 2002-11-01 KR KR1020047006658A patent/KR100977161B1/ko not_active IP Right Cessation
- 2002-11-01 NZ NZ532772A patent/NZ532772A/en not_active IP Right Cessation
- 2002-11-01 WO PCT/US2002/035082 patent/WO2003038596A1/en active IP Right Grant
- 2002-11-01 CN CNB028265114A patent/CN100557595C/zh not_active Expired - Fee Related
- 2002-11-01 EA EA200400613A patent/EA006038B1/ru not_active IP Right Cessation
- 2002-11-01 EA EA200400612A patent/EA006045B1/ru not_active IP Right Cessation
- 2002-11-01 IL IL16171202A patent/IL161712A0/xx active IP Right Grant
- 2002-11-01 WO PCT/US2002/035081 patent/WO2003038653A1/en active IP Right Grant
- 2002-11-01 US US10/285,618 patent/US7203682B2/en not_active Expired - Lifetime
- 2002-11-01 EP EP02802515.3A patent/EP1451714B1/en not_active Expired - Lifetime
- 2002-11-01 WO PCT/US2002/035084 patent/WO2003038565A2/en not_active Application Discontinuation
- 2002-11-01 MX MXPA04004169A patent/MXPA04004169A/es active IP Right Grant
- 2002-11-01 JP JP2003540847A patent/JP4399552B2/ja not_active Expired - Fee Related
- 2002-11-01 IL IL16172302A patent/IL161723A0/xx unknown
- 2002-11-01 CN CN028265092A patent/CN1610906B/zh not_active Expired - Fee Related
- 2002-11-01 BR BR0213862-0A patent/BR0213862A/pt not_active Application Discontinuation
- 2002-11-01 EP EP12153315A patent/EP2495671A1/en not_active Withdrawn
- 2002-11-01 CA CA2472014A patent/CA2472014C/en not_active Expired - Fee Related
- 2002-11-01 JP JP2003540874A patent/JP4420325B2/ja not_active Expired - Fee Related
- 2002-11-01 IL IL16172202A patent/IL161722A0/xx unknown
- 2002-11-01 BR BR0213807-7A patent/BR0213807A/pt not_active Application Discontinuation
- 2002-11-01 AU AU2002356885A patent/AU2002356885B2/en not_active Expired
- 2002-11-01 BR BR0213864-6A patent/BR0213864A/pt not_active Application Discontinuation
- 2002-11-01 KR KR1020047006695A patent/KR100970122B1/ko not_active IP Right Cessation
- 2002-11-01 NZ NZ533166A patent/NZ533166A/en not_active IP Right Cessation
- 2002-11-01 WO PCT/US2002/035083 patent/WO2003038654A1/en active IP Right Grant
- 2002-11-01 JP JP2003540846A patent/JP4897196B2/ja not_active Expired - Fee Related
- 2002-11-01 AU AU2002350104A patent/AU2002350104B2/en not_active Expired
- 2002-11-01 EP EP12175016.0A patent/EP2562661A3/en not_active Withdrawn
- 2002-11-01 CA CA2466107A patent/CA2466107C/en not_active Expired - Fee Related
- 2002-11-01 EP EP02802516A patent/EP1449049A4/en not_active Withdrawn
- 2002-11-01 MX MXPA04004202A patent/MXPA04004202A/es active IP Right Grant
- 2002-11-01 EP EP02802514A patent/EP1451728A4/en not_active Ceased
- 2002-11-01 AU AU2002350106A patent/AU2002350106B2/en not_active Expired
- 2002-11-01 EP EP11181796.1A patent/EP2477126A3/en not_active Withdrawn
-
2003
- 2003-10-01 US US10/674,820 patent/US8171019B2/en active Active
-
2004
- 2004-04-29 IL IL161712A patent/IL161712A/en not_active IP Right Cessation
- 2004-05-02 IL IL161722A patent/IL161722A/en unknown
- 2004-05-02 IL IL161723A patent/IL161723A/en active IP Right Grant
- 2004-05-02 IL IL161721A patent/IL161721A/en active IP Right Grant
- 2004-05-11 ZA ZA2004/03597A patent/ZA200403597B/en unknown
- 2004-05-31 ZA ZA2004/04266A patent/ZA200404266B/en unknown
- 2004-05-31 ZA ZA2004/04267A patent/ZA200404267B/en unknown
- 2004-05-31 ZA ZA2004/04268A patent/ZA200404268B/en unknown
- 2004-06-01 NO NO20042258A patent/NO20042258L/no not_active Application Discontinuation
- 2004-06-01 NO NO20042259A patent/NO20042259L/no not_active Application Discontinuation
- 2004-06-01 NO NO20042260A patent/NO331574B1/no not_active IP Right Cessation
- 2004-06-01 NO NO20042261A patent/NO20042261L/no not_active Application Discontinuation
-
2005
- 2005-08-25 HK HK05107484.3A patent/HK1075308A1/xx not_active IP Right Cessation
-
2006
- 2006-12-19 US US11/641,054 patent/US20070100808A1/en not_active Abandoned
-
2008
- 2008-12-10 US US12/331,498 patent/US8630988B2/en not_active Expired - Lifetime
-
2011
- 2011-11-09 US US13/292,833 patent/US8682856B2/en not_active Expired - Lifetime
-
2013
- 2013-12-20 US US14/136,831 patent/US20140108452A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5893117A (en) * | 1990-08-17 | 1999-04-06 | Texas Instruments Incorporated | Time-stamped database transaction and version management system |
US5758150A (en) * | 1995-10-06 | 1998-05-26 | Tele-Communications, Inc. | System and method for database synchronization |
US5995980A (en) * | 1996-07-23 | 1999-11-30 | Olson; Jack E. | System and method for database update replication |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100953137B1 (ko) | 원격 데이터베이스를 업데이트하기 위한 방법 및 시스템 | |
AU2002350104A1 (en) | Method and system for validating remote database | |
AU2002356885A1 (en) | Method and system for updating a remote database | |
US6289358B1 (en) | Delivering alternate versions of objects from an object cache | |
US7117491B2 (en) | Method, system, and program for determining whether data has been modified | |
US6292880B1 (en) | Alias-free content-indexed object cache | |
WO1999053422A1 (en) | High performance object cache | |
JP2000076257A (ja) | 分散ネットワークサービスにおける情報検索装置及びその検索方法 | |
CN116303422A (zh) | 数据查询方法、装置、电子设备和存储介质 | |
CN1298155A (zh) | 轻量级目录访问协议服务器的永久性高速缓存 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130325 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140325 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |