KR101443942B1 - 서버의 캐쥬얼 네트워크에서의 분산 검색 - Google Patents

서버의 캐쥬얼 네트워크에서의 분산 검색 Download PDF

Info

Publication number
KR101443942B1
KR101443942B1 KR1020097022365A KR20097022365A KR101443942B1 KR 101443942 B1 KR101443942 B1 KR 101443942B1 KR 1020097022365 A KR1020097022365 A KR 1020097022365A KR 20097022365 A KR20097022365 A KR 20097022365A KR 101443942 B1 KR101443942 B1 KR 101443942B1
Authority
KR
South Korea
Prior art keywords
request
server
distributed
remote server
response
Prior art date
Application number
KR1020097022365A
Other languages
English (en)
Other versions
KR20100015924A (ko
Inventor
보아즈 레브
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20100015924A publication Critical patent/KR20100015924A/ko
Application granted granted Critical
Publication of KR101443942B1 publication Critical patent/KR101443942B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/256Integrating or interfacing systems involving database management systems in federated or virtual databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

캐쥬얼 서버 네트워크의 분산 검색이 제공될 수 있다. 우선 시작 서버에서 제1 요청이 시작 서버와 관련된 정보에 의해 수행될 수 없다는 것이 판정될 수 있다. 다음에, 시작 서버로부터 분산 요청 링으로 제1 요청이 포스팅될 수 있다. 다음에, 분산 요청 링 상의 원격 서버에서 제1 요청이 수신될 수 있다. 원격 서버는 제1 요청을 만족시킬 수 있는 원격 서버와 관련된 데이터 저장소 상의 현재 데이터에 대한 쿼리를 할 수 있다. 원격 서버는 그 다음에 데이터 저장소에 외부 참조를 기록할 수 있다. 외부 참조는 시작 서버가 현재 데이터를 요청했다는 것을 나타낼 수 있다. 다음에, 시작 서버에서 원격 서버로부터 제1 요청에 대한 응답이 수신될 수 있다. 응답은 현재 데이터를 포함할 수 있다.
캐쥬얼 서버 네트워크, 분산 검색, 분산 요청 링

Description

서버의 캐쥬얼 네트워크에서의 분산 검색{DISTRIBUTED SEARCH IN A CASUAL NETWORK OF SERVERS}
종래의 시스템에서, 사용자가 데이터가 어떠한 서버 상에 위치하는지 모르는 채로 데이터를 구할 때, 사용자는 최선의 방법으로서 주어진 네트워크 상의 모든 서버를 조사할 수 있다. 종래의 시스템은 요청이 수행될 수 있는 네트워크 및 네트워크의 서버로 데이터가 포스팅될 수 있도록 서버가 네트워크에 참여하는 것을 허용하지 않는다. 다시 말하면, 종래의 시스템은 데이터의 위치를 모르고는 데이터에 작업을 할 수 없다.
본 설명은 아래의 실시예에 더 상세히 개시되는 본 발명의 발췌를 단순화된 형식으로 소개하기 위하여 제공된다. 본 설명은 청구된 주요 발명의 주요한 태양 또는 핵심적인 태양을 식별하기 위한 것으로 해석되지 않는다. 또한 본 발명은 청구된 주요 발명의 범위를 한정하기 위하여 사용되는 것으로 해석되지 않는다.
캐쥬얼 서버 네트워크(a casual server network)의 분산 검색이 제공될 수 있다. 우선 시작 서버(an originating server)에서 제1 요청이 원래의 서버와 관련된 정보에 의해 수행될 수 없다는 것이 판정될 수 있다. 그 다음에, 시작 서버로부터 제1 요청이 분산 요청 링(a distributed request ring)으로 포스팅될 수 있다. 그리고, 분산 요청 링 상의 원격 서버에서 제1 요청이 수신될 수 있다. 원격 서버는 제1 요청을 만족하는 원격 서버와 관련된 데이터 저장소 상의 현재 데이터에 대하여 쿼리할 수 있다. 원격 서버는 그 다음에 데이터 저장소에 외부 참조(a foreign reference)를 기록할 수 있다. 외부 참조는 시작 서버가 현재 데이터를 요청하였다는 것을 나타낼 수 있다. 그 다음에, 시작 서버에서 원격 서버로부터의 제1 요청에 대한 응답이 수신될 수 있다. 응답은 현재 데이터를 포함할 수 있다.
이후의 일반적인 개시 및 아래의 상세한 설명은 모두 예시를 제공하며 오직 예시적인 의미이다. 따라서, 이후의 일반적인 개시 및 아래의 상세한 설명은 제한적인 의미로 간주되지 않는다. 더 나아가, 본 명세서에 개시되는 것뿐만 아니라 다른 태양 또는 변형이 제공될 수 있다. 예를 들어, 실시예들은 실시예에 개시되는 다양한 태양의 조합 및 서브-조합에 연관될 수 있다.
본 명세서에 포함되어 이의 일부를 구성하는 첨부된 도면은 본 발명의 다양한 실시예를 도시한다.
도 1은 운영 환경의 블록도.
도 2는 분산 캐쥬얼 검색을 제공하기 위한 방법의 흐름도.
도 3은 컴퓨팅 장치를 포함하는 시스템의 블록도.
다음의 실시예는 첨부된 도면을 참조한다. 본 명세서에서, 도면 및 다음의 실시예에서 사용되는 동일한 참조 번호는 동일한 또는 유사한 구성요소를 가리킨 다. 본 발명의 실시예가 개시될 수 있지만, 수정, 변형 또는 다른 구현이 가능하다. 예를 들어, 본 도면에 도시된 구성요소에 대한 대체, 추가 또는 수정이 가능하고, 본 명세서에 개시되는 방법은 개시된 방법에 대한 단계의 대체, 재순서화, 또는 추가에 의해 수정될 수 있다. 따라서, 다음의 실시예는 본 발명을 한정하지 않는다. 대신에, 본 발명의 적절한 범위는 첨부된 청구항에 의해 정의된다.
캐쥬얼 서버 네트워크의 분산 검색이 제공될 수 있다. 본 발명의 실시예에서와 같이, 서버는 데이터 요청이 요청을 수행할 수 있는 캐쥬얼 네트워크 및 서버로 포스팅될 수 있도록 캐쥬얼 네트워크에 참여할 수 있다. 예를 들어, 사용자는 데이터의 위치를 모르는 채 데이터와 작업할 수 있다. 본 발명의 실시예는 이러한 "분산성"을 위하여 제조되었거나 그렇지 않은 서버가 분산된 방식으로 작업하도록 할 수 있다. 더 나아가, 전파되는 데이터의 업데이트를 허용할 수 있는 트랙-백(track-back) 메커니즘이 제공될 수 있다.
도 1은 캐쥬얼 네트워크(100)를 도시한다. 도 1에 도시되는 바와 같이, 캐쥬얼 네트워크(100)는 시작 서버(105), 제1 클라이언트(110), 시작 데이터 저장소(115), 분산 요청 링(120), 원격 서버(125), 원격 데이터 저장소(130) 및 제2 클라이언트(135)를 포함할 수 있다. 예를 들어, 도 3을 참조하여 아래에 개시되는 바와 같이, 컴퓨팅 장치(300)가 시작 서버(105)를 구현하기 위해 사용될 수 있고 임의의 다른 컴퓨팅 장치(318)가 원격 서버(125)를 구현하기 위해 사용될 수 있다. 시작 서버(105) 및 원격 서버(125)는 직접 연결될 수 있고 분산 요청 링(120)을 통해 연결될 필요는 없다. 전술한 개시는 예시이고 임의의 프로세서 또는 서버가 사 용될 수 있다.
도 2는 분산 캐쥬얼 검색을 제공하기 위하여 본 발명의 실시예에 따르는 방법(200)에 포함되는 일반적인 단계를 개시한다. 방법(200)은 도 3을 참조하여 아래에서 더 상세히 개시되는 바와 같이 컴퓨팅 장치(300) 및 임의의 다른 컴퓨팅 장치(318)를 사용해서 구현될 수 있다. 방법(200)의 단계를 구현하기 위한 방식은 아래에서 상세히 개시된다. 방법(200)은 시작 블록(205)에서 시작하여 시작 서버(105)가 제1 클라이언트(110)로부터 제1 요청을 수신할 수 있는 단계(210)로 진행할 수 있다. 예를 들어, 제1 클라이언트(110)는 시작 서버(105)와 연결될 수 있다. 제1 클라이언트(110)를 사용하는 사용자는 일부 데이터 또는 일부 서비스를 위한 요청을 제공할 수 있다. 결과적으로, 사용자는 제1 요청을 시작 서버(105)로 포스팅할 수 있다.
시작 서버(105)가 제1 클라이언트(110)로부터 제1 요청을 수신하는 단계(210)로부터, 방법(200)은 시작 서버(105)가 시작 서버(105)와 관련된 정보에 의해 제1 요청이 수행될 수 있는지를 판정할 수 있는 단계(215)로 진행할 수 있다. 예를 들어, 시작 서버(105)가 제1 요청을 수행할 수 있는지 알기 위해 자체적으로 시작 데이터 저장소(115)를 우선 확인할 수 있다.
단계(215)에서 시작 서버(105)가 시작 서버(105)와 관련된 정보에 의해 제1 요청이 수행될 수 없다는 것을 판정하면, 방법(200)은 시작 서버(105)가 제1 요청을 분산 요청 링(120)으로 포스팅할 수 있는 단계(220)로 진행할 수 있다. 예를 들어, 분산 요청 링(120)은 분산 요청 링(120)에 있는 것으로 간주되는 시작 서 버(105) 및 분산 요청 링(120)뿐만 아니라 하나 이상의 다른 서버를 포함할 수 있다. 제1 요청을 포스팅하는 서버(예를 들어, 시작 서버(105))를 제외한 분산 요청 링(120)의 각 서버가 요청을 포착할 수 있다. 분산 요청 링(120)의 각 서버는 분산 요청 링(120)의 다른 서버에 의해 도달가능할 수 있다. 그러나, 분산 요청 링(120) 상의 서버들은 분산 요청 링(120) 상의 다른 서버들의 존재(identity)를 모를 수 있다. 예를 들어, 시작 서버(105)는 분산 요청 링(120) 상의 다른 서버의 존재를 모를 수 있다. 더 나아가, 제1 요청은 분산 요청 링(120)의 적어도 하나의 다른 서버의 OS(operating system)의 API(appliation program interface) 및 원격 서버(125)의 OS의 API에서 수신되도록 구성될 수 있다.
단계(220)에서 시작 서버(105)가 제1 요청을 분산 요청 링(120)으로 포스팅한 이후에, 방법(200)은 분산 요청 링(120) 상의 원격 서버(125)가 제1 요청을 수신할 수 있는 단계(225)로 진행할 수 있다. 원격 서버(125)가 제1 요청을 수신하는 단계(225)로부터, 방법(200)은 원격 서버(125)가 제1 요청을 만족시킬 수 있는 원격 서버(125)와 관련된 데이터 저장소(130) 상의 현재 데이터에 대한 쿼리를 할 수 있는 단계(230)로 진행할 수 있다. 예를 들어, 분산 요청 링(120)에 있는 원격 서버(125)는 제1 요청을 포착할 수 있다. 수신된 제1 요청의 처리를 위해, 원격 서버(125)는 제1 요청이 처리될 수 있는지 확인하기 위해 데이터 저장소(130)를 쿼리할 수 있다.
단계(230)에서 원격 서버(125)가 데이터 저장소(130) 상의 현재 데이터에 대하여 쿼리를 하면, 방법(200)은 원격 서버(125)가 데이터 저장소(130)에 외부 참조 를 기록할 수 있는 단계(235)로 진행할 수 있다. 외부 참조는 시작 서버(105)가 현재 데이터를 요청하였다는 것을 나타낼 수 있다. 예를 들어, 외부 참조는 제1 요청이 비롯된 시작 서버(105)를 식별할 수 있다. 제1 요청을 처리하기 위해 사용된 데이터가 업데이트되었거나 사전정의된 시간 구간 내에 업데이트되었다면 임의의 요청 서버가 업데이트될 수 있도록 외부 참조가 기록될 수 있다. 더 나아가, 본 발명의 실시예에 따르면, 업데이트 경계를 정의할 수 있는 시간 구간은 필수적이지 않다. 오히려, 임의의 조건(predicate)이 사용될 수 있다. 결과적으로, 업데이트가 전파되어야 하는지를 데이터의 "소유자"가 결정하는 것도 가능하다. 다시 말하면, 시간은 외부 복사의 잔존을 결정하는 유일한 인자가 아닐 수 있고, 예를 들어 임의의 부울 조건문(Boolean predicate)이 사용될 수 있다.
단계(235)에서 원격 서버(125)가 데이터 저장소(130)에 외부 참조를 기록한 이후에, 방법(200)은 시작 서버(105)가 원격 서버(125)로부터 제1 요청에 대한 응답을 수신할 수 있는 단계(240)로 진행할 수 있다. 응답은 제1 요청에 대하여 응답하는 현재 데이터를 포함할 수 있다. 시작 서버(105)가 제1 요청에 대한 응답을 수신하는 단계(240)로부터, 방법(200)은 시작 서버(105)가 제1 요청에 대한 응답을 저장할 수 있는 단계(245)로 진행할 수 있다. 예를 들어, 시작 서버(105)는 사전정의된 시간 구간 이후에 저장된 응답을 제거하도록 구성될 수 있다.
단계(245)에서 시작 서버(105)가 제1 요청에 대한 응답을 저장하면, 방법(200)은 시작 서버(105)가 제1 요청에 대한 응답을 제1 클라이언트(110)로 전송하는 단계(250)로 진행할 수 있다. 예를 들어, 시작 서버(105)는 제1 클라이언 트(110)가 제1 요청을 생성하였기 때문에 제1 클라이언트(110)에 응답을 제공할 수 있다.
단계(250)에서 시작 서버(105)가 제1 요청에 대한 응답을 전송한 이후에, 방법(200)은 시작 서버(105)가 제2 클라이언트(135)로부터 제2 요청을 수신할 수 있는 단계(255)로 진행할 수 있다. 예를 들어, 제2 클라이언트(135)는 시작 서버(105)로 연결될 수 있다. 제2 클라이언트(135)를 사용하는 사용자는 일부 데이터 또는 일부 서비스에 대한 다른 요청을 제공할 수 있다. 결과적으로, 사용자는 제2 요청을 시작 서버(105)로 포스팅할 수 있다.
시작 서버(105)가 제2 클라이언트(135)로부터 제2 요청을 수신하는 단계(255)로부터, 방법(200)은 시작 서버가(105)가 제2 요청이 제1 요청에 대한 저장된 응답에 의해 수행될 수 있는지를 판정할 수 있는 단계(260)로 진행할 수 있다. 예를 들어, 수신된 제2 요청을 처리하기 위해, 시작 서버(105)는 제1 요청과 관련된 현재 데이터가 제2 요청을 처리하기 위해 사용될 수 있는지를 알기 위해 데이터 저장소(115)를 쿼리할 수 있다. 제1 요청과 관련된 현재 데이터는 현재 데이터의 삭제를 위한 사전정의된 시간 구간이 경과하지 않았을 수 있기 때문에 여전히 시작 서버(105) 상에 있을 수 있다. 또는 시작 서버(105)가 무기한으로 현재 데이터를 보유하도록 구성될 수 있다.
단계(260)에서 시작 서버(105)가 제2 요청이 제1 요청에 대한 저장된 응답에 의해 수행될 수 있다는 것을 판정하면, 방법(200)은 원격 서버(125)가 현재 데이터를 업데이트하기 위한 명령을 수신할 수 있는 단계(265)로 진행할 수 있다. 명령 은 원격 서버(125)와 관련된 현재 데이터를 대체하기 위한 업데이트된 데이터를 포함할 수 있다. 예를 들어, 앞서 원격 서버(125)가 시작 서버(105)로 제공한 현재 데이터가 변경될 수 있다. 결과적으로, 원격 서버(125)는 현재 데이터를 업데이트하기 위한 업데이트된 데이터를 수신할 수 있다.
단계(265)에서 원격 서버(125)가 현재 데이터를 업데이트하기 위한 명령을 수신한 이후에, 방법(200)은 원격 서버(125)가 외부 참조가 현재 데이터와 관련되었는 지를 판정할 수 있는 단계(270)로 진행할 수 있다. 예를 들어, 앞서 기록된 외부 참조는 현재 데이터가 이전에 시작 서버(105)로 제공되었다는 것을 나타낼 수 있다. 따라서, 시작 서버(105)는 업데이트된 데이터를 요구할 수 있다.
원격 서버(125)가 외부 참조가 현재 데이터와 관련되었는지를 판정하는 단계(270)로부터, 방법(200)은, 외부 참조가 현재 데이터와 관련되었다는 판정에 응답하여 원격 서버(125)가 업데이트된 데이터를 시작 서버(105)로 전송할 수 있는 단계(275)로 진행할 수 있다. 단계(275)에서 원격 서버(125)가 업데이트된 데이터를 시작 서버(105)로 전송하면, 방법(200)은 단계(280)에서 종료할 수 있다.
본 발명에 따르는 실시예는 분산 캐쥬얼 검색을 제공하기 위한 시스템을 포함할 수 있다. 시스템은 메모리 저장소 및 메모리 저장소에 연결된 프로세싱 유닛을 포함할 수 있다. 프로세싱 유닛은 시작 서버에서, 제1 요청이 시작 서버와 관련된 정보에 의해 수행될 수 없는지를 판정하도록 동작할 수 있다. 추가적으로, 프로세싱 유닛은 시작 서버로부터 제1 요청을 분산 요청 링으로 포스팅하고 분산 요청 링 상의 원격 서버에서 제1 요청을 수신하도록 동작할 수 있다. 추가적으로, 원격 서버에 의해 프로세싱 유닛은 제1 요청을 만족시키는 원격 서버와 관련된 데이터 저장소 상의 현재 데이터에 대한 쿼리를 수행하도록 동작할 수 있다. 더 나아가, 원격 서버에 의해 프로세싱 유닛은 데이터 저장소에 외부 참조를 기록하도록 동작할 수 있고, 외부 참조는 시작 서버가 현재 데이터를 요청했다는 것을 나타낸다. 더 나아가, 프로세싱 유닛은, 시작 서버에서 원격 서버로부터 제1 요청에 대한 응답을 수신하도록 동작할 수 있고, 응답은 현재 데이터를 포함한다.
본 발명에 따르는 다른 실시예는 분산 캐쥬얼 검색을 제공하기 위한 시스템을 포함할 수 있다. 시스템은 메모리 저장소 및 메모리 저장소와 연결된 프로세싱 유닛을 포함할 수 있다. 프로세싱 유닛은 제1 요청이 시작 서버와 관련된 정보에 의해 수행될 수 없다는 것을 판정하도록 동작할 수 있다. 추가적으로, 프로세싱 유닛은 제1 요청을 분산 요청 링에 포스팅하고 원격 서버로부터 제1 요청에 대한 응답을 수신하도록 동작할 수 있고, 응답은 현재 데이터를 포함한다. 더 나아가, 프로세싱 유닛은, 시작 서버에서 제1 요청에 대한 응답을 저장하고 제2 클라이언트로부터 제2 요청을 수신하고, 제2 요청이 제1 요청에 대한 저장된 응답에 의해 수행될 수 있는지를 판정하도록 동작할 수 있다.
본 발명에 따르는 또 다른 실시예는 분산 캐쥬얼 검색을 제공하기 위한 시스템을 포함할 수 있다. 시스템은 메모리 저장소 및 메모리 저장소와 연결된 프로세싱 유닛을 포함할 수 있다. 프로세싱 유닛은 분산 요청 링 상의 원격 서버에서 제1 요청을 수신하고 원격 서버에 의해 제1 요청을 만족시키는 원격 서버와 관련된 데이터 저장소 상의 현재 데이터에 대한 쿼리를 수행하도록 동작할 수 있다. 더 나아가, 프로세싱 유닛은, 원격 서버에 의해 데이터 저장소에 외부 참조를 기록하도록 동작할 수 있고, 외부 참조는 원격 서버가 현재 데이터를 요청했다는 것을 나타낸다. 더 나아가, 프로세싱 유닛은, 원격 서버에서 현재 데이터를 업데이트하기 위한 명령을 수신하도록 동작할 수 있고, 명령어는 원격 서버와 관련된 현재 데이터를 대체하기 위한 업데이트된 데이터를 포함한다. 추가적으로, 프로세싱 유닛은, 원격 서버에서 외부 참조가 현재 데이터와 관련되었는지를 판정하고 외부 참조가 현재 데이터와 관련되었다는 판정에 응답하여 업데이트된 데이터를 시작 서버로 전송하도록 동작할 수 있다.
도 3은 컴퓨팅 장치(300)를 포함하는 시스템의 블록도이다. 본 발명의 실시예에 따르면, 전술한 메모리 저장소 및 프로세싱 유닛은 도 3의 컴퓨팅 장치(300)와 같은 컴퓨팅 장치에 구현될 수 있다. 하드웨어, 소프트웨어, 또는 펌웨어의 임의의 적절한 조합이 메모리 저장소 및 프로세싱 유닛을 구현하기 위해 사용될 수 있다. 예를 들어, 메모리 저장소 및 프로세싱 유닛은 컴퓨팅 장치(300) 또는 컴퓨팅 장치(300)와 조합하여 임의의 다른 컴퓨팅 장치(318)로 구현될 수 있다. 전술한 시스템, 장치 및 프로세서는 예시이고, 다른 시스템, 장치 및 프로세서가 본 발명의 실시예에 따르는 전술한 메모리 저장소 및 프로세싱 유닛을 포함할 수 있다.
도 3을 참조하면, 본 발명의 실시예에 따르는 시스템은 컴퓨팅 장치(300)와 같은 컴퓨팅 장치를 포함할 수 있다. 기본적인 구성에서, 컴퓨팅 장치(300)는 하나 이상의 프로세싱 유닛(302) 및 시스템 메모리(304)를 포함할 수 있다. 컴퓨팅 장치의 구성 및 유형에 따라, 시스템 메모리(304)는 이에 한정되지는 않지만, 휘발 성(예를 들어, RAM(random access memory)), 비-휘발성(예를 들어, ROM(read-only memory)), 플래시 메모리, 또는 임의의 조합을 포함할 수 있다. 시스템 메모리(304)는 운영 체제(305), 하나 이상의 프로그래밍 모듈(306) 및 프로그램 데이터(307)를 포함할 수 있다. 운영 체제(305)는, 예를 들어 컴퓨팅 장치(300)의 동작을 제어하기 위해 채용될 수 있다. 일실시예에서, 프로그래밍 모듈(306)은 예를 들어 분산 캐쥬얼 검색 애플리케이션(320)을 포함할 수 있다. 더 나아가, 본 발명의 실시예는 그래픽 라이브러리, 다른 운영 체제 또는 임의의 다른 애플리케이션 프로그램과 결합하여 실시될 수 있고 임의의 특정한 애플리케이션 또는 시스템에 한정되지 않는다. 도 3에서 이러한 컴포넌트에 의해 기본 구성이 점선(308) 내에 도시된다.
컴퓨팅 장치(300)는 추가적인 태양 또는 기능을 가질 수 있다. 예를 들어, 컴퓨팅 장치(300)는 또한, 예를 들어 마그네틱 디스크, 광 디스크 또는 테잎과 같은 추가적인 데이터 저장 장치(착탈식 및/또는 비-착탈식)를 포함할 수 있다. 이러한 추가적인 저장소가 착탈식 저장소(309) 및 비-착탈식 저장소(310)로서 도 3에 도시된다. 컴퓨터 저장 매체는, 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 다른 데이터와 같은 정보의 저장을 위하여 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 착탈식 및 비-착탈식 매체를 포함할 수 있다. 시스템 메모리(304), 착탈식 저장소(309), 및 비-착탈식 저장소(310)는 모두 컴퓨터 저장 매체의 예시이다(예를 들어, 메모리 저장소). 컴퓨터 저장 매체는 이에 한정되지는 않지만, RAM, ROM, EEPROM(electrically erasable read-only memory), 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD(digital versatile disks) 또는 다른 광 저장소, 마그네틱 카세트, 마그네틱 테잎, 마그네틱 디스크 저장소 또는 다른 마그네틱 저장 장치, 또는 정보를 저장하는데 사용될 수 있고 컴퓨팅 장치(300)에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 임의의 이러한 컴퓨터 저장 매체는 장치(300)의 일부일 수 있다. 컴퓨팅 장치(300)는 또한 키보드, 마우스, 펜, 사운드 입력 장치, 터치 입력 장치 등과 같은 입력 장치(312)를 가질 수 있다. 디스플레이, 스피커, 프린터 등과 같은 출력 장치(314)가 또한 포함될 수 있다. 전술한 장치는 예시이고 다른 장치가 사용될 수 있다.
컴퓨팅 장치(300)는 또한, 예를 들어 인트라넷 또는 인터넷과 같은 분산 컴퓨팅 환경의 네트워크 상에서 장치(300)가 다른 컴퓨팅 장치(318)와 통신하도록 할 수 있는 통신 연결(316)을 포함할 수 있다. 통신 연결(316)은 통신 매체의 일예시이다. 통신 매체는 통상적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호의 다른 데이터로서 구현될 수 있고 임의의 정보 전달 매체를 포함한다. 용어 "변조된 데이터 신호"는 하나 이상의 특성 집합을 가지고 신호의 정보를 인코딩하기 위한 방식으로 변경된 신호를 지칭할 수 있다. 한정이 아닌 예시로서, 통신 매체는 유선 네트워크 또는 직접-유선 연결과 같은 유선 매체 및 어쿠스틱, RF(radio frequency), 적외선 및 다른 무선 매체와 같은 무선 매체를 포함할 수 있다. 본 명세서에서 사용되는 용어 컴퓨터 판독가능 매체는 저장 매체 및 통신 매체를 모두 포함할 수 있다.
전술한 바와 같이, 복수의 프로그램 모듈 및 데이터 파일이 운영 체제(305)를 포함하는 시스템 메모리(304)에 저장될 수 있다. 프로세싱 유닛(302) 상에서 실행되는 동안, 프로그래밍 모듈(306)(예를 들어, 분산 캐쥬얼 검색 애플리케이션(320))은, 예를 들어 상기에 개시된 하나 이상의 방법(200)의 단계를 포함하는 프로세스를 수행할 수 있다. 더 나아가, 하나 이상의 다른 컴퓨팅 장치(318) 상의 다른 프로그래밍 모듈은, 예를 들어 상기에 개시된 하나 이상의 방법(200)의 단계를 포함하는 프로세스를 수행할 수 있다. 전술한 프로세스는 예시이고, 프로세싱 유닛(302)이 다른 프로세스를 수행할 수도 있다. 본 발명의 실시예에 따라 사용될 수 있는 다른 프로그래밍 모듈은 전자 메일, 연락처 애플리케이션(contacts applications), 워드 프로세싱 애플리케이션, 스프레드시트 애플리케이션, 데이터베이스 애플리케이션, 슬라이드 프리젠테이션 애플리케이션, 도면용 애플리케이션 프로그램 또는 컴퓨터용 애플리케이션 프로그램 등을 포함할 수 있다.
일반적으로, 본 발명의 실시예에 따르면 프로그램 모듈은 루틴, 프로그램, 컴포넌트, 데이터 구조 및 특정한 작업을 수행할 수 있거나 또는 특정한 추상 데이터 유형을 구현할 수 있는 다른 유형의 구조를 포함할 수 있다. 더 나아가, 본 발명의 실시예는, 휴대용 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램 가능한 소비자 전자기기, 미니컴퓨터, 메인프레임 컴퓨터 등을 포함하는 다른 컴퓨터 시스템 구성과 함께 실시될 수 있다. 본 발명의 실시예는 또한 작업이 통신 네트워크를 통해 연결된 원격 프로세싱 장치에 의해 수행되는 분산 컴퓨팅 환경에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치 모두에 위치할 수 있다.
더 나아가, 본 발명의 실시예는 이산 전자 소자를 포함하는 전자 회로, 논리 게이트를 포함하는 패키징 또는 집적된 전자 칩, 마이크로프로세서를 사용하는 회로, 또는 전자 소자 또는 마이크로프로세서를 포함하는 단일 칩 상에서 실시될 수 있다. 본 발명의 실시예는 또한 이에 한정되지는 않지만, 기계적, 광학적, 유체 공학적 및 양자적 기술을 포함하는, 예를 들어 AND, OR 및 NOT과 같은 논리 연산을 수행할 수 있는 다른 기술을 사용해서 실시될 수 있다. 추가적으로, 본 발명의 실시예는 범용 컴퓨터 또는 임의의 다른 회로 또는 시스템 내에서 실시될 수 있다.
본 발명의 실시예는, 예를 들어 컴퓨터 프로세스(방법), 컴퓨터 시스템 또는 컴퓨터 프로그램 제품 또는 컴퓨터 판독가능 매체와 같은 제조품으로서 구현될 수 있다. 컴퓨터 프로그램 제품은 컴퓨터 시스템에 의해 판독가능한 컴퓨터 저장 매체일 수 있고 컴퓨터 프로세스를 실행하기 위한 명령어가 인코딩된 컴퓨터 프로그램일 수 있다. 컴퓨터 프로그램 제품은 또한 컴퓨터 시스템에 의해 판독가능한 캐리어 상의 전파된 신호일 수 있고 컴퓨터 프로세스를 실행하기 위한 명령어가 인코딩된 컴퓨터 프로그램일 수 있다. 따라서, 본 발명은 하드웨어 및/또는 소프트웨어(펌웨어, 상주 소프트웨어, 마이크로-코드 등을 포함함)에서 구현될 수 있다. 즉, 본 발명의 실시예는 명령어 실행 시스템에 의해 또는 이와 함께 사용되기 위한 매체 내에 구현된 컴퓨터-사용가능 또는 컴퓨터-판독가능 프로그램 코드를 가지는 컴퓨터-사용가능 또는 컴퓨터-판독가능 저장 매체 상의 컴퓨터 프로그램 제품의 형태를 취할 수 있다. 컴퓨터-사용가능 또는 컴퓨터-판독가능 매체는 명령어 실행 시스템, 장치 또는 기기에 의해 또는 이와 함께 사용되기 위한 프로그램을 포함, 저장, 통신, 전파 또는 전송할 수 있는 임의의 매체일 수 있다.
컴퓨터-사용가능 또는 컴퓨터-판독가능 매체는 이에 한정되지는 않지만, 예를 들어 전자적, 자기적, 광학적, 전자기적, 적외선 또는 반도체 시스템, 장치, 기기 또는 전파 매체일 수 있다. 더 구체적인 컴퓨터-판독가능 매체의 예시(비-한정적인 리스트)로서, 컴퓨터-판독가능 매체는 다음을 포함할 수 있다. 하나 이상의 전선을 가지는 전자적 연결, 휴대용 컴퓨터 디스켓, RAM(random access memory), ROM(read-only memory), EPROM(erasable programmable read-only memory) 또는 플래시 메모리, 광섬유 및 휴대용 CD-ROM(compact disc read-only memory). 프로그램이, 예를 들어 종이 또는 다른 매체의 광학적 스캔을 통해 전자적으로 캡쳐되어 필요한 경우 컴파일, 인터프리팅 그렇지 않으면 적절한 방식으로 처리되어 컴퓨터 메모리에 저장될 수 있기 때문에, 컴퓨터-사용가능 또는 컴퓨터-판독가능 매체는 프로그램이 인쇄될 수 있는 종이 또는 적절한 매체가 될 수 있다는 것을 유의해야 한다.
본 발명의 실시예가, 예를 들어 본 발명의 실시예를 따르는 방법, 시스템 및 컴퓨터 프로그램 제품의 블록도 및/또는 동작도를 참조하여 상기에 개시되었다. 블록에 기재된 기능/동작은 임의의 흐름도에 도시된 순서와 다르게 실행될 수 있다. 예를 들어, 연결되어 도시된 두 개의 블록은, 관련된 기능/동작에 따라 실질적으로 동시에 실행되거나 또는 역순으로 실행될 수 있다.
본 발명의 특정한 실시예가 개시되었지만, 다른 실시예가 존재할 수 있다. 더 나아가, 본 발명의 실시예가 메모리 및 다른 저장 매체에 저장된 데이터와 관련하여 개시되었지만, 데이터는 하드 디스크, 플로피 디스크 또는 CD-ROM, 인터넷으로부터의 반송파, 또는 RAM 또는 ROM의 다른 형태와 같은 보조적인 저장 장치 등의 다른 유형의 컴퓨터-판독가능 매체 상에 저장되거나 이로부터 판독될 수 있다. 더 나아가, 개시된 방법의 단계는 단계의 재순서화 및/또는 단계의 삽입 또는 삭제를 포함하는 임의의 방식으로, 본 발명을 벗어나지 않고 수정될 수 있다.
본 명세서에 포함된 코드의 저작권을 포함하는 모든 권리는 출원인에게 귀속되며 출원인의 소유이다. 출원인은 본 명세서에 포함되는 코드의 모든 권리를 보유하고 보존하며, 다른 목적 없이 오직 승인된 특허의 재생산과 관련된 자료의 재생산을 위한 허가만을 승인한다.
본 명세서는 예시를 포함하지만, 발명의 범위는 다음의 청구항에 의해 지시된다. 더 나아가, 본 명세서는 특정한 구조적인 태양 및/또는 방법론적인 동작에 관련된 언어로 개시되었지만, 청구항은 상기에 개시된 태양 또는 동작에 한정되지 않는다. 더 나아가, 상기에 개시된 특정한 태양 및 동작은 본 발명의 실시예에 대한 예시로서 개시된다.

Claims (20)

  1. 분산 캐쥬얼 검색(a distributed casual search)을 제공하기 위한 시스템으로서,
    상기 시스템은 시작 서버(an originating server)를 포함하고,
    상기 시작 서버는,
    메모리 저장소; 및
    상기 메모리 저장소에 연결된 프로세싱 유닛을 포함하되,
    상기 프로세싱 유닛은,
    제1 요청이 상기 시작 서버와 관련된 정보에 의해 수행될 수 없다는 것을 판정하는 단계;
    상기 제1 요청을 분산 요청 링(a distributed request ring)으로 포스팅(posting)하는 단계;
    원격 서버로부터 상기 제1 요청에 대한 응답을 수신하는 단계 - 상기 응답은 현재 데이터를 포함하고,
    상기 원격 서버는, 상기 원격 서버와 관련된 데이터 저장소 상에 저장된 상기 현재 데이터가 업데이트되며 상기 현재 데이터의 소유자에 의해 생성된 조건(a predicate) - 상기 조건은 상기 업데이트된 현재 데이터가 상기 시작 서버로 전달되는지 여부를 결정함 - 이 만족되는 경우에, 상기 원격 서버에 의해 제1 요청의 수신에 응답하여 기록되며 상기 시작 서버 상에서 상기 현재 데이터를 업데이트하는데 사용되는 외부 참조(foreign reference)를 가짐 - ;
    상기 시작 서버에서, 상기 제1 요청에 대한 응답을 저장하는 단계;
    제2 클라이언트로부터 제2 요청을 수신하는 단계; 및
    상기 제2 요청이 상기 저장된 제1 요청에 대한 응답에 의해 수행될 수 있다는 것을 판정하는 단계를 수행하는
    분산 캐쥬얼 검색을 제공하기 위한 시스템.
  2. 제1항에 있어서,
    상기 프로세싱 유닛은, 상기 제1 요청을 제1 클라이언트로부터 수신하는 단계를 추가로 수행하는
    분산 캐쥬얼 검색을 제공하기 위한 시스템.
  3. 제1항에 있어서,
    상기 프로세싱 유닛은 상기 제1 요청에 대한 상기 응답을 제1 클라이언트로 전송하는 단계를 추가로 수행하는
    분산 캐쥬얼 검색을 제공하기 위한 시스템.
  4. 제1항에 있어서,
    상기 프로세싱 유닛은 상기 제2 요청에 대한 응답을 상기 제2 클라이언트로 송신하는 단계를 추가로 수행하는
    분산 캐쥬얼 검색을 제공하기 위한 시스템.
  5. 제1항에 있어서,
    상기 포스팅하는 단계는, 적어도 하나의 다른 서버를 포함하는 상기 분산 요청 링으로 포스팅하는 것을 포함하는
    분산 캐쥬얼 검색을 제공하기 위한 시스템.
  6. 제1항에 있어서,
    상기 포스팅하는 단계는, 상기 제1 요청을 상기 분산 요청 링으로 포스팅하는 것을 포함하고, 상기 시작 서버는 상기 분산 요청 링 상의 다른 서버들의 존재(the identity of other servers)를 모르는
    분산 캐쥬얼 검색을 제공하기 위한 시스템.
  7. 제1항에 있어서,
    상기 포스팅하는 단계는, 상기 제1 요청을 개시(describing)하고 상기 분산 요청 링의 적어도 하나의 다른 서버의 OS(operating system)의 API(application program interface) 및 상기 원격 서버의 OS의 API에서 수신되도록 구성되는 정보를 상기 분산 요청 링으로 포스팅하는 단계를 포함하는
    분산 캐쥬얼 검색을 제공하기 위한 시스템.
  8. 실행될 때 분산 캐쥬얼 검색을 제공하기 위한 방법을 수행하는 명령어들의 집합을 저장하는 컴퓨터-판독가능 매체로서,
    상기 명령어들의 집합에 의해 수행되는 상기 방법은,
    분산 요청 링 상의 원격 서버에서 제1 요청을 수신하는 단계;
    상기 원격 서버에 의해 상기 제1 요청을 만족시키는 상기 원격 서버와 관련된 데이터 저장소 상의 현재 데이터에 대하여 질의(querying)하는 단계;
    상기 원격 서버와 관련된 상기 데이터 저장소에 외부 참조를 기록하는 단계 - 상기 외부 참조는 시작 서버가 상기 현재 데이터를 요청하였다는 것을 나타내고, 상기 외부 참조를 기록하는 단계는 상기 원격 서버와 관련된 상기 데이터 저장소 상의 상기 현재 데이터에 대한 질의를 수신하는 것에 응답하여 시작됨 -;
    상기 원격 서버에서 상기 현재 데이터를 업데이트하기 위한 명령어를 수신하는 단계 - 상기 명령어는 상기 원격 서버와 관련된 상기 현재 데이터를 대체하기 위한 업데이트된 데이터를 포함함 -;
    상기 원격 서버에서 상기 외부 참조가 상기 현재 데이터와 관련되어 있다는 것을 판정하는 단계; 및
    상기 외부 참조에 따라 상기 업데이트된 데이터를 시작 서버로 전송하는 단계 - 상기 외부 참조에 따라 전송하는 단계는 상기 외부 참조가 전송을 위한 조건이 만족된 것을 나타내는 경우에 상기 업데이트된 데이터를 전송하는 것을 포함하고, 상기 조건은 상기 업데이트된 데이터의 소유자에 의해 생성되고 상기 업데이트된 데이터가 상기 시작 서버로 전달될 것인지 여부를 나타냄 - 를 포함하는
    컴퓨터-판독가능 매체.
  9. 제8항에 있어서,
    상기 외부 참조를 기록하는 단계는 상기 시작 서버를 식별하는 상기 외부 참조를 기록하는 단계를 포함하는
    컴퓨터-판독가능 매체.
  10. 분산 캐쥬얼 검색(a distributed casual search)을 제공하기 위한 방법으로서,
    제1 요청이 시작 서버와 관련된 정보에 의해 수행될 수 없다는 것을 판정하는 단계;
    상기 제1 요청을 분산 요청 링(a distributed request ring)으로 포스팅하는 단계;
    원격 서버로부터 상기 제1 요청에 대한 응답을 수신하는 단계 - 상기 응답은 현재 데이터를 포함하고,
    상기 원격 서버는, 상기 원격 서버와 관련된 데이터 저장소 상에 저장된 상기 현재 데이터가 업데이트되며 상기 현재 데이터의 소유자에 의해 생성된 조건(a predicate) - 상기 조건은 상기 업데이트된 현재 데이터가 상기 시작 서버로 전달되는지 여부를 판정함 - 이 만족되는 경우에, 상기 원격 서버에 의해 제1 요청의 수신에 응답하여 기록되며 상기 시작 서버 상에서 상기 현재 데이터를 업데이트하는데 사용되는 외부 참조(foreign reference)를 가짐 - ;
    상기 시작 서버에서, 상기 제1 요청에 대한 응답을 저장하는 단계;
    제2 클라이언트로부터 제2 요청을 수신하는 단계;
    상기 제2 요청이 상기 저장된 제1 요청에 대한 응답에 의해 수행될 수 있는지를 판정하는 단계를 포함하는
    분산 캐쥬얼 검색을 제공하기 위한 방법.
  11. 제10항에 있어서,
    제1 클라이언트로부터 상기 제1 요청을 수신하는 단계를 더 포함하는
    분산 캐쥬얼 검색을 제공하기 위한 방법.
  12. 제10항에 있어서,
    상기 제1 요청에 대한 응답을 제1 클라이언트로 전송하는 단계를 더 포함하는
    분산 캐쥬얼 검색을 제공하기 위한 방법.
  13. 제10항에 있어서,
    상기 제2 요청에 대한 응답을 상기 제2 클라이언트로 전송하는 단계를 더 포함하는
    분산 캐쥬얼 검색을 제공하기 위한 방법.
  14. 제10항에 있어서,
    상기 포스팅하는 단계는 적어도 하나의 다른 서버를 포함하는 상기 분산 요청 링으로 포스팅하는 것을 포함하는
    분산 캐쥬얼 검색을 제공하기 위한 방법.
  15. 제10항에 있어서,
    상기 포스팅하는 단계는 상기 제1 요청을 상기 분산 요청 링으로 포스팅하는 것을 포함하고, 상기 시작 서버는 상기 분산 요청 링 상의 다른 서버의 존재를 모르는
    분산 캐쥬얼 검색을 제공하기 위한 방법.
  16. 제10항에 있어서,
    상기 포스팅하는 단계는 상기 제1 요청을 개시하고 상기 분산 요청 링의 적어도 하나의 다른 서버의 OS의 API 및 원격 서버의 OS의 API에서 수신되도록 구성되는 정보를 상기 분산 요청 링으로 포스팅하는 단계를 포함하는
    분산 캐쥬얼 검색을 제공하기 위한 방법.
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020097022365A 2007-05-02 2008-04-21 서버의 캐쥬얼 네트워크에서의 분산 검색 KR101443942B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/743,259 US8280983B2 (en) 2007-05-02 2007-05-02 Distributed search in a casual network of servers
US11/743,259 2007-05-02
PCT/US2008/060992 WO2008137296A1 (en) 2007-05-02 2008-04-21 Distributed search in a casual network of servers

Publications (2)

Publication Number Publication Date
KR20100015924A KR20100015924A (ko) 2010-02-12
KR101443942B1 true KR101443942B1 (ko) 2014-09-23

Family

ID=39940353

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097022365A KR101443942B1 (ko) 2007-05-02 2008-04-21 서버의 캐쥬얼 네트워크에서의 분산 검색

Country Status (6)

Country Link
US (1) US8280983B2 (ko)
EP (1) EP2153353A4 (ko)
JP (1) JP5377475B2 (ko)
KR (1) KR101443942B1 (ko)
CN (2) CN105260445A (ko)
WO (1) WO2008137296A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101996211B (zh) 2009-08-20 2013-01-23 华为技术有限公司 移动搜索的搜索服务器互联的方法、搜索服务器和系统
CN103581273B (zh) * 2012-08-08 2017-06-06 阿里巴巴集团控股有限公司 一种分布式系统执行业务的方法、装置及系统
FR3004047A1 (fr) * 2013-03-29 2014-10-03 France Telecom Technique de cooperation entre une pluralite d'entites clientes
CN108885627B (zh) * 2016-01-11 2022-04-05 甲骨文美国公司 向远程客户端提供查询结果数据的查询即服务系统
CN115150422A (zh) * 2021-03-31 2022-10-04 北京轻舟智航智能技术有限公司 数据处理装置和数据处理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020194382A1 (en) 2001-06-04 2002-12-19 Kausik Balas Natarajan Method and system for efficient and automated version management of embedded objects in web documents
US7349902B1 (en) * 1999-08-04 2008-03-25 Hewlett-Packard Development Company, L.P. Content consistency in a data access network system

Family Cites Families (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5668986A (en) * 1991-10-02 1997-09-16 International Business Machines Corporation Method and apparatus for handling data storage requests in a distributed data base environment
US5596744A (en) * 1993-05-20 1997-01-21 Hughes Aircraft Company Apparatus and method for providing users with transparent integrated access to heterogeneous database management systems
US6282580B1 (en) * 1996-07-02 2001-08-28 Sun Microsystems, Inc. Bridge providing communication between different implementations of object request brokers
US6335927B1 (en) * 1996-11-18 2002-01-01 Mci Communications Corporation System and method for providing requested quality of service in a hybrid network
US6212545B1 (en) * 1997-10-31 2001-04-03 Fujitsu Limited Distributed searching system and searching apparatus for use in the distributed searching system
JPH11327997A (ja) * 1998-05-15 1999-11-30 Hitachi Ltd 分散オブジェクトによるマルチデータの統一アクセスシステム
US6208955B1 (en) 1998-06-12 2001-03-27 Rockwell Science Center, Llc Distributed maintenance system based on causal networks
US7356533B1 (en) 1999-04-05 2008-04-08 Globalspec, Inc. Database search in distributed computer system on portion of remote database
US6607485B2 (en) 1999-06-03 2003-08-19 Cardiac Intelligence Corporation Computer readable storage medium containing code for automated collection and analysis of patient information retrieved from an implantable medical device for remote patient care
US6658463B1 (en) * 1999-06-10 2003-12-02 Hughes Electronics Corporation Satellite multicast performance enhancing multicast HTTP proxy system and method
US6640244B1 (en) * 1999-08-31 2003-10-28 Accenture Llp Request batcher in a transaction services patterns environment
US6615253B1 (en) * 1999-08-31 2003-09-02 Accenture Llp Efficient server side data retrieval for execution of client side applications
US6601192B1 (en) * 1999-08-31 2003-07-29 Accenture Llp Assertion component in environment services patterns
US7289964B1 (en) * 1999-08-31 2007-10-30 Accenture Llp System and method for transaction services patterns in a netcentric environment
US6571282B1 (en) * 1999-08-31 2003-05-27 Accenture Llp Block-based communication in a communication services patterns environment
US6477580B1 (en) * 1999-08-31 2002-11-05 Accenture Llp Self-described stream in a communication services patterns environment
US6289382B1 (en) * 1999-08-31 2001-09-11 Andersen Consulting, Llp System, method and article of manufacture for a globally addressable interface in a communication services patterns environment
US6339832B1 (en) * 1999-08-31 2002-01-15 Accenture Llp Exception response table in environment services patterns
US6529909B1 (en) * 1999-08-31 2003-03-04 Accenture Llp Method for translating an object attribute converter in an information services patterns environment
US6578068B1 (en) * 1999-08-31 2003-06-10 Accenture Llp Load balancer in environment services patterns
US6529948B1 (en) * 1999-08-31 2003-03-04 Accenture Llp Multi-object fetch component
US6434628B1 (en) * 1999-08-31 2002-08-13 Accenture Llp Common interface for handling exception interface name with additional prefix and suffix for handling exceptions in environment services patterns
US6606660B1 (en) * 1999-08-31 2003-08-12 Accenture Llp Stream-based communication in a communication services patterns environment
US6496850B1 (en) * 1999-08-31 2002-12-17 Accenture Llp Clean-up of orphaned server contexts
US6842906B1 (en) * 1999-08-31 2005-01-11 Accenture Llp System and method for a refreshable proxy pool in a communication services patterns environment
US6640238B1 (en) * 1999-08-31 2003-10-28 Accenture Llp Activity component in a presentation services patterns environment
US6502213B1 (en) * 1999-08-31 2002-12-31 Accenture Llp System, method, and article of manufacture for a polymorphic exception handler in environment services patterns
US6601234B1 (en) * 1999-08-31 2003-07-29 Accenture Llp Attribute dictionary in a business logic services environment
US6438594B1 (en) * 1999-08-31 2002-08-20 Accenture Llp Delivering service to a client via a locally addressable interface
US6434568B1 (en) * 1999-08-31 2002-08-13 Accenture Llp Information services patterns in a netcentric environment
US6715145B1 (en) * 1999-08-31 2004-03-30 Accenture Llp Processing pipeline in a base services pattern environment
US6549949B1 (en) * 1999-08-31 2003-04-15 Accenture Llp Fixed format stream in a communication services patterns environment
US6550057B1 (en) * 1999-08-31 2003-04-15 Accenture Llp Piecemeal retrieval in an information services patterns environment
US6636242B2 (en) * 1999-08-31 2003-10-21 Accenture Llp View configurer in a presentation services patterns environment
US6615199B1 (en) * 1999-08-31 2003-09-02 Accenture, Llp Abstraction factory in a base services pattern environment
US6442748B1 (en) * 1999-08-31 2002-08-27 Accenture Llp System, method and article of manufacture for a persistent state and persistent object separator in an information services patterns environment
US6477665B1 (en) * 1999-08-31 2002-11-05 Accenture Llp System, method, and article of manufacture for environment services patterns in a netcentic environment
US6742015B1 (en) * 1999-08-31 2004-05-25 Accenture Llp Base services patterns in a netcentric environment
US6539396B1 (en) * 1999-08-31 2003-03-25 Accenture Llp Multi-object identifier system and method for information service pattern environment
US6640249B1 (en) * 1999-08-31 2003-10-28 Accenture Llp Presentation services patterns in a netcentric environment
US6332163B1 (en) * 1999-09-01 2001-12-18 Accenture, Llp Method for providing communication services over a computer network system
US6523023B1 (en) * 1999-09-22 2003-02-18 Networks Associates Technology, Inc. Method system and computer program product for distributed internet information search and retrieval
US6490575B1 (en) * 1999-12-06 2002-12-03 International Business Machines Corporation Distributed network search engine
US6434548B1 (en) * 1999-12-07 2002-08-13 International Business Machines Corporation Distributed metadata searching system and method
US7162539B2 (en) * 2000-03-16 2007-01-09 Adara Networks, Inc. System and method for discovering information objects and information object repositories in computer networks
US7523158B1 (en) * 2000-05-12 2009-04-21 Oracle International Corporation System and method for partial page updates using a proxy element
US20010056476A1 (en) * 2000-06-20 2001-12-27 International Business Machines Corporation System and method for accessing a server connected to an IP network through a non-permanent connection
US6647383B1 (en) 2000-09-01 2003-11-11 Lucent Technologies Inc. System and method for providing interactive dialogue and iterative search functions to find information
US6587777B1 (en) * 2000-10-23 2003-07-01 Sun Microsystems, Inc. System and method for location based traffic reporting
US6795848B1 (en) * 2000-11-08 2004-09-21 Hughes Electronics Corporation System and method of reading ahead of objects for delivery to an HTTP proxy server
US6934702B2 (en) * 2001-05-04 2005-08-23 Sun Microsystems, Inc. Method and system of routing messages in a distributed search network
US20030065774A1 (en) * 2001-05-24 2003-04-03 Donald Steiner Peer-to-peer based distributed search architecture in a networked environment
JP2003030072A (ja) * 2001-07-18 2003-01-31 Matsushita Electric Ind Co Ltd 遠隔制御代理方法および遠隔制御代理装置
US7076244B2 (en) * 2001-07-23 2006-07-11 Research In Motion Limited System and method for pushing information to a mobile device
US20040205630A1 (en) * 2001-08-24 2004-10-14 Parks Jeff A. System and method for application entitlement
US7010581B2 (en) * 2001-09-24 2006-03-07 International Business Machines Corporation Method and system for providing browser functions on a web page for client-specific accessibility
US20030105837A1 (en) * 2001-11-30 2003-06-05 Yury Kamen Interception for optimal caching of distributed applications
US20030225885A1 (en) * 2002-05-31 2003-12-04 Comverse, Ltd. Caching for limited bandwidth networks
CN1221898C (zh) * 2002-08-13 2005-10-05 国际商业机器公司 刷新网络代理高速缓存服务器对象的系统和方法
US7136885B2 (en) * 2002-12-20 2006-11-14 International Business Machines Corporation Free space management
US7305375B2 (en) * 2003-04-23 2007-12-04 Hewlett-Packard Development Company, L.P. Method and system for distributed remote resources
JP2006524872A (ja) * 2003-04-25 2006-11-02 ザ トムソン コーポレーション 分散型検索方法、アーキテクチャ、システム、およびソフトウェア
US8095500B2 (en) * 2003-06-13 2012-01-10 Brilliant Digital Entertainment, Inc. Methods and systems for searching content in distributed computing networks
CA2433826A1 (en) * 2003-06-25 2004-12-25 Ibm Canada Limited - Ibm Canada Limitee Supplier proxy store to virtulize an external business entity
US7403786B2 (en) * 2003-09-26 2008-07-22 Siemens Communications, Inc. System and method for in-building presence system
US7631100B2 (en) * 2003-10-07 2009-12-08 Microsoft Corporation Supporting point-to-point intracluster communications between replicated cluster nodes
US20050172004A1 (en) * 2004-02-04 2005-08-04 Clay Fisher Methods and apparatuses for certifying electronic messages
US8156488B2 (en) * 2004-10-20 2012-04-10 Nokia Corporation Terminal, method and computer program product for validating a software application
JP2006252384A (ja) * 2005-03-14 2006-09-21 National Institute Of Advanced Industrial & Technology 検索システム、検索サーバ、及び、ネットワークサーバ
JP4729987B2 (ja) * 2005-06-02 2011-07-20 富士ゼロックス株式会社 データ管理システム及びデータサーバ
CN100375094C (zh) * 2005-08-23 2008-03-12 萧学文 实现移动终端搜索网络资源的系统及方法
US20070073756A1 (en) * 2005-09-26 2007-03-29 Jivan Manhas System and method configuring contextual based content with published content for display on a user interface
US20080059943A1 (en) * 2006-08-30 2008-03-06 Vadym Krevs Method and system for using a library cache in a distributed development environment
US20080209120A1 (en) * 2007-02-26 2008-08-28 Microsoft Corporation Accelerating cache performance by active cache validation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7349902B1 (en) * 1999-08-04 2008-03-25 Hewlett-Packard Development Company, L.P. Content consistency in a data access network system
US20020194382A1 (en) 2001-06-04 2002-12-19 Kausik Balas Natarajan Method and system for efficient and automated version management of embedded objects in web documents

Also Published As

Publication number Publication date
KR20100015924A (ko) 2010-02-12
CN101675433A (zh) 2010-03-17
US8280983B2 (en) 2012-10-02
JP5377475B2 (ja) 2013-12-25
US20080275959A1 (en) 2008-11-06
CN105260445A (zh) 2016-01-20
WO2008137296A1 (en) 2008-11-13
EP2153353A1 (en) 2010-02-17
EP2153353A4 (en) 2016-03-30
JP2010528350A (ja) 2010-08-19

Similar Documents

Publication Publication Date Title
CN109937402B (zh) 使用回调通知进行数据的出口和入口
US11025739B2 (en) Predictive local pre-cache for reduced latency digital content access rights determination
KR101312834B1 (ko) 검색 경보 결과들 전송 방법, 검색 경보 결과들 전송 시스템, 및 컴퓨터 판독가능 저장 메모리
US20080065597A1 (en) Updating content index for content searches on networks
US11188551B2 (en) Multi-level data pagination
CN109213604B (zh) 一种数据源的管理方法和装置
KR101443942B1 (ko) 서버의 캐쥬얼 네트워크에서의 분산 검색
US11204918B2 (en) Systems and methods for accessing a database management system
US10382528B2 (en) Disposition actions in digital asset management based on trigger events
CN110347900B (zh) 一种关键词的重要度计算方法、装置、服务器及介质
CN111190899A (zh) 一种埋点数据处理方法、装置、服务器及存储介质
CN113110843B (zh) 合约生成模型训练方法、合约生成方法及电子设备
CN106156050B (zh) 一种数据处理方法及装置
WO2020192663A1 (zh) 一种数据管理方法及相关设备
CN110888839A (zh) 数据存储及数据搜索方法和装置
US11023479B2 (en) Managing asynchronous analytics operation based on communication exchange
CN111367898B (zh) 数据处理方法、装置、系统、电子设备及存储介质
US20160150038A1 (en) Efficiently Discovering and Surfacing Content Attributes
US10482077B2 (en) System and method for asynchronous update of a search index
CN113760860B (zh) 一种数据读取方法和装置
CN111752956A (zh) 实体的关联变更方法及装置、电子设备
US9086860B2 (en) Bi-directional linking of product build information
CN116881870A (zh) 一种基于科研成果分析的数据溯源方法和系统
CN113760981A (zh) 一种数据查询方法和装置
CN111858223A (zh) 测试存储服务接口的方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170818

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180816

Year of fee payment: 5