KR20110086825A - 타깃 사이트와 연관된 제안 사이트의 제공 - Google Patents

타깃 사이트와 연관된 제안 사이트의 제공 Download PDF

Info

Publication number
KR20110086825A
KR20110086825A KR1020117011402A KR20117011402A KR20110086825A KR 20110086825 A KR20110086825 A KR 20110086825A KR 1020117011402 A KR1020117011402 A KR 1020117011402A KR 20117011402 A KR20117011402 A KR 20117011402A KR 20110086825 A KR20110086825 A KR 20110086825A
Authority
KR
South Korea
Prior art keywords
site
web
proposal
data
user
Prior art date
Application number
KR1020117011402A
Other languages
English (en)
Other versions
KR101624002B1 (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 KR20110086825A publication Critical patent/KR20110086825A/ko
Application granted granted Critical
Publication of KR101624002B1 publication Critical patent/KR101624002B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • G06F16/337Profile generation, learning or modification
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

타깃 사이트에 따라 제안 사이트를 제공하는 것을 용이하게 해주는 시스템, 방법, 및 컴퓨터 실행가능 명령어가 구현되어 있는 컴퓨터 저장 매체가 제공된다. 웹-브라우징된 데이터는 사용자 장치 상에 로컬 저장되며, 제안 엔진에 업로드된다. 부가의 웹-브라우징된 데이터는 타깃 사이트에 관련된 제안 사이트에 대한 요청을 제공하는 제안 사이트 요청을 통해 제안 엔진에 전달된다. 실시예에서, 제안 사이트 요청에 포함된 웹-브라우징된 데이터는 제안 엔진에 이전에 업로드되지 않은 데이터를 포함한다. 제안 엔진은 제안 엔진에 업로드된 웹-브라우징된 데이터 및 제안 사이트 요청을 통해 전달된 웹-브라우징된 데이터를 이용하여 타깃 사이트와 관련하여 제안 사이트를 제공한다.

Description

타깃 사이트와 연관된 제안 사이트의 제공{PROVIDING SUGGESTED SITES ASSOCIATED WITH TARGET SITES}
사용자가 웹 사이트를 방문하는 경우, 사용자는 종종 다른 유사하거나 관련된 웹 사이트에 관심을 갖는다. 종종, 현재 보고 있는 웹 사이트와 관련되거나 유사한 웹 사이트를 사용자가 모르고 있다. 이로서, 일반적으로, 사용자가 관심을 가질지도 모르는 유사하거나 관련된 웹 사이트를 식별하기 위해, 사용자는 사용자가 관심을 갖는 다른 웹 사이트를 제공할지도 모르는 검색 결과를 획득하기 위해 검색 엔진에 질의를 입력한다. 그러나, 많은 경우에, 사용자는 특정의 웹 사이트와 관련되거나 유사한 웹 사이트를 찾는데 이용할 질의 용어(query term)를 알지 못할 수도 있다. 따라서, 다른 관련된 웹 사이트를 식별하는 것은 어려운 태스크일 수 있으며, 이러한 웹 사이트가 덜 인기있거나 다른 방식으로 그와 연관되는 제한된 열람-이력(viewer-history)을 갖는 경우에 특히 그렇다.
본 발명의 실시예는, 타깃 사이트와 관련하여 제안 사이트를 제공하는 것을 용이하게 해주는 시스템 및 방법에 관한 것이다. 제안 사이트는 다른 특정의 사이트에 대한 그의 관련성 또는 유사성에 기초하여 제안되거나 추천되는 웹 사이트 또는 웹 페이지이다. 사용자에게 제공할 제안 사이트를 식별하기 위해, 사용자 또는 사용자 그룹의 브라우징 액티비티와 연관된 브라우징 이력이 이용된다. 사용자 또는 사용자 그룹의 집합적인(aggregated) 브라우징 이력을 이용하는 것이 유리한데, 그 이유는 이러한 데이터가 사용자가 관심을 가질지도 모르는 사이트를 더 잘 예상할 수 있기 때문이다. 그에 따라, 사용자와 연관된 브라우징 이력이 포착되며, 브라우징 데이터를 축적하는 제안 엔진에 주기적으로 업로드될 수 있다. 또한, 제안 엔진이 최신의 제안 사이트를 제공하기 위해, 사용자의 최근의 브라우징 이력 또는 그의 일부분이 제안 사이트에 대한 요청을 통해 제안 엔진에 전달될 수 있다. 본 발명의 실시예는 또한 사용자 프라이버시를 유지하면서 타깃 사이트와 관련하여 제안 사이트를 제공하는 것에 관한 것이다.
이 요약은 이하에서 상세한 설명에 더 기술되는 개념의 선택물을 간략화된 형태로 소개하기 위해 제공된 것이다. 이 요약은 청구된 발명 대상의 주요 특징 또는 필수적인 특징을 식별하기 위한 것이 아니며, 청구된 발명 대상의 범위를 정하는데 보조물로서 이용되기 위한 것도 아니다.
이하, 첨부 도면을 참조하여 본 발명에 대해 상세히 기술한다.
도 1은 본 발명의 실시예를 구현하는데 이용하기 적합한 예시적인 컴퓨팅 환경의 블록도이다.
도 2는 본 발명의 실시예가 이용될 수 있는 예시적인 시스템의 블록도이다.
도 3은 본 발명의 일 실시예에 따라 제안 사이트를 제공하는 것을 용이하게 해주기 위해 웹-브라우징된 데이터를 제안 엔진에 제공하는 방법을 나타낸 흐름도이다.
도 4는 본 발명의 일 실시예에 따라 제안 사이트를 제공하는 것을 용이하게 해주기 위해 제안 사이트 요청을 통해 웹-브라우징된 데이터를 제안 엔진에 제공하는 방법을 나타낸 흐름도이다.
도 5는 본 발명의 일 실시예에 따라 제안 사이트를 제공하는 방법을 나타낸 흐름도이다.
도 6은 본 발명의 일 실시예에 따라 사용자 프라이버시를 유지하면서 제안 사이트를 제공하는 방법을 나타낸 흐름도이다.
도 7은 본 발명의 일 실시예에 따라 타깃 사이트와 관련하여 제안 사이트의 제시를 나타내는 예시적인 사용자 인터페이스의 제1 예시적인 스크린 디스플레이이다.
도 8은 본 발명의 일 실시예에 따라 타깃 사이트와 관련하여 제안 사이트의 제시를 나타내는 예시적인 사용자 인터페이스의 제2 예시적인 스크린 디스플레이이다.
법적 요건을 만족시키기 위해 본 발명의 발명 대상이 본 명세서에 구체적으로 기술되어 있다. 그러나, 그 설명 자체가 이 특허의 범위를 제한하기 위한 것은 아니다. 오히려, 발명자는, 현재 또는 장래의 다른 기술과 함께, 이 문헌에 기술된 단계와 상이한 단계 또는 이 문헌에 기술된 단계와 유사한 단계의 조합을 포함하기 위해, 청구된 발명 대상이 다른 방식으로도 구현될 수 있는 것을 생각하고 있다. 게다가, "단계" 및/또는 "블록"이라는 용어가 이용되는 방법의 상이한 요소를 암시하기 위해 본 명세서에서 이용될 수 있지만, 개별 단계의 순서가 명확하게 기술되어 있지 않은 한 그리고 그러한 경우를 제외하고는, 이들 용어가 본 명세서에 개시된 다양한 단계들 사이에서 임의의 특정의 순서를 암시하는 것으로 해석되어서는 안 된다.
본 발명의 실시예는, 타깃 사이트와 관련하여 제안 사이트를 제공하는 것을 용이하게 해주는 시스템, 방법, 및 컴퓨터 실행가능 명령어가 구현되어 있는 컴퓨터 저장 매체에 관한 것이다. 제안 사이트는 타깃 사이트에 대한 그의 관련성 또는 유사성에 기초하여 제안되거나 추천되는 웹 사이트 또는 웹 페이지이다. 사용자가 관심을 갖는 더 많은 사이트가 제공될지도 모른다는 점에서, 제안 사이트를 제공하기 위해 사용자 또는 사용자 그룹의 브라우징 이력을 이용하는 것이 유리하다. 그에 따라, 사용자와 연관된 브라우징 이력이 포착되며, 브라우징 데이터를 축적하는 제안 엔진에 주기적으로 업로드될 수 있다. 또한, 제안 엔진이 최신의 제안 사이트를 제공하기 위해, 사용자의 최근의 브라우징 이력 또는 그의 일부분이 제안 사이트에 대한 요청을 통해 제안 엔진에 전달될 수 있다. 게다가, 사용자 프라이버시를 유지하기 위해, 개인적이도록 의도된 데이터의 이용이 줄어들거나 제거되도록 이러한 데이터의 표시가 제안 엔진에 전달된다. 이러한 사용자 프라이버시는 프라이버시 보호 및 데이터 무결성을 지원하는 HTTPS와 같은 임의의 프로토콜을 이용하여 달성될 수 있다.
그에 따라, 일 양태에서, 본 발명은 타깃 사이트와 관련하여 제안 사이트를 제공하는 것을 용이하게 해주는 방법을 수행하는 컴퓨터 실행가능 명령어가 구현되어 있는 하나 이상의 컴퓨터 저장 매체에 관한 것이다. 이 방법은, 사용자의 웹 브라우징 액티비티와 연관된 웹-브라우징된 데이터를 획득하는 단계를 포함한다. 웹-브라우징된 데이터는 웹-브라우징된 웹 사이트 또는 웹 페이지를 식별해주는 사이트 식별자를 포함한다. 웹-브라우징된 데이터는 웹 브라우징 액티비티에 대응하는 사용자 또는 사용자 장치를 식별해주는 사용자 식별자와 관련하여 저장된다. 저장된 웹-브라우징된 데이터는 타깃 사이트와 관련하여 제안 사이트를 제공하는 제안 엔진에 전달된다. 웹-브라우징된 데이터는 각각의 타깃 사이트에 대한 제안 사이트를 결정하는데 이용된다.
다른 양태에서, 본 발명은 타깃 사이트와 관련하여 제안 사이트를 제공하는 것을 용이하게 해주는 컴퓨터화된 방법에 관한 것이다. 이 방법은, 사용자의 웹 브라우징 액티비티와 연관된 웹-브라우징된 데이터를 수신하는 단계를 포함한다. 웹-브라우징된 데이터는 웹-브라우징된 웹 사이트 또는 웹 페이지를 식별해주는 사이트 식별자를 포함한다. 웹-브라우징된 데이터는 사용자와 관련하여 데이터 저장소에 저장된다. 사용자와 연관된 최근의 웹-브라우징된 데이터는 제안 사이트를 요청하는 제안 사이트 요청을 통해 수신된다. 최근의 웹-브라우징된 데이터는 타깃 사이트를 포함한다. 수신된 타깃 사이트 및 수신된 웹-브라우징된 데이터는 타깃 사이트와 관련하여 제안 사이트를 식별하는데 이용되며, 제안 사이트는 대응하는 타깃 사이트와 관련되거나 유사하다. 제안 사이트는 대응하는 타깃 사이트와 관련하여 제시된다.
또 다른 양태에서, 본 발명은, 타깃 사이트와 관련하여 제안 사이트를 제공하는 것을 용이하게 해주는 컴퓨터 실행가능 명령어가 구현되어 있는 하나 이상의 컴퓨터 저장 매체에 관한 것이다. 이 방법은, 웹 브라우저 사용자의 그룹의 웹 브라우징 액티비티와 연관된 웹-브라우징된 데이터를 수신하는 단계를 포함한다. 웹-브라우징된 데이터는 웹-브라우징된 웹 사이트 또는 웹 페이지를 식별해주는 사이트 식별자를 포함한다. 웹-브라우징된 데이터는 사용자 식별자와 관련하여 데이터 저장소에 저장된다. 제안 사이트 요청이 수신되고, 이 제안 사이트 요청은 사용자가 제안 사이트를 보고자 한다는 표시를 제공한 것에 응답하여 사용자 장치로부터 전달된다. 제안 사이트 요청은 사용자와 연관된 최근의 웹-브라우징된 데이터를 포함하며, 최근의 웹-브라우징된 데이터는 사용자 또는 사용자 장치와 연관된 사용자 식별자, 최근에 본 사이트를 포함하는 타깃 사이트, 및 최근에 삭제된 사이트의 표시를 포함한다. 타깃 사이트 각각에 대응하는 제안 사이트는 데이터 저장소에 저장된 웹-브라우징된 데이터 및 제안 사이트 요청에서 전달된 최근의 웹-브라우징된 데이터를 이용하여 식별된다. 제안 사이트는 대응하는 타깃 사이트와 관련되거나 유사하다. 제안 사이트는 대응하는 타깃 사이트와 관련하여 사용자에게 제시된다.
본 발명의 개요를 간략하게 기술하였지만, 본 발명의 다양한 양태에 대한 일반적인 콘텍스트를 제공하기 위해 본 발명의 다양한 양태가 구현될 수 있는 예시적인 동작 환경에 대해 이하에서 기술한다. 일반적으로 첨부 도면을 참조하고 먼저 특히 도 1을 참조하면, 본 발명의 실시예를 구현하는 예시적인 동작 환경이 도시되어 있으며 일반적으로 컴퓨팅 장치(100)로서 나타내어져 있다. 컴퓨팅 장치(100)는 적합한 컴퓨팅 환경의 일례이며 본 발명의 용도 또는 기능의 범위에 관한 어떤 제한을 제안하기 위한 것이 아니다. 컴퓨팅 장치(100)가 예시된 컴포넌트들 중 어느 하나 또는 예시된 컴포넌트들의 임의의 조합에 관한 어떤 의존성 또는 요건을 갖는 것으로 해석되어서도 안 된다.
본 발명은, 컴퓨터 또는 다른 머신, 예를 들어 PDA(personal data assistant) 또는 기타 핸드헬드 장치에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령어를 비롯한 컴퓨터 코드 또는 머신 이용가능 명령어의 일반적인 콘텍스트에서 기술될 수 있다. 일반적으로, 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함하는 프로그램 모듈은 특정의 태스크를 수행하거나 특정의 추상 데이터 형식을 구현하는 코드를 말한다. 본 발명은 핸드헬드 장치, 가전 제품, 범용 컴퓨터, 전용 컴퓨팅 장치(more specialty computing device) 등을 비롯한 각종의 시스템 구성에서 실시될 수 있다. 본 발명은 또한 태스크가 통신 네트워크를 통해 링크되어 있는 원격 처리 장치에 의해 수행되는 분산 컴퓨팅 환경에서도 실시될 수 있다.
도 1을 참조하면, 컴퓨팅 장치(100)는 다음의 장치들: 메모리(112), 하나 이상의 프로세서(114), 하나 이상의 제시 컴포넌트(116), 입/출력 포트(118), 입/출력 컴포넌트(120), 및 예시적인 전원 공급 장치(122)를 직접 또는 간접적으로 연결시키는 버스(110)를 포함하고 있다. 버스(110)는 주소 버스, 데이터 버스 또는 이들의 조합과 같은 하나 이상의 버스일 수 있는 것을 나타낸다. 도 1의 다양한 블록이 명확함을 위해 선으로 나타내어져 있지만, 실제로는, 다양한 컴포넌트를 구분하는 것이 그렇게 명확하지 않으며, 비유적으로 말하면, 이들 선이 보다 정확하게는 애매모호하다(grey and fuzzy). 예를 들어, 디스플레이 장치와 같은 제시 컴포넌트를 I/O 컴포넌트라고 생각할 수 있다. 또한, 프로세서는 메모리를 갖는다. 이러한 것이 기술의 속성임을 잘 알 것이며, 다시 말하지만 도 1의 도면은 단지 본 발명의 하나 이상의 실시예와 관련하여 이용될 수 있는 예시적인 컴퓨팅 장치를 나타낸 것에 불과하다. "워크스테이션", "서버", "랩톱", "핸드헬드 장치" 등의 카테고리들 간에 구별을 두지 않는데, 그 이유는 이들 모두가 도 1의 범위 내에서 생각되고 "컴퓨팅 장치"를 말하는 것이기 때문이다.
컴퓨팅 장치(100)는 통상적으로 각종의 컴퓨터 판독가능 매체를 포함하고 있다. 컴퓨터 판독가능 매체는 컴퓨팅 장치(100)에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수 있고, 휘발성 및 비휘발성 매체, 착탈식 및 비착탈식 매체 둘 다를 포함한다. 제한이 아닌 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는, 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위해 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 착탈식 및 비착탈식 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 원하는 정보를 저장하는데 이용될 수 있으며 컴퓨팅 장치(100)에 의해 액세스될 수 있는 임의의 다른 매체를 포함하지만, 이들로 제한되지 않는다. 통신 매체는 통상적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터를 반송파 또는 기타 전송 메커니즘과 같이 피변조 데이터 신호(modulated data signal)에 구현하며, 임의의 정보 전달 매체를 포함한다. "피변조 데이터 신호"라는 용어는, 정보를 그 신호에 인코딩하는 방식으로 설정되거나 변경된 신호의 특성들 중 하나 이상을 갖는 신호를 의미한다. 제한이 아닌 예로서, 통신 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체와, 음향, RF, 적외선 및 기타 무선 매체와 같은 무선 매체를 포함한다. 상기한 것들 중 임의의 것의 조합도 또한 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
메모리(112)는 휘발성 및/또는 비휘발성 메모리의 형태의 컴퓨터 저장 매체를 포함한다. 메모리는 착탈식, 비착탈식 또는 이들의 조합일 수 있다. 예시적인 하드웨어 장치는 고체 메모리), 하드 드라이브, 광 디스크 드라이브 등을 포함한다. 컴퓨팅 장치(100)는 메모리(112) 또는 I/O 컴포넌트(120)와 같은 다양한 엔티티로부터 데이터를 판독하는 하나 이상의 프로세서를 포함한다. 제시 컴포넌트(들)(116)는 사용자 또는 기타 장치에 데이터 표시를 제공한다. 예시적인 제시 컴포넌트는 디스플레이 장치, 스피커, 인쇄 컴포넌트, 진동 컴포넌트 등을 포함한다.
I/O 포트(118)는 컴퓨팅 장치(100)가 I/O 컴포넌트(120)를 비롯한 다른 장치(이들 중 일부는 빌트인될 수 있음)에 논리적으로 연결되게 할 수 있다. 예시적인 컴포넌트들은 마이크로폰, 조이스틱, 게임 패드, 위성 안테나, 스캐너, 프린터, 무선 장치 등을 포함한다.
이제 도 2를 참조하면, 본 발명의 일 실시예에 따라 타깃 사이트와 관련하여 제안 사이트를 제공하는 것을 용이하게 해주는 시스템(200)을 나타낸 블록도가 제공되어 있다. 본 명세서에 기술된 이 구성 및 기타 구성들이 단지 예로서 기술되어 있다는 것이 이해되어야 한다. 기타 구성들 및 요소들(예를 들어, 머신, 인터페이스, 기능, 순서, 및 기능 그룹 등)이 도시된 것들에 부가하여 또는 그 대신에 이용될 수 있으며, 몇몇 요소들은 완전히 생략될 수 있다. 게다가, 본 명세서에 기술된 요소들 중 다수는, 개별 컴포넌트 또는 분산 컴포넌트로서 또는 다른 컴포넌트와 함께, 임의의 적합한 조합 및 위치로 구현될 수 있는 기능적 엔티티이다. 본 명세서에서 하나 이상의 엔티티에 의해 수행되는 것으로 기술된 다양한 기능이 하드웨어, 펌웨어 및/또는 소프트웨어에 의해 수행될 수 있다. 예를 들어, 메모리에 저장된 명령어를 실행하는 프로세서에 의해 다양한 기능이 수행될 수 있다.
도시되지 않은 컴포넌트들 중에서도 특히, 시스템(200)은 일반적으로 네트워크(214)를 통해 서로 통신하고 있는 사용자 장치(210) 및 제안 엔진(212)을 포함한다. 네트워크(214)는 하나 이상의 LAN(local area network) 및/또는 WAN(wide area network)(이들로 제한되지 않음)을 포함할 수 있다. 이러한 네트워킹 환경은 사무실, 전사적 컴퓨팅 네트워크(enterprise-wide computing network), 인트라넷 및 인터넷에서 흔한 것이다. 그에 따라, 네트워크(214)에 대해서는 여기에서 더 기술하지 않는다.
사용자 장치(210) 및 제안 엔진(212)은, 예를 들어, 도 1을 참조하여 전술한 컴퓨팅 장치(100)와 같은 임의의 유형의 컴퓨팅 장치를 포함할 수 있다. 제한이 아닌 단지 예로서, 사용자 장치(210) 및 제안 엔진(212)은 퍼스널 컴퓨터, 데스크톱 컴퓨터, 랩톱 컴퓨터, 핸드헬드 장치, 모바일 핸드셋, 가전 장치 등일 수 있다. 그러나, 유의해야 할 점은, 본 발명이 이러한 컴퓨팅 장치 상에서 구현하는 것으로 제한되지 않고, 본 발명의 실시예의 범위 내에서 각종 상이한 유형의 컴퓨팅 장치 중 임의의 것 상에서 구현될 수 있다는 것이다.
본 발명의 실시예의 범위 내에서 임의의 수의 사용자 장치, 제안 엔진 및 네트워크가 시스템(200) 내에 이용될 수 있다는 것이 이해되어야 한다. 또한, 시스템(200)의 많은 다른 컴포넌트가 도시되어 있지 않지만, 당업자라면, 이러한 컴포넌트 및 이들의 상호접속이 잘 알려져 있다는 것을 잘 알 것이다. 그에 따라, 시스템(200)에 도시되지 않은 컴포넌트에 관한 부가의 상세 사항에 대해 본 명세서에서 더 개시하지 않는다.
앞서 언급한 바와 같이, 본 발명의 실시예는 타깃 사이트와 관련하여 제안 사이트를 제공하는 것을 용이하게 해주는 시스템 및 방법에 관한 것이다. 제안 사이트는 타깃 사이트에 대한 그의 관련성 또는 유사성에 기초하여 제안되거나 추천되는 웹 사이트 또는 웹 페이지를 말한다. 즉, 제안 사이트는 사용자가 관심을 가질지도 모르는 타깃 사이트와 관련되거나 유사한 사이트이다. 제안 사이트는, 예를 들어, 콘텐츠, 특징, 주제, 검색 엔진 결과, 사용자 거동, 이들의 조합 등에 기초하여 타깃 사이트와 관련되거나 유사할 수 있다. 예를 들어, 뉴스 웹 사이트가 제안 사이트가 요망되는 타깃 사이트인 것으로 가정하자. 이러한 경우에, 다른 뉴스 웹 사이트가 타깃 사이트에 관련될 수 있고, 따라서, 제안 사이트로서 제공될 수 있다. 그에 따라, 사용자에게는 사용자가 관심을 가질지도 모르지만 알지 못하고 있는 다른 사이트(즉, 제안 사이트)가 통지될 수 있다. 타깃 사이트는 제안 사이트가 요망되거나 의도되는 웹 사이트 또는 웹 페이지를 말한다. 예를 들어, 타깃 사이트는 현재 보고 있는 사이트, 가장 최근에 본 사이트, 가장 흔히 보는 사이트 등일 수 있다. "사이트"라는 용어가 이후부터 일반적으로 이용되며, 웹 사이트 및/또는 웹 페이지를 포함하는 것으로 의도된다. 단지 예로서, 사용자가 웹 사이트 A를 보고 있고, 유사한 콘텐츠, 특징 또는 주제를 제공하는 다른 사이트를 제공받고자 하는 것으로 가정한다. 이러한 경우에, 웹 사이트 B, 웹 사이트 C 및 웹 사이트 D가 타깃 사이트(즉, 웹 사이트 A)와 관련하여 제안 사이트로서 식별되고 사용자에게 제시된다.
도 2에 도시된 바와 같이, 시스템(200)의 사용자 장치(210)는 웹-브라우징된 데이터 획득 컴포넌트(220), 웹-브라우징된 데이터 전달 컴포넌트(222), 표시 수신 컴포넌트(224), 요청 생성 컴포넌트(226), 요청 전달 컴포넌트(228), 제안 사이트 제시 컴포넌트(230) 및 데이터 저장소(232)를 포함하고 있다. 일부 실시예에서, 예시된 컴포넌트들(220, 222, 224, 226, 228, 230 및 232) 중 하나 이상의 컴포넌트가 독립형 애플리케이션으로서 구현될 수 있다. 다른 실시예에서, 예시된 컴포넌트(220, 222, 224, 226, 228, 230 및 232) 중 하나 이상의 컴포넌트가 사용자 장치(210) 및/또는 제안 엔진(212)의 운영 체제 내에 통합되거나, 사용자 장치(210)의 웹 브라우저와 통합될 수 있다. 당업자라면, 도 2에 예시된 컴포넌트들(220, 222, 224, 226, 228, 230 및 232)의 속성 및 수가 예시적인 것이며 제한하는 것으로 해석되어서는 안 된다는 것을 이해할 것이다. 임의의 수의 컴포넌트가 본 발명의 실시예의 범위 내에서 원하는 기능을 달성하는데 이용될 수 있다.
웹-브라우징된 데이터 획득 컴포넌트(220)는 사용자 또는 사용자 장치와 연관된 웹-브라우징된 데이터를 획득하도록 구성되어 있다. 사용자가 웹을 브라우징함에 따라, 웹-브라우징된 데이터 획득 컴포넌트(220)는 웹-브라우징된 데이터를 획득한다. 즉, 사용자가 웹 사이트 또는 웹 페이지로 내비게이팅하거나 웹 사이트 또는 웹 페이지 내에서 동작을 수행함에 따라, 웹-브라우징된 데이터가 인터셉트되어 획득될 수 있다. 이와 관련하여, 웹 브라우징 액티비티(예를 들어, 사이트로의 내비게이션 또는 사이트 내에서 수행되는 동작)의 결과로서 웹-브라우징된 데이터가 획득된다. 사용자는, 예를 들어, 웹 링크를 클릭하는 것, 웹 브라우저의 주소창(address bar)에 URL을 입력하는 것, 순방향 또는 역방향 아이콘을 이용하는 것, 즐겨찾기 아이콘을 이용하는 것, 자동 리디렉션(automatic redirection) 등에 의해 웹 사이트 또는 웹 페이지로 내비게이팅할 지도 모른다. 당업자라면, 웹-브라우징된 데이터가 임의의 수의 방식으로 획득될 수 있다는 것을 잘 알 것이다. 예를 들어, 기존의 브라우징 이력 저장 시스템에 요청을 전달함으로써 웹-브라우징된 데이터가 획득될 수 있다.
웹-브라우징된 데이터는 웹 브라우징과 연관된 임의의 데이터일 수 있다. 이로서, 웹-브라우징된 데이터는 웹 사이트 또는 웹 페이지로의 내비게이션 또는 웹 사이트 또는 웹 페이지 내에서 수행된 동작과 관련된 임의의 데이터를 포함할 수 있다. 단지 예로서, 웹-브라우징된 데이터는 방문한 사이트와 연관된 사이트 식별자(예를 들어, URL 또는 사이트 제목), 방문한 사이트에 사용자가 어떻게 도달했는지에 관한 표시(예를 들어, 사용자에게 방문한 사이트를 찾아보게 한 사이트와 연관된 식별자, 임의의 리디렉트의 표시, 리디렉트를 야기한 사이트의 식별자), 방문한 사이트에서 수행된 동작의 표시, 특정의 사이트가 방문된 시간 또는 지속기간의 표시(예를 들어, 타임스탬프), 사용자 또는 사용자 장치를 식별해주는 사용자 식별자, 사이트가 방문된 콘텍스트에 관한 정보(예를 들어, 프로세스) 등을 포함할 수 있다. 사이트 식별자는 강한 사이트 식별자(strong site identifier) 또는 약한 사이트 식별자(weak site identifier)일 수 있다. 강한 사이트 식별자는 사이트를 고유하게 식별해주는 식별자를 말한다. 그에 따라, 실시예에서, 강한 사이트 식별자는 비개인 데이터(non-private data)와 연관된 사이트를 식별해주는데 이용된다. 이러한 강한 사이트 식별자는 사이트가 고유하게 식별될 수 있도록 이용될 수 있고, 그로써 제안 사이트를 제공하는데 더 유익할 수 있다. 강한 사이트 식별자는, 예를 들어, 사이트 제목, 사이트 URL, 강한 해시 값(strong hash value) 또는 사이트의 임의의 다른 고유 표현일 수 있다. 약한 사이트 식별자는 적어도 2개의 상이한 사이트가 동일한 식별자에 대응하도록 충돌(collision) 또는 불일치(clash)를 제공하는 식별자를 말한다. 이로서, 약한 사이트 식별자를 특정의 사이트와 상관시키는 것이 어렵다. 따라서, 프라이버시를 보호하기 위해, 개인 데이터와 관련하여 약한 사이트 식별자가 이용될 수 있으며, 이에 대해서는 이하에서 더 충분히 기술할 것이다. 약한 사이트 식별자는, 예를 들어, 약한 해시 값일 수 있다.
일 실시예에서, 웹-브라우징된 데이터 획득 컴포넌트(220)는 알고리즘, 이벤트(예를 들어, 웹 브라우징 액티비티의 발생, 제안 사이트 특징의 인에이블 등), 시간, 지속기간 등에 따라 웹-브라우징된 데이터를 획득한다. 예를 들어, 웹-브라우징된 데이터 획득 컴포넌트(220)는 웹 브라우저와 관련한 제안 사이트 특징이 인에이블되는 경우에 웹 브라우징 액티비티의 발생 시에 웹-브라우징된 데이터를 획득할 수 있다. 제안 사이트 특징의 인에이블은 제안 사이트가 사용자에게 제공될 수 있게 해준다. 이러한 제안 사이트 특징은 자동으로 또는 사용자를 통해 임의의 수의 방식으로 인에이블될 수 있다. 단지 예로서, 제안 사이트 특징을 인에이블시키기 위해, 사용자는 이력 센터(history center), 고급 제어(advanced control), 제어판, 메뉴 바 등을 통해 그 특징을 인에이블하기로 선택할 수 있다. 대안의 실시예에서, 웹-브라우징된 데이터 획득 컴포넌트(220)는 웹-브라우징된 데이터를 연속적으로 획득할 수 있다.
획득된 웹-브라우징된 데이터는, 예를 들어, 데이터 저장소(232)와 관련하여 저장될 수 있다. 당업자라면, 데이터 저장소(232)에 저장된 정보가 구성가능할 수 있고 웹-브라우징 액티비티에 관련된 임의의 정보를 포함할 수 있다는 것을 이해할 것이다. 데이터 저장소(232)가 파일의 형태로 도시되어 있지만, 당업자라면, 데이터 저장소(232)가 데이터베이스 등과 같은 임의의 스토리지 형태를 취할 수 있다는 것을 잘 알 것이다. 데이터 저장소(232)는 사용자 또는 사용자 장치와 연관된 웹-브라우징된 데이터를 축적한다. 일부 실시예에서, 데이터 저장소(232) 내의 웹-브라우징된 데이터는, 예를 들어, 사용자 표시(예를 들어, 사용자가 특정의 웹 사이트에 관한 데이터와 같은 데이터를 삭제하기로 선택하는 것), 이벤트의 발생(예를 들어, 제안 사이트 특징의 디스에이블), 시간 또는 기간의 경과 등에 기초하여 삭제되거나 제거될 수 있다. 예를 들어, 웹-브라우징된 데이터는 20일과 같은 특정의 시간량 동안 데이터 저장소(232)에 저장될 수 있고, 그 후에 (예를 들어, 20일 기간의 경과 시에) 데이터 저장소(232)로부터 제거될 수 있다.
웹-브라우징된 데이터는 사용자 식별자와 관련하여 저장될 수 있다. 사용자 식별자는 사용자 또는 사용자 장치를 식별해주는데 이용된다. 이러한 사용자 식별자는 특정의 사용자에 고유한 제안 사이트가 제공될 수 있게 해준다. 당업자라면, 사용자 식별자가 사용자 장치의 웹 브라우저나 기타 컴포넌트, 제안 엔진, 또는 임의의 다른 컴퓨팅 장치를 통해 생성될 수 있다는 것을 잘 알 것이다. 일부 실시예에서, 사용자 식별자는 IP 주소 식별자, 로그인 네임 및/또는 패스워드와 같은 사용자-생성 식별자, 또는 사용자 또는 사용자 장치와 인식가능하게 연관되어 있는 기타 식별자이다. 이러한 사용자 식별자는 프라이버시를 내포할 수 있다. 다른 실시예에서, 사용자 식별자는 프라이버시를 보호하도록 특정 생성된다(즉, 개인 사용자 식별자(private user identifier)). 예를 들어, 프라이버시를 보호하기 위해, GUID(globally unique identifier) 및 암호화 식별자(cryptographic identifier)를 이용하여 개인 사용자 식별자가 생성된다. 부분적으로 장치의 하드웨어 식별자를 이용하여, GUID(예를 들어, 16 비트 GUID)가 생성될 수 있다. 강한 해시 값을 갖는 GUID는 사용자 식별자의 충돌로부터의 보호를 제공한다. 개인 사용자 식별자의 보안을 향상시키기 위해 암호화 식별자(예를 들어, 32 비트 암호화 식별자)가 GUID에 추가될 수 있다. 강하고 랜덤한 암호화 식별자를 생성하기 위해 암호화가 이용될 수 있다.
예를 들어, 제안 사이트 특징의 인에이블 시에, 사용자 또는 사용자 장치와 연관된 웹-브라우징된 데이터의 획득 시에, 사용자 식별자(예를 들어, 개인 사용자 식별자)에 대한 사용자 요청 시에, 제안 사이트(들)에 대한 사용자 요청 시에 등에서, 사용자 식별자가 자동으로 생성되거나 개시될 수 있다. 실시예에서, 제안 사이트 특징의 제거 또는 디스에이블 시에, 사용자 및/또는 사용자 장치와 연관된 개인 사용자 식별자와 같은 사용자 식별자가 삭제된다. 사용자 식별자가 삭제되거나 제거된 후에, 프라이버시를 유지하기 위해, 획득된 웹-브라우징된 데이터가 더 이상 사용자 식별자와 연관되지 않을 것이다. 이와 관련하여, 웹-브라우징된 데이터가 사용자 식별자와 관련하여 사용자 장치(210) 및/또는 제안 엔진(212)에 저장될 수 있기 때문에, 제안 사이트 특징의 디스에이블 시에, 사용자 식별자 및/또는 관련된 웹-브라우징된 데이터가 스토리지로부터 삭제되거나 제거될 수 있다. 이러한 실시예에서, 제안 사이트 특징의 재설치 또는 인에이블 시에, 새로운 사용자 식별자가 생성될 수 있다.
일부 실시예에서, 프라이버시를 보호하기 위해, 웹-브라우징된 데이터 획득 컴포넌트(220)는 개인 데이터를 획득하지 못한다. 개인 데이터는 인식되도록 의도되거나 요망되지 않는 웹 브라우징과 연관된 임의의 데이터(즉, 웹-브라우징된 데이터)를 말한다. 즉, 개인 데이터는, 예를 들어, 사용자가 가정, 근무 환경 또는 공공 키오스크에서의 공유 컴퓨터에 있는 경우에 공유되도록 의도되어 있지 않다. 개인 데이터는 사용자가 사용자의 브라우징 이력으로부터 삭제되거나 제거되도록 나타낸 임의의 웹-브라우징된 데이터를 포함할 수 있다. 이와 관련하여, 사용자는 사용자의 브라우징 이력의 전부 또는 일부를 삭제하기로 선택할 수 있다. 다른 대안으로서 또는 그에 부가하여, 개인 데이터는 사용자에 의해 요청되는 바와 같이 비공개 브라우징(in-private browsing)으로부터 기인하는 임의의 웹-브라우징된 데이터를 포함할 수 있다. 단지 예로서, 사용자가 비공개로 웹 브라우징을 하고자 하는 경우, 비공개 웹 브라우징과 연관된 웹-브라우징된 데이터가 웹-브라우징된 데이터 획득 컴포넌트(220)에 의해 획득되고/되거나 사용자 장치(210)에 로컬 저장되지 않을 수 있다.
어떤 경우에, 웹-브라우징된 데이터는 처음에 웹-브라우징된 데이터 획득 컴포넌트(220)에 의해 획득되고 데이터 저장소(232) 내에 저장될 수 있다. 그 후에, 웹-브라우징된 데이터 또는 그의 일부분이 개인적(즉, 개인 데이터)이도록 요망된다는 표시를 제공하는 프라이버시 표시가 인식된다. 프라이버시 표시는, 브라우징 이력 내의 데이터(예를 들어, 특정의 데이터 또는 모든 데이터)를 삭제, 제거 또는 수정하라는 표시, 또는 비공개 브라우징을 수행하라는 표시일 수 있다. 이러한 프라이버시 표시는 사용자에 의해 제공되거나 이벤트의 발생 시 등에 자동으로 제공될 수 있다. 예를 들어, 사용자가 URL 또는 그에 대한 참조를 브라우징 이력으로부터 삭제하기로 선택하기 전에, 웹-브라우징된 데이터가 로컬 저장될 수 있다. 이러한 경우에, 프라이버시 표시(예를 들어, URL을 삭제하기로 선택)가 인식되고, 프라이버시 표시와 연관된 데이터 저장소(232) 내의 초기에 포착된 웹-브라우징된 데이터 또는 그의 일부분(즉, 개인 데이터)이 식별되고 삭제되거나 수정될 수 있다.
이로서, 어떤 경우에, 개인 데이터이도록 요망되는 데이터 저장소(232)에 저장된 웹-브라우징된 데이터 또는 그의 일부분이 제거되거나 삭제될 수 있다. 예를 들어, 사이트 식별자 및/또는 개인적이도록 의도된 데이터에 대응하는 관련 데이터가 삭제될 수 있다. 다른 대안으로서, (예를 들어, 사용자-제공 프라이버시 표시가 나타내는 바와 같이) 개인적이도록 요망되는 데이터 저장소(232)에 저장된 웹-브라우징된 데이터 또는 그의 일부분은 데이터가 용이하게 인식될 수 없도록 수정될 수 있다. 실시예에서, 약한 해시 값과 같은 약한 사이트 식별자가 생성되고 프라이버시 표시와 연관된 강한 사이트 식별자(예를 들어, URL 스트링)를 대체하는데 이용될 수 있다. 즉, 약한 해시 값의 생성 시에, 프라이버시 표시와 연관되어 있는 특정의 사이트에 대한 임의의 사이트 식별자가 약한 해시 값으로 대체될 수 있다. 그 결과, 데이터 저장소(232)는 프라이버시가 요망되는(예를 들어, 사용자가 URL(들)에 대한 참조를 삭제하기로 선택하는) 사이트에 대한 사이트 식별자로서 약한 해시 값을 포함한다. 단지 예로서, 사용자가 웹 사이트 A를 방문하는 것으로 가정한다. 웹 사이트 A의 강한 사이트 식별자 및 연관된 데이터가 획득되고 사용자 장치에 의해 로컬 저장된다. 나중에, 사용자가 웹 사이트 A의 임의의 표현을 로컬 이력으로부터 삭제하기로 선택하는 것으로 가정한다. 이러한 경우에, 약한 해시 값이 생성되고 데이터 저장소 내의 웹 사이트 A의 강한 사이트 식별자의 각각의 목록을 대체하는데 이용될 수 있다. 다수의 사이트가 약한 해시 값에 대응할 수 있고, 이로서, 개인적이도록 요망되는 특정의 사이트가 인식가능하지 않다는 점에서, 약한 해시 값은 프라이버시를 제공한다.
당업자라면, 데이터 저장소(232)에 저장된 웹-브라우징된 데이터가 제안 엔진에 전달된 경우, 프라이버시 표시에 따라, 그와 연관된 웹-브라우징된 데이터가 삭제되거나 수정될 수 있어(예를 들어, 강한 사이트 식별자가 데이터 저장소(232) 내의 약한 해시 값으로 대체될 수 있으며), 사이트 제안에 대한 요청과 관련하여 다음에 웹-브라우징된 데이터를 제안 엔진에 업로드할 때 삭제 및/또는 수정이 전달되어 제안 엔진에 의해 인식될 수 있다는 것을 잘 알 것이다. 앞서 논의된 바와 같이, 이러한 데이터는 즉시 제안 엔진에 업로드될 수 있거나, 또는 기간의 만료 때까지 업로드되지 않을 수 있다.
웹-브라우징된 데이터 전달 컴포넌트(222)는 웹-브라우징된 데이터를 제안 엔진(212)에 전달하도록 구성되어 있다. 실시예에서, 웹-브라우징된 데이터는 사용자 식별자와 관련하여 제안 엔진(212)에 전달된다. 제안 엔진(212)에 전달된 웹-브라우징된 데이터는 데이터 저장소(232) 내에 저장된 데이터의 전부 또는 데이터의 일부일 수 있다. 예를 들어, 일 실시예에서, 웹-브라우징된 데이터 전달 컴포넌트(222)는 데이터 저장소(232) 내에 저장된 모든 웹-브라우징된 데이터를 전달한다. 다른 대안으로서, 웹-브라우징된 데이터 전달 컴포넌트(222)는 데이터 저장소(232) 내의 임의의 데이터 업데이트(예를 들어, 새로운 데이터, 수정된 데이터, 또는 삭제된 데이터의 표시)와 같이 데이터 저장소(232) 내의 웹-브라우징된 데이터의 일부분을 제안 엔진(212)에 전달한다. 이러한 데이터 업데이트는, 웹-브라우징된 데이터가 제안 엔진(212)에 전달된 최종 시간 이후로, 데이터 저장소(232)에 추가되거나, 데이터 저장소(232) 내에서 수정되거나, 또는 데이터 저장소(232)로부터 삭제된 웹-브라우징된 데이터를 포함할 수 있다.
실시예에서, 웹-브라우징된 데이터 전달 컴포넌트(222)는 알고리즘, 이벤트(예를 들어, 웹-브라우징 액티비티의 발생), 시간(들), 기간의 경과 등에 따라 웹-브라우징된 데이터를 전달한다. 예를 들어, 웹-브라우징된 데이터는 주기적으로(예를 들어, 3시간 마다) 전달될 수 있다. 추가의 예로서, 사용자가 웹 사이트 또는 웹 페이지로 내비게이팅할 때마다, 웹-브라우징된 데이터가 전달될 수 있다. 다른 대안으로서, 웹-브라우징된 데이터 전달 컴포넌트(222)는 이러한 웹-브라우징된 데이터를 제안 엔진(212)에 계속하여 전달할 수 있다.
표시 수신 컴포넌트(224)는 하나 이상의 제안 사이트를 제공하라는 표시를 수신하도록 구성되어 있다. 이러한 표시는, 예를 들어, 이벤트의 발생(예를 들어, 사이트로의 내비게이팅)에 기초하여, 시간 또는 기간의 경과 시에(예를 들어, 주기적으로 제공됨) 등에서 자동으로 제공될 수 있다. 다른 대안으로서, 제안 사이트를 제공하라는 표시가 사용자에 의해 제공될 수 있다. 사용자는, 예를 들어, 제안 사이트 표시자를 선택하거나 또는 제안 사이트를 제공하는 웹 사이트 또는 웹 페이지로 내비게이팅함으로써(예를 들어, 주소창에 URL을 입력하거나 그에 링크함으로써) 이러한 표시를 제공할 수 있다. 제안 사이트 표시자는, 선택되는 경우에 하나 이상의 제안 사이트가 사용자에게 제시되게 하는 임의의 표시자(예를 들어, 아이콘, 버튼 등)를 말한다. 이러한 제안 사이트 표시자는 툴바, 즐겨찾기 바(favorites bar) 등을 통해 액세스될 수 있다.
요청 생성 컴포넌트(226)는 제안 사이트 요청을 생성하도록 구성되어 있다. 제안 사이트 요청(예를 들어, http 요청)은 하나 이상의 제안 사이트에 대한 요청을 제공한다. 이러한 요청은 하나 이상의 제안 사이트를 제공하라는 표시를 제안 엔진(212)에게 제공한다. 실시예에서, 표시 수신 컴포넌트(224)가 하나 이상의 제안 사이트를 제공하라는 표시를 수신하면, 요청 생성 컴포넌트(226)는 제안 사이트 요청을 생성한다. 예를 들어, 요청 생성 컴포넌트(226)는 제안 사이트를 수신하겠다는 사용자-제공 표시에 응답하여 제안 사이트 요청을 생성할 수 있다. 다른 실시예에서, 요청 생성 컴포넌트(226)는 알고리즘, 시간의 경과, 기간, 이벤트의 발생 등에 따라 제안 사이트 요청을 생성한다. 예를 들어, 요청 생성 컴포넌트(226)는 주기적으로 또는 연속적으로 제안 사이트에 대한 요청을 생성할 수 있다.
하나 이상의 제안 사이트를 수신하고자 한다는 것을 나타내는 것에 부가하여, 제안 사이트 요청은 웹-브라우징된 데이터를 포함할 수 있다. 웹-브라우징된 데이터는 제안 사이트 요청 패킷의 헤더 부분 또는 페이로드 부분 내에 포함될 수 있다. 실시예에서, 제안 사이트 요청에서 전달되는 이러한 웹-브라우징된 데이터는 제안 엔진(212)에 의해 제안 사이트를 제공하는데 이용될 수 있다. 어떤 경우에, 제안 사이트 요청에 포함된 웹-브라우징된 데이터는 아직 제안 서버에 전달되지 않은 데이터를 포함한다. 예를 들어, 획득된 웹-브라우징된 데이터가 웹-브라우징된 데이터 전달 컴포넌트(222)를 통해 주기적으로 제안 엔진에 전달되는 경우에, 제안 사이트에 대한 사용자의 요청 이전에, 웹-브라우징된 데이터의 적어도 일부분이 제안 엔진에 전달되지 않았을 지도 모른다. 이로서, 이러한 웹-브라우징된 데이터는 제안 사이트 요청을 통해 제안 엔진에 전달될 수 있다. 다른 경우에, 웹-브라우징된 데이터가 웹-브라우징된 데이터 전달 컴포넌트(222)를 통해 제안 엔진에 전달되었지만, 그럼에도 불구하고 웹-브라우징된 데이터는 요청 패킷을 통해 제안 엔진에 전달될 수 있다. 예를 들어, 제안 사이트 요청에 포함된 웹-브라우징된 데이터는 제안 엔진의 데이터 저장소에서 분석되거나 룩업될 필요가 있는 데이터의 양을 감소시킬 수 있고, 이로서, 제안 엔진(212)이 제안 사이트를 보다 신속하게 제공할 수 있게 해줄 수 있다.
제안 사이트 요청 내에 포함된 웹-브라우징된 데이터는, 예를 들어, 사용자 식별자, 타깃 사이트의 표시(예를 들어, 타깃 사이트 식별자), 개인 데이터의 표시 등을 포함할 수 있다. 하나 이상의 타깃 사이트의 표시는 제안 엔진(212)이 제안 사이트가 요망되는 타깃 사이트를 용이하게 인식할 수 있게 한다. 타깃 사이트는, 예를 들어, 최근에 방문한 사이트, 흔히 방문한 사이트, 현재 방문한 사이트 등일 수 있다. 이로서, 제한이 아닌 예로서, 제안 사이트 요청은 5개의 가장 최근에 방문한 사이트를 나타내는 웹-브라우징된 데이터를 포함할 수 있다. 이러한 경우에, 제안 엔진(212)은 제안 사이트 요청에 나타내어져 있는 5개의 가장 최근에 방문한 사이트 각각에 대한 하나 이상의 제안 사이트를 식별할 수 있다. 실시예에서, 임의의 최근에 또는 빈번히 방문한 사이트가 개인 데이터로서 식별되는 경우에, 제안 사이트 요청은 타깃 사이트로서 이러한 사이트를 제외시킬 수 있다(예를 들어, 사용자는 이러한 사이트를 브라우징 이력으로부터 삭제하기로 선택한다). 현재 방문한 사이트는, 예를 들어, 현재 보고 있는 사이트일 수 있다. 예를 들어, 다양한 사이트에 대한 다수의 탭과 함께 다수의 브라우저 세션이 열려 있는 경우에, 현재 방문한 사이트는 현재 보고 있는 브라우저 인스턴스일 수 있다. 당업자라면, 요청이 임의의 수의 타깃 사이트를 포함할 수 있다는 것을 잘 알 것이다.
사용자 식별자는 제안 엔진(212)이 제안 사이트에 대한 제안 사이트 요청 및 그 안에 포함된 웹-브라우징된 데이터를 제안 엔진의 데이터 저장소(248)에 저장된 웹-브라우징된 데이터와 연관시킬 수 있게 하며, 그에 따라 제안 사이트가 고유하게 요청 사용자에게 제공될 수 있다. 당업자라면, 사용자 식별자가 제안 엔진(212)이 타깃 사이트 및/또는 제안 사이트를 식별하는데 도움을 줄 수 있다는 것을 잘 알 것이다. 예를 들어, 사용자 식별자를 수신하면, 제안 엔진(212)은 사용자 식별자와 연관된 데이터를 참조하여, 사용자의 가장 최근에 방문한 사이트 또는 가장 빈번히 방문한 사이트를 포함하는 하나 이상의 타깃 사이트를 식별하거나 결정할 수 있다. 다른 대안으로서 또는 그에 부가하여, 사용자 식별자를 수신하면, 제안 엔진(212)은 사용자 식별자와 연관된 데이터를 참조하여, 사용자가 빈번히 또는 최근에 방문한 사이트에 기초해 제안 사이트를 식별할 수 있다. 단지 예로서, 데이터 저장소(248)가 복수의 웹 브라우저 사용자와 연관된 웹-브라우징된 데이터를 포함하는 것으로 가정한다. 이러한 경우에, 사용자 식별자는 제안 엔진(212)이 요청 사용자에 대해 데이터 저장소(248)에 저장된 웹-브라우징된 데이터를 참조하는 것을 가능하게 한다. 사용자와 연관된 이러한 데이터는 제안 사이트를 식별하는데 이용될 수 있다.
개인 데이터의 표시는 제안 엔진(212)이 사용자 프라이버시를 유지할 수 있게 해준다. 일부 실시예에서, 웹-브라우징된 데이터가 웹-브라우징된 데이터 전달 컴포넌트(222)를 통해 실시간으로 제안 엔진(212)에 전달되지 않기 때문에, 제안 사이트 요청 내에서 개인 데이터의 표시를 제공하는 것은 이러한 정보가 적시에 제안 엔진(212)에 전달될 수 있게 해주고 그로써 사용자 프라이버시가 보호될 수 있으며, 이에 대해서는 이하에서 더 상세히 논의될 것이다. 그에 따라, 제안 엔진(212)은 브라우징 이력으로부터 최근에 삭제된 사이트에 대한 제안 사이트를 제공하는 것 및/또는 최근에 삭제된 사이트를 이용하여 타깃 사이트에 대한 제안을 제공하는 것을 피할 수 있다. 개인 데이터는, 제한이 아닌 예로서, 사용자의 브라우징 이력 내에서 사용자에 의해 삭제, 제거 또는 수정될 것으로 표시된 임의의 웹-브라우징된 데이터 또는 사용자에 의해 요청된 바와 같이 비공개 브라우징으로부터 기인하는 임의의 웹-브라우징된 데이터를 포함할 수 있다.
일 실시예에서, 제안 사이트 요청은 최근의 브라우징 이력 삭제와 같이 최근에 표시된 개인 데이터를 포함한다. 즉, 제안 사이트 요청은, 그러한 것으로서 최근에 표시된, 개인 데이터 또는 개인 데이터의 표시를 포함할 수 있다. 그에 따라, 제안 사이트 요청은 사용자의 최근의 삭제의 표시(예를 들어, 브라우징 이력으로부터 최근에 삭제된 URL 또는 그에 대한 참조)를 포함할 수 있다. 예를 들어, 제안 사이트 요청은, 웹-브라우징된 데이터가 웹-브라우징된 데이터 전달 컴포넌트(222)를 통해 제안 엔진에 전달된 최종 시간 이후로, 사용자가 브라우징 이력으로부터 삭제하거나 삭제하도록 요청한 하나 이상의 사이트에 대응하는 강한 또는 약한 사이트 식별자(예를 들어, 약한 해시 값)와 같은 사이트 식별자 세트를 포함할 수 있다. 최근에 표시된 개인 데이터를 제안 사이트 요청에 포함시키는 것은, 데이터가 아직 웹-브라우징된 데이터 전달 컴포넌트(222)를 통해 업로드되지 않았음에도 불구하고, 제안 엔진(212)이 이러한 데이터를 수신하도록 한다. 어떤 경우에, 대량의 최근의 개인 데이터가 존재할 수 있다. 이러한 경우에, 제안 사이트 요청은 사용자와 연관된 모든 웹-브라우징된 데이터가 제안 엔진(212)의 데이터 저장소로부터 제거되도록 하는 (예를 들어, 일반 삭제 요청) 표시를 그 자체로서 제공할 수 있다. 다른 대안으로서, 제안 사이트 요청은 사이트 제안이 그 특정의 제안 사이트 요청에 대해 그에 따라 수정되도록 하는 표시를 그 자체로서 제공할 수 있지만, 제안 엔진(212)의 데이터 저장소 내의 웹-브라우징된 데이터에 영향을 주지 않는다.
사용자 프라이버시를 보호하고 사용자 데이터의 악의적인 획득을 방지하기 위해, 당업자라면, 일부 실시예에서, 데이터 전달을 계속하라는 표시를 수신하기 전에, 제안 사이트 요청이 생성 및/또는 전달되지 않는다는 것을 잘 알 것이다. 이로서, 실시예에서, 임의의 웹 사이트 공급자에 의해 이용될 수 있는 함수(예를 들어, 자바 스크립트 함수)가 구현될 수 있다. 제안 사이트에 대한 사용자 요청 시에, 이러한 함수는 단지 웹-브라우징된 데이터가 제안 사이트를 제공하는 것에 전용된 특정의 웹 사이트 또는 웹 사이트 공급자에만 전달될 수 있게 해준다. 이것은 사용자 데이터가 악의적인 사용자로 전송되는 것을 방지한다.
단지 예로서, 사용자가 제안 사이트를 수신하고자 한다는 표시를 제공하는 것으로(예를 들어, 제안 사이트 표시자를 선택하거나 제안 사이트를 제공하는 것에 전용된 웹 사이트 URL을 주소창에 입력하는 것으로) 가정한다. 이러한 요청에 의해 정적 웹 페이지가 제시된다. 그러나, 일부 실시예에서, 예를 들어, 사용자가 제안 사이트를 수신하고자 한다는 것을 나타내는 메커니즘에 따라 사용자 식별자, 타깃 사이트 및/또는 개인 데이터를 포함하는 개인 헤더(private header)와 같은 사용자 데이터가 아직 전달되지 않았다. 개인 헤더와 같은 개인 사용자 데이터가 전달되지 않은 것으로 인식되는 경우, 그에 응답하여, 함수(예를 들어, 자바 스크립트 함수)가 사용자 장치에서 실행된다. 예를 들어, 렌더링된 정적 웹 페이지는 자바 스크립트 함수에 대한 호출을 포함할 수 있다. 이 함수는 사용자와 연관된 웹-브라우징된 데이터(예를 들어, 데이터 저장소(232)에 저장된 웹-브라우징된 데이터)를 요청하거나 식별하고, 웹-브라우징된 데이터가 맞춤화된 제안 사이트를 제공하는데 이용될 수 있도록, 웹-브라우징된 데이터를 제안 엔진(212)에 전달하기 시작한다. 즉, 웹-브라우징된 데이터는 특정의 컴퓨팅 장치 또는 엔티티로 보내진다. 실시예에서, 웹-브라우징된 데이터는 웹 페이지의 제2 렌더링과 관련하여 제안 엔진(212)에 전달된다. 이 함수가 사용자 장치에서 실행되도록 악의적인 사용자가 이 함수를 이용하는 경우에, 이 함수는 단지 제안 사이트를 제공하는 것에 전용된 특정의 웹 사이트 또는 웹 사이트 공급자로의 내비게이션을 가능하게 해준다. 이와 관련하여, 사용자와 연관된 웹-브라우징된 데이터는, 이 함수를 이용하는 엔티티와 상관없이, 바람직한 컴퓨팅 장치 또는 엔티티로 전송된다.
요청 전달 컴포넌트(228)는 요청을 제안 엔진(212)에 전달한다. 실시예에서, 제안 사이트 요청이 요청 생성 컴포넌트(226)에 의해 생성되면, 요청 전달 컴포넌트(228)는 제안 사이트 요청을 전달한다. 제안 사이트 요청은 원하는 제안 사이트의 표시를 제안 엔진에 제공할 수 있고, 제안 엔진에서 제안 사이트를 요청 사용자 장치에 제공하는데 이용하기 위해 웹-브라우징된 데이터를 제공할 수 있다.
제안 사이트 제시 컴포넌트(230)는 제안 사이트를 제시(예를 들어, 디스플레이)하도록 구성되어 있다. 실시예에서, 제안 사이트는 타깃 사이트와 관련하여 사용자에게 디스플레이된다. 이와 관련하여, 제안 사이트 제시 컴포넌트(230)는 제안 엔진(212)으로부터 제안 사이트(및/또는 제안 사이트와 관련하여 타깃 사이트)를 수신하도록 구성되어 있다. 제안 사이트 제시 컴포넌트(230)는 각종의 상이한 사용자 인터페이스 컴포넌트(이들 중 몇개에 대해 이하에서 더 충분히 기술함)를 이용하여 제안 사이트를 제시할 수 있다. 일부 실시예에서, 제안 사이트가 타깃 사이트와 아무런 관련 없이 제시되며, 이에 대해서는 이하에서 더 충분히 기술할 것이다.
도 2에 도시된 바와 같이, 시스템(200)의 제안 엔진(212)은 웹-브라우징된 데이터 수신 컴포넌트(240), 요청 수신 컴포넌트(242), 제안 사이트 식별 컴포넌트(244), 제안 사이트 전달 컴포넌트(246) 및 데이터 저장소(248)를 포함하고 있다. 일부 실시예에서, 예시된 컴포넌트들(240, 242, 244, 246 및 248) 중 하나 이상의 컴포넌트가 독립형 애플리케이션으로서 구현될 수 있다. 다른 실시예에서, 예시된 컴포넌트(240, 242, 244, 246 및 248) 중 하나 이상의 컴포넌트가 사용자 장치(210) 및/또는 제안 엔진(212)의 운영 체제 내에 통합되거나, 또는 사용자 장치(210)의 웹 브라우저 내에 통합될 수 있다. 당업자라면, 도 2에 예시된 컴포넌트들(240, 242, 244, 246 및 248)의 속성 및 수가 예시적인 것이며 제한하는 것으로 해석되어서는 안 된다는 것을 이해할 것이다. 임의의 수의 컴포넌트가 본 발명의 실시예의 범위 내에서 원하는 기능을 달성하는데 이용될 수 있다.
웹-브라우징된 데이터 수신 컴포넌트(240)는 사용자 장치(210)(예를 들어, 웹-브라우징된 데이터 전달 컴포넌트(222))로부터 전달된 웹-브라우징된 데이터를 수신한다. 앞서 논의된 바와 같이, 이러한 웹-브라우징된 데이터는, 예를 들어, 방문한 사이트와 연관된 사이트 식별자, 사용자가 각각의 방문한 사이트에 어떻게 도달하는지에 관한 표시, 각각의 방문한 사이트에서 수행된 동작의 표시, 각각의 특정의 사이트가 방문된 시간 또는 기간의 표시(예를 들어, 타임스탬프), 사용자 또는 사용자 장치를 식별해주는 사용자 식별자 등을 포함할 수 있다. 웹-브라우징된 데이터 전달 컴포넌트(222)가 웹-브라우징된 데이터를 주기적으로 전달하는 실시예에서, 웹-브라우징된 데이터 수신 컴포넌트(240)도 이와 유사하게 웹-브라우징된 데이터를 주기적으로 수신할 수 있다.
웹-브라우징된 데이터를 수신하면, 이러한 데이터는, 예를 들어, 데이터 저장소(248)와 관련하여 저장될 수 있다. 데이터 저장소(248)가 데이터베이스의 형태로 도시되어 있지만, 데이터 저장소(248)는, 예를 들어, 파일을 비롯한 임의의 저장 형태를 취할 수 있다. 당업자라면, 데이터 저장소(248)에 저장된 정보가 구성가능할 수 있고 임의의 웹-브라우징 액티비티에 관련된 임의의 정보를 포함할 수 있다는 것을 이해 및 인식할 것이다. 데이터 저장소(248)는 소정의 기간, 동적으로 결정되는 기간, 이벤트와 연관된 기간 등과 같은 기간에 걸쳐 웹-브라우징된 데이터를 축적할 수 있다. 그에 따라, 데이터 저장소(248)는 장기 사용자 브라우징 이력을 포함할 수 있다. 일부 실시예에서, 데이터 저장소(248) 내의 웹-브라우징된 데이터는, 예를 들어, 사용자 표시의 수신(예를 들어, 사용자가 특정의 웹 사이트에 관한 데이터와 같은 데이터를 삭제하기로 선택하는 것), 이벤트의 발생(예를 들어, 제안 사이트 특징의 디스에이블), 시간 또는 기간의 경과 등에 기초하여 삭제되거나 제거될 수 있다. 예를 들어, 웹-브라우징된 데이터는 18개월과 같은 특정의 시간량 동안 데이터 저장소(248)에 저장될 수 있고, 그 후에 (예를 들어, 18개월 기간의 경과 시에) 데이터 저장소(248)로부터 제거될 수 있다.
일 실시예에서, 데이터 저장소(248)는 특정의 사용자와 연관된 웹-브라우징된 데이터를 저장할 수 있다. 다른 대안으로서, 데이터 저장소(248)는 복수의 사용자(예를 들어, 사용자 세트, 모든 웹 브라우저 사용자 등)와 연관된 웹-브라우징된 데이터를 저장할 수 있다. 데이터 저장소(248) 내에 저장된 이러한 웹-브라우징된 데이터는, 웹-브라우징된 데이터가 나중에 제안 사이트를 특정의 사용자에게 제공하는데 이용될 수 있도록, 개인 사용자 식별자와 같은 사용자 식별자와 관련하여 저장될 수 있다. 제안 엔진(212)에 의해 수신되어 저장된 웹-브라우징된 데이터는 타깃 사이트와 관련하여 제안 사이트를 사용자에게 제공하는데 이용될 수 있으며, 이에 대해서는 이하에서 더 충분히 기술할 것이다.
요청 수신 컴포넌트(242)는 사용자 장치(210)로부터 전달된 요청을 수신한다. 실시예에서, 요청 수신 컴포넌트(242)는 하나 이상의 제안 사이트를 제공하라는 사용자 표시에 응답하여 제안 엔진(212)에 전달되는 제안 사이트 요청을 수신한다. 앞서 언급한 바와 같이, 제안 사이트 요청은, 예를 들어, 사용자 식별자, 타깃 사이트(들), 개인 데이터 등과 같은 웹-브라우징된 데이터를 포함할 수 있다. 일부 실시예에서, 제안 사이트 요청 내에 포함된 웹-브라우징된 데이터 또는 그의 일부분이 추출되고/되거나, 예를 들어, 사용자 식별자와 관련하여 데이터 저장소(248)에 저장된다. 이러한 웹-브라우징된 데이터는 데이터 저장소(248)를 업데이트하는데 이용될 수 있다. 이와 관련하여, 웹-브라우징된 데이터가 데이터 저장소(248)에 저장된 데이터에 추가되거나 그로부터 삭제되거나 또는 데이터 저장소(248)에 저장된 웹-브라우징된 데이터를 대체하거나 수정할 수 있다.
예를 들어, 일부 실시예에서, 제안 사이트 요청은 개인 데이터의 표시(예를 들어, 브라우저 이력으로부터 최근에 삭제된 URL의 표시)를 포함한다. 최근의 삭제와 같이 개인적이도록 의도된 데이터의 표시를 제공하기 위해, 강한 사이트 식별자 또는 약한 사이트 식별자가 제안 사이트 요청에서 이용될 수 있다. 개인 데이터를 표시하는데 강한 사이트 식별자가 이용되는 실시예에서, 제안 엔진(212)은 데이터 저장소(248)에서 사용자와 연관되어 있는 임의의 일치하는 사이트 식별자를 식별하고 이러한 식별자 및/또는 관련 데이터를 제거할 수 있다. 즉, 데이터 저장소(248)에 열거된 임의의 일치하는 사이트 식별자 및/또는 관련 데이터가 데이터 저장소(248)로부터 삭제될 수 있다. 다른 대안으로서, 데이터 저장소(248)에 열거된 임의의 일치하는 사이트 식별자에 대해, 데이터 저장소(248)에 포함된 임의의 대응하는 강한 사이트 식별자를 대체하기 위해 약한 사이트 식별자가 생성되어 이용될 수 있다. 개인 데이터를 나타내는데 약한 사이트 식별자가 이용되는 실시예에서, 제안 엔진(212)은 약한 사이트 식별자와 연관된 데이터 저장소(248) 내의 임의의 사이트를 식별하고 이러한 식별자 및/또는 관련 데이터를 제거하거나 기존의 사이트 식별자를 약한 사이트 식별자로 대체할 수 있다. 다수의 사이트가 단일의 약한 사이트 식별자와 연관될 수 있기 때문에, 최근의 삭제를 나타내기 위해 약한 사이트 식별자를 갖는 제안 사이트 요청으로 인해 데이터 저장소(248) 내의 2개 이상의 대응하는 강한 사이트 식별자가 제거되거나 대체될 수 있다. 예를 들어, 약한 사이트 식별자가 웹 사이트 A 및 웹 사이트 B와 연관되어 있는 것으로 가정한다. 이러한 경우에, 약한 사이트 식별자는 웹 사이트 A에 대한 임의의 참조뿐만 아니라 웹 사이트 B에 대한 임의의 참조도 대체하는데 이용될 수 있다.
제안 사이트 식별 컴포넌트(244)는 제안 사이트를 식별하도록 구성되어 있다. 실시예에서, 제안 사이트 식별 컴포넌트(244)는 데이터 저장소(248)에 저장된 웹-브라우징된 데이터 및/또는 수신된 제안 사이트 요청 내에 포함된 웹-브라우징된 데이터와 같은 웹-브라우징된 데이터를 이용하여 제안 사이트를 식별한다. 제안 사이트 식별 컴포넌트(244)는 수신된 요청 내에 포함된 웹-브라우징된 데이터를 추출할 수 있다. 이러한 웹-브라우징된 데이터는, 예를 들어, 사용자 식별자, 하나 이상의 타깃 사이트의 표시, 개인 데이터의 표시 등을 포함할 수 있다.
일 실시예에서, 제안 사이트를 식별하기 위해, 제안 사이트 식별 컴포넌트(244)는, 제안 사이트가 요망되는 하나 이상의 타깃 사이트를 식별한다. 이러한 타깃 사이트는 제안 사이트 요청 내에서 제공되는 웹-브라우징된 데이터에 기초하여 식별될 수 있다. 예를 들어, 제안 사이트 요청은 하나 이상의 최근에 방문한 사이트의 세트를 타깃 사이트로서 포함할 수 있다. 이러한 경우에, 타깃 사이트 데이터가 제안 엔진(212)에 전달된 제안 사이트 요청으로부터 또는, 데이터 저장소(248)에 저장되어 있는 경우, 데이터 저장소(248)로부터 추출될 수 있다. 다른 대안으로서, 타깃 사이트가 데이터 저장소(248) 내에 저장된 웹-브라우징된 데이터를 이용하여 식별(예를 들어, 결정 또는 참조)될 수 있다. 예를 들어, 요청에서 전달된 사용자 식별자 및 데이터 저장소(248)에 저장된 웹-브라우징된 데이터를 이용하여, 가장 흔히 방문된 하나 이상의 사이트가 타깃 사이트로서 식별될 수 있다. 사용자 식별자는 데이터 저장소(248)에 저장된 대응하는 데이터가 참조될 수 있게 해준다. 개인화된 제안이 사용자에게 제공될 수 있도록 사용자 식별자가 이용된다.
제안 사이트가 요망되는 하나 이상의 타깃 사이트를 식별하면, 제안 사이트 식별 컴포넌트(244)는 각각의 타깃 사이트와 관련하여 제안 사이트를 식별(예를 들어, 결정 또는 참조)할 수 있다. 일 실시예에서, 제안 사이트 식별 컴포넌트(244)는 데이터 저장소(248)에 저장되어 있는 사용자 또는 복수의 사용자와 연관된 집합적인 웹-브라우징된 데이터를 이용하여, 각각의 타깃 사이트에 대한 하나 이상의 제안 사이트를 동적으로 결정할 수 있다. 다른 대안으로서, 타깃 사이트에 대한 제안 사이트는 이전에 결정되어 있을 수 있고, 이러한 경우에, 제안 사이트 식별 컴포넌트(244)는 타깃 사이트 각각과 유사하거나 관련된 것으로 생각되는 사이트의 사이트 식별자를 참조할 수 있다. 예를 들어, 실시예에서, 제안 엔진(212)은 사용자의 방문한 사이트 이력을 다른 사용자들과 비교하고 사용자의 이력에서 각각의 URL에 대해 관련된 URL의 리스트를 생성한다. 이러한 경우에, 타깃 사이트를 식별하면, 사전 생성된 관련 URL의 리스트가 참조될 수 있다. 제안 사이트가 사전에 결정되어 있는 경우에도, 이러한 제안 사이트가, 예를 들어, 연속적으로 또는 주기적으로 수정될 수 있는데, 그 이유는 새로운 데이터가 사용자 및/또는 다른 브라우저 사용자로부터 수신되기 때문이다. 당업자라면, 타깃 사이트에 대한 제안 사이트를 식별하는데 임의의 알고리즘 또는 룩업 테이블이 이용될 수 있다는 것을 잘 알 것이다.
데이터 저장소(248)에 저장된 웹-브라우징된 데이터를 이용하여 제안 사이트를 식별하는 것에 부가하여, 제안 사이트 식별 컴포넌트(244)는 또한 제안 사이트 요청으로부터 추출된 웹-브라우징된 데이터도 이용할 수 있다. 예를 들어, 최근에 삭제된 사이트에 대한 제안 사이트를 제공하는 것을 피하기 위해 그리고/또는 최근에 삭제된 사이트를 이용하여 타깃 사이트에 대한 제안을 제공하는 것을 피하기 위해, 요청 내에 포함된 개인 데이터가 제안 사이트 식별 컴포넌트(244)에 의해 이용될 수 있다. 단지 예로서, 5개의 가장 흔히 본 URL이 타깃 사이트로서 이용되는 것으로 가정한다. (예를 들어, 제안 사이트 요청에 표시되거나 데이터 저장소(248)에 저장된 웹-브라우징된 데이터를 이용하여 결정된) 이러한 타깃 사이트를 식별하면, 타깃 사이트들 중 임의의 타깃 사이트가 개인 데이터로서 열거되어 있는지를 식별하기 위해, 제안 사이트 요청 내의 개인 데이터의 표시가 참조될 수 있다. 가장 흔히 본 타깃 사이트가 개인 데이터로서 표시되어 있는 이러한 경우에, 그 URL에 대해 제안 사이트가 제시되지 않는다.
대안의 실시예에서, 제안 사이트 식별 컴포넌트(244)는 사용자에게 보다 일반적인 하나 이상의 제안 사이트를 식별한다. 예를 들어, 어떤 경우에, 웹-브라우징 이력 데이터가 없거나 약간 있을 수 있다. 다른 경우에, 사용자가 방문한 사이트(들)와 관련되거나 유사한 사이트 제안이 없거나 약간 있을 수 있다. 어느 경우든지, 그 중에서도 특히, 일반 사이트 제안이 식별되어 사용자에게 제공될 수 있다. 이러한 일반 사이트 제안은, 예를 들어, 다른 유사한 사용자에게 인기있는 사이트 또는 일반 대중에게 인기있는 사이트에 기초할 수 있다. 유사한 사용자는 유사한 지리적 위치(들), 유사한 언어(들), 유사한 관심사(들), 유사한 나이, 이들의 조합, 또는 기타 유사한 특성 또는 관심사를 갖는 다른 사용자에 기초할 수 있다.
제안 사이트 전달 컴포넌트(246)는 제안 사이트를 요청한 사용자 장치(210)에 제안 사이트를 전달하도록 구성되어 있다. 실시예에서, 제안 사이트 식별 컴포넌트(244)가 하나 이상의 제안 사이트를 식별하면, 제안 사이트 전달 컴포넌트(246)는 제안 사이트를 전달할 수 있다. 어떤 경우에, 제안 사이트 전달 컴포넌트(246)는 또한 사용자에게 제안 사이트를 렌더링하는데 이용하기 위해 제안 사이트와 연관된 기타 정보를 검색 또는 획득하여 사용자 장치에 제공할 수 있다. 단지 예로서, 제안 사이트 전달 컴포넌트(246)는 제안 사이트와 관련하여 제목, 캡션, 아이콘, 타깃 사이트 등을 전달할 수 있다.
이제 도 3을 참조하면, 본 발명의 일 실시예에 따라 제안 사이트를 제공하는 것을 용이하게 해주기 위해 웹-브라우징된 데이터를 제안 엔진에 제공하는 방법(300)을 나타낸 흐름도가 도시되어 있다. 먼저, 블록(310)에서, 웹-브라우징된 데이터가 획득된다. 실시예에서, 사용자가 웹 사이트 또는 웹 페이지로 내비게이팅한 것과 같이 웹 브라우징 액티비티를 수행한 것에 응답하여, 웹-브라우징된 데이터가 획득된다. 웹-브라우징된 데이터는 예를 들어, 사용자 식별자, 사이트 식별자, 타임 스탬프 등과 같이 임의의 웹 브라우징 액티비티와 연관된 임의의 데이터를 포함할 수 있다. 그 후에, 단계(312)에서, 웹-브라우징된 데이터는 파일 등과 같이 데이터 저장소 내에 저장된다. 데이터 저장소 내에 저장된 데이터가 나중에 개인 데이터로서 표시되는 경우에, 데이터 저장소 내의 웹-브라우징된 데이터가 그에 따라 업데이트될 수 있다. 예를 들어, 일부 실시예에서, 개인 데이터로서 표시된 임의의 데이터가 데이터 저장소로부터 제거된다. 대안의 실시예에서, 개인 데이터와 연관되어 있는 데이터 저장소 내의 강한 사이트 식별자는, 사이트가 식별될 수 없도록, 약한 사이트 식별자로 대체된다. 블록(314)에서, 데이터 저장소 내에 저장된 웹-브라우징된 데이터 또는 그의 일부분이 제안 엔진에 전달된다. 이러한 웹-브라우징된 데이터는 제안 엔진에 주기적으로 전달될 수 있다. 제안 엔진은, 그 후에, 웹-브라우징된 데이터를 이용하여, 타깃 사이트와 관련하여 제안 사이트를 제공할 수 있다. 일부 실시예에서, 웹-브라우징된 데이터가 데이터 저장소 내에 저장되지 않고 오히려 제안 엔진에 실시간으로 전달된다.
도 4를 참조하면, 본 발명의 일 실시예에 따라 제안 사이트를 제공하는 것을 용이하게 해주기 위해 제안 사이트 요청을 통해 웹-브라우징된 데이터를 제안 엔진에 제공하는 방법(400)을 나타낸 흐름도가 도시되어 있다. 먼저, 블록(410)에 나타낸 바와 같이, 제안 사이트를 제공하라는 표시가 수신된다. 실시예에서, 이러한 표시는 제안 사이트를 제시받기 위해 요청을 하는 사용자에 의해 제공된다. 그 후에, 블록(412)에서, 제안 사이트 요청이 생성된다. 제안 사이트 요청은 제안 사이트를 수신하고자 한다는 표시를 제공한다. 제안 사이트 요청은 또한 이전에 제안 엔진에 업로드되지 않았던 웹-브라우징된 데이터 또는, 어떤 경우에, 이전에 제안 엔진에 업로드되었던 웹-브라우징된 데이터와 같은 웹-브라우징된 데이터를 포함할 수 있다. 이러한 웹-브라우징된 데이터는, 예를 들어, 사용자 식별자, 제안 사이트가 요망되는 하나 이상의 타깃 사이트의 세트, 및/또는 개인 데이터(예를 들어, 하나 이상의 최근에 삭제된 사이트의 세트)를 포함할 수 있다. 제안 사이트 요청은 제안 엔진에 전달된다. 이것은 블록(414)에 나타내어져 있다.
이제 도 5를 참조하면, 본 발명의 일 실시예에 따라 제안 사이트를 제공하는 방법(500)을 나타낸 흐름도가 도시되어 있다. 먼저, 블록(510)에 나타낸 바와 같이, 웹-브라우징된 데이터가 사용자 장치로부터 수신된다. 웹-브라우징된 데이터는 예를 들어, 사용자 식별자, 사이트 식별자, 타임 스탬프 등과 같이 임의의 웹 브라우징 액티비티와 연관된 임의의 데이터를 포함할 수 있다. 이러한 웹-브라우징된 데이터는 주기적으로 수신될 수 있다. 그 후에, 단계(512)에서, 웹-브라우징된 데이터는 데이터 저장소 내에 저장된다. 블록(514)에서, 하나 이상의 제안 사이트를 원한다는 것을 나타내는 제안 사이트 요청이 수신된다. 제안 사이트 요청은, 예를 들어, 제안 엔진에 이전에 업로드되지 않은 최근의 웹-브라우징된 데이터와 같은 웹-브라우징된 데이터를 포함할 수 있다. 제안 사이트 요청 내에 포함된 이러한 웹-브라우징된 데이터는 사용자 식별자, 하나 이상의 타깃 사이트, 및/또는 개인 데이터(예를 들어, 하나 이상의 최근에 삭제된 사이트의 세트)를 포함할 수 있다. 그 후에, 블록(516)에서, 임의의 타깃 사이트에 대해 하나 이상의 제안 사이트가 식별된다. 실시예에서, 요청 사용자와 연관되어 있거나 사용자 세트와 연관되어 있는 웹-브라우징된 데이터와 같이 데이터 저장소 내에 저장된 장기 웹-브라우징된 데이터를 이용하여 그리고 수신된 제안 사이트 요청 내에 포함된 최근의 웹-브라우징된 데이터를 이용하여 제안 사이트가 식별된다. 실시예에서, 타깃 사이트 각각에 대한 제안 사이트를 식별하기 전에, 타깃 사이트가 식별된다. 이러한 타깃 사이트는 제안 사이트 요청에 표시될 수 있거나, 데이터 저장소 내에 저장된 장기 웹-브라우징된 데이터를 이용하여 식별될 수 있다. 제안 사이트는 요청 사용자 장치에 전달된다. 이것은 블록(518)에 나타내어져 있다. 사용자 장치에 의해 수신된 제안 사이트는 디스플레이 스크린을 통해 대응하는 타깃 사이트와 관련하여 제시될 수 있다.
이제 도 6을 참조하면, 본 발명의 일 실시예에 따라 사용자 프라이버시를 유지하면서 제안 사이트를 제공하는 상세한 방법(600)을 나타낸 흐름도가 도시되어 있다. 먼저, 블록(610)에 나타낸 바와 같이, 프라이버시 표시가 식별된다. 이러한 프라이버시 표시는 웹-브라우징된 데이터 또는 그의 일부분이 개인적이도록 요망된다는 표시를 제공한다. 예를 들어, 사용자가 브라우징 이력으로부터 데이터를 삭제하기로 선택하는 경우에 프라이버시 표시가 인식될 수 있다. 블록(612)에서, 사용자 장치의 데이터 저장소 내에 저장되어 있는 웹-브라우징된 데이터가 프라이버시 표시에 따라 업데이트된다. 이로서, 프라이버시 표시와 연관되어 있는 웹-브라우징된 데이터가 데이터 저장소로부터 삭제되거나 데이터 저장소 내에서 수정(예를 들어, 강한 사이트 식별자를 약한 사이트 식별자로 대체)될 수 있다. 블록(614)에서, 제안 사이트를 제공하라는 표시가 수신된다. 하나 이상의 타깃 사이트에 대한 제안 사이트를 보고자 하는 사용자에 의해 이러한 표시가 제공될 수 있다. 그 후에, 블록(616)에서, 하나 이상의 제안 사이트를 요청하는 제안 사이트 요청이 생성된다. 제안 사이트 요청은, 그 중에서도 특히, 이전에 제안 엔진에 업로드되어 제안 엔진의 데이터 저장소 내에 저장되지 않았던 최근의 개인 데이터와 같은 개인 데이터의 표시를 포함한다. 이러한 개인 데이터는, 예를 들어, 브라우징 이력으로부터 최근에 삭제된 사이트의 사이트 식별자를 포함할 수 있다. 사이트 식별자는 약한 사이트 식별자(예를 들어, 약한 해시 값)일 수 있고, 이로서, 제안 사이트 요청 내에 포함시키기 전에 생성될 수 있다. 제안 사이트 요청은 제안 엔진에 전달되어 제안 엔진에 의해 수신된다. 이것은 블록(618)에 나타내어져 있다.
제안 사이트 요청을 수신하면, 제안 엔진은 요청 내에 포함된 개인 데이터를 이용하여 장기 웹-브라우징된 데이터를 포함하는 데이터 저장소를 업데이트할 수 있다. 즉, 개인적이도록 요망되는 데이터 저장소 내에 포함된 웹-브라우징된 데이터가 삭제되거나 수정(예를 들어, 약한 사이트 식별자로 변환)될 수 있다. 어떤 경우에, 약한 사이트 식별자가 다수의 웹 사이트와 연관될 수 있기 때문에, 초기에 개인 데이터로서 표시된 것보다 더 많은 데이터가 달성될 수 있다. 예를 들어, 제안 사이트 요청을 통해 전송될 수 있는 것보다 많은 처리되지 않은 삭제가 존재하는 경우에, 제안 사이트 요청이 단일의 삭제 커맨드를 포함하면, 제안 엔진은 제안 엔진의 데이터 저장소 내의 모든 데이터 또는 적어도 사이트 식별자를 삭제할 수 있다. 다른 대안으로서, 제안 사이트 요청 내의 개인 데이터가 개인 데이터에 따라 요청된 대로 제안 사이트를 생성하는데 이용될 수 있지만, 제안 엔진의 데이터 저장소 내의 웹-브라우징된 데이터에 영향을 주지 않는다. 전달된 개인 데이터에 따라 제안 엔진에서 타깃 사이트 및/또는 제안 사이트를 식별하기 위해 제안 사이트 요청 내에 포함된 개인 데이터가 이용될 수 있다.
당업자라면, 도 3의 방법(300), 도 4의 방법(400), 도 5의 방법(500), 및 도 6의 방법(600)에 도시된 단계들의 순서가 어떠한 방식에서든 본 발명의 범위를 제한하는 것으로 보아서는 안되며, 실제로 이 단계들이 본 발명의 실시예 내에서 각종의 다른 순서로 발생할 수 있다는 것을 이해할 것이다. 이러한 변형예들 전부 및 이들의 임의의 조합이 본 발명의 실시예의 범위에 속하는 것으로 생각된다.
앞서 언급한 바와 같이, 제안 사이트가 도 7에 도시된 바와 같이 보여지는 웹 사이트 또는 웹 페이지와 관련하여 제시되는 것 또는 제안 사이트가 도 8에 도시된 바와 같이 제안 사이트를 제공하는 것에 전용된 웹 사이트 또는 웹 페이지와 관련하여 제시되는 것(이들로 제한되지 않음)을 비롯한 임의의 수의 방식으로 제안 사이트가 제시될 수 있다. 당업자라면, 본 발명의 실시예에 따라 제안 사이트를 노출시키고/시키거나 제시하는데 다수의 다른 사용자 인터페이스 특징이 이용될 수 있다는 것과 도 7 및 도 8에 도시된 사용자 인터페이스 특징이 몇몇 이러한 특징을 단지 예시하는 것으로 보아야 한다는 것을 이해할 것이다. 임의의 이러한 변형예 및 이러한 모든 변형예가 본 발명의 실시예의 범위에 속하는 것으로 생각된다. 실시예에서, 사용자 장치와 관련한 웹 브라우저는 사용자가 제안 사이트를 디스플레이하고 그와 상호작용할 수 있게 해준다. 그에 따라, 웹 브라우저는 하나 이상의 타깃 사이트와 관련한 제안 사이트를 사용자에게 제시하는 기능을 갖는다. 웹 브라우저의 예는 Microsoft® Internet Explorer®, Mozilla® Firefox®, Netscape® 등을 포함한다.
타깃 사이트와 관련한 제안 사이트는 보고 있는 웹 사이트 또는 웹 페이지와 관련하여 제시될 수 있다. 이 사용자 인터페이스 특징의 일례가 도 7에 도시되어 있다. 도 7을 참조하면, 본 발명의 일 실시예에 따라 타깃 사이트(712)와 관련하여 제안 사이트(710) 세트를 보여주는 예시적인 사용자 인터페이스(700)의 예시적인 스크린 디스플레이가 도시되어 있다. 제안 사이트(710) 세트는 5개의 제안 사이트(714, 716, 718, 720 및 722)를 포함한다. 당업자라면, 임의의 수의 제안 사이트가 제시될 수 있다는 것을 잘 알 것이다. 예시적인 스크린 디스플레이(700)에서, 타깃 사이트(712)는 현재 보고 있는 웹 사이트(724)와 일치한다. 그러나, 당업자라면, 타깃 사이트(712) 및 대응하는 제안 사이트(710) 세트가 이전에 방문하거나 가장 흔히 방문한 웹 사이트와 같은 다른 타깃 사이트에 대응할 수 있다는 것을 잘 알 것이다. 또한, 예시적인 스크린 디스플레이(700)가 단지 하나의 타깃 사이트(712)에 대해 제안 사이트(710) 세트를 디스플레이하고 있지만, 임의의 수의 타깃 사이트 및 대응하는 제안 사이트가 제시될 수 있다.
일 실시예에서, 사용자가 제안 사이트를 보고자 한다는 표시를 제공하면, 제안 사이트(710) 세트 및 대응하는 타깃 사이트(712)가 제시된다. 이로서, 사용자는 제안 사이트(710) 세트를 보기 위해 제안 사이트 표시자(726)를 선택할 수 있다. 당업자라면, 제안 사이트가, 예를 들어, 보고 있는 웹 페이지 또는 웹 사이트에 인접하여, 연속적으로 제시될 수 있다는 것을 잘 알 것이다. 도 7에 도시된 바와 같이, 사용자는, 예를 들어, "Show More Suggestions" 표시자(728)를 선택함으로써 추가의 제안 사이트를 보는 옵션을 가진다. 이러한 표시자(728)를 선택함으로써, 그 타깃 사이트(들)와 연관된 추가의 제안 사이트가 제시될 수 있다. 그에 부가하여 또는 다른 대안으로서, 추가의 타깃 사이트 및 연관된 제안 사이트가 제공될 수 있다.
타깃 사이트와 관련한 제안 사이트는 제안 사이트를 제공하는 것에 전용된 웹 사이트 또는 웹 페이지와 관련하여 제시될 수 있다. 이 사용자 인터페이스 특징의 일례가 도 8에 도시되어 있다. 도 8을 참조하면, 본 발명의 일 실시예에 따라 제1 타깃 사이트(812)와 관련하여 제1 제안 사이트(810) 세트를 보여주고 제2 타깃 사이트(816)와 관련하여 제2 제안 사이트(814) 세트의 일부분을 보여주는 예시적인 사용자 인터페이스(800)의 예시적인 스크린 디스플레이가 도시되어 있다. 당업자라면, 임의의 수의 제안 사이트 및/또는 타깃 사이트가 제시될 수 있다는 것을 잘 알 것이다. 예시적인 스크린 디스플레이(800)에서, 타깃 사이트(812)는 가장 최근에 본 웹 사이트(818)과 일치하는 반면, 타깃 사이트(816)는 또 하나의 최근에 본 웹 사이트 또는 흔히 본 웹 사이트를 나타낸다. 그러나, 당업자라면, 타깃 사이트(812 및 816)가 이전에 방문하거나 가장 흔히 방문한 웹 사이트와 같은 임의의 타깃 사이트에 대응할 수 있다는 것을 잘 알 것이다. 또한, 예시적인 스크린 디스플레이(800)가 2개의 타깃 사이트에 대해 제안 사이트 세트를 디스플레이하고 있지만, 임의의 수의 타깃 사이트 및 대응하는 제안 사이트가 제시될 수 있다.
일 실시예에서, 사용자가 제안 사이트를 보겠다는 표시를 제공하면, 제안 사이트가 제시된다. 이로서, 사용자는 제안 사이트를 보기 위해 제안 사이트 표시자(820), 도 7의 "Show More Suggestions" 표시자(728), 또는 제안 사이트를 제공하는 것에 전용된 웹 사이트 또는 웹 페이지에 대한 도 7의 링크(730)를 선택할 수 있다. 다른 대안으로서, 사용자는 제안 사이트를 제공하는 것에 전용된 웹 사이트 또는 웹 페이지에 도달하기 위해 주소창(822)에 URL 또는 그에 대한 참조를 입력할 수 있다. 사용자는, 예를 들어, 도 8의 "Show More Suggestions" 표시자(824)를 선택함으로써 추가의 제안 사이트를 보는 옵션을 가진다. 이러한 표시자(824)를 선택함으로써, 그 타깃 사이트(들)와 연관된 추가의 제안 사이트가 제시될 수 있다.
본 발명이 모든 점에서 제한적인 것이 아니라 예시적인 것으로 의도된 특정의 실시예에 관해 기술되어 있다. 대안의 실시예가 본 발명의 범위를 벗어나지 않고 본 발명과 관련된 기술 분야의 당업자에게는 명백하게 될 것이다.
이상으로부터, 본 발명이 이 시스템 및 방법에 고유하며 명백한 다른 이점들과 함께 이상에서 기술한 모든 목적을 달성하도록 잘 구성되어 있다는 것을 잘 알 것이다. 특정 특징 및 서브조합이 유용하고 또 다른 특징 및 서브조합을 참조하지 않고 이용될 수 있다는 것을 이해할 것이다. 이것은 청구항에서 고려되고 있으며 또 청구항의 범위 내에 속한다.

Claims (15)

  1. 타깃 사이트들과 관련하여 제안 사이트들을 제공하는 것을 용이하게 하는 방법을 수행하기 위한 컴퓨터 실행가능 명령어들이 구현되어 있는 하나 이상의 컴퓨터 저장 매체로서,
    상기 방법은,
    사용자의 웹 브라우징 액티비티들과 연관된 웹-브라우징된 데이터를 획득하는 단계(310) - 상기 웹-브라우징된 데이터는, 웹-브라우징된 웹 사이트 또는 웹 페이지를 식별하는 적어도 하나의 사이트 식별자를 포함함 -;
    상기 웹 브라우징 액티비티들에 대응하는 사용자 또는 사용자 장치를 식별하는 사용자 식별자와 관련하여 상기 웹-브라우징된 데이터를 저장하는 단계(312); 및
    상기 저장된 웹-브라우징된 데이터를, 상기 타깃 사이트들과 관련하여 상기 제안 사이트들을 제공하는 제안 엔진에 전달하는 단계(314) - 상기 웹-브라우징된 데이터는 각각의 타깃 사이트에 대한 하나 이상의 제안 사이트들을 결정하는데 이용됨 -
    를 포함하는 하나 이상의 컴퓨터 저장 매체.
  2. 제1항에 있어서, 상기 사용자 식별자는, GUID(globally unique identifier) 및 암호화 식별자(cryptographic identifier)를 이용하여 자동으로 생성된 개인 사용자 식별자(private user identifier)인 하나 이상의 컴퓨터 저장 매체.
  3. 제1항에 있어서, 상기 방법은, 사용자가 개인 데이터이도록 의도하는 상기 웹-브라우징된 데이터의 적어도 일부분을 인식하는 단계를 더 포함하는 하나 이상의 컴퓨터 저장 매체.
  4. 제3항에 있어서, 상기 방법은,
    약한 사이트 식별자를 생성하는 단계; 및
    상기 개인 데이터와 연관되는 저장된 사이트 식별자를 상기 약한 사이트 식별자로 대체하는 단계
    를 더 포함하는 하나 이상의 컴퓨터 저장 매체.
  5. 제3항에 있어서, 상기 방법은, 상기 개인 데이터와 연관되는 저장된 사이트 식별자를 삭제하는 단계를 더 포함하는 하나 이상의 컴퓨터 저장 매체.
  6. 제1항에 있어서, 상기 제안 엔진에 의해 수신된 상기 웹-브라우징된 데이터는, 각각의 타깃 사이트에 대해 상기 하나 이상의 제안 사이트들을 제공하기 위해서 사용자가 제안 사이트들을 수신하겠다는 표시를 제공하면 제안 사이트 요청을 통해 상기 제안 엔진에 전달된 최근의 웹-브라우징된 데이터와 함께 이용되는 하나 이상의 컴퓨터 저장 매체.
  7. 제1항에 있어서, 상기 방법은,
    상기 제안 사이트들을 제공하라는 표시를 상기 사용자로부터 수신하는 단계;
    최근에 방문한 웹 사이트들의 세트 및 최근에 삭제된 웹 사이트들의 세트를 포함하는 제안 사이트 요청을 생성하는 단계; 및
    상기 제안 사이트 요청을 상기 제안 엔진에 전달하는 단계
    를 더 포함하며,
    상기 최근에 방문한 웹 사이트들의 세트 및 상기 최근에 삭제된 웹 사이트들의 세트는 각각의 타깃 사이트에 대한 상기 하나 이상의 제안 사이트들을 결정하는데 이용되는 하나 이상의 컴퓨터 저장 매체.
  8. 타깃 사이트들과 관련하여 제안 사이트들을 제공하는 것을 용이하게 하는 컴퓨터화된 방법으로서,
    사용자의 웹 브라우징 액티비티들과 연관된 웹-브라우징된 데이터를 수신하는 단계(510) - 상기 웹-브라우징된 데이터는 웹-브라우징된 웹 사이트 또는 웹 페이지를 식별하는 적어도 하나의 사이트 식별자를 포함함 -;
    상기 웹-브라우징된 데이터를 상기 사용자와 관련하여 데이터 저장소에 저장하는 단계(512);
    하나 이상의 제안 사이트들을 요청하는 제안 사이트 요청을 통해 상기 사용자와 연관된 최근의 웹-브라우징된 데이터를 수신하는 단계(514) - 상기 최근의 웹-브라우징된 데이터는 적어도 하나의 타깃 사이트를 포함함 -;
    상기 수신된 적어도 하나의 타깃 사이트 및 상기 수신된 웹-브라우징된 데이터를 이용하여, 상기 적어도 하나의 타깃 사이트 각각과 관련하여 상기 하나 이상의 제안 사이트들을 식별하는 단계(516) - 상기 하나 이상의 제안 사이트들은 대응하는 타깃 사이트와 관련되거나 유사함 -; 및
    상기 하나 이상의 제안 사이트들을 상기 대응하는 타깃 사이트와 관련하여 제시하는 단계(518)
    를 포함하는 컴퓨터화된 방법.
  9. 제8항에 있어서, 상기 웹-브라우징된 데이터는 주기적으로 사용자 장치로부터 전달되는 컴퓨터화된 방법.
  10. 제8항에 있어서, 상기 최근의 웹-브라우징된 데이터는, 상기 사용자가 상기 하나 이상의 제안 사이트들을 보려고 요청하는 것에 응답하여, 상기 사용자와 연관된 사용자 장치로부터 수신되는 컴퓨터화된 방법.
  11. 제8항에 있어서, 상기 적어도 하나의 사이트 식별자는, 비개인 데이터(non-private data)에 대한 강한 사이트 식별자(strong site identifier) 및 개인 데이터(private data)에 대한 약한 사이트 식별자(weak site identifier)를 포함하는 컴퓨터화된 방법.
  12. 제8항에 있어서, 상기 최근의 웹-브라우징된 데이터는 개인 데이터의 표시를 포함하는 컴퓨터화된 방법.
  13. 제12항에 있어서, 상기 최근의 웹-브라우징된 데이터는 상기 데이터 저장소에 저장된 상기 웹-브라우징된 데이터를 업데이트하는데 이용되는 컴퓨터화된 방법.
  14. 제8항에 있어서, 상기 적어도 하나의 타깃 사이트는, 적어도 하나의 최근에 본 사이트, 적어도 하나의 빈번히 본 사이트, 또는 이들의 조합을 포함하는 컴퓨터화된 방법.
  15. 타깃 사이트들과 관련하여 제안 사이트들을 제공하는 것을 용이하게 하는 방법을 수행하기 위한 컴퓨터 실행가능 명령어들이 구현되어 있는 하나 이상의 컴퓨터 저장 매체로서,
    상기 방법은,
    복수의 웹 브라우저 사용자들의 웹 브라우징 액티비티들과 연관된 웹-브라우징된 데이터를 수신하는 단계(510) - 상기 웹-브라우징된 데이터는, 웹-브라우징된 웹 사이트 또는 웹 페이지를 식별하는 사이트 식별자들을 포함함 -;
    상기 웹-브라우징된 데이터를 사용자 식별자와 관련하여 데이터 저장소에 저장하는 단계(512);
    사용자가 하나 이상의 제안 사이트들을 보고자 한다는 표시를 제공하는 것에 응답하여, 사용자 장치로부터 전달된 제안 사이트 요청을 수신하는 단계(514) - 상기 제안 사이트 요청은 상기 사용자와 연관된 최근의 웹-브라우징된 데이터를 포함하며, 상기 최근의 웹-브라우징된 데이터는, 상기 사용자 또는 상기 사용자 장치와 연관된 사용자 식별자, 최근에 본 사이트들을 포함하는 하나 이상의 타깃 사이트들, 및 하나 이상의 최근에 삭제된 사이트들의 표시를 포함함 -;
    상기 하나 이상의 타깃 사이트들 각각에 대응하는 하나 이상의 제안 사이트들을 식별하는 단계(516) - 상기 하나 이상의 제안 사이트들은 대응하는 타깃 사이트와 관련되거나 유사하며, 상기 데이터 저장소에 저장된 웹-브라우징된 데이터 및 상기 제안 사이트 요청에서 전달된 상기 최근의 웹-브라우징된 데이터는 각각의 대응하는 타깃 사이트에 대한 상기 하나 이상의 제안 사이트들을 식별하는데 이용됨 -; 및
    상기 하나 이상의 제안 사이트들을 상기 대응하는 타깃 사이트와 관련하여 상기 사용자에게 제시하는 단계(518)
    를 포함하는 하나 이상의 컴퓨터 저장 매체.
KR1020117011402A 2008-11-26 2009-11-07 타깃 사이트와 연관된 제안 사이트의 제공 KR101624002B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/324,598 US8244740B2 (en) 2008-11-26 2008-11-26 Providing suggested sites associated with target sites
US12/324,598 2008-11-26

Publications (2)

Publication Number Publication Date
KR20110086825A true KR20110086825A (ko) 2011-08-01
KR101624002B1 KR101624002B1 (ko) 2016-05-25

Family

ID=42197242

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117011402A KR101624002B1 (ko) 2008-11-26 2009-11-07 타깃 사이트와 연관된 제안 사이트의 제공

Country Status (13)

Country Link
US (1) US8244740B2 (ko)
EP (1) EP2350972B1 (ko)
JP (1) JP5227461B2 (ko)
KR (1) KR101624002B1 (ko)
CN (1) CN102224520B (ko)
AU (1) AU2009319923B2 (ko)
BR (1) BRPI0919659A2 (ko)
CA (1) CA2739702A1 (ko)
MX (1) MX2011005399A (ko)
MY (1) MY159148A (ko)
RU (1) RU2011121151A (ko)
WO (1) WO2010062791A2 (ko)
ZA (1) ZA201102280B (ko)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201020802A (en) * 2008-11-28 2010-06-01 Ibm System, device, method and computer-readable medium for providing network service information
US9049227B2 (en) * 2008-12-08 2015-06-02 Janet Surasathian System and method for adapting an internet and intranet filtering system
US20100306346A1 (en) * 2009-05-27 2010-12-02 Nokia Corporation Method and apparatus for modifying a data stream communication
CN102314436A (zh) * 2010-06-30 2012-01-11 国际商业机器公司 网页自动调整方法和系统
US8744990B2 (en) * 2010-07-09 2014-06-03 Yahoo! Inc. Rule based, proactive web browsing
US9055113B2 (en) * 2010-08-20 2015-06-09 Arbor Networks, Inc. Method and system for monitoring flows in network traffic
GB201018416D0 (en) * 2010-11-01 2010-12-15 Como Ip Ltd Methods and apparatus of accessing related content on a web-page
US8600968B2 (en) * 2011-04-19 2013-12-03 Microsoft Corporation Predictively suggesting websites
US9043397B1 (en) * 2011-08-22 2015-05-26 Twitter, Inc. Suggestions from a messaging platform
US20130125005A1 (en) * 2011-11-14 2013-05-16 Microsoft Corporation Contextual data displayed via browser toolbar
US8316460B1 (en) * 2011-11-22 2012-11-20 Google Inc. Private web browsing using encryption
US8965908B1 (en) 2012-01-24 2015-02-24 Arrabon Management Services Llc Methods and systems for identifying and accessing multimedia content
US9098510B2 (en) 2012-01-24 2015-08-04 Arrabon Management Services, LLC Methods and systems for identifying and accessing multimedia content
US9460220B1 (en) * 2012-03-26 2016-10-04 Amazon Technologies, Inc. Content selection based on target device characteristics
US8719934B2 (en) * 2012-09-06 2014-05-06 Dstillery, Inc. Methods, systems and media for detecting non-intended traffic using co-visitation information
US8966179B1 (en) 2012-09-10 2015-02-24 Google Inc. Volatile memory storage for private web browsing
US9721032B2 (en) * 2012-10-18 2017-08-01 Google Inc. Contextual URL suggestions
CN104063112B (zh) * 2013-04-08 2015-11-25 腾讯科技(北京)有限公司 一种浏览器间的交互方法、装置、系统和浏览器
US9699019B2 (en) * 2013-06-14 2017-07-04 Microsoft Technology Licensing, Llc Related content display associated with browsing
US9241355B2 (en) * 2013-09-30 2016-01-19 Sonos, Inc. Media system access via cellular network
US20160070446A1 (en) * 2014-09-04 2016-03-10 Home Box Office, Inc. Data-driven navigation and navigation routing
US10154041B2 (en) * 2015-01-13 2018-12-11 Microsoft Technology Licensing, Llc Website access control
RU2640299C2 (ru) * 2015-06-30 2017-12-27 Общество С Ограниченной Ответственностью "Яндекс" Способ, электронное устройство и сервер организации истории браузера
RU2632131C2 (ru) 2015-08-28 2017-10-02 Общество С Ограниченной Ответственностью "Яндекс" Способ и устройство для создания рекомендуемого списка содержимого
RU2632100C2 (ru) 2015-09-28 2017-10-02 Общество С Ограниченной Ответственностью "Яндекс" Способ и сервер создания рекомендованного набора элементов
RU2629638C2 (ru) 2015-09-28 2017-08-30 Общество С Ограниченной Ответственностью "Яндекс" Способ и сервер создания рекомендуемого набора элементов для пользователя
CN109076098B (zh) * 2016-04-15 2021-12-14 电子湾有限公司 跨不同站点采用数据的方法、系统及介质
RU2632144C1 (ru) 2016-05-12 2017-10-02 Общество С Ограниченной Ответственностью "Яндекс" Компьютерный способ создания интерфейса рекомендации контента
US10536556B2 (en) * 2016-05-19 2020-01-14 Microsoft Technology Licensing, Llc Automation of browsing mode switching
RU2636702C1 (ru) 2016-07-07 2017-11-27 Общество С Ограниченной Ответственностью "Яндекс" Способ и устройство для выбора сетевого ресурса в качестве источника содержимого для системы рекомендаций
RU2632132C1 (ru) 2016-07-07 2017-10-02 Общество С Ограниченной Ответственностью "Яндекс" Способ и устройство для создания рекомендаций содержимого в системе рекомендаций
CN109845284B (zh) * 2016-10-12 2021-06-25 Lg 电子株式会社 显示装置及其操作方法
USD882600S1 (en) 2017-01-13 2020-04-28 Yandex Europe Ag Display screen with graphical user interface
US11205188B1 (en) 2017-06-07 2021-12-21 Capital One Services, Llc Automatically presenting e-commerce offers based on browse history
RU2720952C2 (ru) 2018-09-14 2020-05-15 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для создания рекомендации цифрового содержимого
RU2720899C2 (ru) 2018-09-14 2020-05-14 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для определения зависящих от пользователя пропорций содержимого для рекомендации
RU2714594C1 (ru) 2018-09-14 2020-02-18 Общество С Ограниченной Ответственностью "Яндекс" Способ и система определения параметра релевантность для элементов содержимого
RU2725659C2 (ru) 2018-10-08 2020-07-03 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для оценивания данных о взаимодействиях пользователь-элемент
RU2731335C2 (ru) 2018-10-09 2020-09-01 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для формирования рекомендаций цифрового контента
US11347781B2 (en) 2018-10-22 2022-05-31 Adobe Inc. Dynamically generating attribution-model visualizations for display in attribution user interfaces
US11347809B2 (en) * 2018-11-13 2022-05-31 Adobe Inc. Performing attribution modeling for arbitrary analytics parameters
US11423422B2 (en) 2018-11-13 2022-08-23 Adobe Inc. Performing query-time attribution modeling based on user-specified segments
RU2757406C1 (ru) 2019-09-09 2021-10-15 Общество С Ограниченной Ответственностью «Яндекс» Способ и система для обеспечения уровня сервиса при рекламе элемента контента
JP7468228B2 (ja) 2020-07-30 2024-04-16 株式会社タダノ クレーン
US11887155B2 (en) 2020-11-30 2024-01-30 Direct Cursus Technology L.L.C Method and a system for selecting a targeted message to be included within a web resource
US11748435B2 (en) * 2021-04-23 2023-09-05 S&P Global Inc. Content-free system and method to recommend news and articles

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9800430D0 (en) 1998-01-10 1998-03-04 Ncr Int Inc Method and system for routing agent programs through a communications network
JP3278606B2 (ja) * 1998-02-13 2002-04-30 エヌイーシーソフト株式会社 操作履歴秘匿方式
US6734886B1 (en) * 1999-12-21 2004-05-11 Personalpath Systems, Inc. Method of customizing a browsing experience on a world-wide-web site
KR20010092922A (ko) 2000-03-27 2001-10-27 이현구 유사 웹사이트의 검색 방법
JP2001357055A (ja) * 2000-06-09 2001-12-26 Media Japan Corp ブックマーク管理方法及びブックマーク管理システム
US20020198882A1 (en) 2001-03-29 2002-12-26 Linden Gregory D. Content personalization based on actions performed during a current browsing session
JP2003030231A (ja) 2001-07-11 2003-01-31 Nippon Telegr & Teleph Corp <Ntt> 文書検索サービス提供方法及び装置及び文書検索サービス提供プログラム及び文書検索サービス提供プログラムを格納した記憶媒体
JP2003085202A (ja) 2001-09-13 2003-03-20 Nippon Telegr & Teleph Corp <Ntt> 類似ウェブページ探索方法、装置及びそのプログラム並びにそれを記録した情報記録媒体
US7356115B2 (en) * 2002-12-04 2008-04-08 Varian Medical Systems Technology, Inc. Radiation scanning units including a movable platform
WO2004109532A1 (en) 2003-06-05 2004-12-16 Cubicice (Pty) Ltd A method of collecting data regarding a plurality of web pages visited by at least one user
JP2005202766A (ja) 2004-01-16 2005-07-28 National Institute Of Information & Communication Technology 類似コンテンツの同時提示システム
US7321889B2 (en) 2004-09-10 2008-01-22 Suggestica, Inc. Authoring and managing personalized searchable link collections
US20060059225A1 (en) * 2004-09-14 2006-03-16 A9.Com, Inc. Methods and apparatus for automatic generation of recommended links
US8438499B2 (en) * 2005-05-03 2013-05-07 Mcafee, Inc. Indicating website reputations during user interactions
US20070074125A1 (en) * 2005-09-26 2007-03-29 Microsoft Corporation Preview information for web-browsing
US7698269B2 (en) * 2005-11-29 2010-04-13 Yahoo! Inc. URL shortening and authentication with reverse hash lookup
US7788358B2 (en) 2006-03-06 2010-08-31 Aggregate Knowledge Using cross-site relationships to generate recommendations
JP2007265296A (ja) * 2006-03-29 2007-10-11 Fujitsu Ltd ログ提供システム、ログ提供方法、およびコンピュータプログラム
EP1873657A1 (en) 2006-06-29 2008-01-02 France Télécom User-profile based web page recommendation system and method
JP2008146355A (ja) 2006-12-11 2008-06-26 Lealcom Kk 情報配信システム、情報配信装置及び情報配信方法
US8301787B2 (en) * 2007-03-22 2012-10-30 Red Hat, Inc. Selective use of anonymous proxies
US8126879B2 (en) * 2007-05-17 2012-02-28 Microsoft Corporation Assisted management of bookmarked web pages
US9594844B2 (en) * 2007-11-08 2017-03-14 Microsoft Technology Licensing, Llc Selectively deleting items that are not of interest to a user

Also Published As

Publication number Publication date
BRPI0919659A2 (pt) 2018-02-14
AU2009319923B2 (en) 2014-05-22
KR101624002B1 (ko) 2016-05-25
ZA201102280B (en) 2012-07-25
US8244740B2 (en) 2012-08-14
JP5227461B2 (ja) 2013-07-03
AU2009319923A1 (en) 2010-06-03
WO2010062791A2 (en) 2010-06-03
EP2350972A2 (en) 2011-08-03
RU2011121151A (ru) 2012-11-27
EP2350972A4 (en) 2012-04-18
MY159148A (en) 2016-12-15
JP2012510127A (ja) 2012-04-26
CN102224520B (zh) 2014-07-09
CN102224520A (zh) 2011-10-19
WO2010062791A3 (en) 2010-08-26
US20100131441A1 (en) 2010-05-27
CA2739702A1 (en) 2010-06-03
MX2011005399A (es) 2011-06-16
EP2350972B1 (en) 2014-02-26

Similar Documents

Publication Publication Date Title
KR101624002B1 (ko) 타깃 사이트와 연관된 제안 사이트의 제공
KR100854561B1 (ko) 개인용 포털과 웹 컨텐츠 신디케이션의 통합 방법
US7680856B2 (en) Storing searches in an e-mail folder
US8856168B2 (en) Contextual application recommendations
US8495484B2 (en) Intelligent link population and recommendation
US8645813B2 (en) Technique for modifying presentation of information displayed to end users of a computer system
US7596533B2 (en) Personalized multi-service computer environment
KR100799658B1 (ko) 문자스트림과 연관된 호스트 기반 지능형 결과
US20170068740A1 (en) Method and system for web searching
US20110320443A1 (en) Navigation to Popular Search Results
US20100070871A1 (en) Extendable Recommender Framework for Web-Based Systems
KR20110102317A (ko) 최근 이력에 검색 결과를 제공
GB2461771A (en) Annotation of electronic documents with preservation of document as originally annotated
JP2007526537A (ja) 持続的にイベントデータを記憶および提供するためのサーバアーキテクチャおよび方法
JP2010508579A (ja) マクロを使用する個別化検索
US20070162524A1 (en) Network document management
US8954861B1 (en) Administrator configurable gadget directory for personalized start pages
US8180771B2 (en) Search activity eraser
KR100965343B1 (ko) 사용자의 검색 결과 활용 패턴의 공유를 이용한 검색 엔진운영 방법 및 시스템
JP2006343861A (ja) 情報検索システム、情報検索方法及び情報検索プログラム

Legal Events

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

Payment date: 20190417

Year of fee payment: 4