KR102217822B1 - 히스토그램 기반 분석을 이용한 이벤트 데이터베이스 관리 - Google Patents

히스토그램 기반 분석을 이용한 이벤트 데이터베이스 관리 Download PDF

Info

Publication number
KR102217822B1
KR102217822B1 KR1020197017322A KR20197017322A KR102217822B1 KR 102217822 B1 KR102217822 B1 KR 102217822B1 KR 1020197017322 A KR1020197017322 A KR 1020197017322A KR 20197017322 A KR20197017322 A KR 20197017322A KR 102217822 B1 KR102217822 B1 KR 102217822B1
Authority
KR
South Korea
Prior art keywords
event
social media
interest
user
subset
Prior art date
Application number
KR1020197017322A
Other languages
English (en)
Other versions
KR20190111907A (ko
Inventor
스콧 허만 알버타인
케이. 빅터 골루빅
토마스 조셒 휴버
토마스 조™W 휴버
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 KR20190111907A publication Critical patent/KR20190111907A/ko
Application granted granted Critical
Publication of KR102217822B1 publication Critical patent/KR102217822B1/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/01Social networking
    • 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/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/02Reservations, e.g. for tickets, services or events
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • G06Q10/1093Calendar-based scheduling for persons or groups
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • H04L67/22
    • 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/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/025Services making use of location information using location based information parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Game Theory and Decision Science (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

소셜 미디어 플랫폼은 사용자가 이벤트들을 자동화된 방식으로 홍보 및 조직할 수 있게 한다. 일부 경우에, 사용자는, 이벤트에 속하고, 이벤트에 관련되고, 그리고/또는 그 외에는 이벤트에 연관된 하나 이상의 관심 카테고리를 특정할 수 있다. 또한, 특정 이벤트를 위해 사용자에 의해 특정되는 관심 카테고리는, 그 이벤트를 하나 이상의 다른 사용자에게 자동으로 추천하거나 제안하는 데 사용될 수 있다. 일부 경우에, 소셜 미디어 플랫폼은, 이벤트에 참여할 계획이라고 밝힌 사용자에 의해 선택되는 관심 카테고리에 기초하여 특정 이벤트를 자동으로 제안하거나 추천할 수 있다.

Description

히스토그램 기반 분석을 이용한 이벤트 데이터베이스 관리
본 개시 내용은, 데이터베이스 시스템의 유지에 관한 것으로서, 더욱 구체적으로는, 사용자가 소셜 미디어 이벤트 항목을 자동화된 방식으로 생성하고 공유할 수 있게 하는 (예를 들어, 소셜 미디어 플랫폼들과 함께 사용하기 위한) 소셜 미디어 이벤트 항목들의 데이터베이스의 유지에 관한 것이다.
데이터베이스(예를 들어, 관계형 데이터베이스 또는 다른 종류의 데이터베이스)는, 소셜 미디어 플랫폼에 의해 생성되고 유지되는 데이터와 같은 다양한 데이터를 저장할 수 있다. 소셜 미디어 플랫폼은, 사용자가 다른 사용자와의 소셜 네트워크 및/또는 소셜 관계를 구축할 수 있게 하는 온라인 플랫폼이다. 예를 들어 사용자는, 소셜 미디어 플랫폼에서 페르소나를 생성할 수 있고, 페르소나를 사용하여 다른 사용자와 상호작용할 수 있다. 일례로, 사용자는, 개인 정보, 전기(biographical) 정보 및/또는 자신에 관한 기타 정보(예컨대, 이름, 연락처 정보, 개인적인 관심, 직업 정보, 사진, 비디오, 오디오 등)를 입력함으로써 소셜 미디어 프로파일을 생성할 수 있다. 또한, 사용자는, (지인, 사업 연줄 및/또는 친구인 한 명 이상의 사용자를 특정함으로써) 자신을 소셜 미디어 플랫폼의 다른 사용자들과 연관지을 수 있다.
일부 경우에, 소셜 미디어 플랫폼은 또한 사용자들이 서로 정보를 공유할 수 있게 한다. 예를 들어, 일부 소셜 미디어 플랫폼에서, 사용자들은 소셜 미디어 플랫폼을 통해 메시지, 사진, 비디오, 오디오, 문서 및/또는 기타 콘텐츠를 서로 송신할 수 있다.
일부 경우에, 소셜 미디어 플랫폼은, 또한, 사용자들이 이벤트를 홍보하고 조직하게 할 수 있다. 예를 들어, 일부 소셜 미디어 플랫폼에서, 사용자는 다가올 이벤트에 관한 정보를 입력하고 그 정보를 다른 사용자들과 공유할 수 있다. 수신자는, 이벤트와 관련된 정보를 검토하고, 이벤트에 대해 상의하고, 이벤트에 대하여 회신(RSVP)할 수 있다.
소셜 미디어 플랫폼은 사용자가 이벤트를 자동화된 방식으로 홍보하고 조직하게 할 수 있다. 예를 들어, 이벤트의 “제어 사용자"(예컨대, 이벤트를 생성, 조직, 스케줄링, 리스케줄링(rescheduling), 관리 및/또는 홍보하는 것을 담당하는 사용자)는, 소셜 미디어 플랫폼과 상호작용하여 이벤트를 나타내는 소셜 미디어 이벤트 항목을 생성할 수 있다. 제어 사용자는, 소셜 미디어 이벤트 항목을, 이벤트의 스케줄링된 시간, 이벤트의 계획된 위치, 이벤트에 대한 설명, 및 이벤트에 관한 기타 콘텐츠(예컨대, 텍스트, 이미지, 오디오, 비디오 등)와 같은 이벤트에 관한 정보로 채울 수 있다. 또한, 제어 사용자는 소셜 미디어 이벤트 항목을 다른 사용자들(예를 들어, 잠재적 참석자들)과 공유할 수 있다. 각각의 수신자는, 소셜 미디어 이벤트 항목을 검토하여 이벤트에 관한 정보를 취득할 수 있고, 이벤트에 대해 상의할 수 있고, 그리고/또는 이벤트에 대하여 회신할 수 있다.
일부 경우에, 제어 사용자는, 이벤트에 속하고, 이벤트에 관련되고, 그리고/또는 그 외에는 이벤트에 연관된 하나 이상의 관심 카테고리를 특정할 수 있다. 또한, 특정 이벤트에 대해 제어 사용자에 의해 특정된 관심 카테고리를 사용하여, 해당 이벤트를 한 명 이상의 사용자에게 자동으로 추천하거나 제안할 수 있다. 예를 들어, 각각의 사용자는, 소셜 미디어 플랫폼과 상호작용하여 소셜 미디어 프로파일(예를 들어, 사용자에 관한 정보를 포함하는 개인 프로파일)을 생성할 수 있고, 자신의 소셜 미디어 프로파일을, 자신이 관심을 갖고 있는 하나 이상의 관심 카테고리로 채울 수 있다. 이 정보에 기초하여, 소셜 미디어 플랫폼은, 특정 사용자가 (예를 들어, 그 사용자의 소셜 미디어 프로파일 및 이벤트의 소셜 미디어 이벤트 항목 모두에 공통되는 관심 카테고리로 인해) 특정 이벤트에 관심이 있을 수 있음을 자동으로 결정할 수 있다. 이에 응답하여, 소셜 미디어 플랫폼은 이벤트의 소셜 미디어 이벤트 항목을 그 제2 사용자에게 자동으로 제시할 수 있다.
일부 경우에, 소셜 미디어 플랫폼은, 이벤트에 참석할 계획이라고 밝힌 사용자가 선택한 관심 카테고리에 기초하여 특정 이벤트를 자동으로 제안하거나 추천할 수 있다. 예를 들어, 많은 사용자는 특정 이벤트에 대해 (예를 들어, 이벤트에 참석할 계획임을 나타내는) "예"라고 회신하였을 수 있다. 또한, 그러한 사용자들의 상당수는, 이벤트의 소셜 미디어 이벤트 항목에 포함되지 않은 각자의 소셜 미디어 프로파일에 대한 특정 관심 카테고리를 각각각의 선택했을 수 있다. 이 정보를 기반으로, 소셜 미디어 플랫폼은, 추가 관심 카테고리가 이벤트의 제어 사용자에 의해 명시적으로 특정되지 않았더라도 이러한 추가 관심 카테고리에 관심이 있는 사용자가 이벤트를 또한 즐길 수 있다고 자동으로 결정할 수 있다. 이에 따라, 소셜 미디어 플랫폼은, 이벤트의 소셜 미디어 이벤트 항목을, 자신의 소셜 미디어 프로파일에서 추가 관심 카테고리를 또한 선택한 한 명 이상의 추가 사용자에게 자동으로 제시할 수 있다.
일 양태에서, 방법은, 서버 시스템에 의해, 복수의 사용자에 대한 프로파일 데이터 및 복수의 소셜 미디어 이벤트에 대한 이벤트 데이터를 생성하는 단계를 포함한다. 프로파일 데이터는, 각각의 사용자에 대하여, 해당 사용자에 연관된 하나 이상의 관심 카테고리의 표시부(indication)를 포함한다. 이벤트 데이터는, 각각의 소셜 미디어 이벤트에 대하여, 해당 소셜 미디어 이벤트에 연관된 한 명 이상의 사용자의 표시부를 포함한다. 방법은, 또한, 서버 시스템에 의해, 사용자들의 제1 서브세트가 제1 소셜 미디어 이벤트에 연관된다고 결정하는 단계, 및 서버 시스템에 의해, 프로파일 데이터와 이벤트 데이터를 하나 이상의 데이터베이스에 저장하는 단계를 포함한다. 방법은, 또한, 서버 시스템에 의해, 관심 카테고리들의 제1 서브세트가 사용자들의 제1 서브세트에 연관된다고 결정하는 단계, 및 서버 시스템에 의해, 관심 카테고리들의 제2 서브세트가 제1 소셜 미디어 이벤트에 연관된다고 결정하는 단계를 포함하고, 관심 카테고리들의 제2 서브세트는 제1 소셜 미디어 이벤트의 제어 사용자에 의해 선택된다. 방법은, 또한, 관심 카테고리들의 제1 서브세트와 관심 카테고리들의 제2 서브세트에 기초하여 제1 소셜 미디어 이벤트에 대한 이벤트 데이터 구조를 생성하는 단계를 포함한다. 이벤트 데이터 구조는, 관심 카테고리들의 제1 서브세트와 관심 카테고리들의 제2 서브세트의 표시부, 및 관심 카테고리들의 제1 서브세트와 관심 카테고리들의 제2 서브세트의 각각의 관심 카테고리에 대하여, 해당 관심 카테고리에 연관된 사용자들의 제1 서브세트의 사용자의 수 및 해당 관심 카테고리가 제1 소셜 미디어 이벤트의 제어 사용자에 의해 선택되었는지 여부에 기초하는 각각의 빈도 메트릭(frequency metric)을 포함한다. 방법은, 또한, 서버 시스템에 의해, 하나 이상의 데이터베이스의 데이터가 변경되게 하는 데이터베이스 트랜잭션(database transaction)을 감시하도록 구성된 하나 이상의 프로세스를 실행하는 단계, 서버 시스템에 의해, 트랜잭션이 제1 소셜 미디어 이벤트에 대한 트리거 이벤트를 충족시킨다고 결정하는 단계, 및 트랜잭션이 제1 소셜 미디어 이벤트에 대한 트리거 이벤트를 충족시킨다는 결정에 응답하여, 트랜잭션에 기초하여 이벤트 데이터 구조를 수정하는 단계를 포함한다.
이 양태의 구현예는 하기 특징들 중 하나 이상을 포함할 수 있다.
일부 구현예에서, 트랜잭션은, 사용자들의 제1 서브세트에 연관된 프로파일 데이터에 대한 수정 또는 제1 이벤트에 연관된 이벤트 데이터에 대한 수정 중 적어도 하나를 포함할 수 있다.
일부 구현예에서, 수정은, 관심 카테고리의 추가 또는 제거를 포함할 수 있다.
일부 구현예에서, 수정은, 추가 사용자와 제1 소셜 미디어 이벤트와의 연관성, 또는 제1 소셜 미디어 이벤트로부터의 사용자의 연관해제를 포함할 수 있다.
일부 구현예에서, 트랜잭션이 제1 소셜 미디어에 대한 트리거 기준을 충족시킨다고 결정하는 단계는, 사용자들의 제1 서브세트 중 특정 사용자의 프로파일 데이터로부터 특정한 관심 카테고리가 추가 또는 제거되었다고 결정하는 단계, 및 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 단계를 포함할 수 있다. 이벤트 데이터 구조를 수정하는 단계는, 이벤트 데이터 구조 내의 특정한 관심 카테고리에 연관된 빈도 메트릭을 수정하는 단계를 포함할 수 있다.
일부 구현예에서, 방법은, 서버 시스템에 의해, 트랜잭션이 하나 이상의 추가 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정하는 단계; 및 트랜잭션이 하나 이상의 추가 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다는 결정에 응답하여, 트랜잭션에 기초하여 하나 이상의 소셜 미디어 이벤트에 대한 이벤트 데이터 구조를 수정하는 단계를 더 포함할 수 있다.
일부 구현예에서, 트랜잭션이 제1 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정하는 단계는, 추가 사용자가 제1 소셜 미디어 이벤트에 연관되었다고 결정하는 단계; 및 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 단계를 포함할 수 있다. 이벤트 데이터 구조를 수정하는 단계는, 추가 사용자가 추가 관심 카테고리에 연관된다고 결정하는 단계, 및 추가 관심 카테고리의 표시부를 포함하도록 이벤트 데이터 구조를 수정하는 단계를 포함할 수 있다.
일부 구현예에서, 트랜잭션이 제1 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정하는 단계는, 추가 사용자가 제1 소셜 미디어 이벤트에 연관되었다고 결정하는 단계, 및 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 단계를 포함할 수 있다. 이벤트 데이터 구조를 수정하는 단계는, 추가 사용자가 관심 카테고리들의 제1 서브세트 중 특정 관심 카테고리에 연관된다고 결정하는 단계, 및 추가 사용자가 관심 카테고리들의 제1 서브세트 중 특정 관심 카테고리에 연관된다는 결정에 응답하여, 이벤트 데이터 구조의 특정 관심 카테고리에 연관된 빈도 메트릭을 수정하는 단계를 포함할 수 있다.
일부 구현예에서, 이벤트 데이터 구조의 특정 관심 카테고리에 연관된 빈도 메트릭을 수정하는 단계는, 특정 관심 카테고리에 연관된 빈도 메트릭을 증분시키는 단계를 포함할 수 있다.
일부 구현예에서, 트랜잭션이 제1 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정하는 단계는, 사용자들의 제1 서브세트 중 특정 사용자가 제1 소셜 미디어 이벤트와 연관해제되었다고 결정하는 단계, 및 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 단계를 포함할 수 있다. 이벤트 데이터 구조를 수정하는 단계는, 연관해제된 사용자가 관심 카테고리들의 제1 서브세트 중 특정 관심 카테고리에 연관되었다고 결정하는 단계, 및 연관해제된 사용자가 관심 카테고리들의 제1 서브세트 중 특정 관심 카테고리에 연관되었다는 결정에 응답하여, 이벤트 데이터 구조의 특정 관심 카테고리에 연관된 빈도 메트릭을 수정하는 단계를 포함할 수 있다.
일부 구현예에서, 이벤트 데이터 구조의 특정 관심 카테고리에 연관된 빈도 메트릭을 수정하는 단계는, 특정 관심 카테고리에 연관된 빈도 메트릭을 감분시키는 단계를 포함할 수 있다.
일부 구현예에서, 방법은, 이벤트 데이터 구조에 기초하여 히스토그램을 생성하고 표시하는 단계를 더 포함할 수 있다.
일부 구현예에서, 방법은, 하나 이상의 추가 소셜 미디어 이벤트를 위한 하나 이상의 추가 이벤트 데이터 구조를 생성하는 단계; 및 이벤트 데이터 구조와 하나 이상의 추가 이벤트 데이터 구조에 기초하여 복수의 히스토그램을 생성하고 표시하는 단계를 더 포함할 수 있다.
일부 구현예에서, 프로파일 데이터는, 적어도 한 명의 사용자에 대하여, 해당 사용자에 연관된 하나 이상의 공개 관심 카테고리의 표시부 및 해당 사용자에 연관된 하나 이상의 개인 관심(private interest) 카테고리의 표시부를 포함할 수 있다. 사용자와 하나 이상의 공개 관심 카테고리 간의 연관성은 하나 이상의 다른 사용자에 의해 액세스 가능할 수 있다. 사용자와 하나 이상의 개인 관심 카테고리 간의 연관성은 하나 이상의 다른 사용자에 의해 액세스불가능할 수 있다.
일부 구현예에서, 방법은, 이벤트 데이터 구조에 기초하여 하나 이상의 공개 관심 카테고리에 대응하는 히스토그램을 생성하고 표시하는 단계를 더 포함할 수 있다.
일부 구현예에서, 관심 카테고리들의 제1 서브세트에 기초하여 이벤트 데이터 구조를 생성하는 단계는, 관심 카테고리들의 제1 서브세트의 각각의 관심 카테고리에 대하여, 관심 카테고리에 연관되어 있고 제1 소셜 미디어 이벤트에 대한 초대를 수락한 사용자들의 제1 서브세트의 각각의 사용자에 대하여 제1 양만큼 해당 관심 카테고리에 연관된 빈도 메트릭을 증분시키는 단계; 및 관심 카테고리들의 제1 서브세트의 각각의 관심 카테고리에 대하여, 관심 카테고리에 연관되어 있고 제1 소셜 미디어 이벤트에 대한 초대를 잠정적으로 수락한 사용자들의 제1 서브세트의 각각의 사용자에 대하여 제2 양만큼 해당 관심 카테고리에 연관된 빈도 메트릭을 증분시키는 단계를 포함할 수 있다. 제1 양은 제2 양과 다를 수 있다.
일부 구현예에서, 관심 카테고리들의 제1 서브세트가 사용자들의 제1 서브세트에 연관된다고 결정하는 단계는, 사용자들의 서브세트의 적어도 한 명의 사용자에 의해 선택되는 하나 이상의 관심 카테고리를 관심 카테고리들의 제1 서브세트로서 식별하는 단계를 포함할 수 있다.
일부 구현예에서, 방법은, 서버 시스템에 의해, 이벤트 데이터 구조에 기초하여 추가 사용자를 위한 제1 소셜 미디어 이벤트에 대한 추천을 생성하는 단계를 더 포함할 수 있다.
일부 구현예에서, 추가 사용자를 위한 제1 소셜 미디어 이벤트에 대한 추천을 생성하는 단계는, 추가 사용자를 위한 프로파일 데이터를 검색하는 단계; 추가 사용자를 위한 프로파일 데이터에 기초하여 추가 사용자에 연관된 관심 카테고리들을 결정하는 단계; 및 이벤트 데이터 구조와 추가 사용자에 연관된 관심 카테고리들에 기초하여 추천 점수를 결정하는 단계를 포함할 수 있다.
일부 구현예에서, 추천 점수를 결정하는 단계는, 이벤트 데이터 구조와 추가 사용자에 연관된 관심 카테고리들에 공통되는 하나 이상의 관심 카테고리를 결정하는 단계; 및 공통되는 관심 카테고리들의 각각에 대응하는 이벤트 데이터 구조의 빈도 메트릭을 합산하는 단계를 포함할 수 있다.
일부 구현예에서, 추천 점수를 결정하는 단계는, 추가 사용자에 연관된 제1 지리적 위치와 제1 소셜 미디어 이벤트에 연관된 제2 지리적 위치 간의 거리를 결정하는 단계; 및 제1 지리적 위치와 제2 지리적 위치 간의 거리에 기초하여 추천 점수를 수정하는 단계를 더 포함할 수 있다.
일부 구현예에서, 추천 점수를 결정하는 단계는, 추가 사용자에 연관된 관심 카테고리들 및 관심 카테고리들의 제2 서브세트에 공통되는 하나 이상의 관심 카테고리를 결정하는 단계; 및 결정에 기초하여 추천 점수를 수정하는 단계를 더 포함할 수 있다.
일부 구현예에서, 추천 점수를 결정하는 단계는, 제2 사용자에 연관된 사용자의 수, 및 제2 사용자와 제1 소셜 미디어 이벤트 모두에 연관된 사용자의 수를 결정하는 단계; 및 결정에 기초하여 추천 점수를 수정하는 단계를 더 포함할 수 있다.
일부 구현예에서, 추가 사용자를 위한 제1 소셜 미디어 이벤트에 대한 추천을 생성하는 단계는, 추천 점수가 임계 점수를 초과한다고 결정하는 단계; 및 추천 점수가 임계 점수를 초과한다는 결정에 응답하여, 제1 소셜 미디어 이벤트를 식별하는 통지를 추가 사용자에 대하여 생성하는 단계를 더 포함할 수 있다.
일부 구현예에서, 방법은, 이벤트 데이터 구조의 지리적 표현을 포함하는 그래픽 사용자 인터페이스를 렌더링하는 단계; 및 그래픽 사용자 인터페이스를 사용자에게 제시하는 단계를 더 포함할 수 있다.
일부 구현예에서, 이벤트 데이터 구조는 실질적으로 실시간으로 수정될 수 있다.
일부 구현예에서, 이벤트 데이터 구조는 주기적으로 수정될 수 있다.
일부 구현예에서, 방법은, 서버 시스템에 의해, 제1 사용자를 위한 추가 관심 카테고리에 대한 추천을 생성하는 단계를 더 포함할 수 있다.
일부 구현예에서, 추가 관심 카테고리에 대한 추천을 생성하는 단계는, 제1 사용자가 소셜 미디어 이벤트들의 제1 서브세트에 연관된다고 결정하는 단계; 관심 카테고리들의 제3 서브세트가 소셜 미디어 이벤트들의 제1 서브세트 중 적어도 하나의 소셜 미디어 이벤트에 연관된다고 결정하는 단계; 및 관심 카테고리들의 제3 서브세트 내의 각각의 관심 카테고리에 대한 추천 점수를 결정하는 단계를 포함할 수 있다.
일부 구현예에서, 추천 점수를 결정하는 단계는, 소셜 미디어 이벤트들의 제1 서브세트의 각각의 소셜 미디어 이벤트에 대하여, 대응하는 이벤트 데이터 구조를 검색하는 단계; 및 관심 카테고리들의 제3 서브세트의 각각의 관심 카테고리에 대하여, 해당 관심 카테고리에 대응하는 검색된 이벤트 데이터 구조의 빈도 메트릭을 합산하는 단계를 포함할 수 있다.
일부 구현예에서, 추천 점수를 결정하는 단계는, 소셜 미디어 이벤트들의 제1 서브세트의 각각의 소셜 미디어 이벤트에 대하여, 해당 소셜 미디어 이벤트의 제어 사용자에 의해 선택되는 하나 이상의 관심 카테고리를 결정하는 단계; 및 결정에 기초하여 추천 점수를 수정하는 단계를 더 포함할 수 있다.
다른 일 양태에서, 방법은 서버 시스템에 의해 장소 데이터를 생성하는 단계를 포함한다. 장소 데이터는, 장소에 대하여 제어 사용자에 의해 선택되는 하나 이상의 제1 관심 카테고리의 표시부 및 장소에 연관된 하나 이상의 이벤트의 표시부를 포함한다. 방법은, 또한, 서버 시스템에 의해, 장소에 연관된 하나 이상의 이벤트의 각각에 대한 이벤트 데이터 구조를 생성하는 단계를 포함한다. 각각의 이벤트 데이터 구조는, 이벤트에 연관된 하나 이상의 제2 관심 카테고리의 표시부 및 하나 이상의 제2 관심 카테고리의 각각의 관심 카테고리에 대한 각각의 빈도 메트릭을 포함한다. 방법은, 또한, 서버 시스템에 의해, 장소 데이터와 하나 이상의 이벤트 데이터 구조에 기초하여 장소 데이터 구조를 생성하는 단계를 포함한다. 장소 데이터 구조는, 하나 이상의 제1 카테고리와 하나 이상의 제2 관심 카테고리의 표시부, 및 하나 이상의 제1 카테고리와 하나 이상의 제2 관심 카테고리의 각각의 관심 카테고리에 대하여 장소 데이터와 하나 이상의 이벤트 구조에 기초하여 결정되는 각각의 빈도 메트릭을 포함한다. 방법은, 또한, 서버 시스템에 의해, 하나 이상의 데이터베이스의 데이터가 변경되게 하는 데이터베이스 트랜잭션을 감시하도록 구성된 하나 이상의 프로세스를 실행하는 단계를 포함한다. 방법은, 또한, 서버 시스템에 의해, 트랜잭션이 장소 데이터 구조에 대한 트리거 기준을 충족시킨다고 결정하는 단계; 및 트랜잭션이 장소 데이터 구조에 대한 트리거 기준을 충족시킨다는 결정에 응답하여, 트랜잭션에 기초하여 장소 데이터 구조를 수정하는 단계를 포함한다.
이 양태의 구현예는, 하기 특징들 중 하나 이상을 포함할 수 있다.
일부 구현예에서, 트랜잭션은 하나 이상의 이벤트 데이터 구조에 대한 수정을 포함할 수 있다.
일부 구현예에서, 트랜잭션은 장소 데이터에 대한 수정을 포함할 수 있다.
일부 구현예에서, 방법은, 장소 데이터 구조에 기초하여 히스토그램을 생성하고 표시하는 단계를 더 포함할 수 있다.
일부 구현예에서, 데이터를 생성하는 단계는, 각각의 이벤트 데이터 구조에 대한 각각의 가중치를 결정하는 단계; 및 가중치에 기초하여 장소 데이터 구조의 빈도 메트릭을 결정하는 단계를 포함할 수 있다.
일부 구현예에서, 각각의 가중치는 각각의 이벤트의 발생 시기에 대응할 수 있다.
일부 구현예에서, 방법은, 서버 시스템에 의해, 장소 데이터 및 하나 이상의 이벤트 데이터 구조에 기초하여 하나 이상의 추가 장소 데이터 구조를 생성하는 단계를 더 포함할 수 있다. 각각의 추가 장소 데이터 구조는, 각각의 시간에 따른 하나 이상의 제1 카테고리와 하나 이상의 제2 관심 카테고리의 표시부; 및 하나 이상의 제1 카테고리와 하나 이상의 제2 관심 카테고리의 각각의 관심 카테고리에 대하여, 그 시간에 따른 각각의 빈도 메트릭을 포함할 수 있다.
일부 구현예에서, 방법은, 장소 데이터 구조 및 하나 이상의 추가 장소 데이터 구조에 기초하여 복수의 히스토그램을 생성하고 표시하는 단계를 더 포함할 수 있다.
일부 구현예에서, 방법은, 그래픽 사용자 인터페이스를 렌더링하는 단계를 포함할 수 있다. 그래픽 사용자 인터페이스는, 이벤트 데이터 구조의 지리적 표현을 포함할 수 있다. 방법은, 또한, 그래픽 사용자 인터페이스를 사용자에게 제시하는 단계를 더 포함할 수 있다.
일부 구현예에서, 장소 데이터 구조는 실질적으로 실시간으로 수정될 수 있다.
일부 구현예에서, 장소 데이터 구조는 주기적으로 수정될 수 있다.
본원에서 설명하는 하나 이상의 구현예는 다양한 기술적 이점을 제공할 수 있다. 예를 들어, 소셜 미디어 플랫폼을 구현함으로써, 사용자가 컴퓨터화된 통신 네트워크를 통해 이벤트 정보를 빠르고 효율적으로 생성, 수정 및 배포할 수 있다. 일례로, 소셜 미디어 플랫폼은, 이벤트에 대해 잠재적으로 관련성 있는 관심 카테고리를 자동으로 결정할 수 있고, 그러한 관심 카테고리를 해당 소셜 미디어 이벤트 항목과 자동으로 연관지을 수 있고, (예를 들어, 소셜 미디어 이벤트에 관심을 가질 수 있는 한 명 이상의 사용자에게 소셜 미디어 이벤트 항목을 제시함으로써) 이벤트를 한 명 이상의 사용자에게 자동 추천할 수 있다. 이것은 자동화된 방식으로 수행될 수 있으므로, 이벤트의 제어 사용자는, (예를 들어, 이벤트에 연관된 관심 카테고리를 수동으로 식별하고, 추가 관심 카테고리를 포함하도록 이벤트의 소셜 미디어 이벤트 항목을 수동으로 수정하고, 이벤트에 관심을 가질 수 있는 사용자를 수동으로 식별하고, 이벤트의 소셜 미디어 이벤트 항목을 그러한 사용자들에 대하여 수동으로 공유하는 것 등에 비해) 적은 수의 입력을 사용하여 이벤트 정보를 생성, 수정 및/또는 배포할 수 있다. 이에 따라, 사용자의 디바이스에 의해 이용되는 계산 및 네트워크 자원이 감소된다. 또한, 소셜 미디어 플랫폼의 구현예는, 특정 데이터 처리 규칙에 따라 데이터를 수신, 처리, 저장 및/또는 송신함으로써, 소셜 미디어 플랫폼이, 일관되고, 신뢰성 있고, 효율적으로 동작할 수 있게 하며 통상의 기술을 사용하여 달성될 수 없는 결과(예를 들어, 소셜 미디어 이벤트 항목을 동적인 방식으로 자동으로 유지하고, 특정 이벤트에 관심을 가질 수 있는 사용자를 자동으로 식별하는 등)를 생성할 수 있게 한다. 또한, 이들 동작은, 주관적인 인간 입력(예를 들어, 각각의 이벤트 또는 장소에 대한 관련된 관심 카테고리에 관한 인간의 주관적 결정)보다는 컴퓨터 기반 규칙을 크라우드-소싱된(crowd-sourced) 컴퓨터화 데이터 레코드에 적용함으로써 수행될 수 있다. 이에 따라, 컴퓨터가 과거에는 어렵거나 비실용적이거나 불가능했던 작업을 수행할 수 있다. 예를 들어, 컴퓨터 시스템은, 이벤트 또는 장소를 정확하게 기술하는 관심 카테고리를 자동으로 결정할 수 있고 이러한 결정에 기초하여 추천을 행할 수 있다.
하나 이상의 실시예의 세부 사항은 첨부 도면 및 이하의 설명에서 설명된다. 다른 특징 및 이점은 상세한 설명과 도면 및 청구범위로부터 명백할 것이다.
도 1은 소셜 미디어 플랫폼을 구현하기 위한 예시적인 시스템의 도면이다.
도 2는 예시적인 소셜 미디어 플랫폼의 도면이다.
도 3a 내지 도 3c는 이벤트를 자동화된 방식으로 홍보하고 조직하기 위한 소셜 미디어 플랫폼의 사용 예를 도시하는 도면이다.
도 4a 내지 도 4c는, 소셜 미디어 플랫폼의 사용자들의 프라이버시 환경설정을 고려하여 이벤트를 자동화된 방식으로 홍보하고 조직하기 위한 소셜 미디어 플랫폼의 다른 사용 예를 도시하는 도면이다.
도 5a 및 도 5b는 사용자에 대한 관심 카테고리를 자동화된 방식으로 식별하고 추천하기 위한 소셜 미디어 플랫폼의 사용 예를 도시하는 도면이다.
도 6 내지 도 9, 도 10a 및 도 10b는 소셜 미디어 플랫폼과 상호작용하기 위한 예시적인 사용자 인터페이스의 도면이다.
도 11a 및 도 11b는 장소의 특성을 자동화된 방식으로 결정하기 위한 소셜 미디어 플랫폼의 사용 예를 도시하는 도면이다.
도 12는 3차원 히스토그램의 형태로 된 예시적인 장소 데이터 구조를 도시한다.
도 13은 3차원 히스토그램의 형태로 된 일련의 이벤트에 대한 예시적인 이벤트 데이터 구조의 예를 나타낸다.
도 14는 이벤트를 자동화된 방식으로 식별하고 사용자에게 추천하기 위한 예시적인 프로세스의 흐름도이다.
도 15는 장소의 특성을 자동으로 결정하기 위한 예시적인 프로세스의 흐름도이다.
도 16은 예시적인 컴퓨터 시스템의 도면이다.
다양한 도면에서의 유사한 참조 부호는 유사한 요소를 나타낸다.
소셜 미디어 플랫폼을 사용함으로써, 사용자가 소셜 미디어 이벤트 항목을 사용하여 이벤트를 자동화된 방식으로 홍보하고 조직할 수 있다. 소셜 미디어 이벤트 항목은, 이벤트를 나타내는 데이터의 일부이며, 통상적으로 소셜 미디어 이벤트의 날짜와 시간, 이벤트의 설명, 이벤트에 연관된 관련된 하나 이상의 소셜 미디어 프로파일(예를 들어, 소셜 미디어 이벤트 항목을 생성한 사용자 및 소셜 미디어 플랫폼의 다른 사용자에 대응하는 소셜 미디어 프로파일), 및 소셜 미디어 이벤트에 속하는 기타 콘텐츠 등의 데이터를 포함한다. 소셜 미디어 이벤트 항목은 통상적으로 소셜 미디어 플랫폼에 연관된 데이터베이스에 저장된다. 이 데이터베이스를 유지하는 것은, 이벤트, 예를 들어, 소셜 미디어 이벤트 항목을 나타내는 데이터에 대한 특정한 데이터 처리 규칙의 사용을 때때로 포함할 수 있다.
예시적인 구현예에서, 사용자는 소셜 미디어 플랫폼과 상호작용하여 이벤트를 나타내는 소셜 미디어 이벤트 항목을 생성할 수 있다. 사용자는, 소셜 미디어 이벤트 항목을, 이벤트의 스케줄링된 시간, 이벤트의 계획된 위치, 이벤트의 설명, 및 이벤트에 관한 기타 콘텐츠(예를 들어, 텍스트, 이미지, 오디오, 비디오 등) 등의 이벤트에 관한 정보로 채울 수 있다.
소셜 미디어 이벤트 항목이 생성된 후에, 사용자는, 다른 사용자에 의해 액세스될 수 있도록 이벤트에 대응하는 소셜 미디어 이벤트 항목을 홍보할 수 있다. 예를 들어, 사용자는 소셜 미디어 플랫폼을 사용하여 소셜 미디어 이벤트 항목을 다른 사용자들과 공유할 수 있다. 수신자는, 소셜 미디어 이벤트 항목을 검토하여 이벤트에 관한 정보를 취득할 수 있고, (예를 들어, 소셜 미디어 플랫폼에 의해 제공되는 논의 엔진을 사용하여) 이벤트에 대해 상의할 수 있고, 그리고/또는 (예를 들어, 소셜 미디어 플랫폼에 의해 제공되는 RSVP 엔진을 사용하여) 이벤트에 대하여 회신할 수 있다.
일부 경우에, 제어 사용자는, 이벤트에 속하거나, 이벤트와 관련되거나, 그리고/또는 이벤트에 연관된 하나 이상의 관심 카테고리를 특정할 수 있다. 예를 들어 "팀 샤크"와 "팀 제트" 간의 야구 경기에 있어서, 이벤트를 위한 제어 사용자는, "팀 샤크", "팀 제트", "야구", "스포츠", "실외" 등의 관심 카테고리를 특정할 수 있다. 이들 관심 카테고리는 각각의 사용자에게 소셜 미디어 이벤트 항목의 일부로서 제시될 수 있다. 이는, 예를 들어, 잠재적 참석자들이 이벤트의 성격을 신속하게 평가하고 참석 여부를 결정할 수 있게 하므로, 유용할 수 있다.
일부 경우에, 특정 이벤트에 대하여 제어 사용자에 의해 특정된 관심 카테고리는, 한 명 이상의 사용자에게 그 이벤트를 자동으로 추천하거나 제안하도록 사용될 수 있다. 예를 들어, 각각의 사용자는, 소셜 미디어 플랫폼과 상호작용하여 소셜 미디어 프로파일(예를 들어, 사용자에 관한 정보를 포함하는 개인 프로파일)을 생성할 수 있고, 자신의 소셜 미디어 프로파일을 자신이 관심을 갖는 하나 이상의 관심 카테고리로 채울 수 있다. 예를 들어, 제1 사용자는 "음악", "축구", 및 "영화"에 관심이 있음을 나타내는 소셜 미디어 프로파일을 생성할 수 있는 한편, 제2 사용자는 "음식", "야구", "및 독서"에 관심이 있음을 나타내는 소셜 미디어 프로파일을 생성할 수 있다. 이 정보에 기초하여, 소셜 미디어 플랫폼은, (예를 들어, "야구" 관심 카테고리가 야구를 나타내는 소셜 미디어 이벤트 항목과 제2 사용자의 소셜 미디어 프로파일 모두에 공통되므로) 제2 사용자가 "팀 샤크"와 "팀 제트" 간의 야구 경기에 관심을 가질 수 있다고 자동으로 결정할 수 있고, 야구 경기를 나타내는 소셜 미디어 이벤트 항목을 제2 사용자에게 자동으로 제시할 수 있다.
일부 경우에, 소셜 미디어 플랫폼은, 이벤트에 참가할 계획임을 나타낸 사용자에 의해 선택된 관심 카테고리에 기초하여 특정 이벤트를 자동으로 제안하거나 추천할 수 있다. 예를 들어, 많은 사용자는, "팀 샤크"와 "팀 제트" 간의 야구 경기에 (예를 들어, 이벤트에 참여할 계획임을 나타내는) "예"로 회신하였을 수 있다. 또한, 그러한 사용자들 중 상당수는 각자의 미디어 프로파일에 대하여 "소프트볼" 카테고리를 각각각의 선택하였을 수 있다. 이 정보에 기초하여, 소셜 미디어 플랫폼은, "소프트볼" 관심 카테고리가 이벤트의 제어 사용자에 의해 명시적으로 특정되지 않았더라도, 소프트볼을 즐기는 사용자가 야구 경기도 즐길 수 있다고 자동으로 결정할 수 있다. 이에 따라, 소셜 미디어 플랫폼은, 야구 경기의 소셜 미디어 이벤트 항목을, 소셜 미디어 프로파일에서 "소프트볼" 관심 카테고리를 선택한 한 명 이상의 추가 사용자에게 자동으로 제시할 수 있다.
소셜 미디어 플랫폼을 구현하기 위한 예시적인 시스템(100)이 도 1에 도시되어 있다. 시스템(100)은 하나 이상의 서버 컴퓨터를 포함하는 서버 시스템(102) 상에서 유지되는 소셜 미디어 플랫폼(150)을 포함한다.
서버 시스템(102)은 네트워크(106)를 사용하여 클라이언트 디바이스들(104a 내지 104c)에 통신 가능하게 접속된다. 각각의 클라이언트 디바이스(104a 내지 104c)는 각자의 사용자 인터페이스(108a 내지 180c)를 포함한다. 사용자는, 사용자 인터페이스(108a 내지 108c)와 상호작용하여 데이터(예를 들어, 서버 시스템(102)과 플랫폼(150) 상의 데이터 및/또는 다른 클라이언트 디바이스들(104a 내지 104c) 상의 데이터)를 본다. 사용자는, 또한, 사용자 인터페이스(108a 내지 108c)와 상호작용하여 데이터를 다른 디바이스에(예를 들어, 서버 시스템(102)과 플랫폼(150)에 및/또는 다른 클라이언트 디바이스들(104a 내지 104c)에 송신한다. 사용자는, 사용자 인터페이스(108a 내지 108c)와 상호작용하여 (예를 들어, 서버 시스템(102)과 플랫폼(150)에 및/또는 다른 클라이언트 디바이스들(104a 내지 104c)에) 커맨드(110a 내지 110c)를 발행한다. 커맨드(110a 내지 110c)는, 예를 들어, 서버 시스템(102) 및/또는 다른 클라이언트 디바이스들(104a 내지 104c)에 대한 임의의 사용자 명령일 수 있다. 일부 구현예에서, 사용자는 이들 작업의 수행을 용이하게 하도록 클라이언트 디바이스(104a 내지 104c) 상에 소프트웨어 애플리케이션을 설치할 수 있다.
클라이언트 디바이스(104a 내지 104c)는, 데이터를 보고, 처리하고, 송신하고 수신하도록 사용자에 의해 사용되는 임의의 전자 디바이스일 수 있다. 클라이언트 디바이스(104a 내지 104c)의 예들은, (데스크톱 컴퓨터, 노트북 컴퓨터, 서버 시스템 등의) 컴퓨터, (셀룰러 전화, 스마트폰, 태블릿, 개인용 정보 단말, 네트워킹 기능이 있는 노트북 컴퓨터 등의) 이동 연산 디바이스, 및 네트워크(106)로부터 데이터를 송신 및 수신할 수 있는 다른 연산 디바이스를 포함한다. 클라이언트 디바이스(104a 내지 104c)는, 하나 이상의 연산 체제(예를 들어, 마이크로소프트 윈도우즈, 애플 OS X, 리눅스, 유닉스, 안드로이드, 애플 iOS 등) 및/또는 아키텍처(예를 들어, x86, PowerPC, ARM 등)를 사용하여 동작하는 디바이스를 포함할 수 있다. 일부 구현예에서, 클라이언트 디바이스(104a 내지 104c) 중 하나 이상은 시스템(100)의 나머지에 대해 국부적으로 위치할 필요가 없으며, 클라이언트 디바이스(104a 내지 104c) 중 하나 이상은 하나 이상의 물리적 원격 위치에 위치할 수 있다. 일부 구현예에서, 클라이언트 디바이스(104a 내지 104c)는, 자신의 지리적 위치를 결정하도록 지리적 위치확인 시스템(예를 들어, 글로벌 위치확인 시스템[GPS], 와이파이(Wi-Fi) 삼각측량 시스템 등)과 통신할 수 있다.
네트워크(106)는, 데이터가 전달되고 공유될 수 있는 임의의 통신 네트워크일 수 있다. 예를 들어, 네트워크(106)는 근거리 통신망(LAN) 또는 인터넷과 같은 광역 통신망(WAN)일 수 있다. 네트워크(106)는, 다양한 네트워킹 인터페이스, 예컨대, 무선 네트워킹 인터페이스(예를 들어, 와이파이, 블루투스, 또는 적외선) 또는 유선 네트워킹 인터페이스(예를 들어, 이더넷 또는 직렬 접속)를 사용하여 구현될 수 있다. 네트워크(106)는, 또한, 한 개보다 많은 네트워크의 조합을 포함할 수 있으며, 하나 이상의 네트워킹 인터페이스를 사용하여 구현될 수 있다.
서버 시스템(102)은 각각의 단일 구성요소로서 도시되어 있다. 그러나, 실제로는, 서버 시스템이, 하나 이상의 연산 디바이스(예를 들어, 마이크로프로세서 또는 마이크로컨트롤러와 같은 적어도 하나의 프로세서를 포함하는 각각의 연산 디바이스) 상에 구현될 수 있다. 서버 시스템(102)은 예를 들어 네트워크(106)에 접속된 단일 연산 디바이스일 수 있고, 소셜 미디어 플랫폼(150)은 단일 연산 디바이스 상에서 유지 및 운영될 수 있다. 일부 구현예에서, 서버 시스템(102)은 네트워크(106)에 접속된 다수의 연산 디바이스를 포함할 수 있고, 소셜 미디어 플랫폼(150)은 연산 디바이스들 중 일부 또는 전부 상에서 유지 및 운영될 수 있다. 예를 들어, 서버 시스템(102)은 몇 개의 연산 디바이스를 포함할 수 있고, 플랫폼(150)은 이들 연산 장치 중 하나 이상 상에 분산될 수 있다. 일부 구현예에서, 서버 시스템(102)은 시스템(100)의 나머지에 국부적으로 위치할 필요가 없고, 서버 시스템(102)의 일부는 하나 이상의 물리적 원격 위치에 위치할 수 있다.
도 2는 플랫폼(150)의 다양한 양태를 도시한다. 플랫폼(150)은 시스템(100)의 동작에 관한 특정 기능을 수행하는 여러 모듈을 포함한다. 예를 들어, 플랫폼(150)은 데이터베이스 모듈(202), 송신 모듈(204) 및 처리 모듈(206)을 포함할 수 있다.
데이터베이스 모듈(202)은 시스템(100)의 한 명 이상의 사용자에 관한 정보를 유지한다. 예를 들어, 데이터베이스 모듈(202)은, 사용자의 신원 증명에 관한 정보(예컨대, 사용자명과 패스워드), 연락처 정보(예를 들어, 이메일 어드레스, 물리적 어드레스, 전화번호 등),인구통계학적 정보(예를 들어, 나이, 성별, 지리적 지역 등),환경설정(예를 들어, 시스템 환경설정, 프라이버시 환경설정 등),위치(예를 들어, GPS, 와이파이 삼각측량 시스템, 또는 기타 지리적 위치확인 시스템을 사용하여 결정된 것과 같은 지리적 좌표), 관계 정보(예를 들어, 사용자의 다른 사용자와의 연관성의 표시부 등),및 기타 사용자 정보(예를 들어, 사용자가 작성한 콘텐츠, 사진, 비디오, 오디오 콘텐츠 등의 집합)를 저장할 수 있다. 다른 일례로, 데이터베이스 모듈(202)은, 사용자의 하나 이상의 관심에 관한 정보(예를 들어, "독서", "스포츠", "실외", "영화" 등과 같이 사용자에 의해 선택된 하나 이상의 관심 카테고리)를 저장할 수 있다. 각각의 사용자에 관한 정보는 소셜 미디어 프로파일(210)(예컨대, 특정 사용자를 나타내는 데이터의 일부)의 형태로 스코어링될 수 있다.
데이터베이스 모듈(202)은, 또한, 하나 이상의 이벤트에 관한 정보를 저장할 수 있다. 일례로, 각각의 이벤트는 각각의 소셜 미디어 이벤트 항목(212)으로서 표현될 수 있다. 각각의 소셜 미디어 이벤트 항목(212)은 이벤트에 관한 스케줄링 정보를 포함할 수 있다. 예를 들어, 소셜 미디어 이벤트 항목(212)은, 이벤트가 발생하도록 스케줄링된 시간(예를 들어, 날짜와 시간),이벤트의 스케줄링된 지속시간, 및/또는 이벤트가 종료하도록 스케줄링된 시간을 특정할 수 있다. 각각의 소셜 미디어 이벤트 항목(212)은 이벤트에 관한 콘텐츠를 포함할 수 있다. 예를 들어, 소셜 미디어 이벤트 항목(212)은 텍스트 정보, 이미지, 비디오, 오디오, 또는 이벤트에 관한 다른 콘텐츠를 포함할 수 있다. 각각의 소셜 미디어 이벤트 항목(212)은, 또한, 이벤트를 제어하는 것을 담당하는 사용자(예를 들어, "제어 사용자") 및/또는 이벤트에 피초대자에 관한 정보를 포함할 수 있다. 예를 들어, 소셜 미디어 이벤트 항목(212)은, 이벤트의 하나 이상의 제어 사용자(예를 들어, 이벤트의 생성, 조직, 스케줄링, 리스케줄링, 관리 및/또는 광고를 담당하는 한 명 이상의 사용자) 및/또는 이벤트에 초대된 한 명 이상의 사용자를 나타낼 수 있다. 각각의 소셜 미디어 이벤트 항목(212)은, 또한, 하나 이상의 피초대자에 관한 RSVP 정보를 포함할 수 있다. 예를 들어, 소셜 미디어 이벤트 항목(212)은, 이벤트에 초대된 한 명 이상의 사용자 및 이벤트에 대한 각각의 피초대자의 대응 상태(예를 들어, 이벤트에 초대됨, 초대 거절, 초대 수락, 초대를 잠정적으로 수락, 초대 미응답 등)를 나타낼 수 있다. 각각의 소셜 미디어 이벤트 항목(212)은, 또한, (예를 들어, 이벤트의 제어 사용자에 의해 특정된 바와 같이) 이벤트에 속하거나, 이벤트에 관련되거나, 그리고/또는 이벤트에 연관된 관심 카테고리를 나타낼 수 있다.
데이터베이스 모듈(202)은, 또한, 하나 이상의 장소(예를 들어, 콘서트 홀, 극장, 경기장, 클럽, 공원, 이벤트 공간 등과 같이 이벤트를 개최하기 위한 위치)에 관한 정보를 저장할 수 있다. 일례로, 각각의 장소는 각각의 장소 항목(218)으로서 나타낼 수 있다. 각각의 장소 항목(218)은 장소에 연관된 하나 이상의 이벤트에 관한 정보를 포함할 수 있다. 예를 들어, 장소 항목(218)은, 장소에서 과거에 발생한 하나 이상의 이벤트 및/또는 장소에서 미래에 발생하도록 스케줄링된 하나 이상의 이벤트를 특정할 수 있다. 일부 경우에, 장소 항목(218)은, (예를 들어, 하나 이상의 상호 참조를 통해) 전술한 이벤트들에 대응하는 하나 이상의 소셜 미디어 이벤트 항목(212)을 식별할 수 있다. 또한, 각각의 장소 항목(218)은 장소에 관한 콘텐츠를 포함할 수 있다. 예를 들어, 장소 항목(218)은 텍스트 정보, 이미지, 비디오, 오디오, 또는 장소에 관한 다른 콘텐츠를 포함할 수 있다. 각각의 장소 항목(218)은, 또한, 장소를 제어 또는 관리하는 것을 담당하는 사용자(예를 들어, "제어 사용자") 및 장소에 연관된 이벤트를 조직 및/또는 홍보하는 사용자에 관한 정보를 포함할 수 있다. 예를 들어, 장소 항목(218)은, 개최 장소의 하나 이상의 제어 사용자(예를 들어, 장소의 조직, 관리 및/또는 광고를 담당하는 한 명 이상의 사용자) 및/또는 장소에서 발생하였거나 발생하도록 스케줄링된 이벤트의 조직 및/또는 홍보를 담당하는 한 명 이상의 사용자를 나타낼 수 있다. 각각의 장소 항목(218)은, 또한, (예를 들어, 장소의 제어 사용자에 의해 특정된 바와 같이) 장소에 속하거나, 장소에 관련되거나, 그리고/또는 그 외에는 장소에 연관된 관심 카테고리를 나타낼 수 있다.
정보의 상이한 예들을 전술하였지만, 이들은 단지 예시적인 것이다. 실제로, 데이터베이스 모듈(202)은, 플랫폼(150)의 사용자, 스케줄링된 이벤트, 또는 플랫폼(150)에 속하는 다른 임의의 정보에 관한 임의의 정보를 저장할 수 있다.
또한, 데이터베이스 모듈(202)은 데이터베이스 질의 또는 트랜잭션(214)을 실행할 수 있다. 데이터베이스 질의 또는 트랜잭션은, 예를 들어, 데이터베이스 모듈(202)로부터 검색, 수정 및/또는 삭제될 특정 데이터를 특정하는 커맨드일 수 있다. 이에 응답하여, 데이터베이스 모듈(202)은, 요청을 충족시키도록 질의 또는 트랜잭션을 실행할 수 있고, 또는 그 질의를 실행하도록 소셜 미디어 플랫폼(150)의 다른 구성요소에 지시할 수 있다. 일부 경우에, 데이터베이스 질의 또는 트랜잭션(214)은, (예를 들어, 사용자의 명령에 기초하여) 처리 모듈(206)에 의해 생성될 수 있고, 실행을 위해 데이터베이스 모듈(202)에 송신될 수 있다. 일부 경우에, 데이터베이스 질의 또는 트랜잭션(214)은, 처리 모듈(206)에 의해 직접 생성 및 실행될 수 있다(예를 들어, 처리 모듈(206)은 데이터베이스 모듈(202)에 저장된 데이터를 직접 검색, 수정 및/또는 삭제할 수 있다).
송신 모듈(204)은 플랫폼(150)으로의 데이터 송신과 플랫폼으로부터의 데이터 송신을 허용한다. 예를 들어, 송신 모듈(204)은, 네트워크(106)를 통해 클라이언트 디바이스(104a 내지 104c)에 데이터를 송신하고 클라이언트 디바이스(104a 내지 104c)로부터 데이터를 수신할 수 있도록 네트워크(106)에 통신 가능하게 접속될 수 있다. 일례로, 클라이언트 디바이스(104a 내지 104c) 상의 사용자에 의해 입력된 정보는 송신 모듈(204)을 통해 플랫폼(150)에 송신될 수 있다. 이어서, 이 정보는, (예를 들어, 처리 모듈(206)을 사용하여) 처리될 수 있고 및/또는 (예를 들어, 데이터베이스 모듈(202)을 사용하여) 저장될 수 있다. 다른 일례로, 플랫폼(150)으로부터의 정보(예를 들어, 데이터베이스 모듈(202)에 저장된 정보)는 송신 모듈(204)을 통해 클라이언트 디바이스(104a 내지 104c)에 송신될 수 있다.
처리 모듈(206)은, 플랫폼(150)에 저장된 또는 그 외에는 플랫폼에서 액세스 가능한 데이터를 처리한다. 예를 들어, 처리 모듈(206)은 한 명 이상의 사용자 또는 이벤트에 속하는 데이터를 조작하는 자동화된 또는 사용자 개시형 프로세스를 실행할 수 있다. 다른 일례로, 처리 모듈(206)은, 데이터베이스 질의(214)를 생성하여 데이터베이스 모듈(202)에 송신하여 데이터베이스 모듈(202)에 저장된 데이터를 검색, 수정 및/또는 삭제할 수 있다. 또 다른 일례로, 처리 모듈(206)은, 데이터베이스 질의(214)를 직접 생성 및 실행할 수 있다(예를 들어, 처리 모듈(206)은, 데이터베이스 질의(214)를 실행하여 데이터베이스 모듈(202)에 저장된 데이터를 직접 검색, 수정 및/또는 삭제할 수 있다). 또한, 처리 모듈(206)은 송신 모듈(204)로부터 수신되는 데이터를 처리할 수 있다. 마찬가지로, 처리 모듈(206)로부터의 처리된 데이터는, (예를 들어, 하나 이상의 데이터베이스 질의(214)를 사용하여) 데이터베이스 모듈(202)에 저장될 수 있고 및/또는 다른 디바이스로의 송신을 위해 송신 모듈(204)에 전송될 수 있다. 처리 모듈(206)에 의해 수행될 수 있는 예시적인 프로세스를 아래에서 더욱 상세히 설명한다.
일부 경우에, 데이터베이스 모듈(202) 및/또는 처리 모듈(206)은, 하나 이상의 데이터 처리 규칙(216)에 따라 데이터베이스 모듈(202)에 저장된 데이터를 처리할 수 있다. 이러한 데이터 처리 규칙(216)은, 특정 조건, 기준 및/또는 인자에 기초하여 데이터베이스 모듈(202)에 의해 저장된 데이터에 대해 수행되는 특정 동작을 특정할 수 있다. 일부 경우에, 이러한 규칙에 따라 처리되는 데이터는, 사용자에게 더욱 유용하게 렌더링될 수 있고 및/또는 소셜 미디어 플랫폼(150)에 의해 더욱 효율적으로 저장될 수 있다. 일례로, 데이터 처리 규칙(216)은, 소정의 소셜 미디어 이벤트 항목(212) 및/또는 장소 항목(218)이 자동화된 방식으로 생성되고, 수정되고, 그리고/또는 사용자에게 제시될 수 있는 방법을 특정할 수 있다. 일부 경우에, 데이터 처리 규칙(216)은 (예를 들어, 처리 모듈(206)이 처리 규칙(216)에 직접 액세스할 수 있도록) 처리 모듈(206)에 의해 저장될 수 있다. 일부 경우에, 데이터 처리 규칙(216)은 데이터베이스 모듈(202)에 의해 저장될 수 있다. 데이터 처리 규칙(216)의 예시적인 구현예를 이하에서 더욱 상세하게 설명한다.
전술한 바와 같이, 소셜 미디어 플랫폼(150)의 하나 이상의 구현예는 사용자가 이벤트를 자동화된 방식으로 홍보 및 조직하게 할 수 있다. 이러한 기능의 예가 도 3a 내지 도 3c에 도시되어 있다.
이 예에서, 사용자는, 이벤트를 계획하고 있으며, 하나 이상의 다른 사용자에게 이벤트를 홍보하기를 원한다. 이 사용자를 "제어 사용자"라고 할 수 있다. 이를 용이하게 하도록, 제어 사용자는, 소셜 미디어 플랫폼(150)과 상호작용하여 소셜 미디어 이벤트 항목(300)을 생성할 수 있고, 소셜 미디어 이벤트 항목(300)을 이벤트에 관한 정보로 채울 수 있다. 예를 들어, 제어 사용자는, 이벤트의 제목(예를 들어, "이벤트 1"), 이벤트에 관한 스케줄링 정보, 이벤트에 관한 콘텐츠(예를 들어, 텍스트 정보, 이미지, 비디오, 오디오, 또는 이벤트에 관한 다른 콘텐츠)를 제공할 수 있다. 또한, 제어 사용자는 이벤트에 속하거나, 이벤트에 관련되거나, 그리고/또는 이벤트에 연관된 하나 이상의 관심 카테고리를 나타낼 수 있다. 이는, 예를 들어, 잠재적 참석자가 이벤트의 성격을 신속하게 평가하고 참석 여부를 결정할 수 있게 하므로, 유용할 수 있다. 이 예에서, 사용자는 관심 카테고리 "A", "B" 및 "C"를 선택하였다.
또한, 제어 사용자는 소셜 미디어 플랫폼(150)과 상호작용하여 하나 이상의 다른 사용자를 이벤트에 초대할 수 있다. 예를 들어, 제어 사용자는 소셜 미디어 이벤트 항목(300)을 다른 사람들과 공유, 송신, 또는 그 외에는 배포할 수 있다. 이 예에서, 제어 사용자는 이벤트에 "사람 1", "사람 2", "사람 3", "사람 4", "사람 5" 및 "사람 6"을 초대하였다.
각각의 사용자는 (예를 들어, 이벤트에 관한 정보를 취득하도록) 소셜 미디어 플랫폼(150)과 상호작용하여 소셜 미디어 이벤트 항목(300)을 검토할 수 있다. 또한, 각각의 사용자는 자신이 참석할 계획인지 여부를 나타낼 수 있다. 예를 들어, 각각의 사용자는 이벤트에 관한 "RSVP" 데이터(예를 들어, 초대 거절, 초대 수락, 또는 초대 잠정적 수락 등을 나타내는 데이터)를 제출할 수 있다. 이 예에서, "사람 1", "사람 2", "사람 3", "사람 5" 및 "사람 6"은 이벤트 참석을 계획하고 있음을 나타낸 한편(예를 들어, "예" 회신을 제출하였고), "사람 4"는 자신이 행사에 참석할 계획이 없음을 나타내었다(예를 들어, "아니오" 회신을 제출하였다).
또한, 소셜 미디어 플랫폼(150)의 각각의 사용자는 개인화된 소셜 미디어 프로파일을 생성할 수 있고 소셜 미디어 프로파일을 자신에 관한 정보로 채울 수 있다. 예를 들어, 각각의 사용자는, 소셜 미디어 프로파일에 포함하기 위한 신원 증명, 연락처 정보, 인구통계학적 정보, 환경설정, 위치, 관계 정보, 및 기타 사용자 정보를 제공할 수 있다. 또한, 각각의 사용자는 사용자의 하나 이상의 관심(예를 들어, 사용자에 의해 선택된 하나 이상의 관심 카테고리)을 나타낼 수 있다. 이 예에서, "사람 1"은 자신의 프로파일(302a)에 대하여 관심 카테고리 "A", "D" 및 "F"를 선택하였다. "사람 2"는 자신의 프로파일(302b)에 대하여 관심 카테고리 "A", "C" 및 "F"를 선택하였다. "사람 3"은 자신의 프로파일(302c)에 대하여 관심 카테고리 "B", "E" 및 "F"를 선택하였다. "사람 4"는 자신의 프로파일(302d)에 대하여 관심 카테고리 "A", "B", "C", "D", "F" 및 "G"를 선택하였다. "사람 5"는 자신의 프로파일(302e)에 대하여 관심 카테고리 "F"와 "G"를 선택하였다. "사람 6"은 자신의 프로파일(302f)에 대하여 관심 카테고리 "C"와 "F"를 선택하였다.
소셜 미디어 이벤트 항목(300)의 제어 사용자 및 초대된 사용자들 각각에 의해 선택된 관심 카테고리에 기초하여, 소셜 미디어 플랫폼(150)은 이벤트 참석에 관심이 있을 수 있는 한 명 이상의 추가 사용자를 자동으로 결정할 수 있다. 또한, 소셜 미디어 이벤트 항목(300)은, (예를 들어, 소셜 미디어 이벤트 항목(300)을 추가 사용자들에게 공유, 송신, 또는 그 외에는 배포함으로써) 그러한 추가 사용자들에게 이벤트를 자동으로 추천할 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은 이벤트에 대한 이벤트 데이터 구조를 생성할 수 있다. 이벤트 데이터 구조는, (i) 소셜 미디어 이벤트 항목(300)의 제어 사용자에 의해 선택되었거나 또는 (ii) 이벤트 초대를 수락한(예를 들어, "예"로 회신한) 사용자에 의해 선택된 관심 카테고리의 각각을 나타낼 수 있다. 또한, 이벤트 데이터 구조는, 제어 사용자 및/또는 이벤트 초대를 수락한 사용자에 의해 관심 카테고리가 선택된 횟수를 나타내는 각각의 관심 카테고리에 대한 빈도 메트릭을 포함할 수 있다. 일부 경우에, 이것은 히스토그램의 형태로 제시될 수 있다.
도 3b는 소셜 미디어 이벤트 항목(300)에 대한 예시적인 이벤트 데이터 구조(304)의 표현을 도시한다. 이 예에서, 관심 분야 카테고리 "A"는, "사람 1" 및 "사람 2"(이벤트에 "예"로 회신한 사용자)뿐만 아니라 제어 사용자에 의해서도 선택되었으므로, 3의 빈도 메트릭을 갖는다. 특히, "사람 4"도 관심 카테고리 "A"를 선택하였지만, 이 선택은, "사람 4"가 이벤트에 대해 "아니오"로 회신하였으므로 이벤트 데이터 구조(304)에 반영되지 않는다.
유사하게, 관심 카테고리 "B"는, "사람 3"뿐만 아니라 제어 사용자에 의해서도 선택되었으므로, 2의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "C"는 "사람 2" 및 "사람 6"뿐만 아니라 제어 사용자에 의해서도 선택되었으므로, 3의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "D"는 "사람 1"에 의해 선택되었기 때문에 1의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "E"는 "사람 3"에 의해 선택되었기 때문에 1의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "F"는, "사람 1", "사람 2", "사람 3", "사람 5" 및 "사람 6"에 의해 선택되었으므로, 5의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "G"는 "사람 5"에 의해 선택되었기 때문에 1의 빈도 메트릭을 갖는다. 전술한 바와 같이, "사람 4"도 이들 관심 카테고리의 각각을 선택하였지만, 이러한 선택은, "사람 4"가 이벤트에 "아니오"로 회신하였으므로, 이벤트 데이터 구조(304)에 반영되지 않는다.
일부 경우에, 이벤트 데이터 구조(304)는, 소셜 미디어 이벤트 항목(300)에 포함될 수 있고, 소셜 미디어 이벤트 항목(300)을 검토할 때 사용자에게 제시될 수 있다. 예를 들어, 사용자가 소셜 미디어 이벤트 항목(300)에 액세스할 때(예를 들어, 소셜 미디어 플랫폼(150)을 사용하여 이벤트에 관한 정보를 브라우징할 때), 소셜 미디어 플랫폼(150)은 이벤트 데이터 구조(304)를 나타내는 히스토그램(또는 다른 그래픽 및/또는 텍스트 표현)을 사용자에게 표시할 수 있다. 이것은, 예를 들어, 그러한 관심 카테고리가 이벤트의 제어 사용자에 의해 특정하게 선택되지 않았더라도 잠재적 피초대자가 이벤트에 관한 관심 카테고리를 식별할 수 있게 하므로, 유용할 수 있다. 이 정보는, 또한, (예를 들어, 제어 사용자에게 자신의 이벤트의 예상 참석자들의 관심에 관한 정보를 제공하도록) 제어 사용자에게 제시될 수 있다.
소셜 미디어 플랫폼(150)은, 또한, 이벤트 데이터 구조(304)를 사용하여 이벤트 참석에 관심이 있을 수 있는 한 명 이상의 추가 사용자를 식별할 수 있다. 일부 경우에, 이것은 이벤트에 대하여 각각의 잠재적 피초대자를 위한 추천 메트릭을 도출함으로써 수행될 수 있다. 추천 메트릭은, 예를 들어, 사용자가 이벤트 참석에 관심을 가질 가능성을 반영하는 수치 점수일 수 있다. 예를 들어, 추천 메트릭이 높다는 것은 사용자가 이벤트 참석에 관심을 가질 가능성이 높은 반면, 추천 메트릭이 낮다는 것은 사용자가 이벤트 참석에 관심을 가질 가능성이 낮음을 나타낼 수 있다. 추천 메트릭이 특정 사용자에 대해 충분히 높으면(예를 들어, 임계값을 초과하면),소셜 미디어 플랫폼(150)은, 그 사용자가 이벤트 참석에 관심을 가질 수 있다고 결정할 수 있다(예를 들어, 이벤트 참석에 충분히 큰 관심을 갖는다고 결정할 수 있다).
일례로, 도 3c는 이벤트에 대한 "사람 7", "사람 8" 및 "사람 9"인 세 명의 잠재적 피초대자를 도시한다. 전술한 바와 유사한 방식으로, 이러한 각각의 사용자는, 개인화된 소셜 미디어 프로파일을 생성할 수 있고, 소셜 미디어 프로파일을 개인적 관심과 같이 자신에 관한 정보로 채울 수 있다. 이 예에서, "사람 7"은 자신의 프로파일(302g)에 대하여 관심 카테고리 "D", "F" 및 "H"를 선택하였다. "사람 8"은 자신의 프로파일(302h)에 대하여 관심 카테고리 "E", "F" 및 "I"를 선택하였다. "사람 9"는 자신의 프로파일(302i)에 대하여 관심 카테고리 "D", "E" 및 "G"를 선택하였다.
이벤트에 대한 각각의 사용자를 위한 추천 메트릭은, 사용자의 관심 카테고리 선택 및 이벤트 데이터 구조(304)에 기초하여 도출될 수 있다. 일부 경우에, 추천 메트릭은, 이벤트 데이터 구조(304)와 사용자의 소셜 미디어 프로파일 모두에 공통되는 관심 카테고리를 식별하고, 이들 관심 카테고리 각각에 대한 빈도 메트릭을 합산함으로써, 생성될 수 있다.
이 예에서, 관심 카테고리 "D"와 "F"는 이벤트 데이터 구조(304) 및 "사람 7"의 소셜 미디어 프로파일 모두에 공통된다. 이에 따라, 이벤트에 대한 "사람 7"을 위한 추천 메트릭은 6이다(예를 들어, 관심 카테고리 "D"의 빈도 메트릭 [1] 더하기 관심 카테고리 "F"의 빈도 메트릭 [5]).
또한, 관심 카테고리 "E"와 "F"는 이벤트 데이터 구조(304)와 "사람 8"의 소셜 미디어 프로파일 모두에 공통된다. 이에 따라, 이벤트에 대한 "사람 8"을 위한 추천 메트릭은 6이다(예를 들어, 관심 카테고리 "E"의 빈도 메트릭 [1] 더하기 관심 카테고리 "F"의 빈도 메트릭 [5]).
또한, 관심 카테고리 "D", "E" 및 "F"는 이벤트 데이터 구조(304)와 "사람 9"의 소셜 미디어 프로파일 모두에 공통된다. 이에 따라, 이벤트에 대한 "사람 9"를 위한 추천 메트릭은 3이다(예를 들어, 관심 카테고리 "D"의 빈도 메트릭 [1] 더하기 관심 카테고리 "E"의 빈도 메트릭 [1] 더하기 관심 카테고리 "G"의 빈도 메트릭 [1]).
이벤트에 대한 "사람 7"과 "사람 8"을 위한 추천 메트릭이 "사람 9"를 위한 추천 메트릭보다 높기 때문에, 소셜 미디어 플랫폼(150)은, "사람 7"과 "사람 8"이 "사람 9"보다 이벤트에 참석할 가능성이 높다고 결정한다.
또한, 소셜 미디어 플랫폼(150)은 추천 메트릭에 기초하여 한 명 이상의 사용자에게 이벤트를 자동으로 추천할 수 있다. 예를 들어, 특정 사용자에 대한 추천 메트릭이 임계값을 초과하면, 소셜 미디어 플랫폼(150)은 소셜 미디어 이벤트 항목(300)을 그 사용자에게 공유, 송신, 또는 그 외에는 배포할 수 있다. 실제로, 임계값은 구현예에 따라 달라질 수 있다. 일부 경우에, 임계값은 소셜 미디어 플랫폼(150)의 관리자 또는 개발자에 의해 특정될 수 있다. 일부 경우에, 임계값은 소셜 미디어 플랫폼(150)의 한 명 이상의 사용자(예를 들어, 제어 사용자)에 의해 특정될 수 있다.
이 예에서, 임계값은 5이다. 따라서, 소셜 미디어 플랫폼(150)은, 소셜 미디어 이벤트 항목(300)을 (이들 사용자에 대한 추천 메트릭이 임계값을 초과하므로) "사용자 7"과 "사용자 8"에 자동으로 송신할 수 있다. 그러나, 소셜 미디어 플랫폼(150)은, 소셜 미디어 이벤트 항목(300)을 (이 사용자에 대한 추천 메트릭이 임계값을 초과하지 않으므로) "사람 9"에 자동 송신하는 것을 삼가할 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은, 또한, 이벤트의 계획된 지리적 위치와 관련하여 각각의 사용자의 지리적 위치에 기초하여 추천 메트릭을 수정할 수 있다. 예를 들어, 사용자가 계획된 이벤트 위치에 상대적으로 가까운 곳에 위치하는 경우, 소셜 미디어 플랫폼(150)은 그 사용자를 위한 이벤트의 추천 메트릭을 증가시킬 수 있다. 사용자가 예상되는 이벤트 위치로부터 상대적으로 멀리 떨어져 있는 경우, 소셜 미디어 플랫폼(150)은 그 사용자를 위한 이벤트의 추천 메트릭을 감소시킬 수 있다. 이것은, 예를 들어, 소셜 미디어 플랫폼(150)이 자신의 사용자와 관련성이 더 높은 이벤트(예를 들어, 사용자에 상대적으로 가까운 이벤트)를 추천할 수 있게 하므로, 유용할 수 있다. 일부 경우에, 소셜 미디어 플랫폼(150)은, 사용자에 대한 특정한 지리적 영역 내에서 (예를 들어, 사용자의 위치로부터 특정 거리 반경 내에서) 발생할 것으로 계획된 이벤트들만을 추천할 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은, 이벤트 데이터 항목에 대한 이벤트 데이터 구조를 초기에 생성할 수 있고, 이벤트 데이터 구조가 생성된 후에 이벤트 데이터 구조를 1회 이상 수정할 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은, 하나 이상의 데이터베이스의 데이터의 변경을 야기하는 트랜잭션(예를 들어, 소셜 미디어 프로파일(210), 소셜 미디어 이벤트 항목(212) 및/또는 장소 항목(218)과 같이 데이터베이스 모듈(202)에 의해 저장된 데이터에 대하여 처리 모듈(206)에 의해 실행되는 트랜잭션)을 감시할 수 있다. 트랜잭션이 특정한 트리거 기준을 충족시키면, 소셜 미디어 플랫폼(150)은 이에 응답으로 하나 이상의 이벤트 데이터 구조를 수정할 수 있다. 예를 들어, 트랜잭션이 이벤트 데이터 구조에 영향을 미치는 데이터 필드를 수정하는 경우(예를 들어, 이벤트에 "예"로 회신한 사용자에 대한 트랜잭션 보정, 사용자가 자신의 소셜 미디어 프로파일에 대하여 추가 관심 카테고리를 선택하는 경우, 또는 이벤트에 대한 히스토그램에 영향을 미칠 수 있는 기타 액션), 소셜 미디어 플랫폼(150)은, (예를 들어, 처리 모듈(206)을 사용하여) 트랜잭션을 "트리거" 플래그와 같은 특정 플래그로 마킹할 수 있다. 각각의 트랜잭션이 성공적으로 완료되면, 소셜 미디어 플랫폼(150)은, (예를 들어, 처리 모듈(206)을 사용하여) 그 트랜잭션 상의 플래그를 체크한 후, 임의의 식별된 플래그에 기초하여 소정의 기능을 호출한다. 이들 기능은, 각자의 고유한 트랜잭션을 생성하고, 이에 따라, 이러한 트랜잭션은, 실행될 때 적절한 이벤트 데이터 구조를 업데이트한다(예를 들어, 관련 이벤트에 대한 히스토그램을 업데이트한다). 이것은, 예를 들어, (완료하는 데 상대적으로 더 긴 시간이 걸릴 수 있는) 이벤트 데이터 구조를 업데이트하기 전에 소셜 미디어 플랫폼(150)이 사용자가 행한 모든 변경을 신속하게 확인할 수 있게 하므로, 유용할 수 있다. 예를 들어, 사용자가 자신의 소셜 미디어 프로파일에 새로운 관심 카테고리를 추가하면, 소셜 미디어 플랫폼(150)은, (사용자가 오랜 시간 동안 기다릴 필요 없도록) 사용자에 대한 변경을 신속하게 확인할 수 있고, 사용자가 다른 작업을 수행하는 동안 사용자의 변경에 기초하여 하나 이상의 이벤트 데이터 구조를 후속하여 업데이트할 수 있다.
일례로, 제어 사용자가 이벤트 데이터 항목의 관심 카테고리의 선택을 수정하면, 이에 응답하여, 소셜 미디어 플랫폼(150)은 (예를 들어, 이벤트 데이터 구조에 새로운 관심 카테고리를 추가하고, 관심 카테고리를 이벤트 데이터 구조로부터 제거하고, 그리고/또는 이벤트 데이터 구조 내의 관심 카테고리의 빈도 메트릭을 수정함으로써) 이벤트 데이터 구조를 수정하여 이러한 변경을 반영할 수 있다. 다른 일례로, 한 명 이상의 추가 사용자가 이벤트에 참석할 계획임을 나타내면, 이에 응답하여, 소셜 미디어 플랫폼(150)은 (예를 들어, 이벤트 데이터 구조에 새로운 관심 카테고리를 추가하고/하거나, 이벤트 데이터 구조에 있어서 추가 사용자에 의해 선택된 관심 카테고리의 빈도 메트릭을 증분시킴으로써) 이벤트 데이터 구조를 수정하여 이러한 변경을 반영할 수 있다. 또 다른 일례로, 한 명 이상의 사용자가 더 이상 이벤트 참석을 계획하지 않음을 나타내면, 소셜 미디어 플랫폼(150)은, (예를 들어, 이벤트 데이터 구조로부터 관심 카테고리를 제거하고/하거나, 이벤트 데이터 구조에 있어서 그러한 사용자에 의해 선택된 관심 카테고리의 빈도 메트릭을 감분시킴으로써) 이벤트 데이터 구조를 수정하여 이러한 변경을 반영할 수 있다. 또 다른 일례로, 이벤트 참석을 계획 중인 한 명 이상의 사용자가 자신의 개인 소셜 미디어 프로파일에서 관심 카테고리 선택을 수정하면, 소셜 미디어 플랫폼(150)은, (예를 들어, 이벤트 데이터 구조에 관심 카테고리를 추가하고, 이벤트 데이터 구조로부터 관심 카테고리를 제거하고, 그리고/또는 이벤트 데이터 구조에 있어서 관심 카테고리의 빈도 메트릭을 수정함으로써) 이벤트 데이터 구조를 수정하여 이러한 변경을 반영할 수 있다. 이것은, 예를 들어, 소셜 미디어 플랫폼(150)이 각각의 이벤트에 관한 정확한 정보를 제시할 수 있게 하고 사용자에게 더욱 정확하게 추천할 수 있게 하므로, 유용할 수 있다. 일부 경우에, 이들 수정은 아직 발생하지 않은 이벤트에 대해서만 행해질 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은 이벤트 데이터 항목을 실시간으로 또는 실질적으로 실시간으로 업데이트할 수 있다. 예를 들어, 소셜 미디어 플랫폼은, 특정 트랜잭션이 하나 이상의 트리거 기준을 충족시키는지를 결정하도록 트랜잭션을 감시할 수 있다(예를 들어, 제어 사용자는 이벤트 데이터 항목의 관심 카테고리 선택을 수정하고, 한 명 이상의 추가 사용자는 이벤트 참석 계획임을 나타내고, 한 명 이상의 사용자는 더 이상 이벤트에 참석할 계획이 아님을 나타내고, 이벤트에 참석할 계획인 한 명 이상의 사용자는 자신의 개인 소셜 미디어 프로파일에서 관심 카테고리 선택 등을 수정한다). 이에 응답하여, 소셜 미디어 플랫폼(150)은 대응하는 이벤트 데이터 구조를 즉시 (또는 실질적으로 즉시) 수정할 수 있다. 이것은, 예를 들어, 소셜 미디어 플랫폼(150)이 조직된 이벤트들의 각각에 관한 최신 정보를 지속적으로 유지할 수 있게 하는 데 유용할 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은 이벤트 데이터 항목을 주기적으로 업데이트할 수 있다. 예를 들어, 소셜 미디어 플랫폼(150)은, 반복 스케줄(예를 들어, 1초에 1회, 1분에 1회, 1시간에 1회, 1일에 1회, 또는 다른 소정의 스케줄)에 따라 하나 이상의 트리거 기준이 충족되었는지를 결정할 수 있다. 특정 트리거 기준이 충족되었다고 결정되면, 소셜 미디어 플랫폼(150)은 이에 응답하여 대응하는 이벤트 데이터 구조를 수정할 수 있다. 이는, 예를 들어, 소셜 미디어 플랫폼(150)이 더욱 예측 가능한 스케줄에 따라 그리고 (예를 들어, 실시간 업데이트에 비해) 연산 비용을 감소시킬 수 있는 방식으로 조직된 이벤트들의 각각에 관한 최신 정보를 유지할 수 있게 하는 데 유용할 수 있다.
이는, 또한, 예를 들어, 소셜 미디어 플랫폼(150)의 데이터의 무결성을 개선하는 데 유용할 수 있다. 예를 들어, 동작 중에, 소셜 미디어 플랫폼(150)은 비정상적으로 거동하여 불안정성(예를 들어, 시스템 충돌)을 초래할 수 있다. 전술한 바와 같이, 소셜 미디어 플랫폼(150)은, (예를 들어, 트랜잭션을 감시하여 특정 트랜잭션이 하나 이상의 트리거 기준을 충족시키는지를 결정하고, 충족시킨다면 그 응답으로 대응하는 이벤트 데이터 구조를 즉시 수정함으로써) 이벤트 데이터 항목을 실시간으로 또는 실질적으로 실시간으로 업데이트할 수 있다. 그러나, 소셜 미디어 플랫폼(150)이 트랜잭션의 실행 후에 그 응답으로 이벤트 데이터 구조가 업데이트되기 전에 시스템 충돌을 겪게 된다면, 이벤트 데이터 구조는 그 트랜잭션의 수행을 반영하지 않는다. 또한, 소셜 미디어 이벤트 항목이 예측 가능한 스케줄에 따르지 않고 실시간으로 또는 실질적으로 실시간으로 업데이트되므로, 소셜 미디어 이벤트 항목이 적절하게 업데이트되었는지를 결정하는 것이 어렵다. 대조적으로, 소셜 미디어 플랫폼(150)이 (예를 들어, 예측 가능한 스케줄에 따라) 이벤트 데이터 항목을 주기적으로 업데이트한다면, 각각의 소셜 미디어 이벤트 항목이 적절히 업데이트되었는지를 결정하는 것이 더욱 쉬워진다. 예를 들어, 시스템이 손상된 시간을 스케줄링된 업데이트 시간과 비교할 수 있다. 스케줄링된 업데이트 항목 후에 충돌이 발생하였다면, 소셜 미디어 플랫폼(150)은 스케줄링된 업데이트가 발생하였다고 결정할 수 있다. 그러나, 스케줄링된 업데이트 항목 전에 충돌이 발생하였다면, 소셜 미디어 플랫폼(150)은, 스케줄링된 업데이트가 발생하지 않았다고 결정할 수 있고, 그 응답으로 정정 조치를 취할 수 있다(예를 들어, 다음 스케줄링된 업데이트 항목 동안 다른 업데이트를 큐잉한다). 따라서, 소셜 미디어 플랫폼(150)에서의 데이터의 신뢰성이 개선될 수 있다. 그럼에도 불구하고, 이는, 일부 경우에, (예를 들어, 지속적 최신 정보가 개선된 데이터 무결성보다 바람직한 경우에는) 소셜 미디어 플랫폼(150)이 이벤트 데이터 항목을 실시간으로 또는 실질적으로 실시간으로 업데이트하는 것을 못하게 하지 않는다.
도 3a 내지 도 3c에 도시한 예에서, 각각의 관심 카테고리의 수행 메트릭은, 제어 사용자 및/또는 이벤트에 참석하고자 하는 사용자에 의한 각각의 선택에 대해 특정 양(예를 들어, 1)만큼 증분된다. 일부 경우에, 각각의 관심 카테고리의 수행 메트릭은, 이벤트에 잠정적으로 참석할 계획인 사용자의 각각의 선택에 대해 상이한 양만큼 증분될 수 있다. 예를 들어, 제1 사용자가 (예를 들어, "예"라고 회신함으로써) 이벤트에 참석할 계획임을 나타내면, 자신의 소셜 미디어 프로파일의 제1 사용자의 관심 카테고리 선택 각각은, 이벤트 데이터 구조의 그러한 카테고리의 빈도 메트릭을 제1 단위(예를 들어, 1)만큼 증분시킬 수 있다. 제2 사용자가 (예를 들어, "아마도"라고 회신함으로써) 이벤트에 잠정적으로 참석할 계획임을 나타내면, 자신의 개인 소셜 미디어 프로파일의 제2 사용자의 관심 카테고리 선택의 각각은 이벤트 데이터 구조에서 그러한 카테고리의 빈도 메트릭을 제2 단위(예를 들어, 0.5)만큼 증분시킬 수 있다. 이것은, 예를 들어, 소셜 미디어 플랫폼(150)이 이벤트에 참석할 가능성이 있는 사용자와 이벤트에 참석할 가능성이 적은 사용자를 구별할 수 있게 하고, 이러한 차이를 설명하는 추천을 생성할 수 있게 하므로, 유용할 수 있다. 예시적인 단위(예를 들어, 1 및 0.5)를 전술하였지만, 이들은 예시일 뿐이다. 실제로는, 각각의 단위가 구현예에 따라 다를 수 있다.
전술한 바와 같이, 이벤트 데이터 구조는, (예를 들어, 히스토그램의 형태로 된) 소셜 미디어 이벤트 항목을 검토할 때 사용자에게 제시될 수 있다. 이는, 예를 들어, 그러한 관심 카테고리가 이벤트의 제어 사용자에 의해 특별히 선택되지 않은 경우에도 잠재적 피초대자가 해당 이벤트와 관련된 관심 카테고리를 식별할 수 있게 하게 하므로, 유용할 수 있다. 그러나, 이것은, 이벤트에 참석할 계획이 있는 사용자의 집단적 관심을 드러내는 효과도 갖는다. 일부 경우에, 이것은 특정한 관심 카테고리가 특정 사용자에 속하는 것임을 관찰자가 볼 수 있게 한다. 일부 사용자에게는, 이것이 바람직하지 않을 수 있다. 예를 들어, 사용자는, 특정 관심 카테고리에 연관된다는 점에 민감할 수 있으며, 자신의 연관성을 개인적인 것으로 유지하길 원할 수 있다. 다른 일례로, 사용자는, 일반적으로 자신의 개인 정보가 다른 사람들에게 널리 배포되지 않도록 자신의 관심을 개인적인 것으로 유지하는 것을 선호할 수 있다.
일부 경우에, 이러한 가능성을 설명하기 위해, 소셜 미디어 플랫폼(150)은, 사용자가 자신의 소셜 미디어 프로파일 내의 관심 카테고리 각각을 사용자에게 공개적으로 표시해야 하는지를 특정할 수 있도록 구성될 수 있다. 예를 들어, 사용자가 소셜 미디어 프로파일에 포함할 관심 카테고리를 선택하면, 사용자는, 각각의 관심 카테고리가 (예를 들어, 다른 사용자가 그 사용자의 소셜 미디어 프로파일을 볼 때 그 사용자가 선택한 관심 카테고리를 다른 사용자가 볼 수 있도록) "공개"로 또는 (예를 들어, 다른 사용자가 그 사용자의 소셜 미디어 프로파일을 볼 때 다른 사용자로부터 관심 카테고리를 숨기도록) "개인"으로 마킹되어야 하는지도 나타낼 수 있다.
또한, 소셜 미디어 플랫폼(150)은 특정 이벤트에 대한 2개의 상이한 이벤트 데이터 구조를 생성하도록 구성될 수 있다. 제1 이벤트 데이터 구조(예를 들어, "내부" 이벤트 데이터 구조)는 전술한 것과 유사할 수 있다. 예를 들어, 내부 이벤트 데이터 구조는, 이벤트의 제어 사용자에 의해 선택된 관심 카테고리 각각 및/또는 (예를 들어, "예"로 회신함으로써) 이벤트에 참석할 계획이 있음을 나타낸 한 명 이상의 사용자를 나타낼 수 있다. 또한, 전술한 바와 유사한 방식으로, 내부 이벤트 데이터 구조는, 이벤트에 관심이 있을 수 있는 한 명 이상의 추가 사용자를 식별하고 그러한 사용자에게 이벤트를 추천하는 데 사용될 수 있다. 이에 따라, 소셜 미디어 플랫폼(150)은 이용 가능한 모든 정보를 사용하여 다른 사용자에게 추천한다. 그러나, 소셜 미디어 플랫폼(150)은, (예를 들어, 사용자가 소셜 미디어 이벤트 항목을 브라우징할 때) 내부 이벤트 데이터 구조를 사용자에게 공개적으로 표시하지 않는다.
대신, 소셜 미디어 플랫폼(150)은, 사용자에게 공개적으로 표시하기 위한 제2 이벤트 데이터 구조(예를 들어, "공개" 이벤트 데이터 구조)를 생성한다. 공개 이벤트 데이터 구조는, 제1 이벤트 데이터 구조와 유사하지만, 각각의 사용자의 프라이버시 환경설정(예를 들어, 각각의 사용자의 "공개" 및 "개인" 선택)를 반영한다. 예를 들어, 특정 사용자가 이벤트에 참석할 계획임을 나타내면, 사용자의 "공개" 관심 카테고리 각각에 대한 빈도 메트릭이 (예를 들어, 전술한 바와 유사한 방식으로) 공개 이벤트 데이터 구조에서 증분된다. 그러나, 각각의 사용자의 개인 관심 카테고리에 대한 빈도 메트릭은, (예를 들어, 사용자가 개인 관심 카테고리를 전혀 선택하지 않은 것처럼) 변경되지 않는다. 이에 따라, 공개 이벤트 데이터 구조는, 사용자의 "개인" 관심 카테고리 선택을 다른 사용자에게 공개적으로 드러내지 않으므로, 특정 관심 카테고리가 특정 사용자에 속하는 것임을 관찰자가 보는 것을 더욱 어렵게 한다.
이러한 기능의 일례가 도 4a 내지 도 4c에 도시되어 있다. 도 3a 내지 도 3c에 대하여 설명한 바와 유사한 방식으로, 제어 사용자는 이벤트를 계획하고 있으며 하나 이상의 다른 사용자에게 이벤트를 홍보하고자 한다. 이것을 용이하게 하도록, 제어 사용자는, 소셜 미디어 플랫폼(150)과 상호작용하여 소셜 미디어 이벤트 항목(400)을 생성할 수 있고, 소셜 미디어 이벤트 항목(400)을 이벤트에 관한 정보로 채울 수 있다. 이 예에서, 소셜 미디어 이벤트 항목(400)은 전술한 소셜 미디어 이벤트 항목(300)과 유사하다. 예를 들어, 여기서, 사용자는 관심 카테고리 "A", "B" 및 "C"를 선택하였다.
또한, 제어 사용자는 소셜 미디어 플랫폼(150)과 상호작용하여 하나 이상의 다른 사용자를 이벤트에 초대할 수 있다. 예를 들어, 제어 사용자는 소셜 미디어 이벤트 항목(400)을 다른 사람들과 공유, 송신, 또는 그 외에는 배포할 수 있다. 이 예에서, 제어 사용자는 "사람 1", "사람 2", "사람 3", "사람 4", "사람 5" 및 "사람 6"을 이벤트에 다시 초대하였다.
유사하게, 각각의 사용자는, (예를 들어, 이벤트에 관한 정보를 취득하기 위해) 소셜 미디어 플랫폼(150)과 상호작용하여 소셜 미디어 이벤트 항목(400)을 검토할 수 있다. 또한, 각각의 사용자는 자신이 참석할 계획이 있는지를 나타낼 수 있다. 이 예에서, "사람 1", "사람 2", "사람 3", "사람 5" 및 "사람 6"은 (예를 들어, "예"라고 회신함으로써) 이벤트에 참석할 계획이 있음을 다시 나타낸 반면, "사람 4"는 (예를 들어, "아니오"라고 회신함으로써) 이벤트에 참석할 계획이 없음을 다시 나타내었다.
유사하게, 소셜 미디어 플랫폼(150)의 각각의 사용자는, 개인화된 소셜 미디어 프로파일을 생성할 수 있고, 소셜 미디어 프로파일을 자신에 관한 정보로 채울 수 있다. 예를 들어, 각각의 사용자는, 사용자의 하나 이상의 관심(예를 들어, 사용자에 의해 선택된 하나 이상의 관심 카테고리)를 나타낼 수 있다. 그러나, 각각의 사용자는, 또한, 특정 관심 카테고리가 (예를 들어, 다른 사용자가 그 사용자의 소셜 미디어 프로파일을 볼 때 그 사용자가 선택한 관심 카테고리를 다른 사용자가 볼 수 있도록) "공개"인지 또는 (예를 들어, 다른 사용자가 그 사용자의 소셜 미디어 프로파일을 볼 때 다른 사용자로부터 관심 카테고리를 숨기도록) "개인"인지를 특정할 수 있다.
이 예에서, "사람 1"은, 자신의 프로파일(402a)에 대하여 관심 카테고리 "A", "D" 및 "F"를 다시 선택하였지만, 자신이 선택한 관심 카테고리 "A"는 개인(별표로 표시됨)이어야 함을 특정하였다. "사람 2"는 자신의 프로파일(402b)에 대하여 관심 카테고리 "A", "C" 및 "F"를 다시 선택하였다. "사람 3"은, 자신의 프로파일(402c)에 대해 관심 카테고리 "B", "E" 및 "F"를 다시 선택했지만, 자신이 선택한 관심 카테고리 "B"는 개인(별표로 표시됨)이어야 함을 특정하였다. "사람 4"는 프로파일(402d)에 대하여 관심 카테고리 "A", "B", "C", "D", "F" 및 "G"를 다시 선택하였다. "사람 5"는, 자신의 프로파일(402e)에 대해 관심 카테고리 "F"와 "G"를 다시 선택했지만, 자신이 선택한 관심 카테고리 "F"는 개인(별표로 표시됨)이어야 함을 특정하였다. "사람 6"은 자신의 프로파일(302f)에 대하여 관심 카테고리 "C"와 "F"를 다시 선택하였다.
소셜 미디어 플랫폼(150)은 이들 선택에 기초하여 내부 이벤트 데이터 구조 및 공개 이벤트 데이터 구조를 생성한다.
도 4b는 소셜 미디어 이벤트 항목(400)에 대한 예시적인 내부 이벤트 데이터 구조(404)의 표현을 도시한다. 이 예에서, 관심 카테고리 "A"는 "사람 1"과 "사람 2"뿐만 아니라 제어 사용자에 의해서도 선택되었으므로 다시 3의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "B"는 "사람 3"뿐만 아니라 제어 사용자에 의해서도 선택되었으므로 다시 2의 빈도 메트릭을 갖는다. 또한 관심 카테고리 "C"는 "사람 2"와 "사람 6"뿐만 아니라 제어 사용자에 의해서도 선택되었으므로 다시 3의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "D"는 "사람 1"에 의해 선택되었으므로 다시 1의 빈도 메트릭을 갖는다. 또한, 관심 분야 카테고리 "E"는 "사람 3"에 의해 선택되었으므로 다시 1의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "F"는 "사람 1", "사람 2", "사람 3", "사람 5" 및 "사람 6"에 의해 선택되었으므로 다시 5의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "G"는 "사람 5"에 의해 선택되었으므로 다시 1의 빈도 메트릭을 갖는다. 유사하게, "사람 4"가 이들 관심 카테고리의 각각을 또한 선택하였지만, 이들 선택은, "사람 4"가 이벤트에 "아니오"로 회신하였으므로, 이벤트 데이터 구조(404)에 반영되지 않는다.
이벤트 데이터 구조(304)와 관련하여 설명한 바와 유사한 방식으로, 내부 이벤트 데이터 구조(404)는, 이벤트에 관심이 있을 수 있는 한 명 이상의 추가 사용자를 식별하는 데 사용된다. 예를 들어, 소셜 미디어 플랫폼(150)은 이벤트 데이터 구조(404)를 사용하여 이벤트에 대한 각각의 잠재적 피초대자에 대한 추천 메트릭을 도출할 수 있다. 추천 메트릭이 특정 사용자에 대해 충분히 높으면(예를 들어, 임계값을 초과하면), 소셜 미디어 플랫폼(150)은 그 사용자가 이벤트 참석에 관심이 있을 수 있다고 결정할 수 있다. 그러나, 소셜 미디어 플랫폼(150)은, (예를 들어, 사용자가 소셜 미디어 이벤트 항목(400)을 브라우징할 때) 내부 이벤트 데이터 구조(404)를 사용자에게 공개적으로 표시하지 않는다.
도 4c는 소셜 미디어 이벤트 항목(400)에 대한 예시적인 공개 이벤트 데이터 구조(406)의 표현을 도시한다. 공개 이벤트 데이터 구조(406)는 일반적으로 내부 이벤트 데이터 구조(404)와 유사하다. 그러나, "사람 1", "사람 4" 및 "사람 5"는, 자신들이 선택한 관심 카테고리 "A", "B" 및 "F"가 각각 개인임을 특정하였으므로, 각각의 카테고리의 빈도 메트릭은 (내부 이벤트 데이터 구조(404)의 빈도 메트릭에 비해) 1만큼 작다.
일부 경우에, 공개 이벤트 데이터 구조(406)는, 한 명 이상의 사용자가 소셜 미디어 이벤트 항목(400)을 검토할 때 그 한 명 이상의 사용자에게 제시될 수 있다. 예를 들어, 제어 사용자가 소셜 미디어 이벤트 항목(400)에 액세스할 때(예를 들어, 자신이 홍보하는 이벤트에 관한 정보를 검토할 때),소셜 미디어 플랫폼(150)은, 공개 이벤트 데이터 구조(406)를 나타내는 히스토그램(또는 다른 그래픽 및/또는 텍스트 표현)을 제어 사용자에게 표시할 수 있다. 다른 일례로, 일반 사용자(예를 들어, 피초대자 또는 잠재적 참석자)가 소셜 미디어 이벤트 항목(400)에 액세스할 때(예를 들어, 참석을 고려중인 이벤트에 관한 정보를 브라우징할 때),소셜 미디어 플랫폼(150)은, 공개 이벤트 데이터 구조(406)를 나타내는 히스토그램(또는 다른 그래픽 및/또는 텍스트 표현)을 사용자에게 표시할 수 있다. 전술한 두 가지 경우 모두에 있어서, 공개 이벤트 데이터 구조(406)는, 사용자의 개인 관심 카테고리가 대응하는 빈도 메트릭에 반영되지 않도록 생성된다. 이에 따라, 이벤트에 관한 공개적으로 이용 가능한 정보에 기초하여 특정 관심 카테고리가 특정 사용자에 속하는 것임을 관찰자가 보는 것이 더욱 어렵다. 일부 경우에, 공개 이벤트 데이터 구조(406)는, 소셜 미디어 이벤트 항목(400)에 연관된 제어 사용자에게 제시될 수 있지만, 일반 사용자(예를 들어, 피초대자, 잠재적 참석자 등)에 대해서는 보류될 수 있다. 일부 경우에, 공개 이벤트 데이터 구조(406)는 일반 사용자뿐만 아니라 소셜 미디어 이벤트 항목(400)에 연관된 제어 사용자에게도 제시될 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은, 사용자가 자신의 소셜 미디어 프로파일에 대한 그러한 관심 카테고리를 특정하게 선택하지 않더라도, 사용자와 관련될 수 있는 관심 카테고리를 결정할 수 있다. 일부 경우에, 이는, 사용자가 참석할 계획이 있는 각각의 이벤트(예를 들어, 사용자가 "예"로 회신한 이벤트)를 식별하고 해당 이벤트에 참석 중인 다른 사용자들 간에 인기 있는 관심 카테고리를 식별함으로써, 수행될 수 있다. 특정 관심 카테고리가 다른 사용자들 간에 충분히 공통되는 경우(예를 들어, 관심 카테고리의 빈도 메트릭이 특정 임계값보다 큰 경우),소셜 미디어 플랫폼(150)은 그 관심 카테고리를 사용자에게 추천할 수 있다. 예를 들어, 소셜 미디어 플랫폼은, 사용자가 관심 카테고리를 자신의 소셜 미디어 프로필에 추가하는 것을 제안할 수 있다.
일부 경우에, 이는, 각각의 사용자에 대해, 해당 특정 사용자와 관련될 수 있는 관심 카테고리를 나타내는 사용자 데이터 구조를 생성함으로써 수행될 수 있다. 사용자 데이터 구조는, 사용자가 참석할 계획이 있는 이벤트에 대한 하나 이상의 이벤트 데이터 구조에 포함된 관심 카테고리의 각각을 나타낼 수 있다. 또한, 이벤트 데이터 구조는, (예를 들어, 관심 카테고리 각각에 걸친 이벤트 데이터 구조 각각의 빈도 메트릭을 결합하거나 합산함으로써) 각각의 관심 카테고리에 대한 빈도 메트릭을 포함할 수 있다. 일부 경우에, 이것은 히스토그램의 형태로 제시될 수 있다.
이 기능의 일례가 도 5a 및 도 5b에 도시되어 있다. 이 예에서, 사용자("사람 1")는, 소셜 미디어 플랫폼(150) 상에 개인 소셜 미디어 프로파일(500)을 생성하였고, 소셜 미디어 프로파일(500)에 포함할 관심 카테고리 "A", "D" 및 "F"를 선택하였다. 또한, 사용자는 (예를 들어, "이벤트 1"과 "이벤트 2"인 두 가지 이벤트에 "예"로 회신함으로써) 이들 이벤트에 참석할 계획임을 나타내었다.
"이벤트 1"은 소셜 미디어 이벤트 항목(502a)에 의해 표현되고, "이벤트 2"는 소셜 미디어 이벤트 항목(502b)에 의해 표현된다. 소셜 미디어 이벤트 항목(502a 및 502b)은 대응하는 이벤트 데이터 구조(504a 및 504b)를 각각 포함한다. 이벤트 데이터 구조(504a 및 504b)는, (예를 들어, 도 3a 내지 도 3c와 관련하여 설명한 바와 같이) 예를 들어 본 명세서에 기술된 기술들에 따라 생성될 수 있다. 예를 들어, 이벤트 데이터 구조(504a 및 504b)는, (i) 각각의 소셜 미디어 이벤트 항목의 제어 사용자에 의해 선택되었거나 (ii) 각각의 이벤트 초대를 수락한 사용자에 의해 선택된 관심 카테고리들의 각각을 나타낼 수 있다. 또한, 이벤트 데이터 구조(504a 및 504b)는, 각각의 소셜 미디어 이벤트 항목의 제어 사용자 및/또는 각각의 이벤트 초대를 수락한 사용자에 의해 관심 카테고리가 선택된 횟수를 나타내는 각각의 관심 카테고리에 대한 빈도 메트릭을 포함할 수 있다. 일부 경우에, 이들 이벤트 데이터 구조는 히스토그램의 형태로도 제시될 수 있다.
도 5b는 "사람 1"에 대한 예시적인 사용자 데이터 구조(506)의 표현을 도시한다. 이 예에서, 관심 카테고리 "A"는, 4의 빈도 메트릭(이벤트 데이터 구조(504a 및 504b)에 걸친 관심 카테고리 "A"에 대한 빈도 메트릭의 합)을 갖는다. 유사하게, 관심 카테고리 "B"는, 3의 빈도 메트릭(이벤트 데이터 구조(504a 및 504b)에 걸친 관심 카테고리 "B"에 대한 빈도 메트릭의 합)을 갖는다. 또한, 관심 카테고리 "C"는, 8의 빈도 메트릭(이벤트 데이터 구조(504a 및 504b)에 걸친 관심 카테고리 "C"에 대한 빈도 메트릭의 합)을 갖는다. 또한, 관심 카테고리 "D"는, 3의 빈도 메트릭(이벤트 데이터 구조(504a 및 504b)에 걸친 관심 카테고리 "D"에 대한 빈도 메트릭의 합)을 갖는다. 또한, 관심 카테고리 "E"는, 2의 빈도 메트릭(이벤트 데이터 구조(504a 및 504b)에 걸친 관심 카테고리 "E"에 대한 빈도 메트릭들의 합)을 갖는다. 또한, 관심 카테고리 "F"는, 6의 빈도 메트릭(이벤트 데이터 구조(504a 및 504b)에 걸친 관심 카테고리 "F"에 대한 빈도 메트릭의 합)을 갖는다. 또한, 관심 카테고리 "G"는, 4의 빈도 메트릭(이벤트 데이터 구조(504a 및 504b)에 걸친 관심 카테고리 "G"에 대한 빈도 메트릭의 합)을 갖는다.
소셜 미디어 플랫폼(150)은, 사용자가 자신의 소셜 미디어 프로파일에 대한 관심 카테고리를 특별히 선택하지 않았더라도, 사용자 데이터 구조를 사용하여 사용자와 관련될 수 있는 하나 이상의 관심 카테고리를 식별할 수 있다. 일례로, 소셜 미디어 플랫폼(150)은, 사용자에 대해 제안된 관심 카테고리들의 리스트를 생성할 수 있고, 선택을 위해 사용자에게 리스트를 제시할 수 있다. 리스트는, 예를 들어, 사용자가 아직 자신의 소셜 미디어 프로파일에 포함하지 않은 관심 카테고리를 식별함으로써 결정될 수 있다. 또한, 리스트는 정렬될 수 있어서, 사용자와 관련될 가능성이 높은 관심 카테고리들이 우선순위를 갖고 및/또는 사용자에게 더욱 두드러지게 표시되는 한편(예를 들어, 리스트의 시작에 더욱 가깝게 제시되는 한편), 사용자와 관련될 가능성이 적은 관심 카테고리들은 우선순위를 갖지 않고 및/또는 사용자에게 덜 두드러지게 표시된다(예를 들어, 리스트의 끝에 가깝게 제시된다). 사용자는 리스트로부터 하나 이상의 관심 카테고리를 선택하여 그러한 관심 카테고리를 프로파일에 추가할 수 있다.
다른 일례로, 소셜 미디어 플랫폼(150)은 특정 관심 카테고리에 대한 빈도 메트릭이 충분히 높은지(예를 들어, 임계값을 초과하는지)를 결정할 수 있다. 높다면(그리고 사용자가 자신의 소셜 미디어 프로파일에 그 관심 카테고리를 아직 포함하지 않았다면),소셜 미디어 플랫폼(150)은, 사용자가 자신의 프로파일에 관심 카테고리를 포함시키는 것에 관심을 가질 수 있다고 결정할 수 있다. 또한, 소셜 미디어 플랫폼(150)은, 관심 카테고리를 사용자에게 자동으로 추천할 수 있다(예를 들어, 사용자가 자신의 소셜 미디어 프로파일(500)에 관심 카테고리를 포함할 것을 제안하는 통지 또는 다른 메시지를 사용자에게 송신할 수 있다). 실제로, 임계값은 구현예에 따라 달라질 수 있다. 일부 경우에, 임계값은 소셜 미디어 플랫폼(150)의 관리자 또는 개발자에 의해 특정될 수 있다. 일부 경우에, 임계값은 소셜 미디어 플랫폼(150)의 한 명 이상의 사용자(예를 들어, 제어 사용자)에 의해 특정될 수 있다.
이 예에서, 임계값은 5이다. 따라서, 소셜 미디어 플랫폼(150)은, (관심 카테고리 "C"에 대한 빈도 메트릭이 임계값을 초과하므로) 관심 카테고리 "C"를 "사람 1"에 자동으로 제안할 수 있다. 또한, 관심 카테고리 "F"에 대한 빈도 메트릭이 임계값을 또한 초과하더라도, 소셜 미디어 플랫폼(150)은, 당해 사람이 자신의 소셜 미디어 프로파일(500)에 그 관심 카테고리를 이미 포함시켰으므로, 관심 카테고리 "F"를 "사람 1"에 자동으로 추천하지 않는다.
본원에서 설명하는 바와 같이, 사용자는 소셜 미디어 플랫폼(150)에 의해 제시된 사용자 인터페이스를 사용하여 소셜 미디어 플랫폼(150)과 상호작용할 수 있다. 예시적인 사용자 인터페이스(예를 들어, 사용자 인터페이스(600, 700, 800, 900, 1000 및 1050))를 이하에서 설명한다. 일부 경우에, 본원에서 설명하는 사용자 인터페이스들은 도 1에 도시된 사용자 인터페이스들(108a 내지 108c)의 일부로서 구현될 수 있다.
사용자가 자신의 소셜 미디어 프로파일에 포함할 관심 카테고리를 선택할 수 있게 하는 예시적인 사용자 인터페이스(600)가 도 6에 도시되어 있다. 사용자 인터페이스(600)는, 선택을 위해 이용 가능한 관심 카테고리들의 각각을 나타내는 메뉴 창(602)을 포함한다. 사용자는, (예를 들어, 입력 디바이스를 사용하여 원하는 관심 카테고리 옆의 선택 박스(604)를 클릭하거나 "체크"함으로써) 메뉴 창(602)에 표시된 관심 카테고리들 중 하나를 선택할 수 있다. 이에 응답하여, 선택된 관심 카테고리는 선택 창(606)으로 이동되고 사용자의 소셜 미디어 프로파일에 연관된다. 사용자는 이러한 방식으로 여러 관심 카테고리를 선택할 수 있다. 또한, 사용자는, 선택된 관심분야 카테고리를 선택 창(606)으로부터 제거하고 (예를 들어, 관심 카테고리 옆의 선택 박스(604)를 "체크해제"함으로써) 메뉴 창(602)으로 되돌아갈 수 있다. 제거된 관심 카테고리는 사용자의 소셜 미디어 프로필로부터 제거된다.
사용자가 소셜 미디어 이벤트 항목에 포함하도록 관심 카테고리를 선택할 수 있게 하는 예시적인 사용자 인터페이스(700)가 도 7에 도시되어 있다. 사용자 인터페이스(700)는 선택을 위해 이용 가능한 관심 카테고리들의 각각을 나타내는 메뉴 창(702)을 포함한다. 사용자(예를 들어, 소셜 미디어 이벤트 항목에 대한 제어 사용자)는, (예를 들어, 입력 디바이스를 사용하여 원하는 관심 카테고리 옆의 선택 박스(704)를 클릭하거나 "체크"함으로써) 메뉴 창(702)에 표시된 관심 카테고리들 중 하나를 선택할 수 있다. 이에 응답하여, 선택된 관심 카테고리는 선택 창(706)으로 이동되고 소셜 미디어 이벤트 항목에 연관된다. 사용자는 이러한 방식으로 여러 관심 카테고리를 선택할 수 있다. 또한, 사용자는, 선택된 관심 카테고리를 선택 창(706)으로부터 제거하고 (예를 들어, 관심 카테고리 옆의 선택 박스(604)를 "체크해제"함으로써) 메뉴 창(702)으로 되돌아갈 수 있다. 제거된 관심 카테고리는 소셜 미디어 이벤트 항목으로부터 제거된다.
사용자가 이벤트에 관한 정보(예를 들어, 소셜 미디어 이벤트 항목으로부터의 정보)를 볼 수 있게 하는 예시적인 사용자 인터페이스(800)가 도 8에 도시되어 있다. 사용자 인터페이스(800)는, 이벤트에 관한 정보(예를 들어, 이벤트의 제목, 이벤트의 위치, 이벤트의 스케줄 시간 및 지속 시간, 이벤트에 참석할 계획이 있는 한 명 이상의 사용자의 "친구" 등)를 표시하는 설명 창(802)을 포함한다. 설명 창(802)은, 이벤트에 연관된 하나 이상의 관심 카테고리(예를 들어, 제어 사용자에 의해 선택된 하나 이상의 관심 카테고리)도 나타낸다. 사용자는 "참석" 커맨드(804)를 선택함으로써 자신이 이벤트에 계획임을 나타낼 수 있다.
사용자(예를 들어, 제어 사용자)가 이벤트 데이터 항목으로부터 콘텐츠를 볼 수 있게 하는 예시적인 사용자 인터페이스(900)가 도 9에 도시되어 있다. 사용자 인터페이스(900)는, 이벤트에 참석할 계획이 있는 사용자(예를 들어, "참석자")에 관한 정보를 표시하는 히스토그램 창(902)을 포함한다. 히스토그램 창(902)은, 참석자의 개인 소셜 미디어 프로파일에 포함하도록 적어도 하나의 "참석자"에 의해 선택된 각각의 관심 카테고리의 표시부, 및 참석자들 간에 각각의 관심 카테고리가 선택된 횟수를 나타내는 빈도 메트릭을 포함한다. 히스토그램 창(902)은, 빈도 메트릭에 기초하여 관심 카테고리들을 정렬할 수 있어서(예를 들어, 가장 높은 빈도를 갖는 관심 카테고리가 먼저 표시됨), 사용자는 어떤 카테고리가 이벤트의 참석자들 간에 인기가 있는지를 더욱 쉽게 결정할 수 있다.
사용자가 다수의 이벤트에 관한 정보를 브라우징할 수 있게 하는 예시적인 사용자 인터페이스(1000)가 도 10a에 도시되어 있다. 사용자 인터페이스(1000)는 사용자가 참석할 수 있는 이벤트를 나타내는 피드 창(1002)을 포함한다. 일부 경우에, 피드 창(1002)에 표시된 이벤트는, 사용자에 의해 선택된 관심 카테고리 및/또는 본원에서 설명하는 이벤트 추천 기술에 기초하여 소셜 미디어 플랫폼(150)에 의해 선택될 수 있다. 사용자는 (예컨대, 도 8에 도시된 사용자 인터페이스(800)를 사용하여) 이벤트에 관한 더욱 많은 정보를 보기 위해 피드 창(1002)으로부터 이벤트를 선택할 수 있다. 사용자는, 또한, "참석" 커맨드(1004)를 선택함으로써 자신이 이벤트에 참석할 계획이 있음을 나타낼 수 있다.
사용자가 다수의 이벤트에 관한 정보를 브라우징할 수 있게 하는 또 다른 예시적인 사용자 인터페이스(1050)가 도 10b에 도시되어 있다. 사용자 인터페이스(1050)는, (예를 들어, 그래픽 맵(1056) 상에 중첩된 마커(1054)를 사용하여) 사용자가 참석하도록 이용 가능한 이벤트의 계획된 지리적 위치를 나타내는 지도 창(1052)을 포함한다. 일부 경우에, 지도 창(1052)에 도시된 이벤트는, 사용자에 의해 선택된 관심 카테고리 및/또는 본원에서 설명하는 이벤트 추천 기술에 기초하여 소셜 미디어 플랫폼(150)에 의해 선택될 수 있다. 사용자는, (예를 들어, 도 8에 도시된 사용자 인터페이스(800)를 사용하여) 특정 이벤트에 관한 더 많은 정보를 보기 위해 지도 창(1052)으로부터 마커(1054)를 선택할 수 있다.
일부 구현예에서, 소셜 미디어 플랫폼(150)은, 사용자가 장소에 관한 정보를 자동화된 방식으로 결정할 수 있게 한다(예를 들어, 장소에 연관된 관심 카테고리 및/또는 장소에 연관된 이벤트를 식별할 수 있게 한다). 이 기능의 일례는 도 11a 및 도 11b에 도시되어 있다.
이 예에서, 사용자는, 장소(예를 들어, 콘서트 홀, 극장, 경기장, 클럽, 공원, 이벤트 공간 등의 이벤트를 개최하기 위한 위치)를 관리하고 있으며, 장소를 하나 이상의 다른 사용자(예를 들어, 잠재적 참석자, 이벤트 주최자, 이벤트 홍보자 등)에게 홍보하고자 한다. 이 사용자를 "제어 사용자"라고 칭할 수 있다. 이것을 용이하게 하도록, 제어 사용자는, 소셜 미디어 플랫폼(150)과 상호작용하여 장소 항목(1100)을 생성할 수 있고, 장소 항목(1100)을 장소에 관한 정보로 채울 수 있다. 예를 들어, 제어 사용자는, 장소의 이름(예를 들어, "장소 1"), 장소에 연관된 이벤트와 미래 이벤트에 관한 정보, 및 장소에 관한 콘텐츠(예를 들어, 텍스트 정보, 이미지, 비디오, 오디오, 또는 장소와 관련된 기타 콘텐츠)를 제공할 수 있다. 또한, 제어 사용자는, 장소와 속하거나, 장소에 관련되거나, 그리고/또는 장소에 연관된 하나 이상의 관심 카테고리를 나타낼 수 있다. 이것은, 예를 들어, 제어 사용자가 장소에 관한 인구통계학적 정보 및 추세를 결정할 수 있게 하므로 유용할 수 있다. 또한, 이것은, 다른 사용자(예를 들어, 제어 사용자, 잠재적 참석자, 이벤트 주최자, 이벤트 홍보자 등)가 장소의 특성을 신속하게 평가할 수 있게 하고 장소에서의 이벤트에 참석하고 장소에서의 이벤트를 조직할 수 있는지를 결정할 수 있게 한다. 이 예에서, 사용자는 관심 분야 카테고리 "A", "B" 및 "C"를 선택하였다.
또한, 제어 사용자는, 소셜 미디어 플랫폼(150)과 상호작용하여 발생한 및/또는 발생하도록 스케줄링된 하나 이상의 이벤트를 나타낼 수 있다. 일부 경우에, 하나 이상의 이벤트는 (예컨대, 도 2, 도 3a 내지 도 3c, 도 4a 내지 도 4c, 도 5a 및 도 5b에 도시되고 설명된 바와 같이) 소셜 미디어 이벤트 항목에 대응할 수 있다. 이 예에서, 제어 사용자는, 하나의 이벤트(소셜 미디어 이벤트 항목(1102a)에 대응하는 "이벤트 1")가 과거에 발생했음을 나타내었다. 또한, 제어 사용자는, 3개의 이벤트(소셜 미디어 이벤트 항목(1102b, 1102c 및 1102d)에 각각 대응하는 "이벤트 2", "이벤트 3" 및 "이벤트 4")가 미래에 발생하도록 스케줄링되어 있음을 나타내었다.
일부 경우에, 이벤트(예를 들어, 주최자, 이벤트 홍보자 등)를 위한 제어 사용자는 (예를 들어, 소셜 미디어 이벤트 항목을 채우는 경우) 자신의 이벤트에 연관된 장소를 특정할 수 있다. 소셜 미디어 플랫폼(150)은 입력에 기초하여 하나 이상의 장소 항목을 자동으로 생성할 수 있다. 예를 들어, 소셜 미디어 플랫폼(150)은, 특정 장소에서 발생하였거나 발생하도록 스케줄링된 이벤트 각각을 식별할 수 있고, 각각의 이벤트를 특정하는 장소 항목을 생성할 수 있다.
본 명세서에서 설명하는 바와 같이, 사용자는, (예를 들어, 이벤트에 관한 정보를 취득하도록) 소셜 미디어 플랫폼(150)과 상호작용하여 소셜 미디어 이벤트 항목을 검토할 수 있다. 또한, 각각의 사용자는, 자신이 참석할 계획인지를 나타낼 수 있다. 예를 들어, 각각의 사용자는, 이벤트에 관한 "RSVP" 데이터(예를 들어, 자신이 초대를 거절했고, 초대를 수락했고, 초대를 잠정적으로 수락했음 등을 나타내는 데이터)를 제출할 수 있다.
또한, 본원에서 설명하는 바와 같이, 소셜 미디어 플랫폼(150)은 각각의 이벤트에 대한 이벤트 데이터 구조를 생성할 수 있다. 이벤트 데이터 구조는, 소셜 미디어 이벤트 항목을 채울 때 (i) 소셜 미디어 이벤트 항목의 제어 사용자(예를 들어, 이벤트의 조직 및/또는 홍보를 담당하는 사용자)에 의해 선택되었거나 (ii) 사용자 자신의 사용자 프로파일을 채울 때 이벤트 초대를 수락한(예를 들어, "예"라고 회신한) 사용자에 의해 선택된 관심 카테고리 각각을 나타낼 수 있다. 또한, 이벤트 데이터 구조는, (예를 들어, 소셜 미디어 이벤트 항목을 채울 때) 이벤트를 위한 제어 사용자에 의해 및/또는 (예를 들어, 사용자 자신의 프로파일을 채울 때) 이벤트 초대를 수락한 사용자에 의해 관심 카테고리가 선택된 횟수를 나타내는 각각의 관심 카테고리에 대한 빈도 메트릭을 포함할 수 있다. 일부 경우에, 이것은 히스토그램의 형태로 제시될 수 있다. 이 예에서, 각각의 소셜 미디어 이벤트 항목(1102a 내지 1102d)은 히스토그램의 형태로 된 각각의 이벤트 데이터 구조(1104a 내지 1104d)를 포함한다.
일부 경우에, 소셜 미디어 플랫폼(150)은 장소에 대한 장소 데이터 구조를 생성할 수 있다. 장소 데이터 구조는, (i) 장소 항목을 채울 때 장소의 제어 사용자에 의해 선택되었거나, (ii) 소셜 미디어 이벤트 항목을 채울 때 장소에 연관된 소셜 미디어 이벤트 항목의 제어 사용자에 의해 선택되었거나, 또는 (iii) 사용자 자신의 프로파일을 채울 때 장소에 연관된 이벤트 초대를 수락한(예를 들어, "예"라고 회신한) 사용자에 의해 선택된 각각의 관심 카테고리를 나타낼 수 있다. 또한, 장소 데이터 구조는, 이 방식으로 관심 카테고리가 선택되었던 횟수를 나타내는 각각의 관심 카테고리에 대한 빈도 메트릭을 포함할 수 있다. 일부 경우에, 이것은 히스토그램의 형태로도 제시될 수 있다.
도 11b는 장소 항목(1100)에 대한 예시적인 장소 데이터 구조(1106)의 표현을 도시한다. 이 예에서 관심 카테고리 "A"는, "장소 1"의 제어 사용자에 의해 선택되었고 "이벤트 1"과 "이벤트 4"에 연관된 사용자에 의해 6회 선택되었으므로, 7의 빈도 메트릭을 갖는다. 유사하게, 관심 카테고리 "B"는, "장소 1"의 제어 사용자에 의해 선택되었고 "이벤트 1", "이벤트 3" 및 "이벤트 4"에 연관된 사용자에 의해 6회 선택되므로, 7의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "C"는, "장소 1"의 제어 사용자에 의해 선택되었고 "이벤트 1"에 연관된 사용자에 의해 3회 선택되었으므로, 4의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "D"는, "이벤트 1", "이벤트 2", "이벤트 3" 및 "이벤트 4"에 연관된 사용자에 의해 4회 선택되었으므로, 4의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "E"는, "이벤트 1", "이벤트 2" 및 "이벤트 4"에 연관된 사용자에 의해 4회 선택되었으므로, 4의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "F"는, "이벤트 1", "이벤트 2", "이벤트 3" 및 "이벤트 4"에 연관된 사용자에 의해 12회 선택되었으므로, 12의 빈도 메트릭을 갖는다. 또한, 관심 카테고리 "G"는, "이벤트 1", "이벤트 2" 및 "이벤트 4"에 연관된 사용자에 의해 3회 선택되었으므로, 3의 빈도 메트릭을 갖는다.
일부 경우에, 장소 데이터 항목(1106)은, 장소 항목(1100)에 포함될 수 있고, 장소 항목(1100)을 검토할 때 사용자에게 제시될 수 있다. 예를 들어, 사용자가 장소 항목(1100)에 액세스할 때(예를 들어, 소셜 미디어 플랫폼(150)을 사용하여 장소에 관한 정보를 브라우징할 때), 소셜 미디어 플랫폼(150)은, 장소 데이터 구조(1106)를 나타내는 히스토그램(또는 다른 그래픽 및/또는 텍스트 표현)을 사용자에게 표시할 수 있다. 이것은, 예를 들어, 장소에 관한 관심 카테고리가 장소 또는 이벤트의 제어 사용자에 의해 특정하게 선택되지 않았더라도, 이벤트의 잠재적 참석자가 장소에 관한 관심 카테고리 및 이에 연관된 이벤트를 식별할 수 있게 하므로, 유용할 수 있다. 이 정보는, 또한, (예를 들어, 장소에 연관된 이벤트의 예상 참석자의 관심에 관한 정보를 제어 사용자에게 제공하기 위해) 제어 사용자에게 제시될 수 있다.
일부 경우에, 장소 데이터 구조의 빈도 메트릭은 상이한 가중치에 따라 계산될 수 있다. 일례로, 장소의 제어 사용자에 의해 선택되는 관심 카테고리에는 높은 가중치가 할당될 수 있는 반면(예를 들어, 각각의 선택의 가중치가 10이고), 다른 사용자에게는 낮은 가중치가 할당될 수 있다(예를 들어, 각각의 선택의 가중치가 1이다). 이에 따라, 소정의 사용자가 선택한 관심 카테고리는 장소 데이터 구조의 빈도 메트릭에 더욱 큰 영향을 줄 수 있다.
일부 경우에, 장소 데이터 구조의 빈도 메트릭에 대한 이벤트의 영향은 시간에 따라 변할 수 있다. 예를 들어, 아직 발생하지 않은 이벤트에 더 높은 가중치를 할당할 수 있다(예를 들어, 해당 이벤트에 연관된 각각의 관심 카테고리의 가중치는 1일 수 있다). 일단 이벤트가 발생하였다면, 이벤트에는, 시간 경과에 따라 점진적으로 낮은 가중치가 할당될 수 있다(예를 들어, 이벤트가 발생한 후 한 달 뒤에는 0.75의 가중치, 이벤트가 발생한 후 2개월 뒤에는 0.5의 가중치, 이벤트가 발생한 후 3개월 뒤에는 0.25의 가중치, 이벤트가 발생한 후 4개월 뒤에는 0의 가중치). 가중치 부여의 시간 기반 "감소"는, 예를 들어, 장소 데이터 구조의 빈도 메트릭 계산에 있어서 더욱 최신 이벤트를 선호하므로, 유용할 수 있다. 이에 따라, 시간이 지남에 따라 장소의 관람객의 변화를 결정하는 것이 더욱 쉬울 수 있다. 예를 들어, 장소가 역사적으로 발생한 이벤트에 연관되어 있지만 최근에 음악 이벤트로 전환된 경우, 장르의 이러한 변화는 가중치 부여의 시간 기반 감소로 인해 더욱 쉽게 검출될 수 있다.
예시적인 가중치 부여 기준 및 가중치를 전술하였지만, 이들은 예시적인 예일 뿐이다. 실제로, 다른 가중치 부여 기준 및/또는 가중치가, 본원에서 설명하는 것 대신 또는 부가하여 사용될 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은, 장소 항목에 대한 장소 데이터 구조를 초기에 생성할 수 있고, 생성된 후에 장소 데이터 구조를 1회 이상 수정할 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은, 하나 이상의 데이터베이스의 데이터에 대한 변경을 야기하는 트랜잭션(예를 들어, 소셜 미디어 프로파일(210), 소셜 미디어 이벤트 항목(212), 및/또는 장소 항목(218) 등의, 데이터베이스 모듈(202)에 의해 저장된 데이터와 관련하여 처리 모듈(206)에 의해 실행되는 트랜잭션)을 감시할 수 있다. 트랜잭션이 특정 트리거 기준을 충족시키면, 소셜 미디어 플랫폼(150)은 그 응답으로 하나 이상의 장소 데이터 구조를 수정할 수 있다. 예를 들어, 트랜잭션이 이벤트 데이터 구조에 영향을 주는 데이터 필드를 수정하면(예를 들어, "예"라고 회신하는 사용자에 대한 트랜잭션 보정, 사용자 자신의 소셜 미디어 프로파일에 대한 추가 관심 카테고리의 사용자 선택, 또는 이벤트에 대한 히스토그램에 영향을 줄 수 있는 기타 액션), 소셜 미디어 플랫폼(150)은 (예를 들어, 처리 모듈(206)을 사용하여) 그 트랜잭션을 "트리거" 플래그와 같은 특정 플래그로 마킹할 수 있다. 각각의 트랜잭션이 성공적으로 완료되면, 소셜 미디어 플랫폼(150)은, (예를 들어, 처리 모듈(206)을 사용하여) 그 트랜잭션 상의 플래그를 체크한 후, 임의의 식별된 플래그에 기초하여 소정의 기능을 호출한다. 이들 기능은, 실행될 때 이에 따라 적절한 이벤트 데이터 구조 및 장소 데이터 구조를 업데이트하는(예를 들어, 관련 이벤트 및 장소에 대한 히스토그램을 업데이트하는) 자신의 고유한 트랜잭션을 생성한다. 이것은, 예를 들어, 소셜 미디어 플랫폼(150)이 (완료하는 데 비교적 오랜 시간이 걸릴 수 있는) 장소 데이터 구조의 업데이트 전에 사용자가 행한 임의의 변경을 신속하게 확인할 수 있게 하므로, 유용할 수 있다. 예를 들어, 사용자가 자신의 소셜 미디어 프로파일에 새로운 관심 카테고리를 추가하면, 소셜 미디어 플랫폼(150)은, (사용자가 오랜 시간 동안 기다릴 필요 없이) 사용자에 대한 변경을 신속하게 확인할 수 있고, 후속하여 사용자가 다른 작업을 수행하는 동안 사용자의 변경에 기초하여 하나 이상의 장소 데이터 구조를 업데이트할 수 있다.
일례로, 제어 사용자가 장소 항목의 관심 카테고리 선택을 수정하면, 이에 응답하여, 소셜 미디어 플랫폼(150)은, (예를 들어, 새로운 관심 카테고리를 장소 데이터 구조에 추가하고, 관심 카테고리를 장소 데이터 구조로부터 제거하고, 그리고/또는 장소 데이터 구조의 관심 카테고리의 빈도 메트릭을 수정함으로써) 장소 데이터 구조를 수정하여 이러한 변경을 반영할 수 있다. 다른 일례로, 한 명 이상의 추가 사용자가 장소에 연관된 이벤트에 참석할 계획임을 나타내면, 이에 응답하여, 소셜 미디어 플랫폼(150)은, (예를 들어, 새로운 관심 카테고리를 장소 데이터 구조에 추가하고 및/또는 장소 데이터 구조의 추가 사용자에 의해 선택되는 관심 카테고리의 빈도 메트릭을 증분시킴으로써) 장소 데이터 구조를 수정하여 이러한 변경을 반영할 수 있다. 또 다른 일례로, 한 명 이상의 사용자가 더 이상 장소에 연관된 이벤트에 참석할 계획이 없음을 나타내면, 소셜 미디어 플랫폼(150)은, (예를 들어, 관심 카테고리를 장소 데이터 구조로부터 제거하고 및/또는 장소 데이터 구조의 그러한 사용자에 의해 선택되는 관심 카테고리의 빈도 메트릭을 감분시킴으로써) 장소 데이터 구조를 수정하여 이러한 변경을 반영할 수 있다. 또 다른 일례로, 장소에 연관된 이벤트에 참석할 계획이 있는 한 명 이상의 사용자가 자신의 개인 소셜 미디어 프로파일에서 관심 카테고리 선택을 변경하면, 소셜 미디어 플랫폼(150)은, (예를 들어, 새로운 관심 카테고리를 장소 데이터 구조에 추가하고, 관심 카테고리를 장소 데이터 구조로부터 제거하고, 그리고/또는 장소 데이터 구조의 관심 카테고리의 빈도 메트릭을 수정함으로써) 장소 데이터 구조를 수정하여 이러한 변경을 반영할 수 있다. 이것은, 예를 들어, 소셜 미디어 플랫폼(150)이 각각의 장소에 관한 정확한 정보를 제시할 수 있게 하므로, 유용할 수 있다.
일부 경우에, 이러한 변경은 아직 발생하지 않은 이벤트에 대해서만 이루어질 수 있다. 예를 들어, 도 11a를 참조하면, "이벤트 1"은 이미 발생한 이벤트이다. 이에 따라, 소셜 미디어 플랫폼(150)은, (예를 들어, "이벤트 1"의 발생 후에) 장소 데이터 구조(1104a)를 "동결"할 수 있고, 장소 데이터 구조(1104a)를 이벤트 발생시 사용자의 관심 카테고리의 이력 레코드로서 보존한다. 그러나, "이벤트 2", "이벤트 3" 및 "이벤트 4"는 아직 발생하지 않았다. 이에 따라, 소셜 미디어 플랫폼(150)은, (예를 들어, 이벤트의 발생 전에 사용자의 관심 카테고리에 관한 최신 정보를 제공하도록) 각각의 이벤트가 발생할 때까지 사용자의 활동에 기초하여 장소 데이터 구조(1104b, 1104c 및 1104d)를 계속 수정할 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은 장소 항목을 실시간으로 또는 실질적으로 실시간으로 업데이트할 수 있다. 예를 들어, 소셜 미디어 플랫폼은, 특정 트랜잭션이 하나 이상의 트리거 기준을 충족시키는지를 결정하도록 트랜잭션을 감시할 수 있다(예를 들어, 사용자는, 특정 장소에 연관된 이벤트 데이터 항목의 관심 카테고리 선택을 수정하고, 한 명 이상의 추가 사용자는 장소에 연관된 이벤트에 참석할 계획이 있음을 나타내고, 한 명 이상의 사용자는 더 이상 장소에 연관된 이벤트에 참석할 계획이 없음을 나타내고, 장소에 연관된 이벤트에 참석할 계획이 있는 한 명 이상의 사용자는 자신의 개인 소셜 미디어 프로파일의 관심 카테고리 선택 등을 수정한다). 이에 응답하여, 소셜 미디어 플랫폼(150)은 대응하는 장소 데이터 구조를 즉시 (또는 실질적으로 즉시) 수정할 수 있다. 이는, 예를 들어, 소셜 미디어 플랫폼(150)이 각각의 장소에 관한 최신 정보를 지속적으로 유지할 수 있게 하는 데 유용할 수 있다.
일부 경우에, 소셜 미디어 플랫폼(150)은 장소 항목을 주기적으로 업데이트할 수 있다. 예를 들어, 소셜 미디어 플랫폼(150)은, 반복 스케줄(예를 들어, 1초에 1회, 1분에 1회, 1시간에 1회, 1일에 1회, 또는 다른 소정의 스케줄)에 따라 하나 이상의 트리거 기준이 충족되었는지를 결정할 수 있다. 특정 트리거 기준이 충족되었다고 결정하면, 소셜 미디어 플랫폼(150)은 이에 응답으로 대응하는 장소 데이터 구조를 수정할 수 있다. 이것은, 예를 들어, 소셜 미디어 플랫폼(150)이 더욱 예측 가능한 스케줄에 따라 그리고 (예를 들어, 실시간 업데이트에 비해) 계산 비용을 감소시킬 수 있는 방식으로 조직된 이벤트 각각에 관한 최신 정보를 유지할 수 있게 하는 데 유용할 수 있다.
이는 또한, 예를 들어, 소셜 미디어 플랫폼(150)에서 데이터의 무결성을 개선하는 데 유용할 수 있다. 예를 들어, 동작 중에, 소셜 미디어 플랫폼(150)은 비정상적으로 행동하여 불안정성(예를 들어, 시스템 충돌)을 초래할 수 있다. 전술한 바와 같이, 소셜 미디어 플랫폼(150)은, (예를 들어, 트랜잭션을 감시하여 특정 트랜잭션이 하나 이상의 트리거 기준을 충족시키는지를 결정하고, 충족시킨다면 대응하는 장소 데이터 구조를 즉시 수정함으로써) 장소 항목을 실시간 또는 실질적으로 실시간으로 업데이트할 수 있다. 그러나, 소셜 미디어 플랫폼(150)이 트랜잭션의 실행 후이지만 그 응답으로 장소 데이터 구조가 업데이트되는 전에 시스템 충돌을 경험한다면, 장소 데이터 구조는 그 트랜잭션의 수행을 반영하지 않는다. 또한, 장소 항목이 실시간 또는 실질적으로 실시간으로 업데이트되고 예측 가능한 스케줄에 따라 업데이트되지 않기 때문에, 장소 항목이 적절히 업데이트되었는지를 결정하는 것이 어려울 것이다. 대조적으로, 소셜 미디어 플랫폼(150)이 (예를 들어, 예측 가능한 스케줄에 따라) 장소 항목을 주기적으로 업데이트한다면, 각각의 장소 항목이 적절하게 업데이트되었는지를 결정하는 것이 더욱 쉬워진다. 예를 들어, 시스템이 손상된 시간을 스케줄링된 업데이트 시간과 비교할 수 있다. 스케줄링된 업데이트 항목 후에 충돌이 발생하였다면, 소셜 미디어 플랫폼(150)은 스케줄링된 업데이트가 발생하였다고 결정할 수 있다. 그러나, 스케줄링된 업데이트 항목 전에 충돌이 발생하였다면, 소셜 미디어 플랫폼(150)은, 스케줄링된 업데이트가 발생하지 않았다고 결정할 수 있고, 그 응답으로 보정 조치를 취할 수 있다(예를 들어, 다음으로 스케줄링된 업데이트 항목 동안 다른 업데이트를 큐잉할 수 있다). 따라서, 소셜 미디어 플랫폼(150)에서의 데이터의 신뢰성이 개선될 수 있다. 그럼에도 불구하고, 이것은, 일부 경우에, (예를 들어, 지속적 최신 정보가 개선된 데이터 무결성보다 바람직한 경우) 소셜 미디어 플랫폼(150)이 장소 항목을 실시간으로 또는 실질적으로 실시간으로 업데이트하는 것을 못하게 하지 않는다.
일부 경우에, 소셜 미디어 플랫폼(150)은, 시간 경과에 따라 다수의 장소 데이터 구조를 생성할 수 있고, 동시에 (예를 들어, 3차원 히스토그램의 형태로 된) 장소 데이터 구조의 일부 또는 전부를 사용자에게 제공할 수 있다. 이것은, 예를 들어, 시간이 지남에 따라 장소의 특성 변화를 결정할 때 유용할 수 있다. 예를 들어, 소셜 미디어 플랫폼(150)은, 시간 t1에 따라 (예를 들어, 장소에 연관된 이벤트에 대한 관심 카테고리의 빈도 메트릭을 시간 t1로서 나타내는) 장소 데이터 구조를 생성할 수 있다. 소셜 미디어 플랫폼(150)은, 또한, 시간 t2, t3, t4에 따라 (예를 들어, 장소에 연관된 이벤트에 대한 관심 카테고리의 빈도 메트릭을 시간 t2, t3, t4로서 나타내는) 추가 장소 데이터 구조를 생성할 수 있다. 장소 데이터 구조의 일부 또는 전부는 (예를 들어, 도 12에 도시된 바와 같이 3차원 히스토그램(1200)의 형태로) 사용자에게 동시에 제시될 수 있다. 이는, 사용자가 시간 경과에 따라 장소에 연관된 관심 카테고리의 변경을 식별할 수 있게 하고 장소에서 발생하는 이벤트의 유형 및 그러한 이벤트의 참석자의 관심을 보다 잘 이해할 수 있게 한다.
유사하게, 소셜 미디어 플랫폼(150)은, 또한, 일련의 시간 경과에 걸쳐 다수의 이벤트 데이터 구조를 생성할 수 있고, 이벤트 데이터 구조의 일부 또는 전부를 (예를 들어, 3차원 히스토그램의 형태로) 사용자에게 동시에 제시할 수 있다. 이것은, 예를 들어, 시간 경과에 따라 일련의 이벤트의 인구통계학적 변경을 결정하는 데 유용할 수 있다. 예를 들어, 반복되는 일련의 이벤트는 "이벤트 A", "이벤트 B", "이벤트 C" 및 "이벤트 D"를 포함할 수 있다. "이벤트 A"의 발생시, 소셜 미디어 플랫폼(150)은, (예를 들어, 이벤트의 제어 사용자 및/또는 이벤트에 참석할 계획임을 나타낸 사용자에 의한 관심 카테고리 선택에 기초하여) "이벤트 A"에 대응하는 제1 이벤트 데이터 구조를 생성할 수 있다. 유사하게, "이벤트 B", "이벤트 C" 및 "이벤트 D"의 발생시, 소셜 미디어 플랫폼(150)은, (예를 들어, 이벤트의 제어 사용자 및/또는 이벤트에 참석할 계획임을 나타낸 사용자에 의한 관심 카테고리 선택에 기초하여) 그러한 이벤트에 대응하는 추가 이벤트 데이터 구조를 생성할 수 있다. 이벤트 데이터 구조의 일부 또는 전부는 (도 13에 도시된 바와 같이, 예를 들어, 3차원 히스토그램(1300)의 형태로) 사용자에게 동시에 제시될 수 있다. 이는, 사용자가 시간 경과에 따른 일련의 이벤트에 연관된 관심 카테고리의 변경을 식별할 수 있게 하고 그러한 이벤트의 참석자의 관심을 보다 잘 이해할 수 있게 한다.
예시적인 프로세스
사용자에게 이벤트를 자동화된 방식으로 식별하고 추천하기 위한 예시적인 프로세스(1400)가 도 14에 도시되어 있다. 일부 구현예에서, 프로세스(1400)는, 도 1의 시스템(100) 및/또는 도 2에 도시된 소셜 미디어 플랫폼(150)에 의해 수행될 수 있다.
프로세스(1400)에서, 서버 시스템은, 복수의 사용자에 대한 프로파일 데이터 및 복수의 소셜 미디어 이벤트에 대한 이벤트 데이터를 생성한다(단계 1402). 서버 시스템은, 예를 들어, 도 1과 관련하여 설명한 소셜 미디어 플랫폼(150)을 포함하는 서버 시스템(102)을 포함할 수 있다. 프로파일 데이터는, 각각의 사용자에 대해, 사용자에 연관된 하나 이상의 관심 카테고리의 표시부를 포함할 수 있다. 이벤트 데이터는, 각각의 소셜 미디어 이벤트에 대해, 소셜 미디어 이벤트에 연관된 한 명 이상의 사용자의 표시부를 포함할 수 있다. 이러한 기능의 예는, 예를 들어, 도 3a 및 도 4a와 관련하여 설명한다.
서버 시스템은, 사용자들의 제1 서브세트가 제1 소셜 미디어 이벤트에 연관된다고 결정한다(단계 1404). 예를 들어, 서버 시스템은, 하나 이상의 특정 사용자가 (예를 들어, "예" 및/또는 "아마도"라고 회신함으로써) 특정 소셜 미디어 이벤트 참석을 계획하고 있고 및/또는 특정 소셜 미디어 이벤트 참석을 잠정적으로 계획하고 있음을 나타내었다고 결정할 수 있다.
서버 시스템은 프로파일 데이터 및 이벤트 데이터를 하나 이상의 데이터베이스에 저장한다(단계 1406). 일례로, 프로파일 데이터 및 이벤트 데이터는 도 2와 관련하여 설명한 데이터베이스 모듈(202)을 사용하여 저장될 수 있다.
서버 시스템은, 관심 카테고리들의 제1 서브세트가 사용자들의 제1 서브세트에 연관된다고 결정한다(단계 1408). 이것은, 예를 들어, 해당 프로파일에 포함하도록 사용자들의 제1 서브세트에 의해 선택된 관심 카테고리를 포함할 수 있다.
서버 시스템은, 관심 카테고리들의 제2 서브세트가 제1 소셜 미디어 이벤트에 연관된다고 결정한다(단계 1410). 관심 카테고리들의 제2 서브세트는 제1 소셜 미디어 이벤트의 제어 사용자에 의해 선택된다. 이것은, 예를 들어, 제1 소셜 미디어 이벤트의 제어 사용자에 의해 제1 소셜 미디어 이벤트와 관련이 있다고 식별된 관심 카테고리를 포함할 수 있다.
이벤트 데이터 구조는, 관심 카테고리들의 제1 서브세트와 관심 카테고리들의 제2 서브세트에 기초하여 제1 소셜 미디어 이벤트에 대해 생성된다(단계 1412). 이벤트 데이터 구조는 관심 카테고리들의 제1 서브세트와 관심 카테고리들의 제2 서브세트의 표시부, 및 관심 카테고리들의 제1 서브세트와 관심 카테고리들의 제2 서브세트의 각각의 관심 카테고리에 대해, 해당 관심 카테고리에 연관된 사용자들의 제1 서브세트의 사용자의 수 및 해당 관심 카테고리가 제1 소셜 미디어 이벤트의 제어 사용자에 의해 선택되었는지 여부에 기초하는 각각의 빈도 메트릭을 포함한다. 이러한 기능의 예는, 예를 들어, 도 3b, 도 4b 및 도 4c를 참조하여 설명한다.
서버 시스템은, 하나 이상의 데이터베이스의 데이터를 변경시키는 데이터베이스 트랜잭션을 감시하도록 구성된 하나 이상의 프로세스를 실행한다(단계 1414). 이것은, 예를 들어, 도 2와 관련하여 설명한 처리 모듈(206)을 사용하여 수행될 수 있다. 트랜잭션은, 사용자들의 제1 서브세트에 연관된 프로파일 데이터에 대한 수정 및 제1 이벤트에 연관된 이벤트 데이터에 대한 수정 중 적어도 하나를 포함할 수 있다. 일부 경우에, 수정은, 관심 카테고리의 추가 또는 제거(예를 들어, 사용자가 자신의 프로파일로부터 관심 카테고리를 제거 또는 추가)를 포함할 수 있다. 일부 경우에, 수정은, (예를 들어, 사용자가 이벤트에 대하여 "예" 및/또는 "아마도"로 회신하거나 사용자가 "예" 및/또는 "아마도" 회신으로부터 "아니오"로 전환함으로써) 추가 사용자와 제1 소셜 미디어 이벤트와의 연관성, 또는 제1 소셜 미디어 이벤트로부터의 사용자의 연관성 해제를 포함할 수 있다.
서버 시스템은, 트랜잭션이 제1 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정한다(단계 1416). 트랜잭션이 제1 소셜 미디어 이벤트에 관한 트리거 기준을 충족시킨다는 결정에 응답하여, 이벤트 데이터 구조가 트랜잭션에 기초하여 수정 된다(단계 1418).
일부 경우에, 트랜잭션이 제1 소셜 미디어 이벤트에 관한 트리거 기준을 충족시킨다고 결정하는 것은, 특정 관심 카테고리가 사용자들의 제1 서브세트의 특정 사용자의 프로파일 데이터에 추가되었거나 제거되었다고 결정하는 것, 및 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 것을 포함할 수 있다. 이벤트 데이터 구조를 수정하는 것은, 이벤트 데이터 구조에서의 특정 관심 카테고리에 연관된 빈도 메트릭을 수정하는 것을 포함할 수 있다. 일부 경우에, 서버 시스템은, 또한, 트랜잭션이 하나 이상의 추가 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정할 수 있고, 트랜잭션이 하나 이상의 소셜 미디어 이벤트에 관한 트리거 기준을 충족시킨다는 결정에 응답하여, 트랜잭션에 기초하여 하나 이상의 소셜 미디어 이벤트에 대한 이벤트 데이터 구조를 수정할 수 있다.
일부 경우에, 트랜잭션이 제1 소셜 미디어 이벤트에 관한 트리거 기준을 충족시킨다고 결정하는 것은, 추가 사용자가 제1 소셜 미디어 이벤트에 연관된다고 결정하는 것, 및 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 것을 포함할 수 있다. 이벤트 데이터 구조를 수정하는 것은, 추가 사용자가 추가 관심 카테고리에 연관된다고 결정하는 것, 및 추가 관심 카테고리의 표시부를 포함하도록 이벤트 데이터 구조를 수정하는 것을 포함할 수 있다.
일부 경우에, 트랜잭션이 제1 소셜 미디어 이벤트에 관한 트리거 기준을 충족시킨다고 결정하는 것은, 추가 사용자가 제1 소셜 미디어 이벤트에 연관된다고 결정하는 것, 및 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 것을 포함할 수 있다. 이벤트 데이터 구조를 수정하는 것은, 추가 사용자가 관심 카테고리들의 제1 서브세트의 특정 관심 카테고리에 연관된다고 결정하는 것, 및 추가 사용자가 관심 카테고리들의 제1 서브세트의 특정 관심 카테고리에 연관된다는 결정에 응답하여, 이벤트 데이터 구조에서 특정 관심 카테고리에 연관된 빈도 메트릭을 수정하는 것을 포함할 수 있다. 일부 경우에, 이벤트 데이터 구조에서 특정 관심 카테고리에 연관된 빈도 메트릭을 수정하는 것은 특정 관심 카테고리에 연관된 빈도 메트릭을 증분시키는 것을 포함할 수 있다.
일부 경우에, 트랜잭션이 제1 소셜 미디어 이벤트에 관한 트리거 기준을 충족시킨다고 결정하는 것은, 사용자들의 제1 서브세트의 특정 사용자가 제1 소셜 미디어 이벤트와 연관해제되었다고 결정하는 것, 및 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 것을 포함할 수 있다. 이벤트 데이터 구조를 수정하는 것은, 연관해제된 사용자가 관심 카테고리들의 제1 서브세트의 특정 관심 카테고리에 연관되었다고 결정하는 것, 및 연관해제된 사용자가 관심 카테고리들의 제1 서브세트의 특정 관심 카테고리에 연관되었다는 결정에 응답하여, 이벤트 데이터 구조에서 특정 관심 카테고리에 연관된 빈도 메트릭을 수정하는 것을 포함할 수 있다. 일부 경우에, 이벤트 데이터 구조에서 특정 관심 카테고리에 연관된 빈도 메트릭을 수정하는 것은 특정 관심 카테고리에 연관된 빈도 메트릭을 감분시키는 것을 포함할 수 있다.
일부 경우에, 히스토그램은 이벤트 데이터 구조에 기초하여 생성 및 표시될 수 있다. 예시적인 히스토그램은, 예를 들어, 도 3b, 도 4b 및 도 4c에 도시되어 있다. 일부 경우에, 하나 이상의 추가 소셜 미디어 이벤트에 대해 하나 이상의 추가 이벤트 데이터 구조가 생성될 수 있다. 또한, 이벤트 데이터 구조 및 하나 이상의 추가 이벤트 데이터 구조에 기초하여 복수의 히스토그램이 생성 및 표시될 수 있다.
일부 경우에, 프로파일 데이터는, 적어도 한 명의 사용자에 대하여, 해당 사용자에 연관된 하나 이상의 공개 관심 카테고리의 표시부, 및 해당 사용자에 연관된 하나 이상의 개인 관심 카테고리의 표시부를 포함할 수 있다. 해당 사용자와 하나 이상의 공개 카테고리 간의 연관성은 하나 이상의 다른 사용자에 의해 액세스될 수 있으며, 해당 사용자와 하나 이상의 개인 관심 카테고리 간의 연관성은 하나 이상의 다른 사용자에 의해 액세스될 수 없다. 하나 이상의 공개 카테고리에 대응하는 히스토그램은 이벤트 데이터 구조에 기초하여 생성 및 표시될 수 있다.
일부 경우에, 관심 카테고리들의 제1 서브세트에 기초하여 이벤트 데이터 구조를 생성하는 것은, 관심 카테고리들의 제1 서브세트의 각각의 관심 카테고리에 대하여, 관심 카테고리에 연관되어 있으며 제1 소셜 미디어 이벤트의 초대를 수락한 사용자들의 제1 서브세트의 각각의 사용자에 대하여 제1 양만큼 해당 관심 카테고리에 연관된 빈도 메트릭을 증분시키는 것, 및 관심 카테고리에 연관되어 있으며 제1 소셜 미디어 이벤트의 초대를 잠정적으로 수락한 사용자들의 제1 서브세트의 각각의 사용자에 대하여 제2 양만큼 해당 관심 카테고리에 연관된 빈도 메트릭을 증분시키는 것을 포함할 수 있다. 제1 양은 제2 양과 다를 수 있다.
일부 경우에, 관심 카테고리들의 제1 서브세트가 사용자들의 제1 서브세트와 연관되어 있다고 결정하는 것은, 사용자들의 서브세트의 적어도 한 명의 사용자에 의해 선택된 하나 이상의 관심 카테고리를 관심 카테고리들의 제1 서브세트로서 식별하는 것을 포함할 수 있다.
일부 경우에, 서버 시스템은 이벤트 데이터 구조에 기초하여 추가 사용자에 대한 제1 소셜 미디어 이벤트의 추천을 생성할 수 있다. 추가 사용자에 대한 제1 소셜 미디어 이벤트의 추천을 생성하는 것은, 추가 사용자에 대한 프로파일 데이터를 검색하는 것, 추가 사용자에 대한 프로파일 데이터에 기초하여 추가 사용자에 연관된 관심 카테고리를 결정하는 것, 및 이벤트 데이터 구조와 추가 사용자에 연관된 관심 카테고리에 기초하여 추천 점수를 결정하는 것을 포함할 수 있다.
추천 점수를 결정하는 것은, 이벤트 데이터 구조와 추가 사용자에 연관된 관심 카테고리들에 공통되는 하나 이상의 관심 카테고리를 결정하는 것, 및 공통 관심 카테고리들의 각각에 대응하는 이벤트 데이터 구조의 빈도 메트릭을 합산하는 것을 포함할 수 있다.
추천 점수를 결정하는 것은, 추가 사용자에 연관된 제1 지리적 위치와 제1 소셜 미디어 이벤트와 연관된 제2 지리적 위치 간의 거리를 결정하는 것, 및 제1 지리적 위치와 제2 지리적 위치 간의 거리에 기초하여 추천 점수를 수정하는 것을 더 포함할 수 있다.
추천 점수를 결정하는 것은, 추가 사용자에 연관된 관심 카테고리들과 관심 카테고리들의 제2 서브세트에 공통되는 하나 이상의 관심 카테고리를 결정하는 것, 및 이러한 결정에 기초하여 추천 점수를 수정하는 것을 더 포함할 수 있다.
추천 점수를 결정하는 것은, 제2 사용자에 연관된 사용자의 수, 및 제2 사용자와 제1 소셜 미디어 이벤트 모두에 연관된 사용자의 수를 결정하는 것을 더 포함할 수 있다. 추천 점수를 결정하는 것은 이러한 결정에 기초하여 추천 점수를 수정하는 것을 더 포함할 수 있다.
추가 사용자에 대한 제1 소셜 미디어 이벤트의 추천을 생성하는 것은, 추천 점수가 임계 점수를 초과한다고 결정하는 것, 및 추천 점수가 임계 점수를 초과한다는 결정에 응답하여, 추가 사용자를 식별하는 통지를 생성하는 것을 더 포함할 수 있다.
일부 경우에, 프로세스(1400)는, 또한, 그래픽 사용자 인터페이스를 렌더링하는 것을 포함할 수 있다. 그래픽 사용자 인터페이스는 이벤트 데이터 구조의 그래픽 표현을 포함한다. 프로세스(1410)는, 또한, 그래픽 사용자 인터페이스를 사용자에게 제시하는 것을 포함할 수 있다. 예시적인 그래픽 사용자 인터페이스가, 예를 들어, 도 9에 도시되어 있다.
일부 경우에, 이벤트 데이터 구조는 실질적으로 실시간으로 수정될 수 있다. 일부 경우에, 이벤트 데이터 구조는 주기적으로 수정될 수 있다.
일부 경우에, 서버 시스템은 제1 사용자에 대한 추가 관심 카테고리의 추천을 생성할 수 있다. 추가 관심 카테고리의 추천을 생성하는 것은, 제1 사용자가 소셜 미디어 이벤트들의 제1 서브세트에 연관된다고 결정하는 것, 관심 카테고리들의 제3 서브세트가 소셜 미디어 이벤트들의 제1 서브세트의 적어도 하나의 소셜 미디어 이벤트에 연관된다고 결정하는 것, 및 관심 카테고리들의 제3 서브세트의 각각의 관심 카테고리에 대한 추천 점수를 결정하는 것을 더 포함할 수 있다. 추천 점수를 표시하는 것은, 소셜 미디어 이벤트들의 제1 서브세트의 각각의 소셜 미디어 이벤트에 대해, 대응하는 이벤트 데이터 구조를 검색하는 것, 및 관심 카테고리들의 제3 서브세트의 각각의 관심 카테고리에 대해, 관심 카테고리에 대응하는 검색된 이벤트 데이터 구조의 빈도 메트릭을 합산하는 것을 포함할 수 있다. 추천 점수를 결정하는 것은, 소셜 미디어 이벤트들의 제1 서브세트의 각각의 소셜 미디어 이벤트에 대해, 소셜 미디어 이벤트의 제어 사용자에 의해 선택된 하나 이상의 관심 카테고리를 결정하는 것, 및 이러한 결정에 기초하여 추천 점수를 수정하는 것을 더 포함할 수 있다. 이러한 기능의 예는, 예를 들어, 도 5a 및 도 5b와 관련하여 설명한다.
장소의 특성을 자동으로 결정하기 위한 다른 예시적인 프로세스(1500)는 도 15에 도시되어 있다. 일부 구현예에서, 프로세스(1500)는, 도 1의 시스템(100) 및/또는 도 2에 도시한 소셜 미디어 플랫폼(150)에 의해 수행될 수 있다.
프로세스(1500)에서, 서버 시스템은 장소 데이터를 생성한다(단계 1502). 장소 데이터는, 장소와 관련하여 제어 사용자에 의해 선택된 하나 이상의 제1 관심 카테고리의 표시부, 및 장소에 연관된 하나 이상의 이벤트의 표시부를 포함한다. 예를 들어, 하나 이상의 제1 관심 카테고리는, 장소 항목을 채우는 동안 장소의 제어 사용자(예를 들어, 장소를 제어, 관리 및/또는 홍보하는 것을 담당하는 사용자)에 의해 선택될 수 있다. 다른 일례로, 하나 이상의 이벤트는, 제어 사용자 및/또는 이벤트의 사용자(예를 들어, 이벤트를 조직 및/또는 홍보하는 것을 담당하는 사용자)에 의해 특정될 수 있다. 이러한 기능의 예는, 예를 들어, 도 11a와 관련하여 도시하고 설명한다.
서버 시스템은 장소에 연관된 하나 이상의 이벤트 각각에 대한 이벤트 데이터 구조를 생성한다(단계 1504). 각각의 이벤트 데이터 구조는, 이벤트에 연관된 하나 이상의 제2 관심 카테고리의 표시부, 및 하나 이상의 제2 관심 카테고리의 각각의 관심 카테고리에 대해, 각각의 빈도 메트릭을 포함한다. 이벤트 데이터 구조를 생성하기 위한 예시적인 기술은, 예를 들어, 도 3a 내지 도 3c, 도 4a 내지 도 4c, 및 도 14와 관련하여 도시하고 설명한다.
서버 시스템은, 장소 데이터 및 하나 이상의 이벤트 데이터 구조에 기초하여 장소 데이터 구조를 생성한다(단계 1506). 장소 데이터 구조는 하나 이상의 제1 카테고리와 하나 이상의 제2 관심 카테고리의 표시부를 포함한다. 또한, 장소 데이터 구조는, 또한, 하나 이상의 제1 관심 카테고리와 하나 이상의 제2 관심 카테고리의 각각의 관심 카테고리에 대해, 장소 데이터와 하나 이상의 이벤트 데이터 구조에 기초하여 결정된 각각의 빈도 메트릭을 포함한다. 장소 데이터 구조를 생성하기 위한 예시적인 기술은, 예를 들어, 도 11a 및 도 11b와 관련하여 도시하고 설명한다.
일부 구현예에서, 장소 데이터 구조를 생성하는 것은, 각각의 이벤트 데이터 구조에 대해, 각각의 가중치를 결정하는 것, 및 가중치에 기초하여 장소 데이터 구조의 빈도 메트릭을 결정하는 것을 포함할 수 있다. 각각의 가중치는 각각의 이벤트의 발생 시기에 대응할 수 있다.
서버 시스템은, 하나 이상의 데이터베이스의 데이터를 변경시키는 데이터베이스 트랜잭션을 감시하도록 구성된 하나 이상의 프로세스를 실행한다(단계 1508). 서버 시스템은, 트랜잭션이 장소 데이터 구조에 대한 트리거 기준을 충족시킨다고 결정한다(단계 1510). 트랜잭션이 장소 데이터 구조와 관련하여 트리거 기준을 충족시킨다는 결정에 응답하여, 서버 시스템은 트랜잭션에 기반하여 장소 데이터 구조를 수정한다(단계 1512). 일부 구현예에서, 트랜잭션은 하나 이상의 이벤트 데이터 구조에 대한 수정을 포함할 수 있다. 일부 구현예에서, 트랜잭션은 장소 데이터에 대한 수정을 포함할 수 있다. 일부 구현예에서, 장소 데이터 구조는 실질적으로 실시간으로 수정될 수 있다. 일부 구현예에서, 장소 데이터 구조는 주기적으로 수정될 수 있다. 이러한 기능의 예는, 예를 들어, 도 11a 및 도 11b와 관련하여 설명한다.
일부 구현예에서, 히스토그램은, (예를 들어, 서버 컴퓨터 및/또는 클라이언트 컴퓨터에 의해) 장소 데이터 구조에 기초하여 생성 및 표시될 수 있다.
일부 구현예에서, 서버 시스템은, 장소 데이터 및 하나 이상의 이벤트 데이터 구조에 기초하여 하나 이상의 추가 장소 데이터 구조를 생성할 수 있다. 각각의 추가 장소 데이터 구조는, 각각의 시간에 따라 하나 이상의 제1 카테고리와 하나 이상의 제2 관심 카테고리의 표시부, 및 하나 이상의 제1 카테고리와 하나 이상의 제2 관심 카테고리의 각각의 관심 카테고리에 대하여, 그 시간에 따른 각각의 빈도 메트릭을 포함할 수 있다. 복수의 히스토그램은, 장소 데이터 구조 및 하나 이상의 추가 장소 데이터 구조에 기초하여 생성 및 표시될 수 있다. 예시적인 히스토그램은, 예를 들어, 도 12 및 도 13과 관련하여 도시하고 설명한다.
일부 구현예에서는, 그래픽 사용자 인터페이스가 렌더링될 수 있다. 그래픽 사용자 인터페이스는 이벤트 데이터 구조의 그래픽 표현을 포함할 수 있다. 그래픽 사용자 인터페이스는 사용자에게 제시될 수 있다.
예시적인 시스템
본 명세서에서 설명하는 대상과 동작의 일부 구현예는, 본 명세서 및 그 균등물에 개시된 구조들, 또는 이들 구조 중 하나 이상의 구조의 조합을 포함하는, 디지털 전자 회로, 컴퓨터 소프트웨어, 펌웨어, 또는 하드웨어에서 구현될 수 있다. 예를 들어, 일부 구현예에서, 서버 시스템(102), 플랫폼(150) 및 클라이언트 디바이스(104a 내지 104c)는, 디지털 전자 회로를 사용하여, 또는 컴퓨터 소프트웨어, 펌웨어, 또는 하드웨어, 또는 이들 중 하나 이상의 조합으로 구현될 수 있다. 다른 일례로, 프로세스(1400, 1500)는, 디지털 전자 회로를 사용하여, 또는 컴퓨터 소프트웨어, 펌웨어, 또는 하드웨어, 또는 이들 중 하나 이상의 조합으로 구현될 수 있다.
본 명세서에서 설명하는 일부 구현예는, 디지털 전자 회로, 컴퓨터 소프트웨어, 펌웨어, 또는 하드웨어의 하나 이상의 그룹 또는 모듈로서, 또는 이들 중 하나 이상의 조합으로 구현될 수 있다. 상이한 모듈들이 사용될 수 있지만, 각각의 모듈이 구별될 필요는 없으며, 다수의 모듈이 동일한 디지털 전자 회로, 컴퓨터 소프트웨어, 펌웨어, 또는 하드웨어, 또는 이들의 조합 상에 구현될 수 있다.
본 명세서에서 설명하는 일부 구현예는, 하나 이상의 컴퓨터 프로그램으로서, 즉, 데이터 처리 장치에 의한 실행 또는 데이터 처리 장치의 동작을 제어하기 위해 컴퓨터 저장 매체 상에 인코딩된 컴퓨터 프로그램 명령의 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터 저장 매체는, 컴퓨터 판독가능 저장 디바이스, 컴퓨터 판독가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 어레이 또는 디바이스, 또는 이들 중 하나 이상의 조합일 수 있거나 포함될 수 있다. 또한, 컴퓨터 저장 매체는 전파 신호가 아니지만, 컴퓨터 저장 매체는 인위적으로 생성된 전파 신호로 인코딩된 컴퓨터 프로그램 명령의 소스 또는 목적지일 수 있다. 또한, 컴퓨터 저장 매체는, 하나 이상의 개별 물리적 구성요소 또는 매체(예를 들어, 다수의 CD, 디스크, 또는 다른 저장 디바이스)일 수 있거나 포함될 수 있다.
"데이터 처리 장치"라는 용어는, 예를 들어, 프로그래머블 프로세서, 컴퓨터, 시스템 온 칩, 또는 이들의 다수, 또는 이들의 조합을 포함하여 데이터를 처리하기 위한 장치, 디바이스 및 기계의 모든 종류를 포함한다. 장치는, 전용 논리 회로, 예를 들어 FPGA(필드 프로그래머블 게이트 어레이) 또는 ASIC(주문형 집적 회로)를 포함할 수 있다. 또한, 장치는, 하드웨어 이외에도, 해당되는 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드, 예컨대, 프로세서 펌웨어를 구성하는 코드, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 크로스-플랫폼 런타임 환경, 가상 기계, 또는 이들 중 하나 이상의 조합을 포함할 수 있다. 장치와 실행 환경은, 웹 서비스, 분산형 연산 및 그리드 연산 인프라스트럭처와 같은 다양한 연산 모델 인프라스트럭처를 실현할 수 있다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트, 또는 코드라고도 함)은, 컴파일링된 또는 해석된 언어, 선언적 또는 절차적 언어를 포함한 임의의 형태의 프로그래밍 언어로 기입될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 해당할 수도 있지만 그렇지 않을 수도 있다. 프로그램은, 다른 프로그램이냐 데이터(예를 들어, 마크업 언어 문서에 저장된 하나 이상의 스크립트)를 유지하는 파일의 일부에, 해당되는 프로그램 전용의 단일 파일에, 또는 다수의 조정된 파일(예를 들어, 하나 이상의 모듈, 서브 프로그램, 또는 코드의 일부를 저장하는 파일)에 저장될 수 있다. 컴퓨터 프로그램은, 하나의 컴퓨터 상에서 또는 하나의 사이트에 위치하거나 다수의 사이트에 걸쳐 분산되고 통신 네트워크에 의해 상호접속된 다수의 컴퓨터 상에서 실행되도록 배치될 수 있다.
본 명세서에서 설명하는 프로세스들과 논리 흐름들 중 일부는, 입력 데이터를 조작하고 출력을 생성함으로써 동작을 수행하는 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래머블 프로세서에 의해 수행될 수 있다. 프로세스와 논리 흐름은, 또한, FPGA(필드 프로그래머블 게이트 어레이) 또는 ASIC(주문형 집적 회로)와 같은 전용 논리 회로에 의해 수행될 수 있고, 장치도 이러한 전용 논리 회로로서 구현될 수 있다.
컴퓨터 프로그램의 실행에 적합한 프로세서는, 예를 들어, 범용 및 전용 마이크로프로세서 및 임의의 종류의 디지털 컴퓨터의 프로세서를 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 이들 모두로부터 명령 및 데이터를 수신한다. 컴퓨터는, 명령과 데이터를 저장하기 위한 하나 이상의 메모리 디바이스 및 명령에 따라 동작을 수행하기 위한 프로세서를 포함한다. 컴퓨터는, 또한, 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스, 예컨대, 자기 디스크, 광자기 디스크, 또는 광 디스크를 포함할 수 있고, 또는 이러한 디스크로부터 데이터를 수신하거나, 이러한 디스크로 데이터를 전달하거나, 이들 모두를 행하도록 동작 가능하게 결합될 수 있다. 그러나, 컴퓨터가 이러한 디바이스를 구비할 필요는 없다. 컴퓨터 프로그램 명령과 데이터를 저장하는 데 적합한 디바이스는, 예를 들어, 반도체 메모리 디바이스(예를 들어, EPROM, EEPROM, 플래시 메모리 디바이스, 기타), 자기 디스크(예를 들어, 내부 하드 디스크, 분리성 디스크, 기타), 광자기 디스크, CD-ROM, 및 DVD-ROM 디스크를 포함하여 비휘발성 메모리, 매체 및 메모리 디바이스의 모든 형태를 포함한다. 프로세서와 메모리는 전용 논리 회로에 의해 보충될 수 있거나 전용 논리 회로 내에 통합될 수 있다.
사용자와의 상호작용을 제공하기 위해, 사용자에게 정보를 표시하기 위한 디스플레이 디바이스(예를 들어, 모니터 또는 다른 유형의 디스플레이 디바이스) 및 사용자가 컴퓨터에 입력을 제공할 수 있게 하는 키보드와 포인팅 디바이스(예를 들어, 마우스, 트랙볼, 태블릿, 감응형 스크린, 또는 다른 유형의 포인팅 디바이스)를 갖는 컴퓨터 상에서 동작이 구현될 수 있다. 사용자와의 상호작용을 제공하는 데 다른 종류의 디바이스가 또한 사용될 수 있으며, 예를 들어, 사용자에게 제공되는 피드백은, 임의의 형태의 감각 피드백, 예컨대, 시각 피드백, 청각 피드백, 또는 촉각 피드백일 수 있고, 사용자로부터의 입력은 음향, 음성, 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다. 또한, 컴퓨터는, 사용자가 사용하는 디바이스에 문서를 전송하거나 이러한 디바이스로부터 문서를 수신함으로써 사용자와 상호작용할 수 있고, 예를 들어, 웹 브라우저로부터 수신된 요청에 응답하여 사용자의 클라이언트 디바이스 상의 웹 브라우저에 웹 페이지를 전송할 수 있다.
컴퓨터 시스템은, 단일 연산 디바이스, 또는 서로 근접하거나 일반적으로 서로 멀리에서 동작하고 통상적으로 통신 네트워크를 통해 상호작용하는 다수의 컴퓨터를 포함할 수 있다. 통신 네트워크의 예는, 근거리 통신망("LAN") 및 광역 통신망("WAN"), 인터-네트워크(예를 들어, 인터넷), 위성 링크를 포함하는 네트워크, 및 피어-투-피어 네트워크(예를 들어, 애드혹 피어-투-피어 네트워크)를 포함한다. 클라이언트와 서버의 관계는, 각각의 컴퓨터에서 실행되고 서로 클라이언트-서버 관계를 갖는 컴퓨터 프로그램에 의해 발생할 수 있다.
도 16은 프로세서(1600), 메모리(1620), 저장 디바이스(1630), 및 입력/출력 디바이스(1640)를 포함하는 예시적인 연산 시스템(1200)을 도시한다. 구성요소들(1610, 1620, 1630, 1640)의 각각은, 예를 들어, 시스템 버스(1650)에 의해 상호접속될 수 있다. 프로세서(1610)는 시스템(1600) 내에서 실행하기 위한 명령을 처리할 수 있다. 일부 구현예에서, 프로세서(1610)는 단일-스레디드 프로세서, 멀티-스레디드 프로세서, 또는 다른 유형의 프로세서이다. 프로세서(1610)는 메모리(1620) 또는 저장 디바이스(1630)에 저장된 명령을 처리할 수 있다. 메모리(1620)와 저장 디바이스(1630)는 시스템(1600) 내에 정보를 저장할 수 있다.
입력/출력 디바이스(1640)는 시스템(1600)에 대한 입력/출력 동작을 제공한다. 일부 구현예에서, 입력/출력 디바이스(1640)는, 예를 들어, 이더넷 카드와 같은 네트워크 인터페이스 디바이스, RS-232 포트와 같은 직렬 통신 디바이스 및/또는 802.11 카드, 3G 무선 모뎀, 4G 무선 모뎀, 5G 무선 모뎀 등과 같은 무선 인터페이스 디바이스 중 하나 이상을 포함할 수 있다. 일부 구현예에서, 입력/출력 디바이스는, 입력 데이터를 수신하고 다른 입력/출력 디바이스, 예를 들어, 키보드, 프린터 및 디스플레이 디바이스(1660)에 출력 데이터를 전송하도록 구성된 드라이버 디바이스를 포함할 수 있다. 일부 구현예에서는, 이동 연산 디바이스, 이동 통신 디바이스, 및 다른 디바이스가 사용될 수 있다.
본 명세서는 많은 세부 사항을 포함하지만, 이들 세부 사항은 청구될 수 있는 범위를 한정하는 것으로서 해석되어서는 안 되며, 오히려 구체적인 예에 대한 구체적인 특징의 설명으로서 해석되어야 한다. 별도의 구현예의 문맥으로 본 명세서에 기술된 소정의 특징들이 또한 결합될 수 있다. 반대로, 단일 구현예의 문맥으로 기술된 다양한 특징은 또한 다수의 실시예에서 개별적으로 또는 임의의 적합한 하위 조합으로 구현될 수 있다.
다수의 구현예를 설명하였다. 그럼에도 불구하고, 본 발명의 사상과 범위를 벗어나지 않고 다양한 변형이 이루어질 수 있음을 이해할 것이다. 이에 따라, 다른 구현예들은 하기 청구항들의 범위 내에 있다.

Claims (42)

  1. 방법으로서,
    서버 시스템에 의해, 복수의 사용자에 대한 프로파일 데이터 및 복수의 소셜 미디어 이벤트에 대한 이벤트 데이터를 생성하는 단계 - 상기 프로파일 데이터는, 각각의 사용자에 대하여:
    소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 사용자에 의해 선택된 하나 이상의 공개 관심 카테고리(public interest categories)의 표시부(indication), 및
    상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 사용자에 의해 선택된 하나 이상의 개인 관심 카테고리(private interest categories)의 표시부
    를 포함하고,
    상기 사용자와 상기 하나 이상의 공개 관심 카테고리 사이의 연관은 하나 이상의 다른 사용자에 의해 액세스가능하고, 상기 사용자와 상기 하나 이상의 개인 관심 카테고리 사이의 연관은 하나 이상의 다른 사용자에 의해 액세스불가능하고,
    상기 이벤트 데이터는, 각각의 소셜 미디어 이벤트에 대하여, 상기 소셜 미디어 이벤트와 연관된 하나 이상의 사용자의 표시부를 포함함 -;
    상기 서버 시스템에 의해, 상기 프로파일 데이터 및 상기 이벤트 데이터를 하나 이상의 데이터베이스에 저장하는 단계;
    상기 서버 시스템에 의해, 사용자들의 제1 서브세트가 제1 소셜 미디어 이벤트와 연관된다고 결정하는 단계;
    상기 서버 시스템에 의해, 상기 사용자들의 제1 서브세트가 자신의 각각의 프로파일들에서의 포함을 위해 공개 관심 카테고리들의 제1 서브세트를 집합적으로 선택하였다고 결정하는 단계;
    상기 서버 시스템에 의해, 상기 사용자들의 제1 서브세트가 자신의 각각의 프로파일들에서의 포함을 위해 개인 관심 카테고리들의 제2 서브세트를 집합적으로 선택하였다고 결정하는 단계;
    상기 서버 시스템에 의해, 상기 제1 소셜 미디어 이벤트가 관심 카테고리들의 제3 서브세트와 연관된다고 결정하는 단계 - 상기 관심 카테고리들의 제3 서브세트는 상기 제1 소셜 미디어 이벤트에 관련성 있는 것으로서 상기 제1 소셜 미디어 이벤트의 제어 사용자에 의해 선택됨 -;
    상기 서버 시스템에 의해, 상기 공개 관심 카테고리들의 제1 서브세트, 상기 개인 관심 카테고리들의 제2 서브세트 및 상기 관심 카테고리들의 제3 서브세트에 기초하여, 상기 제1 소셜 미디어 이벤트에 대한 제1 이벤트 데이터 구조를 생성하는 단계 - 상기 제1 이벤트 데이터 구조는,
    상기 제1 소셜 미디어 이벤트의 표시부,
    상기 공개 관심 카테고리들의 제1 서브세트, 상기 개인 관심 카테고리들의 제2 서브세트 및 상기 관심 카테고리들의 제3 서브세트의 표시부, 및
    상기 공개 관심 카테고리들의 제1 서브세트, 상기 개인 관심 카테고리들의 제2 서브세트 및 상기 관심 카테고리들의 제3 서브세트의 각각의 관심 카테고리에 대하여, 각각의 빈도 메트릭(frequency metric)
    을 포함하고,
    각각의 관심 카테고리에 대한 상기 빈도 메트릭은,
    공개 관심 카테고리 또는 개인 관심 카테고리 중 어느 하나로서 상기 소셜 미디어 플랫폼 상의 자신의 각각의 프로파일들에서의 포함을 위해 해당 관심 카테고리를 선택한 상기 사용자들의 제1 서브세트의 사용자들의 수와 동일하게 상기 빈도 메트릭을 설정하는 것, 및
    해당 관심 카테고리가 상기 제1 소셜 미디어 이벤트의 상기 제어 사용자에 의해 선택된 경우, 상기 빈도 메트릭을 증분시키는 것
    에 의해 결정됨 -;
    상기 서버 시스템에 의해, 상기 하나 이상의 데이터베이스의 데이터에 대한 변경을 야기하는 데이터베이스 트랜잭션들(database transactions)을 감시하도록 구성된 하나 이상의 프로세스를 실행하는 단계;
    상기 서버 시스템에 의해, 데이터베이스 트랜잭션이 상기 제1 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정하는 단계 - 상기 트리거 기준 중 적어도 일부는 상기 제1 소셜 미디어 이벤트에 기초하여 데이터베이스를 수정하는 것과 연관된 상기 데이터베이스의 데이터 손실에 대한 경감 또는 계산 자원들의 할당에 관련됨 -;
    상기 데이터베이스 트랜잭션이 상기 제1 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다는 결정에 응답하여, 상기 데이터베이스 트랜잭션에 기초하여 상기 제1 이벤트 데이터 구조를 수정하는 단계;
    상기 서버 시스템에 의해, 상기 제1 이벤트 데이터 구조 및 상기 제1 이벤트 데이터 구조의 빈도 메트릭들 각각에 기초하여, 추가 사용자를 위한 상기 제1 소셜 미디어 이벤트에 대한 추천을 생성하는 단계; 및
    상기 서버 시스템에 의해, 상기 추가 사용자와 연관된 디바이스로 상기 추천을 송신하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서, 상기 데이터베이스 트랜잭션은 상기 사용자들의 제1 서브세트와 연관된 상기 프로파일 데이터에 대한 수정, 또는 상기 제1 소셜 미디어 이벤트와 연관된 상기 이벤트 데이터에 대한 수정 중 적어도 하나를 포함하는, 방법.
  3. 제2항에 있어서, 상기 수정은 관심 카테고리의 추가 또는 제거를 포함하는, 방법.
  4. 제2항에 있어서, 상기 수정은 상기 제1 소셜 미디어 이벤트와 추가 사용자의 연관, 또는 상기 제1 소셜 미디어 이벤트로부터의 사용자의 연관해제를 포함하는, 방법.
  5. 제1항에 있어서, 상기 데이터베이스 트랜잭션이 상기 제1 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정하는 단계는,
    상기 사용자들의 제1 서브세트 중 특정 사용자의 프로파일 데이터로부터 특정 공개 또는 개인 관심 카테고리가 추가 또는 제거되었다고 결정하는 단계, 및
    상기 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 단계
    를 포함하고,
    상기 제1 이벤트 데이터 구조를 수정하는 단계는, 상기 제1 이벤트 데이터 구조에서의 상기 특정 공개 또는 개인 관심 카테고리와 연관된 빈도 메트릭을 수정하는 단계를 포함하는, 방법.
  6. 제5항에 있어서, 상기 서버 시스템에 의해, 상기 데이터베이스 트랜잭션이 하나 이상의 추가 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정하는 단계; 및
    상기 데이터베이스 트랜잭션이 상기 하나 이상의 추가 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다는 결정에 응답하여, 상기 데이터베이스 트랜잭션에 기초하여 상기 하나 이상의 추가 소셜 미디어 이벤트에 대한 상기 제1 이벤트 데이터 구조를 수정하는 단계
    를 더 포함하는, 방법.
  7. 제1항에 있어서, 상기 데이터베이스 트랜잭션이 상기 제1 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정하는 단계는,
    추가 사용자가 상기 제1 소셜 미디어 이벤트와 연관되었다고 결정하는 단계, 및
    상기 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 단계
    를 포함하고,
    상기 제1 이벤트 데이터 구조를 수정하는 단계는,
    상기 추가 사용자가 공개 관심 카테고리 또는 개인 관심 카테고리 중 어느 하나로서 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 추가 관심 카테고리와 연관된다고 결정하는 단계, 및
    상기 추가 관심 카테고리의 표시부를 포함하도록 상기 제1 이벤트 데이터 구조를 수정하는 단계
    를 포함하는, 방법.
  8. 제1항에 있어서, 상기 데이터베이스 트랜잭션이 상기 제1 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정하는 단계는,
    추가 사용자가 상기 제1 소셜 미디어 이벤트와 연관되었다고 결정하는 단계, 및
    상기 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 단계
    를 포함하고,
    상기 제1 이벤트 데이터 구조를 수정하는 단계는,
    상기 추가 사용자가 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 공개 관심 카테고리들의 제1 서브세트 또는 상기 개인 관심 카테고리들의 제2 서브세트 중 특정 관심 카테고리를 선택하였다고 결정하는 단계, 및
    상기 추가 사용자가 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 공개 관심 카테고리들의 제1 서브세트 또는 상기 개인 관심 카테고리들의 제2 서브세트 중 특정 관심 카테고리를 선택하였다는 결정에 응답하여, 상기 제1 이벤트 데이터 구조에서의 상기 특정 관심 카테고리와 연관된 빈도 메트릭을 수정하는 단계
    를 포함하는, 방법.
  9. 제8항에 있어서, 상기 제1 이벤트 데이터 구조에서의 상기 특정 관심 카테고리와 연관된 빈도 메트릭을 수정하는 단계는, 상기 특정 관심 카테고리와 연관된 빈도 메트릭을 증분시키는 단계를 포함하는, 방법.
  10. 제1항에 있어서, 상기 데이터베이스 트랜잭션이 상기 제1 소셜 미디어 이벤트에 대한 트리거 기준을 충족시킨다고 결정하는 단계는,
    상기 사용자들의 제1 서브세트 중 특정 사용자가 상기 제1 소셜 미디어 이벤트와 연관해제되었다고 결정하는 단계, 및
    상기 제1 소셜 미디어 이벤트가 아직 발생하지 않았다고 결정하는 단계
    를 포함하고,
    상기 제1 이벤트 데이터 구조를 수정하는 단계는,
    상기 연관해제된 사용자가 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 공개 관심 카테고리들의 제1 서브세트 또는 상기 개인 관심 카테고리들의 제2 서브세트 중 특정 관심 카테고리를 선택하였다고 결정하는 단계, 및
    상기 연관해제된 사용자가 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 공개 관심 카테고리들의 제1 서브세트 또는 상기 개인 관심 카테고리들의 제2 서브세트 중 특정 관심 카테고리를 선택하였다는 결정에 응답하여, 상기 제1 이벤트 데이터 구조에서의 상기 특정 관심 카테고리와 연관된 빈도 메트릭을 수정하는 단계
    를 포함하는, 방법.
  11. 제10항에 있어서, 상기 제1 이벤트 데이터 구조에서의 상기 특정 관심 카테고리와 연관된 빈도 메트릭을 수정하는 단계는, 상기 특정 관심 카테고리와 연관된 빈도 메트릭을 감분시키는 단계를 포함하는, 방법.
  12. 제1항에 있어서, 상기 제1 이벤트 데이터 구조에 기초하여 히스토그램을 생성하고 표시하는 단계를 더 포함하는, 방법.
  13. 제1항에 있어서, 하나 이상의 추가 소셜 미디어 이벤트에 대한 하나 이상의 추가 이벤트 데이터 구조를 생성하는 단계; 및
    상기 제1 이벤트 데이터 구조 및 상기 하나 이상의 추가 이벤트 데이터 구조에 기초하여 복수의 히스토그램을 생성하고 표시하는 단계
    를 더 포함하는, 방법.
  14. 삭제
  15. 삭제
  16. 제1항에 있어서, 상기 제1 이벤트 데이터 구조를 생성하는 단계는, 상기 공개 관심 카테고리들의 제1 서브세트 및 상기 개인 관심 카테고리들의 제2 서브세트의 각각의 관심 카테고리에 대하여:
    공개 관심 카테고리 또는 개인 관심 카테고리 중 어느 하나로서 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 관심 카테고리를 선택하였으며 상기 제1 소셜 미디어 이벤트에 대한 초대를 수락한 상기 사용자들의 제1 서브세트의 각각의 사용자에 대하여 제1 양만큼 해당 관심 카테고리와 연관된 빈도 메트릭을 증분시키는 단계; 및
    공개 관심 카테고리 또는 개인 관심 카테고리 중 어느 하나로서 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 관심 카테고리를 선택하였으며 상기 제1 소셜 미디어 이벤트에 대한 초대를 잠정적으로 수락한 상기 사용자들의 제1 서브세트의 각각의 사용자에 대하여 제2 양만큼 해당 관심 카테고리와 연관된 빈도 메트릭을 증분시키는 단계
    를 포함하고,
    상기 제1 양은 상기 제2 양과는 다른, 방법.
  17. 삭제
  18. 삭제
  19. 제1항에 있어서, 상기 추가 사용자를 위한 상기 제1 소셜 미디어 이벤트에 대한 추천을 생성하는 단계는,
    상기 추가 사용자에 대한 프로파일 데이터를 검색하는 단계;
    상기 추가 사용자에 대한 프로파일 데이터에 기초하여, 공개 관심 카테고리 또는 개인 관심 카테고리 중 어느 하나로서 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 추가 사용자에 의해 선택된 관심 카테고리들을 결정하는 단계; 및
    상기 제1 이벤트 데이터 구조, 및 공개 관심 카테고리 또는 개인 관심 카테고리 중 어느 하나로서 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 추가 사용자에 의해 선택된 관심 카테고리들에 기초하여, 추천 점수를 결정하는 단계
    를 포함하는, 방법.
  20. 제19항에 있어서, 상기 추천 점수를 결정하는 단계는,
    상기 제1 이벤트 데이터 구조, 및 공개 관심 카테고리 또는 개인 관심 카테고리 중 어느 하나로서 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 추가 사용자에 의해 선택된 관심 카테고리들에 공통되는 하나 이상의 관심 카테고리를 결정하는 단계; 및
    상기 공통되는 관심 카테고리들 각각에 대응하는 상기 제1 이벤트 데이터 구조의 빈도 메트릭들을 합산하는 단계
    를 포함하는, 방법.
  21. 제20항에 있어서, 상기 추천 점수를 결정하는 단계는,
    상기 추가 사용자와 연관된 제1 지리적 위치와 상기 제1 소셜 미디어 이벤트와 연관된 제2 지리적 위치 사이의 거리를 결정하는 단계; 및
    상기 제1 지리적 위치와 상기 제2 지리적 위치 사이의 거리에 기초하여 상기 추천 점수를 수정하는 단계
    를 더 포함하는, 방법.
  22. 제20항에 있어서, 상기 추천 점수를 결정하는 단계는,
    공개 관심 카테고리 또는 개인 관심 카테고리 중 어느 하나로서 상기 소셜 미디어 플랫폼 상의 자신의 프로파일에서의 포함을 위해 상기 추가 사용자와 연관된 관심 카테고리들 및 상기 관심 카테고리들의 제3 서브세트에 공통되는 하나 이상의 관심 카테고리를 결정하는 단계; 및
    상기 결정에 기초하여 상기 추천 점수를 수정하는 단계
    를 더 포함하는, 방법.
  23. 제20항에 있어서, 상기 추천 점수를 결정하는 단계는,
    상기 추가 사용자와 연관된 사용자들의 수, 및 상기 추가 사용자와 상기 제1 소셜 미디어 이벤트 모두와 연관된 사용자들의 수를 결정하는 단계; 및
    상기 결정에 기초하여 상기 추천 점수를 수정하는 단계
    를 더 포함하는, 방법.
  24. 제20항에 있어서, 상기 추가 사용자를 위한 상기 제1 소셜 미디어 이벤트에 대한 추천을 생성하는 단계는,
    상기 추천 점수가 임계 점수를 초과한다고 결정하는 단계; 및
    상기 추천 점수가 임계 점수를 초과한다는 결정에 응답하여, 상기 제1 소셜 미디어 이벤트를 식별하는 통지를 상기 추가 사용자에 대하여 생성하는 단계
    를 더 포함하는, 방법.
  25. 제1항에 있어서, 그래픽 사용자 인터페이스를 렌더링하는 단계 - 상기 그래픽 사용자 인터페이스는 상기 제1 이벤트 데이터 구조의 지리적 표현을 포함함 -; 및
    상기 그래픽 사용자 인터페이스를 사용자에게 제시하는 단계
    를 더 포함하는, 방법.
  26. 제1항에 있어서, 상기 제1 이벤트 데이터 구조는 실질적으로 실시간으로 수정되는, 방법.
  27. 제1항에 있어서, 상기 제1 이벤트 데이터 구조는 주기적으로 수정되는, 방법.
  28. 제1항에 있어서, 상기 서버 시스템에 의해, 상기 사용자를 위한 추가 관심 카테고리에 대한 추천을 생성하는 단계를 더 포함하는, 방법.
  29. 제28항에 있어서, 상기 추가 관심 카테고리에 대한 추천을 생성하는 단계는,
    상기 사용자가 소셜 미디어 이벤트들의 제1 서브세트와 연관된다고 결정하는 단계;
    관심 카테고리들의 제3 서브세트가 상기 소셜 미디어 이벤트들의 제1 서브세트 중 적어도 하나의 소셜 미디어 이벤트와 연관된다고 결정하는 단계; 및
    상기 관심 카테고리들의 제3 서브세트에서의 각각의 관심 카테고리에 대한 추천 점수를 결정하는 단계
    를 포함하는, 방법.
  30. 제29항에 있어서, 상기 추천 점수를 결정하는 단계는,
    상기 소셜 미디어 이벤트들의 제1 서브세트의 각각의 소셜 미디어 이벤트에 대하여, 대응하는 이벤트 데이터 구조를 검색하는 단계; 및
    상기 관심 카테고리들의 제3 서브세트의 각각의 관심 카테고리에 대하여, 상기 관심 카테고리에 대응하는 검색된 이벤트 데이터 구조들의 빈도 메트릭들을 합산하는 단계
    를 포함하는, 방법.
  31. 제30항에 있어서, 상기 추천 점수를 결정하는 단계는,
    상기 소셜 미디어 이벤트들의 제1 서브세트의 각각의 소셜 미디어 이벤트에 대하여, 상기 소셜 미디어 이벤트의 제어 사용자에 의해 선택된 하나 이상의 관심 카테고리를 결정하는 단계; 및
    상기 결정에 기초하여 상기 추천 점수를 수정하는 단계
    를 더 포함하는, 방법.
  32. 제1항에 있어서,
    상기 서버 시스템에 의해, 상기 공개 관심 카테고리들의 제1 서브세트 및 상기 관심 카테고리들의 제3 서브세트에 기초하여, 상기 제1 소셜 미디어 이벤트에 대한 제2 이벤트 데이터 구조를 생성하는 단계 - 상기 제2 이벤트 데이터 구조는,
    상기 제1 소셜 미디어 이벤트의 표시부,
    상기 공개 관심 카테고리들의 제1 서브세트 및 상기 관심 카테고리들의 제3 서브세트의 표시부, 및
    상기 공개 관심 카테고리들의 제1 서브세트 및 상기 관심 카테고리들의 제3 서브세트의 각각의 관심 카테고리에 대하여, 각각의 빈도 메트릭
    을 포함하고,
    각각의 관심 카테고리에 대한 상기 빈도 메트릭은,
    공개 관심 카테고리로서 상기 소셜 미디어 플랫폼 상의 자신의 각각의 프로파일들에서의 포함을 위해 해당 관심 카테고리를 선택한 상기 사용자들의 제1 서브세트의 사용자들의 수와 동일하게 상기 빈도 메트릭을 설정하는 것, 및
    해당 관심 카테고리가 상기 제1 소셜 미디어 이벤트의 상기 제어 사용자에 의해 선택된 경우, 상기 빈도 메트릭을 증분시키는 것
    에 의해 결정됨 -; 및
    상기 서버 시스템에 의해, 상기 제2 이벤트 데이터 구조가 상기 복수의 사용자 중 적어도 일부에 표시되게 하는 단계
    를 더 포함하는, 방법.
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
  40. 삭제
  41. 삭제
  42. 삭제
KR1020197017322A 2018-02-07 2019-02-06 히스토그램 기반 분석을 이용한 이벤트 데이터베이스 관리 KR102217822B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862627452P 2018-02-07 2018-02-07
US62/627,452 2018-02-07
PCT/US2019/016771 WO2019113612A1 (en) 2018-02-07 2019-02-06 Managing event calendars using histogram-based analysis

Publications (2)

Publication Number Publication Date
KR20190111907A KR20190111907A (ko) 2019-10-02
KR102217822B1 true KR102217822B1 (ko) 2021-02-18

Family

ID=66750652

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197017322A KR102217822B1 (ko) 2018-02-07 2019-02-06 히스토그램 기반 분석을 이용한 이벤트 데이터베이스 관리

Country Status (9)

Country Link
US (2) US20190244308A1 (ko)
EP (1) EP3526742A4 (ko)
JP (1) JP6723453B2 (ko)
KR (1) KR102217822B1 (ko)
CN (1) CN110366736B (ko)
AU (2) AU2019204223A1 (ko)
CA (1) CA3050995C (ko)
IL (1) IL266527B (ko)
WO (1) WO2019113612A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7278213B2 (ja) * 2018-09-14 2023-05-19 ライク,フィリップ 交流推薦システム
CN112434090B (zh) * 2020-11-24 2022-07-12 四川长虹电器股份有限公司 基于匹配筛选和三维直方图的学生端智能选课方法
US20220201455A1 (en) * 2020-12-18 2022-06-23 Social Asset Management Inc. Method and system for managing electronic data representing emergency alerts
JP7083104B1 (ja) 2021-10-19 2022-06-10 株式会社エクサウィザーズ 情報処理方法、装置及びプログラム
JP7408067B2 (ja) * 2022-03-16 2024-01-05 株式会社考える学校 マッチングイベントシステム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110010244A1 (en) 2009-07-10 2011-01-13 Microsoft Corporation Sponsored application launcher suggestions
JP2014078182A (ja) 2012-10-11 2014-05-01 Mixi Inc 場の特徴量に応じた、イベントとユーザとの親和度算定プログラム、及び親和度反映型ユーザレコメンド装置並びに親和度反映型フィード配信装置並びにフィード表示制御装置
US20180013818A1 (en) * 2016-07-11 2018-01-11 Facebook, Inc. Events Discovery Interface

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140143004A1 (en) * 2006-11-22 2014-05-22 Raj Abhyanker Event publication in a neighborhood social network
US8156064B2 (en) * 2007-07-05 2012-04-10 Brown Stephen J Observation-based user profiling and profile matching
US10230803B2 (en) * 2008-07-30 2019-03-12 Excalibur Ip, Llc System and method for improved mapping and routing
US20100114614A1 (en) * 2008-11-06 2010-05-06 Sheldon Sharpe Controlling Registration for a Social Event
US8495065B2 (en) * 2009-02-02 2013-07-23 Waldeck Technology, Llc Maintaining a historical record of anonymized user profile data by location for users in a mobile environment
JP2011203914A (ja) * 2010-03-25 2011-10-13 Nomura Research Institute Ltd イベント情報発信装置およびコンピュータプログラム
US9253615B2 (en) * 2010-11-30 2016-02-02 Microsoft Technology Licensing, Llc Event planning within social networks
US20120311462A1 (en) * 2011-05-12 2012-12-06 John Devecka System and method for an interactive mobile-optimized icon-based professional profile display and associated search, matching and social network
US10091324B2 (en) * 2012-08-01 2018-10-02 The Meet Group, Inc. Content feed for facilitating topic discovery in social networking environments
US9047382B2 (en) * 2012-08-13 2015-06-02 Facebook, Inc. Customized presentation of event guest lists in a social networking system
US8554873B1 (en) * 2012-10-05 2013-10-08 Google Inc. Custom event and attraction suggestions
US20150348106A1 (en) * 2014-05-29 2015-12-03 Google Inc. Dynamic content item creation
US20170099592A1 (en) * 2014-05-30 2017-04-06 Interdigital Technology Corporation Personalized notifications for mobile applications users
US20170034108A1 (en) * 2015-07-30 2017-02-02 Facebook, Inc. Determining event recommendability in online social networks
KR101725510B1 (ko) * 2015-09-18 2017-04-12 충북대학교 산학협력단 사용자 성향을 고려한 소셜 이벤트 추천 방법 및 장치
US20170200128A1 (en) * 2016-01-07 2017-07-13 Facebook, Inc. Creating digital events utilizing natural language processing
JP6659429B2 (ja) * 2016-03-31 2020-03-04 アルパイン株式会社 イベント情報提示装置、方法およびプログラム
US10051108B2 (en) * 2016-07-21 2018-08-14 Google Llc Contextual information for a notification

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110010244A1 (en) 2009-07-10 2011-01-13 Microsoft Corporation Sponsored application launcher suggestions
JP2014078182A (ja) 2012-10-11 2014-05-01 Mixi Inc 場の特徴量に応じた、イベントとユーザとの親和度算定プログラム、及び親和度反映型ユーザレコメンド装置並びに親和度反映型フィード配信装置並びにフィード表示制御装置
US20180013818A1 (en) * 2016-07-11 2018-01-11 Facebook, Inc. Events Discovery Interface

Also Published As

Publication number Publication date
US20230385955A1 (en) 2023-11-30
EP3526742A1 (en) 2019-08-21
CN110366736B (zh) 2021-01-05
AU2020281002A1 (en) 2021-01-07
JP2020516966A (ja) 2020-06-11
WO2019113612A8 (en) 2019-07-04
WO2019113612A1 (en) 2019-06-13
CN110366736A (zh) 2019-10-22
JP6723453B2 (ja) 2020-07-15
IL266527B (en) 2020-05-31
US20190244308A1 (en) 2019-08-08
EP3526742A4 (en) 2019-10-09
CA3050995C (en) 2021-06-01
CA3050995A1 (en) 2019-06-13
KR20190111907A (ko) 2019-10-02
IL266527A (en) 2019-07-31
AU2019204223A1 (en) 2019-11-28

Similar Documents

Publication Publication Date Title
KR102217822B1 (ko) 히스토그램 기반 분석을 이용한 이벤트 데이터베이스 관리
US11205145B2 (en) Rules based driver selection
US11307753B2 (en) Systems and methods for automating tablature in collaborative work systems
US11030556B1 (en) Digital processing systems and methods for dynamic object display of tabular information in collaborative work systems
CN109690608B (zh) 外推信任得分中的趋势
CN107683486B (zh) 用户事件的具有个人影响性的改变
CN109074389B (zh) 可信度指标的众包
US10305847B2 (en) Structuring notification of events to users in a social networking system
US9262732B2 (en) System and method of enterprise action item planning, executing, tracking and analytics
US9864974B2 (en) Serendipitous issue reminder system
WO2019032341A1 (en) DISTRIBUTED REPUTATION DATABASE
EP2426634A1 (en) Computer-implemented method and system for processing and monitoring business-to -business relationships
EP3526749A1 (en) Meeting service with meeting time and location optimization
US20130247055A1 (en) Automatic Execution of Actionable Tasks
US8880607B1 (en) Generating suggestions for user groups in social networks
US20220292151A1 (en) System and Method for Controlling Visibility of Elements of Displayed Electronic Content
US20220351312A1 (en) System and Method for Searching and Monitoring Assets Available for Acquisition
US10659299B1 (en) Managing privacy settings for content on online social networks
US8326668B2 (en) Managing encounters with persons
US20230306837A1 (en) Contextual item discovery and pattern inculcated reminder mechanism
JP6820574B1 (ja) 人材データ提供装置、人材データ提供方法、および人材データ提供プログラム
US20180365652A1 (en) Providing anomaly based notification on calendar

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant