使用基于直方图的分析的管理事件数据库的制作方法

文档序号:18943075发布日期:2019-10-23 01:18阅读:164来源:国知局
使用基于直方图的分析的管理事件数据库的制作方法

本公开涉及维护数据库系统,并且更具体地涉及维护社交媒体事件项的数据库(例如,用于与社交媒体平台一起使用),使得用户能够以自动方式创建和共享社交媒体事件项。



背景技术:

数据库(例如,关系数据库或另一种数据库)可存储各种数据,例如由社交媒体平台生成和维护的数据。社交媒体平台是一种在线平台,使得用户能够与其他用户建立社交网络和/或社交关系。例如,用户可在社交媒体平台上创建角色,并使用这个角色与其他用户交互。作为一个实例,用户可通过输入个人信息、履历信息和/或其他信息(例如,姓名、联系信息、个人兴趣、工作信息、照片、视频、音频等)来创建社交媒体简档。此外,用户可将自己与社交媒体平台的其他用户相关联(例如,通过指定熟人、商业联络和/或朋友的一个或多个用户)。

在一些情况下,社交媒体平台还使得用户能够彼此共享信息。例如,在一些社交媒体平台中,用户可通过社交媒体平台彼此传输消息、照片、视频、音频、文档和/或其他内容。

在一些情况下,社交媒体平台还使得用户能够推广和组织事件。例如,在一些社交媒体平台中,用户可输入关于即将发生的事件的信息,并与其他用户共享所述信息。收件人可查看关于事件的信息、讨论事件和/或回复事件。



技术实现要素:

社交媒体平台可使得用户能够以自动方式来推广和组织事件。例如,事件的“控制用户”(例如,负责创建、组织、预定、重新预定、管理和/或公开事件的用户)可与社交媒体平台交互以创建表示事件的社交媒体事件项。控制用户可用关于事件的信息来填充社交媒体事件项,所述关于事件的信息诸如事件的预定时间、事件的计划位置、事件的描述以及有关事件的其他内容(例如,文本、图像、音频、视频等)。此外,控制用户可与其他用户(例如,潜在参与者)共享社交媒体事件项。每个接收者可查看社交媒体事件项以获得关于事件的信息、讨论事件和/或回复事件。

在一些情况下,控制用户可指定与事件有关、相关和/或以其他方式相关联的一个或多个兴趣类别。此外,所述控制用户针对特定事件指定的所述兴趣类别可用于向一个或多个用户自动推荐或建议所述事件。例如,每个用户可与社交媒体平台交互以创建社交媒体简档(例如,包括关于用户的信息的个人简档),并且用她感兴趣的一个或多个兴趣类别填充她的社交媒体简档。基于此信息,社交媒体平台可自动确定特定用户可能对事件感兴趣(例如,由于所述用户的社交媒体简档和事件的社交媒体事件项两者所共有的兴趣类别)。作为响应,社交媒体平台可自动将事件的社交媒体事件项呈递给所述第二用户。

在一些情况下,所述社交媒体平台可基于指示他们计划参与所述事件的所述用户所选择的所述兴趣类别而自动地建议或推荐特定事件。例如,许多用户可能对特定事件已经回复了“是”(例如,指示他们计划参与此事件)。此外,那些用户的重要部分可能已经各自为他们相应的社交媒体简档选择特定兴趣类别,所述特定兴趣类别未包括在事件的社交媒体事件项中。基于此信息,社交媒体平台可自动确定对此另外的兴趣类别感兴趣的用户也可喜欢此事件,即使此事件的控制用户没有明确指定另外的兴趣类别。因此,社交媒体平台可自动将事件的社交媒体事件项呈递给也在其社交媒体简档中选择了另外的兴趣类别的一个或多个其他用户。

在一方面,一种方法包括由服务器系统生成:多个用户的简档数据和多个社交媒体事件的事件数据。针对每个用户,所述简档数据包括与所述用户相关联的一个或多个兴趣类别的指示。针对每个社交媒体事件,所述事件数据包括与所述社交媒体事件相关联的一个或多个用户的指示。所述方法还包括由所述服务器系统确定第一用户子集与第一社交媒体事件相关联,并且由所述服务器系统将所述简档数据和所述事件数据存储在一个或多个数据库中。所述方法还包括由所述服务器系统确定第一兴趣类别子集与所述第一用户子集相关联;并且由所述服务器系统确定第二兴趣类别子集与所述第一社交媒体事件相关联,所述第二兴趣类别子集由所述第一社交媒体事件的控制用户选择。所述方法还包括基于所述第一兴趣类别子集和所述第二兴趣类别子集而生成所述第一社交媒体事件的事件数据结构。事件数据结构包括第一兴趣类别子集和第二兴趣类别子集的指示,并且针对第一兴趣类别子集和第二兴趣类别子集中的每个兴趣类别,包括基于第一用户子集中的与所述兴趣类别相关联的用户数目以及所述兴趣类别是否已经由第一社交媒体事件的控制用户选择的相应的频率度量。所述方法还包括由所述服务器系统执行一个或多个过程,所述一个或多个过程被配置来监视致使所述一个或多个数据库的数据变化的数据库事务;由所述服务器系统确定事务满足相对于所述第一社交媒体事件的触发标准;以及响应于确定所述事务满足相对于所述第一社交媒体事件的所述触发标准,基于所述事务而修改所述事件数据结构。

此方面的实现方式可包括以下特征中的一者或多者。

在一些实现方式中,所述事务可包括对与所述第一用户子集相关联的简档数据的修改、对与所述第一事件相关联的事件数据的修改中的至少一者。

在一些实现方式中,所述修改可包括:添加或移除兴趣类别。

在一些实现方式中,所述修改可包括另外的用户与所述第一社交媒体事件的关联,或用户与所述第一社交媒体事件的解除关联。

在一些实现方式中,确定事务满足相对于第一社交媒体事件的触发标准可包括:确定已经添加或从第一用户子集中的特定用户的简档数据移除特定兴趣类别,以及确定第一社交媒体事件尚未发生。修改事件数据结构可包括:修改事件数据结构中与特定兴趣类别相关联的频率度量。

在一些实现方式中,所述方法还可包括由所述服务器系统确定事务满足相对于一个或多个另外的社交媒体事件的触发标准,并且响应于确定事务满足相对于一个或多个社交媒体事件的触发标准,基于事务而修改一个或多个社交媒体事件的事件数据结构。

在一些实现方式中,确定事务满足相对于第一社交媒体事件的触发标准可包括:确定另外的用户已经与第一社交媒体事件相关联,以及确定第一社交媒体事件尚未发生。修改事件数据结构可包括:确定另外的用户与另外的兴趣类别相关联,以及修改事件数据结构以包括另外的兴趣类别的指示。

在一些实现方式中,确定事务满足相对于第一社交媒体事件的触发标准可包括:确定另外的用户已经与第一社交媒体事件相关联,以及确定第一社交媒体事件尚未发生。修改事件数据结构可包括:确定另外的用户与第一兴趣类别子集中的特定兴趣类别相关联,并且响应于确定另外的用户与第一兴趣类别子集中的特定兴趣类别相关联,修改事件数据结构中与特定兴趣类别相关联的频率度量。

在一些实现方式中,修改事件数据结构中与特定兴趣类别相关联的频率度量可包括:使与特定兴趣类别相关联的频率度量递增。

在一些实现方式中,确定事务满足相对于第一社交媒体事件的触发标准可包括:确定第一用户子集中的特定用户已经与第一社交媒体事件解除关联,以及确定第一社交媒体事件尚未发生。修改事件数据结构可包括:确定解除关联的用户与第一兴趣类别子集中的特定兴趣类别相关联,并且响应于确定解除关联的用户与第一兴趣类别子集中的特定兴趣类别相关联,修改事件数据结构中与特定兴趣类别相关联的频率度量。

在一些实现方式中,修改事件数据结构中与特定兴趣类别相关联的频率度量可包括:使与特定兴趣类别相关联的频率度量递减。

在一些实现方式中,所述方法还可包括基于所述事件数据结构而生成和显示直方图。

在一些实现方式中,所述方法还可包括生成一个或多个另外的社交媒体事件的一个或多个另外的事件数据结构,以及基于所述事件数据结构和所述一个或多个另外的事件数据结构而生成和显示多个直方图。

在一些实现方式中,针对至少一个用户,简档数据可包括与所述用户相关联的一个或多个公开兴趣类别的指示和与所述用户相关联的一个或多个隐私兴趣类别的指示。所述用户与所述一个或多个公开兴趣类别之间的关联是一个或多个其他用户可访问的。所述用户与所述一个或多个隐私兴趣类别之间的关联是一个或多个其他用户不可访问的。

在一些实现方式中,所述方法还可包括基于所述事件数据结构而生成和显示与对应于所述一个或多个公开兴趣类别的直方图。

在一些实现方式中,针对第一兴趣类别子集中的每个兴趣类别,基于第一兴趣类别子集而生成事件数据结构可包括:针对第一用户子集中与兴趣类别相关联并且已经接受了对第一社交媒体事件的邀请的每个用户,使与所述兴趣类别相关联的频率度量递增第一量,以及针对第一用户子集中与所述兴趣类别相关联并且已经暂时接受了对第一社交媒体事件的邀请的每个用户,使与所述兴趣类别相关联的频率度量递增第二量。第一量可与第二量不同。

在一些实现方式中,确定第一兴趣类别子集与第一用户子集相关联可包括:将由用户子集中的至少一个用户选择的一个或多个兴趣类别标识为第一兴趣类别子集。

在一些实现方式中,所述方法还可包括由所述服务器系统基于所述事件数据结构为另外的用户而生成针对所述第一社交媒体事件的推荐。

在一些实现方式中,为另外的用户生成针对第一社交媒体事件的推荐可包括:检索另外的用户的简档数据,基于另外的用户的简档数据而确定与另外的用户相关联的兴趣类别,以及基于与另外的用户相关联的兴趣类别和事件数据结构而确定推荐分数。

在一些实现方式中,确定推荐分数可包括:确定与另外的用户和事件数据结构相关联的兴趣类别所共有的一个或多个兴趣类别,并且对事件数据结构的对应于共有兴趣类别中的每一个的频率度量求和。

在一些实现方式中,确定推荐分数还可包括:确定与另外的用户相关联的第一地理位置和与第一社交媒体事件相关联的第二地理位置之间的距离,以及基于第一地理位置与第二地理位置之间的距离而修改推荐分数。

在一些实现方式中,确定推荐分数还可包括:确定第二兴趣类别子集和与另外的用户相关联的兴趣类别所共有的一个或多个兴趣类别,并且基于所述确定而修改推荐分数。

在一些实现方式中,确定推荐分数还可包括确定:与第二用户相关联的用户数目以及与第二用户和第一社交媒体事件两者都相关联的用户数目,并且基于所述确定而修改推荐分数。

在一些实现方式中,为另外的用户生成针对第一社交媒体事件的推荐还可包括:确定推荐分数超过阈值分数,并且响应于确定推荐分数超过阈值分数而向另外的用户生成标识第一社交媒体事件的通知。

在一些实现方式中,所述方法还可包括呈现图形用户界面,其中所述图形用户界面包括所述事件数据结构的图形表示;以及将所述图形用户界面呈递给用户。

在一些实现方式中,所述事件数据结构可基本上实时地被修改。

在一些实现方式中,所述事件数据结构可定期地被修改。

在一些实现方式中,所述方法还可包括由所述服务器系统为所述第一用户生成针对另外的兴趣类别的推荐。

在一些实现方式中,生成针对另外的兴趣类别的推荐可包括:确定第一用户与第一社交媒体事件子集相关联,确定第三兴趣类别子集与第一社交媒体事件子集中的至少一个社交媒体事件相关联;以及确定第三兴趣类别子集中针对每个兴趣类别的推荐分数。

在一些实现方式中,确定推荐分数可包括:针对第一社交媒体事件子集中的每个社交媒体事件,检索对应的事件数据结构,以及针对第三兴趣类别子集中的每个兴趣类别,对所检索事件数据结构的对应于兴趣类别的频率度量求和。

在一些实现方式中,确定推荐分数还可包括:针对第一社交媒体事件子集中的每个社交媒体事件,确定由社交媒体事件的控制用户选择的一个或多个兴趣类别,并且基于此确定而修改推荐分数。

在另一方面,一种方法包括由服务器系统生成场地数据。场地数据包括由控制用户相对于场地选择的一个或多个第一兴趣类别的指示和与场地相关联的一个或多个事件的指示。所述方法还包括由所述服务器系统生成与所述场地相关联的所述一个或多个事件中的每一个的事件数据结构。每个事件数据结构包括与事件相关联的一个或多个第二兴趣类别的指示,并且针对一个或多个第二兴趣类别中的每个兴趣类别,包括相应的频率度量。所述方法还包括由所述服务器系统基于所述场地数据和所述一个或多个事件数据结构而生成场地数据结构。所述场地数据结构包括所述一个或多个第一类别和所述一个或多个第二兴趣类别的指示,并且针对所述一个或多个第一类别和所述一个或多个第二兴趣类别中的每个兴趣类别,包括基于所述场地数据和所述一个或多个事件数据结构而确定的相应的频率度量。所述方法还包括由所述服务器系统执行一个或多个过程,所述一个或多个过程被配置来监视致使所述一个或多个数据库的数据变化的数据库事务。所述方法还包括由所述服务器系统确定事务满足相对于所述场地数据结构的触发标准,并且作为响应,基于所述事务而修改所述场地数据结构。

此方面的实现方式可包括以下特征中的一者或多者。

在一些实现方式中,所述事务可包括对一个或多个事件数据结构的修改。

在一些实现方式中,所述事务可包括对所述场地数据的修改。

在一些实现方式中,所述方法还可包括基于所述场地数据结构而生成和显示直方图。

在一些实现方式中,生成场地数据结构可包括:针对每个事件数据结构确定相应的权重,以及基于权重而确定场地数据结构的频率度量。

在一些实现方式中,每个权重可对应于相应的事件的发生的新近度。

在一些实现方式中,所述方法还可包括由所述服务器系统基于场地数据和一个或多个事件数据结构而生成一个或多个另外的场地数据结构。每个另外的场地数据结构可包括根据相应的时间的一个或多个第一类别和一个或多个第二兴趣类别的指示,以及针对一个或多个第一类别和一个或多个第二兴趣类别中的每个兴趣类别的指示,包括根据此时间的相应的频率度量。

在一些实现方式中,所述方法还可包括基于所述场地数据结构和所述一个或多个另外的场地数据结构而生成和显示多个直方图。

在一些实现方式中,所述方法还可包括呈现图形用户界面。图形用户界面可包括事件数据结构的图形表示。所述方法还可包括向用户呈递图形用户界面。

在一些实现方式中,场地数据结构可基本上实时地被修改。

在一些实现方式中,场地数据结构可定期地被修改。

本文所述的实现方式中的一种或多种可提供各种技术益处。例如,社交媒体平台的实现方式可使得用户能够通过计算机化通信网络快速有效地创建、修改和发布事件信息。作为一个实例,社交媒体平台可自动确定事件的潜在相关兴趣类别,自动将那些兴趣类别与对应的社交媒体事件项相关联,并向一个或多个用户自动推荐此事件(例如,通过将事件社交媒体项呈递给可能对事件感兴趣的一个或多个用户)。由于这可以自动方式执行,因此事件的控制用户可使用较少的输入来创建、修改和/或发布事件信息(例如,与手动标识与事件相关联的兴趣类别、手动修改事件的社交媒体以包括另外的兴趣类别、手动标识可能对事件感兴趣的用户、手动将事件的社交媒体事件项共享给那些用户等等相比)。因此,用户设备所利用的计算和网络资源有所减少。此外,社交媒体平台的实现方式根据特定数据处理规则接收、处理、存储和/或传输数据,从而使得社交媒体平台能够一致、可靠且有效地操作,并产生使用传统技术以其它方式无法实现的结果(例如,以动态方式自动维护社交媒体事件项、自动标识可能对特定事件感兴趣的用户等)。此外,这些操作可通过将基于计算机的规则应用于众包计算机化数据记录来执行,而不是基于主观人类输入(例如,关于每个事件或场地的相关兴趣类别的人类的主观确定)。因此,这使得计算机能够执行过去可能困难、不切实际或不可能的任务。例如,计算机系统可自动确定准确描述事件或场地的兴趣类别,并基于所述确定而做出推荐。

一个或多个实施方案的细节在附图和以下描述中阐明。其他特征和优点从描述和附图以及权利要求中将是显而易见的。

附图说明

图1是用于实现社交媒体平台的示例性系统的图。

图2是示例性社交媒体平台的图。

图3a至图3c是示出社交媒体平台以自动方式推广和组织事件的示例性用法的图。

图4a至图4c是示出社交媒体平台以自动方式推广和组织事件的另一示例性用法的图,其考虑了社交媒体平台的用户的隐私偏好。

图5a和图5b是示出社交媒体平台以自动方式标识并向用户推荐兴趣类别的示例性用法的图。

图6至图9、图10a和图10b是用于与社交媒体平台交互的示例性用户界面的图。

图11a和图11b是示出社交媒体平台以自动方式确定场地特征的示例性用法的图。

图12描绘呈三维直方图形式的示例性场地数据结构。

图13描绘呈三维直方图形式的一系列事件的示例性事件数据结构。

图14是用于以自动方式标识并向用户推荐事件的示例性过程的流程图。

图15是用于自动确定场地特征的示例性过程的流程图。

图16是示例性计算系统的图。

各个图中的相同附图标号指示相同元件。

具体实施方式

社交媒体平台可使得用户能够使用社交媒体事件项以自动方式来推广和组织事件。社交媒体事件项是表示事件的数据的一部分,并且通常包括如下数据,诸如社交媒体事件的日期和时间、事件的描述、与事件相关联的一个或多个社交媒体简档(例如,对应于生成社交媒体事件项的用户和社交媒体平台的其他用户的社交媒体简档)以及与社交媒体事件有关的其他内容。社交媒体事件项通常存储在与社交媒体平台相关联的数据库中。维护此数据库有时可包括:使用特定于表示事件的数据(例如社交媒体事件项)的数据处理规则。

在示例性实现方式中,用户可与社交媒体平台交互以创建表示事件的社交媒体事件项。用户可用关于事件的信息来填充社交媒体事件项,所述关于事件的信息诸如事件的预定时间、事件的计划位置、事件的描述以及关于事件的其他内容(例如,文本、图像、音频、视频等)。

在已经生成社交媒体事件项之后,用户可宣传对应于此事件的社交媒体事件项,使得其他用户可访问此社交媒体事件项。例如,用户可使用社交媒体平台与其他人共享社交媒体事件项。接收者可查看社交媒体事件项以获得关于事件的信息、讨论事件(例如,使用由社交媒体平台提供的讨论引擎)和/或回复事件(例如,使用由社交媒体平台提供的回复引擎)。

在一些情况下,控制用户可指定与事件有关、相关和/或以其他方式相关联的一个或多个兴趣类别。例如,针对“teamsharks”与“teamjets”之间的棒球比赛,此赛事的控制用户可指定兴趣类别,诸如“teamsharks”、“teamjets”、“棒球”、“运动”、“户外”等。这些兴趣类别可作为社交媒体事件项的一部分呈递给每个用户。例如,这可能是有益的,因为它使得潜在参与者能够快速评估事件的性质并确定他们是否愿意参与。

在一些情况下,控制用户针对特定事件指定的兴趣类别可用于自动向一个或多个用户推荐或建议所述事件。例如,每个用户可与社交媒体平台交互以创建社交媒体简档(例如,包括关于用户的信息的个人简档),并且用她感兴趣的一个或多个兴趣类别填充她的社交媒体简档。例如,第一用户可创建指示她对“音乐”、“足球”和“电影”感兴趣的社交媒体简档,而第二用户可创建指示她对“食物”、“棒球”和“阅读”感兴趣的社交媒体简档。基于此信息,社交媒体平台可自动确定第二用户可能对“teamsharks”与“teamjets”之间的棒球比赛感兴趣(例如,因为“棒球”兴趣类别为第二用户的社交媒体简档和表示棒球比赛的社交媒体事件项两者所共有),并且自动将表示棒球比赛的社交媒体事件项呈递给第二用户。

在一些情况下,所述社交媒体平台可基于指示他们计划参与所述事件的所述用户所选择的所述兴趣类别而自动地建议或推荐特定事件。例如,许多用户可能对“teamsharks”与“teamjets”之间的棒球比赛回复“赞成”(例如,指示他们计划参与此事件)。此外,那些用户的重要部分可能已经各自为他们相应的社交媒体简档选择了“垒球”兴趣类别。基于此信息,社交媒体平台可自动确定喜欢垒球的用户可能也喜欢棒球比赛,即使事件的控制用户没有明确指定“垒球”兴趣类别。因此,社交媒体平台可将当前棒球比赛的社交媒体事件项自动地传输给在社交媒体简档中选择“垒球”兴趣类别的一个或多个其他用户。

图1中示出用于实现社交媒体平台的示例性系统100。系统100包括在包括一个或多个服务器计算机的服务器系统102上维护的社交媒体平台150。

服务器系统102使用网络106通信地连接到客户端设备104a-c。每个客户端设备104a-c包括相应的用户界面108a-c。用户与用户界面108a-c交互以查看数据(例如,服务器系统102和平台150上的数据、和/或其他客户端设备104a-c上的数据)。用户还与用户界面108a-c交互以将数据传输到其他设备(例如,传输到服务器系统102和平台150、和/或传输到其他客户端设备104a-c)。用户与用户界面108a-c交互以发出命令110a-c(例如,到服务器系统102和平台150、和/或到其他客户端设备104a-c)。命令110a-c可以是例如到服务器系统102和/或到其他客户端设备104a-c的任何用户指令。在一些实现方式中,用户可将软件应用程序安装到客户端设备104a-c上,以便促进这些任务的执行。

客户端设备104a-c可以是用户用来查看、处理、传输和接收数据的任何电子设备。客户端设备104a-c的实例包括计算机(诸如台式计算机、笔记本计算机、服务器系统等)、移动计算设备(诸如蜂窝电话、智能电话、平板电脑、个人数据助理、具有联网能力的笔记本计算机)以及能够从网络106传输和接收数据的其他计算设备。客户端设备104a-c可包括使用一个或多个操作系统(例如,microsoftwindows、appleosx、linux、unix、android、appleios等)和/或架构(例如,x86、powerpc、arm等)操作的设备。在一些实现方式中,客户端设备104a-c中的一个或多个不必相对于系统100的其余部分本地地定位,并且客户端设备104a-c中的一个或多个可位于一个或多个远程物理位置中。在一些实现方式中,客户端设备104a-c可与地理定位系统(例如,全球定位系统[gps]、wi-fi三角形系统等)通信,以便确定其地理位置。

网络106可以是可藉以传输和共享数据的任何通信网络。例如,网络106可以是局域网(lan)或诸如互联网的广域网(wan)。网络106可使用各种网络接口来实现,所述网络接口诸如无线网络接口(诸如wi-fi、蓝牙或红外)或有线网络接口(诸如以太网或串行连接)。网络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)确定的地理坐标、wi-fi三角测量系统或其他地理定位系统)、关系信息(例如,用户与其他用户的关联的指示等),以及其他用户信息(例如,用户的书面内容的集合、照片、视频、音频内容等)。作为另一实例,数据库模块202可存储关于用户的一个或多个兴趣的信息(例如,用户选择的一个或多个兴趣类别,诸如“阅读”、“运动”、“户外”、“电影”、“乡村音乐”等)。可以社交媒体简档210(例如,表示特定用户的数据的一部分)的形式对关于每个用户的信息进行评分。

数据库模块202还可存储关于一个或多个事件的信息。作为一个实例,每个事件可表示为相应的社交媒体事件项212。每个社交媒体事件项212可包括关于事件的预定信息。例如,社交媒体事件项212可指定事件预定发生的时间(例如,日期和当天的时间)、事件的预定持续时间和/或事件的预定结束时间。每个社交媒体事件项212可包括关于事件的内容。例如,社交媒体事件项212可包括文本信息、图像、视频、音频或与事件相关的其他内容。每个社交媒体事件项212还可包括关于负责控制事件的用户(例如,“控制用户”)和/或事件的受邀者的信息。例如,社交媒体事件项212可指示事件的一个或多个控制用户(例如,负责创建、组织、预定、重新预定、管理和/或公开事件的一个或多个用户)和/或一个或多个已经受邀参与事件的的用户。每个社交媒体事件项212还可包括关于受邀者中的一个或多个的回复信息。例如,社交媒体事件项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传输数据并且从平台150传输数据。例如,传输模块204可通信地连接到网络106,使得它可将数据传输到客户端设备104a-c,并且通过网络106从客户端设备104a-c接收数据。作为一个实例,用户在客户端设备104a-c上输入的信息可通过传输模块204传输到平台150。然后可处理(例如,使用处理模块206)和/或存储(例如,使用数据库模块202)此信息。作为另一实例,来自平台150的信息(例如,存储在数据库模块202上的信息)可通过传输模块204传输到客户端设备104a-c。

处理模块206处理平台150存储或以其他方式可访问的数据。例如,处理模块206可执行操纵与一个或多个用户或事件有关的数据的自动或用户启动的过程。作为一个实例,处理模块206可生成数据库查询214然后将其传输到数据库模块202,以便检索、修改和/或删除存储在数据库模块202上的数据。作为另一实例,处理模块206可直接生成和执行数据库查询214(例如,处理模块206可执行数据库查询214以直接检索、修改和/或删除存储在数据库模块202中的数据)。此外,处理模块206可处理从传输模块204接收的数据。同样,来自处理模块206的经处理的数据可存储在数据库模块202上(例如,使用一个或多个数据库查询214)和/或发送到传输模块204以便传输到其他设备。下面更详细地描述可由处理模块206执行的示例性过程。

在一些情况下,数据库模块202和/或处理模块206可根据一个或多个数据处理规则216处理存储在数据库模块202中的数据。这些数据处理规则216可基于特定条件、标准和/或因素而指定相对于由数据库模块202存储的数据执行的特定操作。在一些情况下,根据这些规则处理的数据可对用户更有用和/或可由社交媒体平台150更有效地存储。作为一个实例,数据处理规则216可指定如何可以自动方式创建、修改和/或呈递用户的某些社交媒体事件项212和/或场地项218。在一些情况下,数据处理规则216可由处理模块206存储(例如,使得处理模块206可直接访问处理规则216)。在一些情况下,数据处理规则216可由数据库模块202存储。以下更详细讨论数据处理规则216的示例性实现方式。

如上所述,社交媒体平台150的一个或多个实现方式使得用户能够以自动方式推广和组织事件。图3a至图3c中示出此功能的实例。

在此实例中,一个用户正在计划事件,并且希望将事件推广给一个或多个其他用户。此用户可被称为“控制用户”。为了促进这一点,控制用户可与社交媒体平台150交互以创建社交媒体事件项300,并且用关于事件的信息填充社交媒体事件项300。例如,控制用户可提供事件的标题(例如,“事件1”)、关于事件的预定信息、关于事件的内容(例如,文本信息、图像、视频、音频或与事件相关的其他内容)。此外,控制用户可指示与事件有关、相关和/或以其他方式相关联的一个或多个兴趣类别。例如,这可能是有益的,因为它使得潜在参与者能够快速评估事件的性质并确定他们是否愿意参与。在此实例中,用户已经选择了兴趣类别“a”、“b”和“c”。

此外,控制用户可与社交媒体平台150交互以邀请一个或多个其他用户参与事件。例如,控制用户可共享、传输或以其他方式将社交媒体事件项300发布给其他人。在此实例中,控制用户已经邀请了“人员1”、“人员2”、“人员3”、“人员4”、“人员5”和“人员6”参与事件。

每个用户可与社交媒体平台150交互以查看社交媒体事件项300(例如,以获得关于事件的信息)。此外,每个用户可指示他们是否计划参与。例如,每个用户可提交关于事件的“回复”数据(例如,指示她拒绝邀请、接受邀请、暂时接受邀请等的数据)。在此实例中,“人员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”的频率度量为3,因为它是由控制用户以及“人员1”和“人员2”(对此事件回复“是”的用户)选择的。值得注意的是,尽管“人员4”也选择了兴趣类别“a”,但是这种选择没有反映在事件数据结构304中,因为“人员4”对事件回复了“否”。

类似地,兴趣类别“b”的频率度量为2,因为它是由控制用户以及“人员3”选择的。此外,兴趣类别“c”的频率度量为3,因为它是由控制用户以及“人员2”和“人员6”选择的。此外,兴趣类别“d”的频率度量为1,因为它是由“人员1”选择的。此外,兴趣类别“e”的频率度量为1,因为它是由“人员3”选择的。此外,兴趣类别“f”的频率度量为5,因为它由“人员1”、“人员2”、“人员3”、“人员5”和“人员6”选择的。此外,兴趣类别“g”的频率度量为1,因为它是由“人员5”选择的。如上所述,尽管“人员4”也选择了这些兴趣类别中的每一个,但是这些选择没有反映在事件数据结构304中,因为“人员4”向事件回复了“否”。

在一些情况下,事件数据结构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可最初生成事件数据项的事件数据结构,并且在生成事件数据结构之后一次或多次修改事件数据结构。

在一些情况下,社交媒体平台150可监视致使一个或多个数据库的数据变化的事务(例如,由处理模块206相对于由数据库模块202存储的数据执行的事务,诸如社交媒体简档210、社交媒体事件项212和/或场地项218)。如果事务满足特定触发标准,那么社交媒体平台150可响应地修改一个或多个事件数据结构。例如,如果事务修改将影响事件数据结构的数据字段(例如,对事件回复“是”的用户的事务更正、为她的社交媒体简档选择另外的兴趣类别的用户的事务更正或者可影响事件的直方图的其他动作),那么社交媒体平台150(例如,使用处理模块206)可用特定标志(诸如“触发”标志)标记此事务。当每个事务成功完成时,社交媒体平台150(例如,使用处理模块206)检查此事务上的标志,然后基于任何标识的标志而调用某些功能。这些功能创建它们自己的事务,在执行这些事务时相应地更新适当的事件数据结构(例如,更新相关事件的直方图)。例如,这可能是有用的,因为它使得社交媒体平台150能够在更新事件数据结构之前快速确认用户所做出的任何变化(这可能花费相对较长的时间来完成)。例如,如果用户将新兴趣类别添加到她的社交媒体简档,那么社交媒体平台150可快速向用户确认变化(使得用户不必等待很长一段时间),并且随后在用户进行其他任务时,基于用户的变化而更新一个或多个事件数据结构。

作为一个实例,如果控制用户修改事件数据项的兴趣类别选择,那么作为响应,社交媒体平台150可修改事件数据结构以反映这些变化(例如,通过将新兴趣类别添加到事件数据结构、从事件数据结构中移除兴趣类别和/或修改事件数据结构中的兴趣类别的频率度量)。作为另一实例,如果一个或多个另外的用户指示他们计划参与事件,那么作为响应,社交媒体平台150可修改事件数据结构以反映这些变化(例如,通过将新兴趣类别添加到事件数据结构和/或使由事件数据结构中的另外的用户选择的兴趣类别的频率度量递增)。作为另一实例,如果一个或多个用户指示他们不再计划参与事件,那么社交媒体平台150可修改事件数据结构以反映这些变化(例如,通过从事件数据结构中移除兴趣类别和/或使事件数据结构中由那些用户选择的兴趣类别的频率度量递减)。作为另一实例,如果计划参与事件的一个或多个用户修改他们的个人社交媒体简档中的兴趣类别选择,那么社交媒体平台150可修改事件数据结构以反映这些变化(例如,通过将新兴趣类别添加到事件数据结构、从事件数据结构中移除兴趣类别和/或修改事件数据结构中的兴趣类别的频率度量)。例如,这可能是有用的,因为它使得社交媒体平台150能够呈递关于事件中的每一个的准确信息并且向其用户做出更准确的推荐。在一些情况下,这些修改只能相对于尚未发生的事件进行。

在一些情况下,社交媒体平台150可实时或基本上实时地更新事件数据项。例如,社交媒体平台可监视事务以确定特定事务是否满足一个或多个触发标准(例如,控制用户修改事件数据项的兴趣类别选择、一个或多个另外的用户指示他们计划参与所述事件、一个或多个用户指示他们不再计划参与所述事件、计划参与所述事件的一个或多个用户修改他们的个人社交媒体简档中的兴趣类别选择等)。作为响应,社交媒体平台150可立即(或基本上立即)修改对应的事件数据结构。例如,这可能是有用的,使得社交媒体平台150能够持续保持关于所组织事件中的每一个的最新信息。

在一些情况下,社交媒体平台150可定期更新事件数据项。例如,社交媒体平台150可根据循环时间表(例如,每秒一次、每分钟一次、每小时一次、或根据某些其他时间表)确定是否已经满足一个或多个触发标准。在确定满足特定触发标准时,社交媒体平台150可响应地修改对应的事件数据结构。例如,这可能是有用的,使得社交媒体平台150能够根据更可预测的时间表并且以可降低计算成本(例如,与实时更新相比)的方式持续保持关于所组织事件中的每一个的最新信息。

例如,这在提高社交媒体平台150中的数据的完整性方面也是有用的。例如,在操作期间,社交媒体平台150可能表现异常,导致不稳定性(例如,系统崩溃)。如上所述,社交媒体平台150可实时或基本上实时地更新事件数据项(例如,通过监视事务以确定特定事务是否满足一个或多个触发标准,并且如果是,那么响应地修改对应的事件数据结构)。然而,如果社交媒体平台150在执行事务之后但在响应地更新事件数据结构之前经历系统崩溃,那么事件数据结构将不反映此事务的性能。此外,由于社交媒体事件项实时地或基本上实时地更新,而不是根据可预测的时间表更新,因此难以确定社交媒体事件项是否已被适当地更新。相反,如果社交媒体平台150要定期更新事件数据项(例如,根据可预测的时间表),那么更容易确定每个社交媒体事件项是否已被适当地更新。例如,可将系统崩溃的时间与预定的更新时间进行比较。如果崩溃发生在预定更新项之后,那么社交媒体平台150可确定发生了预定更新。然而,如果崩溃发生在预定更新项之前,那么社交媒体平台150可确定未发生预定更新,并且可响应地采取纠正动作(例如,使另一更新在下一个预定更新项期间排队)。因此,可提高社交媒体平台150中的数据的可靠性。然而,这并不排除社交媒体平台150在一些情况下实时或基本上实时更新事件数据项(例如,当连续最新信息比改进的数据完整性更令人满意时)。

在图3a至图3c所示的实例中,每个兴趣类别的性能度量针对控制用户和/或计划参与事件的用户的每个选择递增特定的量(例如,1)。在一些情况下,每个兴趣类别的性能度量可针对暂时计划参与事件的用户的每个选择递增不同的量。例如,如果第一用户指示她计划参与事件(例如,通过回复“是”),那么在她的个人社交媒体简档中的第一用户的兴趣类别选择中的每一个可在事件数据结构中那些类别的频率度量上递增第一单位(例如,1)。如果第二用户指示她暂时计划参与事件(例如,通过回复“可能”),那么在她的个人社交媒体简档中的第二用户的兴趣类别选择中的每一个可在事件数据结构中那些类别的频率度量上递增第二单位(例如,0.5)。例如,这可能是有用的,因为它使得社交媒体平台150能够区分可能参与事件的用户和不太可能参与事件的用户,并生成解释这些差异的推荐。虽然以上描述了示例性单位(例如1或0.5),但这些单位仅仅是说明性实例。在实践中,每个单位可根据实现方式而不同。

如上所述,当用户查看社交媒体事件项(例如,呈直方图的形式)时,可将事件数据结构呈递给用户。例如,这可能是有益的,因为它使得潜在受邀者能够标识与事件相关的兴趣类别,即使事件的控制用户没有特别选择那些兴趣类别。然而,这也具有揭示计划参与事件的用户的集体兴趣的效果。在一些情况下,这可能使观察者能够将特定兴趣类别归属于特定用户。针对某些用户,这可能是不期望的。例如,用户可能对与特定兴趣类别相关联敏感,并且可能希望使她的关联保持隐私状态。作为另一实例,用户通常可能更喜欢使她的兴趣保持隐私状态,使得她的个人信息不会广泛地发布给其他人。

在一些情况下,为了考虑这种可能性,社交媒体平台150可被配置来使得用户可指定他们的社交媒体简档中的兴趣类别中的每一个是否应当向用户公开地显示。例如,当用户选择兴趣类别以包括在他们的社交媒体简档中时,他们还可指示是否应当将每个兴趣类别标记为“公开”(例如,使得其他用户可在查看她的社交媒体简档时看到她对所述兴趣类别的选择)或“隐私”(例如,使得当其他用户查看她的社交媒体简档时隐藏兴趣类别)。

此外,社交媒体平台150可被配置来针对特定事件生成两个不同的事件数据结构。第一事件数据结构(例如,“内部”事件数据结构)可类似于上面所描述的。例如,内部事件数据结构可指示由事件的控制用户和/或已经指示他们计划参与事件(例如,回复了“是”)的一个或多个用户选择的兴趣类别中的每一个。此外,以与上述类似的方式,内部事件数据结构可用于标识可能对参与事件感兴趣的一个或多个另外的用户,并且将所述事件推荐给那些用户。因此,社交媒体平台150使用所有可用信息来向其他用户做出推荐。然而,社交媒体平台150不向用户公开显示内部事件数据结构(例如,当用户浏览社交媒体事件项时)。

相反,社交媒体平台150生成用于向用户公开显示的第二事件数据结构(例如,“公开”事件数据结构)。公开事件数据结构类似于第一事件数据结构,但反映了每个用户的隐私偏好(例如,每个用户的“公开”和“隐私”选择)。例如,如果特定用户指示她计划参与事件,那么用户的“公开”兴趣类别中的每一个的频率度量在公开事件数据结构中递增(例如,以与上述类似的方式)。然而,用户的隐私兴趣类别中的每一个的频率度量保持不变(例如,就像用户根本没有选择隐私兴趣类别一样)。因此,公开事件数据结构不向其他用户公开地揭示用户的“隐私”兴趣类别选择,使得观察者更难以将特定兴趣类别归属于特定用户。

图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”的频率度量再次为3,因为它是由控制用户以及“人员1”和“人员2”选择的。此外,兴趣类别“b”的频率度量再次为2,因为它是由控制用户以及“人员3”选择的。此外,兴趣类别“c”的频率度量再次为3,因为它是由控制用户以及“人员2”和“人员6”选择的。此外,兴趣类别“d”的频率度量再次为1,因为它是由“人员1”选择的。此外,兴趣类别“e”的频率度量再次为1,因为它是由“人员3”选择的。此外,兴趣类别“f”的频率度量再次为5,因为它是由“人员1”、“人员2”、“人员3”、“人员5”和“人员6”选择的。此外,兴趣类别“g”的频率度量再次为1,因为它是由“人员5”选择的。类似地,尽管“人员4”也选择了这些兴趣类别中的每一个,但是这些选择没有反映在事件数据结构404中,因为“人员4”向事件回复了“否”。

以与关于事件数据结构304描述的类似方式,内部事件数据结构404用于标识可能对参与事件感兴趣的一个或多个另外的用户。例如,社交媒体平台150可使用事件数据结构404来导出每个潜在受邀者相对于事件的推荐度量。如果推荐度量对特定用户足够高(例如,高于阈值),那么社交媒体平台150可确定所述用户可能对参与此事件感兴趣。然而,社交媒体平台150不向用户公开显示内部事件数据结构404(例如,当用户浏览社交媒体事件项400时)。

图4c示出社交媒体事件项400的示例性公开事件数据结构406的表示。公开事件数据结构406总体上类似于内部事件数据结构404。但是,由于“人员1”、“人员4”和“人员5”分别指定他们对兴趣类别“a”、“b”和“f”的选择是隐私的,类别中的每一个的频率度量小1(与内部事件数据结构404的频率度量相比)。

在一些情况下,公开事件数据结构406可在用户查看社交媒体事件项400时被呈递给一个或多个用户。例如,当控制用户访问社交媒体事件项400时(例如,当查看关于他正在推广的事件的信息时),社交媒体平台150可向控制用户显示表示公开事件数据结构406的直方图(或其他图形和/或文本表示)。作为另一实例,当一般用户(例如,受邀者或潜在参与者)访问社交媒体事件项400时(例如,当浏览关于他正在考虑参与的事件的信息时),社交媒体平台150还可向用户显示表示公开事件数据结构406的直方图(或其他图形和/或文本表示)。在这两种情况下,生成公开事件数据结构406,使得用户的隐私兴趣类别不在对应的频率度量中反映。因此,观察者更难以基于关于事件的公开可用信息而将特定兴趣类别归属于特定用户。在一些情况下,公开事件数据结构406可被呈递给与社交媒体事件项400相关联的控制用户,但是对一般用户(例如,受邀者、潜在参与者等)隐匿。在一些情况下,公开事件数据结构406可被呈递给与社交媒体事件项400相关联的控制用户,同时也被呈递给一般用户。

在一些情况下,社交媒体平台150可确定可能与用户相关的兴趣类别,即使用户没有为她的社交媒体简档特别选择那些兴趣类别。在一些情况下,这可通过标识用户计划参与的事件(例如,用户回复了“是”的事件)中每一个并且在也参与那些事件的其他用户中标识受欢迎兴趣类别来执行。如果特定兴趣类别在那些其他用户中足够普遍(例如,兴趣类别的频率度量大于特定阈值),那么社交媒体平台150可向用户推荐所述兴趣类别。例如,社交媒体平台可建议用户将兴趣类别添加到她的社交媒体简档。

在一些情况下,这可通过为每个用户生成表示可能与所述特定用户相关的兴趣类别的用户数据结构来执行。用户数据结构可指示针对用户计划参与的事件的一个或多个事件数据结构中包括的兴趣类别中的每一个。此外,事件数据结构可包括每个兴趣类别的频率度量(例如,跨越兴趣类别中的每一个使事件数据结构中的每一个的频率度量组合或对其求和)。在一些情况下,所述数据结构可以直方图的形式呈递。

图5a和图5b中示出此功能的实例。在此实例中,用户(“人员1”)已经在社交媒体平台150上创建了个人社交媒体简档500,并且已经选择了兴趣类别“a”、“d”和“f”以包括在社交媒体简档500中。此外,用户已经指示她计划参与两个事件:“事件1”和“事件2”(例如,通过向这些事件回复“是”)。

“事件1”由社交媒体事件项502a表示,并且“事件2”由社交媒体事件项502b表示。社交媒体事件项502a和502b分别包括对应的事件数据结构504a和504b。例如,可根据本文描述的技术(例如,如关于图3a至图3c所描述的)生成事件数据结构504a和504b。例如,事件数据结构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可自动地向“人员1”建议兴趣类别“c”(因为兴趣类别“c”的频率度量超过阈值)。此外,尽管兴趣类别“f”的频率度量也超过阈值,但是社交媒体平台150不会自动向“人员1”推荐兴趣类别“f”,因为她已将其包括在她的社交媒体简档500中。

如本文所述,用户可使用由社交媒体平台150呈递的用户界面与社交媒体平台150交互。下面描述示例性用户界面(例如,用户界面600、700、800、900、1000和1050)。在一些情况下,这里描述的用户界面可实现为图1中所示的用户界面108a-c的一部分。

图6中示出使得用户能够选择以包括在她的社交媒体简档中的兴趣类别的示例性用户界面600。用户界面600包括菜单窗格602,所述菜单窗格602示出可供选择的兴趣类别中的每一个。用户可选择菜单窗格602中所示的兴趣类别中的一个(例如,通过使用输入设备点击或“选中”期望兴趣类别旁边的选择框604)。作为响应,所选择的兴趣类别被移动到选择窗格606并且与用户的社交媒体简档相关联。用户可以这种方式选择多个兴趣类别。此外,用户可从选择窗格606中移除所选择的兴趣类别并将其返回到菜单窗格602(例如,通过“取消选中”兴趣类别旁边的选择框604)。已移除的兴趣类别将从用户的社交媒体简档中移除。

图7中示出使得用户能够选择以包括在社交媒体事件项中的兴趣类别的示例性用户界面700。用户界面700包括菜单窗格702,所述菜单窗格702示出可供选择的兴趣类别中的每一个。用户(例如,社交媒体事件项的控制用户)可选择菜单窗格702中所示的兴趣类别中的一个(例如,通过使用输入设备点击或“选中”期望兴趣类别旁边的选择框704)。作为响应,所选择的兴趣类别被移动到选择窗格706并且与社交媒体事件项相关联。用户可以这种方式选择多个兴趣类别。此外,用户可从选择窗格706中移除所选择的兴趣类别并将其返回到菜单窗格702(例如,通过“取消选中”兴趣类别旁边的选择框604)。已移除的兴趣类别将从社交媒体事件项中移除。

图8中示出使得用户能够查看关于事件的信息(例如,来自社交媒体事件项的信息)的示例性用户界面800。用户界面800包括显示关于事件的信息的描述窗格802(例如,事件的标题、事件的位置、计划时间和事件的持续时间、计划参与事件的用户的“朋友”中的一个或多个等)。描述窗格802还指示与事件相关联的一个或多个兴趣类别(例如,由控制用户选择的一个或多个兴趣类别)。用户可通过选择“参与”命令804来指示她计划参与事件。

图9中示出使得用户(例如,控制用户)能够查看来自事件数据项的内容的示例性用户界面900。用户界面900包括直方图窗格902,所述直方图窗格902显示关于计划参与事件的用户的信息(例如,“参与者”)。直方图窗格902包括由至少一个“参与者”选择以包括在他们的个人社交媒体简档中的每个兴趣类别的指示,以及指示在参与者中已经选择每个兴趣类别的次数的频率度量。直方图窗格902可基于频率度量而对兴趣类别进行排序(例如,首先显示具有最高频率的兴趣类别),使得用户可更容易地确定哪些类别在事件的参与者中是受欢迎的。

图10a中示出使得用户能够浏览关于多个事件的信息的示例性用户界面1000。用户界面1000包括馈送窗格1002,所述馈送窗格1002示出可供用户参与的事件。在一些情况下,馈送窗格1002中示出的事件可由社交媒体平台150基于用户选择的兴趣类别和/或基于本文描述的事件推荐技术而选择。用户可从馈送窗格1002中选择事件以查看关于事件的更多信息(例如,使用图8中所示的用户界面800)。用户还可通过选择“参与”命令1004来指示她计划参与事件。

图10b中示出使得用户能够浏览关于多个事件的信息的另一示例性用户界面1050。用户界面1050包括地图窗格1052,所述地图窗格1052示出可供用户参与的事件的计划地理位置(例如,使用覆盖在图形地图1056上的标记1054)。在一些情况下,地图窗格1052中示出的事件可由社交媒体平台150基于用户选择的兴趣类别和/或基于本文描述的事件推荐技术而选择。用户可从地图窗格1052中选择标记1054以查看关于特定事件的更多信息(例如,使用图8中所示的用户界面800)。

在一些实现方式中,社交媒体平台150可使得用户能够以自动方式确定关于场地的信息(例如,标识与场地相关联的兴趣类别和/或与场地相关联的事件)。图11a和图11b中示出此功能的实例。

在此实例中,用户正在管理场地(例如,用于举办事件的位置,诸如音乐厅、剧院、体育场、俱乐部、公园、事件空间等),并且希望将场地推广给一个或多个其他用户(例如,潜在参与者、事件组织者、事件推广者等)。此用户可被称为“控制用户”。为了促进这一点,控制用户可与社交媒体平台150交互以创建场地项1100,并且用关于场地的信息填充场地项1100。例如,控制用户可提供场地的名称(例如,“场地1”)、关于与场地相关联的事件和未来事件的信息以及关于场地的内容(例如,文本信息、图像、视频、音频或与场地相关的其他内容)。此外,控制用户可指示与场地有关、相关和/或以其他方式相关联的一个或多个兴趣类别。例如,这可能是有益的,因为它使得控制用户能够确定关于场地的人口统计信息和趋势。这还使得其他用户(例如,控制用户、潜在参与者、事件组织者、事件推广者等)能够快速评估场地的性质,并且确定他们是否想要参与在场地处的事件和/或在场地处的组织事件。在此实例中,用户已经选择了兴趣类别“a”、“b”和“c”。

此外,控制用户可与社交媒体平台150交互以指示已经发生和/或预定发生的一个或多个事件。在一些情况下,事件中的一个或多个可对应于社交媒体事件项(例如,如关于图2、图3a至图3c、图4a至图4c、图5a和5b所示和所述的)。在此实例中,控制用户已经指示一个事件在过去已经发生了(“事件1”,对应于社交媒体事件项1102a)。此外,控制用户已经指示三个事件预定将来发生(“事件2”、“事件3”和“事件4”,分别对应于社交媒体事件项1102b、1102c和1102d)。

在一些情况下,事件的控制用户(例如,组织者、事件推广者等)可指定与他们的事件相关联的场地(例如,当填充社交媒体事件项时)。社交媒体平台150可基于输入而自动生成一个或多个场地项。例如,社交媒体平台150可标识在特定场地处发生或预定发生的事件中的每一个,并生成指定那些事件中的每一个的场地项。

如本文所述,用户可与社交媒体平台150交互以查看社交媒体事件项(例如,以获得关于事件的信息)。此外,每个用户可指示他们是否计划参与。例如,每个用户可提交关于事件的“回复”数据(例如,指示她拒绝邀请、接受邀请、暂时接受邀请等的数据)。

此外,如本文所述,社交媒体平台150可为每个事件生成事件数据结构。事件数据结构可指示兴趣类别中的每一个:所述兴趣类别(i)由社交媒体事件项的控制用户(例如,负责组织和/或推广事件的用户)在填充社交媒体事件项时选择,或(ii)由已经接受对事件的邀请(例如,回复了“是”)的用户在填充其用户简档时选择。此外,事件数据结构可包括每个兴趣类别的频率度量,其指示事件的控制用户(例如,在填充社交媒体事件项时)和/或接受了对事件的邀请的用户(例如,在填写他们的用户简档时)选择兴趣类别的次数。在一些情况下,所述数据结构可以直方图的形式呈递。在此实例中,社交媒体事件项1102a-1102d中的每一个包括呈直方图形式的相应的事件数据结构1104a-d。

在一些情况下,社交媒体平台150可生成场地的场地数据结构。场地数据结构可指示兴趣类别中的每一个:所述兴趣类别(i)由场地的控制用户在填充场地项时选择,(ii)由与场地相关联的社交媒体事件项的控制用户在填充社交媒体事件项时选择,或(iii)由已经接受对与场地相关联的事件的邀请(例如,回复了“是”)的用户在填充其用户简档时选择。此外,场地数据结构可包括每个兴趣类别的频率度量,所述频率度量指示以这种方式选择兴趣类别的次数。在一些情况下,此数据结构也可呈直方图的形式呈递。

图11b示出场地项1100的示例性场地数据结构1106的表示。在此实例中,兴趣类别“a”的频率度量为7,因为它是由“场地1”的控制用户选择的,并且由与“事件1”和“事件4”相关联的用户选择了6次。类似地,兴趣类别“b”的频率度量为7,因为它是由“场地1”的控制用户选择的,并且由与“事件1”和“事件4”相关联的用户选择了6次。此外,兴趣类别“c”的频率度量为4,因为它是由“场地1”的控制用户选择的,并且由与“事件1”相关联的用户选择了3次。此外,兴趣类别“d”的频率度量为4,因为它由与“事件1”、“事件2”、“事件3”和“事件4”相关联的用户选择了4次。此外,兴趣类别“e”的频率度量为4,因为它由与“事件1”、“事件2”和“事件4”相关联的用户选择了4次。此外,兴趣类别“f”的频率度量为12,因为它由与“事件1”、“事件2”、“事件3”和“事件4”相关联的用户选择了12次。此外,兴趣类别“g”的频率度量为3,因为它由与“事件1”、“事件2”和“事件4”相关联的用户选择了3次。

在一些情况下,场地数据结构1106可包括在场地项1100中,并且当用户查看场地项1100时呈递给用户。例如,当用户访问场地项1100时(例如,当使用社交媒体平台150浏览关于场地的信息时),社交媒体平台150可向用户显示表示场地数据结构1106的直方图(或其他图形和/或文本表示)。例如,这可能是有益的,因为它使得事件的潜在参与者能够标识与场地及其相关联的事件相关的兴趣类别,即使场地或事件的控制用户没有特别选择那些兴趣类别。此信息还可被呈递给控制用户(例如,向控制用户提供关于与场地相关联的事件的预期参与者的兴趣的信息)。

在一些情况下,可根据不同的权重来计算场地数据结构的频率度量。作为一个实例,由场地的控制用户选择的兴趣类别可被分配更高的权重(例如,每个选择的权重为10),而其他用户可被分配更低的权重(例如,每个选择的权重为1)。因此,由某些用户做出的兴趣类别选择可对场地数据结构的频率度量产生更大的影响。

在一些情况下,事件对场地数据结构的频率度量的影响可能会随时间推移而变化。例如,可为尚未发生的事件分配更高的权重(例如,与那些事件相关联的每个兴趣类别选择的权重可为1)。一旦事件发生,事件可随时间推移被分配逐渐降低的权重(例如,事件发生后第一个月的权重为0.75、事件发生后第两个月的权重为0.5、事件发生后第三个月的权重为0.25以及事件发生后第四个月的权重为0)。例如,这种基于时间的加权“衰减”可能是有用的,因为它在计算场地数据结构的频率度量时有利于最近事件。因此,可更容易地确定场地观众随时间推移的变化。例如,如果场地历史上与喜剧事件相关联,但最近已经转变为音乐事件,那么由于基于时间的权重衰减可更容易地检测到类型上的这种变化。

尽管上面描述了示例性加权标准和权重,但这些仅仅是说明性实例。在实践中,可使用其他加权标准和/或权重来代替或补充本文所述的那些加权标准和/或权重。

在一些情况下,社交媒体平台150可最初生成场地项的场地数据结构,并且在场地数据生成之后一次或多次修改场地数据结构。

在一些情况下,社交媒体平台150可监视致使一个或多个数据库的数据变化的事务(例如,由处理模块206相对于由数据库模块202存储的数据执行的事务,诸如社交媒体简档210、社交媒体事件项212和/或场地项218)。如果事务满足特定触发标准,那么社交媒体平台150可响应地修改一个或多个场地数据结构。例如,如果事务修改将影响事件数据结构的数据字段(例如,对事件回复“是”的用户的事务更正、为她的社交媒体简档选择另外的兴趣类别的用户的事务更正或者可影响事件的直方图的其他动作),那么社交媒体平台150(例如,使用处理模块206)可用特定标志(诸如“触发”标志)标记此事务。当每个事务成功完成时,社交媒体平台150(例如,使用处理模块206)检查此事务上的标志,然后基于任何标识的标志而调用某些功能。这些功能创建它们自己的事务,在执行这些事务时相应地更新适当的事件数据结构和场地数据结构(例如,更新相关事件和场地的直方图)。例如,这可以是有用的,因为它使得社交媒体平台150能够在更新场地数据结构之前快速确认用户所做出的任何变化(这可能花费相对较长的时间来完成)。例如,如果用户将新兴趣类别添加到她的社交媒体简档,那么社交媒体平台150可快速向用户确认变化(使得用户不必等待很长一段时间),并且随后在用户进行其他任务时,基于用户的变化而更新一个或多个事件数据结构。

作为一个实例,如果控制用户修改场地项的兴趣类别选择,那么作为响应,社交媒体平台150可修改场地数据结构以反映这些变化(例如,通过将新兴趣类别添加到场地数据结构、从场地数据结构中移除兴趣类别和/或修改场地数据结构中的兴趣类别的频率度量)。作为另一实例,如果一个或多个另外的用户指示他们计划参与与场地相关联的事件,那么作为响应,社交媒体平台150可修改场地数据结构以反映这些变化(例如,通过将新兴趣类别添加到场地数据结构和/或使由场地数据结构中的另外的用户选择的兴趣类别的频率度量递增)。作为另一实例,如果一个或多个用户指示他们不再计划参与与场地相关联的事件,那么社交媒体平台150可修改场地数据结构以反映这些变化(例如,通过从场地数据结构中移除兴趣类别和/或使由场地数据结构中的那些用户选择的兴趣类别的频率度量递减)。作为另一实例,如果计划参与与场地相关联的事件的一个或多个用户修改他们的个人社交媒体简档中的兴趣类别选择,那么社交媒体平台150可修改场地数据结构以反映这些变化(例如,通过将新兴趣类别添加到场地数据结构、从场地数据结构中移除兴趣类别和/或修改场地数据结构中的兴趣类别的频率度量)。例如,这可能是有用的,因为它使得社交媒体平台150能够呈递关于场地中的每一个的准确信息。

在一些情况下,这些修改只能相对于尚未发生的事件进行。例如,参考图11a,“事件1”是已经发生的事件。因此,社交媒体平台150可“冻结”场地数据结构1104a(例如,在“事件1”发生之后),并且在事件发生时将场地数据结构1104a保存为用户兴趣类别的历史记录。然而,“事件2”、“事件3”和“事件4”尚未发生。因此,社交媒体平台150可基于用户的活动而继续修改场地数据结构1104b、1104c和1104d,直到每个相应的事件发生为止(例如,在事件发生之前提供关于用户的兴趣类别的最新信息)。

在一些情况下,社交媒体平台150可实时或基本上实时地更新场地项。例如,社交媒体平台可监视事务以确定特定事务是否满足一个或多个触发标准(例如,用户修改与特定场地相关联的事件数据项的兴趣类别选择、一个或多个另外的用户指示他们计划参与与所述场地相关联的事件、一个或多个用户指示他们不再计划参与与所述场地相关联的事件、计划参与与所述场地相关联的事件的一个或多个用户修改他们的个人社交媒体简档中的兴趣类别选择等)。作为响应,社交媒体平台150可立即(或基本上立即)修改对应的场地数据结构。例如,这可能是有用的,使得社交媒体平台150能够持续保持关于场地中的每一个的最新信息。

在一些情况下,社交媒体平台150可定期更新场地项。例如,社交媒体平台150可根据循环时间表(例如,每秒一次、每分钟一次、每小时一次、或根据某些其他时间表)确定是否已经满足一个或多个触发标准。在确定满足特定触发标准时,社交媒体平台150可响应地修改对应的场地数据结构。例如,这可能是有用的,使得社交媒体平台150能够根据更可预测的时间表并且以可降低计算成本(例如,与实时更新相比)的方式持续保持关于所组织事件中的每一个的最新信息。

例如,这在提高社交媒体平台150中的数据的完整性方面也是有用的。例如,在操作期间,社交媒体平台150可能表现异常,导致不稳定性(例如,系统崩溃)。如上所述,社交媒体平台150可实时或基本上实时地更新场地项(例如,通过监视事务以确定特定事务是否满足一个或多个触发标准,并且如果是,那么响应地修改对应的场地数据结构)。然而,如果社交媒体平台150在执行事务之后但在响应地更新场地数据结构之前经历系统崩溃,那么场地数据结构将不反映此事务的性能。此外,由于场地项实时地或基本上实时地更新,而不是根据可预测的时间表更新,因此难以确定场地项是否已被适当地更新。相反,如果社交媒体平台150要定期更新场地项(例如,根据可预测的时间表),那么更容易确定每个场地项是否已被适当地更新。例如,可将系统崩溃的时间与预定的更新时间进行比较。如果崩溃发生在预定更新项之后,那么社交媒体平台150可确定发生了预定更新。然而,如果崩溃发生在预定更新项之前,那么社交媒体平台150可确定未发生预定更新,并且可响应地采取纠正动作(例如,使另一更新在下一个预定更新项期间排队)。因此,可提高社交媒体平台150中的数据的可靠性。然而,这并不排除社交媒体平台150在一些情况下实时或基本上实时更新场地项(例如,当连续最新信息比改进的数据完整性更令人满意时)。

在一些情况下,社交媒体平台150可随时间推移生成多个场地数据结构,并且同时向用户呈递某些或全部场地数据结构(例如,呈三维直方图的形式)。例如,这在确定场地特征随时间推移的变化方面可能是有用的。作为一个实例,社交媒体平台150可根据时间t1生成场地数据结构(例如,指示时间t1的与场地相关联的事件的兴趣类别的频率度量)。媒体平台150还可根据时间t2、t3、和t4生成另外的场地数据结构(例如,分别指示时间t2、t3、和t4的与场地相关联的事件的兴趣类别的频率度量)。某些或全部场地数据结构可同时呈递给用户(例如,呈三维直方图1200的形式,如图12所示)。这使得用户能够标识与场地相关联的兴趣类别随时间推移的变化,并且能够更好地理解在场地处发生的事件的类型以及那些事件的参与者的兴趣。

类似地,社交媒体平台150还可通过一系列随时间推移来生成多个事件数据结构,并且同时向用户呈递某些或全部事件数据结构(例如,呈三维直方图的形式)。例如,这在确定一系列事件的人口统计的变化方面可以是有用的。作为一个实例,一系列重复发生的事件可包括“事件a”、“事件b”、“事件c”和“事件d”。在“事件a”发生时,社交媒体平台150可生成对应于“事件a”的第一事件数据结构(例如,基于事件的控制用户和/或指示他们计划参与事件的用户的兴趣类别选择)。类似地,在发生“事件b”、“事件c”和“事件d”时,社交媒体平台150可生成对应于那些事件的另外的事件数据结构(例如,基于事件的控制用户和/或表明他们计划参与事件的用户的兴趣类别而选择)。某些或全部事件数据结构可同时呈递给用户(例如,呈三维直方图1300的形式,如图13所示)。这使得用户能够标识与一系列事件相关联的兴趣类别随时间推移的变化,并且能够更好地理解那些事件的参与者的兴趣。

示例性过程

图14中示出用于以自动方式向用户标识和推荐事件的示例性过程1400。在一些实现方式中,过程1400可由图1中的系统100和/或图2中所示的系统150执行。

在过程1400中,服务器系统生成多个用户的简档数据和多个社交媒体事件的事件数据(步骤1402)。服务器系统可包括例如包括关于图1描述的社交媒体平台150的服务器系统102。针对每个用户,简档数据可包括与用户相关联的一个或多个兴趣类别的指示。针对每个社交媒体事件,事件数据可包括与社交媒体事件相关联的一个或多个用户的指示。例如,关于图3a和图4a描述此功能的实例。

服务器系统确定第一用户子集与第一社交媒体事件相关联(步骤1404)。例如,服务器系统可确定一个或多个特定用户已经指示他们计划参与特定社交媒体事件和/或暂时计划参与特定社交媒体事件(例如,回复“是”和/或“可能”)。

服务器系统将简档数据和事件数据存储在一个或多个数据库中(步骤1406)。作为一个实例,可使用关于图2描述的数据库模块202来存储简档数据和事件数据。

服务器系统确定第一兴趣类别子集与第一用户子集相关联(步骤1408)。例如,这可包括由第一用户子集选择以包括在他们的简档中的兴趣类别。

服务器系统确定第二兴趣类别子集与第一社交媒体事件相关联(步骤1410)。第二兴趣类别子集由第一社交媒体事件的控制用户选择。这可包括例如由第一社交媒体事件的控制用户标识为与第一社交媒体事件相关的兴趣类别。

基于第一兴趣类别子集和第二兴趣类别子集而生成第一社交媒体事件的事件数据结构(步骤1412)。事件数据结构包括第一兴趣类别子集和第二兴趣类别子集的指示,以及针对第一兴趣类别子集和第二兴趣类别子集中的每个兴趣类别,基于第一用户子集中与所述兴趣类别相关联的用户数目且所述兴趣类别是否已经由第一社交媒体事件的控制用户选择的相应的频率度量。例如,关于图3b、图4b和图4c描述此功能的实例。

服务器系统执行一个或多个过程,所述一个或多个过程被配置来监视致使一个或多个数据库的数据变化的数据库事务(步骤1414)。这可例如使用关于图2描述的处理模块206来执行。事务可包括对与第一用户子集相关联的简档数据的修改、对与第一事件相关联的事件数据的修改中的至少一者。在一些情况下,修改可包括:添加或移除兴趣类别(例如,用户从她的简档添加或移除兴趣类别)。在一些情况下,修改可包括:另外的用户与第一社交媒体事件的关联,或者用户与第一社交媒体事件的解除关联(例如,用户向事件回复“是”和/或“可能”,或者用户将回复从“是”和/或“可能”切换成“否”)。

服务器系统确定事务满足相对于第一社交媒体事件的触发标准(步骤1416)。响应于确定事务满足相对于第一社交媒体事件的触发标准,基于事务而修改事件数据结构(步骤1418)。

在一些情况下,确定事务满足相对于第一社交媒体事件的触发标准可包括:确定已经添加或从第一用户子集中的特定用户的简档数据移除特定兴趣类别,以及确定第一社交媒体事件尚未发生。修改事件数据结构可包括:修改事件数据结构中与特定兴趣类别相关联的频率度量。在一些情况下,服务器系统可进一步确定事务满足相对于一个或多个另外的社交媒体事件的触发标准,并且响应于确定事务满足相对于一个或多个社交媒体事件的触发标准,基于事务而修改一个或多个社交媒体事件的事件数据结构。

在一些情况下,确定事务满足相对于第一社交媒体事件的触发标准可包括:确定另外的用户已经与第一社交媒体事件相关联,以及确定第一社交媒体事件尚未发生。修改事件数据结构可包括:确定另外的用户与另外的兴趣类别相关联,以及修改事件数据结构以包括另外的兴趣类别的指示。

在一些情况下,确定事务满足相对于第一社交媒体事件的触发标准可包括:确定另外的用户已经与第一社交媒体事件相关联,以及确定第一社交媒体事件尚未发生。修改事件数据结构可包括:确定另外的用户与第一兴趣类别子集中的特定兴趣类别相关联,并且响应于确定另外的用户与第一兴趣类别子集中的特定兴趣类别相关联,修改事件数据结构中与特定兴趣类别相关联的频率度量。在一些情况下,修改事件数据结构中与特定兴趣类别相关联的频率度量可包括:使与特定兴趣类别相关联的频率度量递增。

在一些情况下,确定事务满足相对于第一社交媒体事件的触发标准可包括:确定第一用户子集中的特定用户已经与第一社交媒体事件解除关联,以及确定第一社交媒体事件尚未发生。修改事件数据结构可包括:确定解除关联的用户与第一兴趣类别子集中的特定兴趣类别相关联,并且响应于确定解除关联的用户与第一兴趣类别子集中的特定兴趣类别相关联,修改事件数据结构中与特定兴趣类别相关联的频率度量。在一些情况下,修改事件数据结构中与特定兴趣类别相关联的频率度量可包括:使与特定兴趣类别相关联的频率度量递减。

在一些情况下,可基于事件数据结构而生成和显示直方图。例如,图3b、图4b和图4c中示出示例性直方图。在一些情况下,可为一个或多个另外的社交媒体事件生成一个或多个另外的事件数据结构。此外,可基于事件数据结构和一个或多个另外的事件数据结构而生成和显示多个直方图。

在一些情况下,针对至少一个用户,简档数据可包括与所述用户相关联的一个或多个公开兴趣类别的指示和与所述用户相关联的一个或多个隐私兴趣类别的指示。所述用户与所述一个或多个公开兴趣类别之间的关联是一个或多个其他用户可访问的,并且所述用户与所述一个或多个隐私兴趣类别之间的关联是一个或多个其他用户不可访问的。可基于事件数据结构而生成和显示对应于一个或多个公开兴趣类别的直方图。

在一些情况下,针对第一兴趣类别子集中的每个兴趣类别,基于第一兴趣类别子集而生成事件数据结构可包括:针对第一用户子集中与兴趣类别相关联并且已经接受了对第一社交媒体事件的邀请的每个用户,使与所述兴趣类别相关联的频率度量递增第一量,以及针对第一用户子集中与所述兴趣类别相关联并且已经暂时接受了对第一社交媒体事件的邀请的每个用户,使与所述兴趣类别相关联的频率度量递增第二量。第一量可与第二量不同。

在一些情况下,确定第一兴趣类别子集与第一用户子集相关联可包括:将由用户子集中的至少一个用户选择的一个或多个兴趣类别标识为第一兴趣类别子集。

在一些情况下,服务器系统可基于事件数据结构为另外的用户而生成针对第一社交媒体事件的推荐。为另外的用户生成针对第一社交媒体事件的推荐可包括:检索另外的用户的简档数据,基于另外的用户的简档数据而确定与另外的用户相关联的兴趣类别,以及基于与另外的用户相关联的兴趣类别和事件数据结构而确定推荐分数。

确定推荐分数可包括:确定与另外的用户和事件数据结构相关联的兴趣类别所共有的一个或多个兴趣类别,并且对事件数据结构的对应于共有兴趣类别中的每一个的频率度量求和。

确定推荐分数还可包括:确定与另外的用户相关联的第一地理位置和与第一社交媒体事件相关联的第二地理位置之间的距离,以及基于第一地理位置与第二地理位置之间的距离而修改推荐分数。

确定推荐分数还可包括:确定第二兴趣类别子集和与另外的用户相关联的兴趣类别所共有的一个或多个兴趣类别,并且基于所述确定而修改推荐分数。

确定推荐分数还可包括确定:与第二用户相关联的用户数目以及与第二用户和第一社交媒体事件两者都相关联的用户数目。确定推荐分数还可包括:基于此确定而修改推荐分数。

为另外的用户生成针对第一社交媒体事件的推荐还可包括:确定推荐分数超过阈值分数,并且响应于确定推荐分数超过阈值分数而向另外的用户生成标识第一社交媒体事件的通知。

在一些情况下,过程1400还可包括呈现图形用户界面。图形用户界面包括事件数据结构的图形表示。过程1410还可包括向用户呈递图形用户界面。例如,图9中示出示例性图形用户界面。

在一些情况下,可基本上实时地修改事件数据结构。在一些情况下,可定期修改事件数据结构。

在一些情况下,服务器系统可为第一用户生成针对另外的兴趣类别的推荐。生成针对另外的兴趣类别的推荐可包括:确定第一用户与第一社交媒体事件子集相关联,确定第三兴趣类别子集与第一社交媒体事件子集中的至少一个社交媒体事件相关联;以及确定第三兴趣类别子集中针对每个兴趣类别的推荐分数。确定推荐分数可包括:针对第一社交媒体事件子集中的每个社交媒体事件,检索对应的事件数据结构,以及针对第三兴趣类别子集中的每个兴趣类别,对所检索事件数据结构的对应于兴趣类别的频率度量求和。确定推荐分数还可包括:针对第一社交媒体事件子集中的每个社交媒体事件,确定由社交媒体事件的控制用户选择的一个或多个兴趣类别,并且基于所述确定而修改推荐分数。例如,关于图5a和图5b描述此功能的实例。

图15中示出用于自动确定场地特征的另一示例性过程1500。在一些实现方式中,过程1500可由图1中的系统100和/或图2中所示的社交媒体平台150执行。

在过程1500中,服务器系统生成场地数据(步骤1502)。场地数据包括由控制用户相对于场地选择的一个或多个第一兴趣类别的指示和与场地相关联的一个或多个事件的指示。例如,一个或多个第一兴趣类别可由场地的控制用户(例如,负责控制、管理和/或推广场地的用户)在填充场地项时选择。作为另一实例,一个或多个事件可由控制用户和/或控制事件的用户(例如,负责组织和/或推广事件的用户)指定。例如,关于图11a示出和描述此功能的实例。

服务器系统生成与场地相关联的一个或多个事件中的每一个的事件数据结构(步骤1504)。每个事件数据结构包括与事件相关联的一个或多个第二兴趣类别的指示,并且针对一个或多个第二兴趣类别中的每个兴趣类别,包括相应的频率度量。例如,关于图3a至图3c、图4a至图4c和图14示出并描述用于生成事件数据结构的示例性技术。

服务器系统基于场地数据和一个或多个事件数据结构而生成场地数据结构(步骤1506)。场地数据结构包括一个或多个第一类别和一个或多个第二兴趣类别的指示。针对一个或多个第一类别和一个或多个第二兴趣类别中的每个兴趣类别,场地数据结构还包括基于场地数据和一个或多个事件数据结构而确定的相应的频率度量。例如,关于图11a和图11b示出和描述用于生成场地数据结构的示例性技术。

在一些实现方式中,生成场地数据结构可包括:针对每个事件数据结构确定相应的权重,以及基于权重而确定场地数据结构的频率度量。每个权重可对应于相应事件的发生的新近度。

服务器系统执行一个或多个过程,所述一个或多个过程被配置来监视致使一个或多个数据库的数据变化的数据库事务(步骤1508)。服务器系统确定事务满足相对于场地数据结构的触发标准(步骤1510)。响应于确定事务满足相对于场地数据结构的触发标准,服务器系统基于事务而修改场地数据结构(步骤1512)。在一些实现方式中,事务可包括对一个或多个事件数据结构的修改。在一些实现方式中,事务可包括对场地数据的修改。在一些实现方式中,可基本上实时地修改场地数据结构。在一些实现方式中,可定期修改场地数据结构。例如,关于图11a和图11b描述此功能的实例。

在一些实现方式中,可基于场地数据结构(例如,通过服务器计算机和/或客户端计算机)而生成和显示直方图。

在一些实现方式中,服务器系统可基于场地数据和一个或多个事件数据结构而生成一个或多个另外的场地数据结构。每个另外的场地数据结构可包括根据相应的时间的一个或多个第一类别和一个或多个第二兴趣类别的指示,以及针对一个或多个第一类别和一个或多个第二兴趣类别中的每个兴趣类别的指示,包括根据此时间的相应的频率度量。可基于场地数据结构和一个或多个另外的场地数据结构而生成和显示多个直方图。例如,关于图12和图13示出并描述示例性直方图。

在一些实现方式中,可呈现图形用户界面。图形用户界面可包括事件数据结构的图形表示。可将图形用户界面呈递给用户。

示例性系统

本说明书中所描述的主题的一些实现方式和操作可以数字电子电路、或以计算机软件、固件或硬件(包括本说明书中所公开的结构和它们的结构等效物)的形式、或以它们中的一者或多者的组合的形式实现。例如,在一些实现方式中,服务器系统102、平台150和客户端设备104a-c可使用数字电子电路,或者以计算机软件、固件或硬件的形式,或者以它们中的一者或多者的组合的形式实现。在另一实例中,过程1400和1500可使用数字电子电路,或者以计算机软件、固件或硬件的形式,或者以它们中的一个或多个的组合的形式来实现。

本说明书中描述的一些实现方式可实现为数字电子电路、计算机软件、固件或硬件的一个或多个组或模块,或者它们中的一个或多个的组合。尽管可使用不同的模块,但是每个模块不必各不相同,并且多个模块可在相同的数字电子电路、计算机软件、固件或硬件或其组合上实现。

本说明书中所描述一些实现方式可被实现为一个或多个计算机程序,即,编码在计算机存储介质上以用于由数据处理装置执行或用于控制所述数据处理装置的操作的计算机程序指令的一个或多个模块。计算机存储介质可以是计算机可读存储设备、计算机可读存储基底、随机或串行存取存储器阵列或设备、或它们中的一者或多者的组合,或者可包括在上述各者中。另外,虽然计算机存储介质并非传播信号,但是计算机存储介质可以是编码在人工生成的传播信号中的计算机程序指令的源或目的地。计算机存储介质也可以是一个或多个分离的物理组件或介质(例如,多个cd、磁盘或其他存储设备),或者可包括在上述各者中。

术语“数据处理装置”包含用于处理数据的所有种类的装置、设备和机器,例如包括可编程处理器、计算机、芯片上系统、或上述各者中的多个或组合。所述装置可包括专用逻辑电路,例如fpga(现场可编程门阵列)或asic(专用集成电路)。除了硬件之外,所述装置还可包括为所讨论计算机程序创建执行环境的代码,例如,构成处理器固件、协议堆栈、数据库管理系统、操作系统、跨平台运行时环境、虚拟机、或它们各者中的一者或多者的组合的代码。所述装置和执行环境可实现各种不同的计算模型基础设施,诸如网络服务、分布式计算和网格计算基础设施。

计算机程序(也称为程序、软件、软件应用程序、脚本或代码)可用任何形式的编程语言编写,包括编译或解释语言、声明或过程语言。计算机程序可但不必对应于文件系统中的文件。程序可存储在保存其他程序或数据(例如,存储在标记语言文档中的一或多个脚本)的文件的一部分中、在专用于所讨论程序的单个文件中、或在多个协调文件(例如,存储一个或多个模块、子程序或代码的部分的文件)中。计算机程序可被部署成在一个计算机上或在多个计算机上执行,所述多个计算机位于一个位点处或者跨多个位点分布并且通过通信网络互连。

本说明书中所描述的过程的一部分和逻辑流程可由一个或多个可编程处理器执行,所述一个或多个可编程处理器执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行动作。所述过程和逻辑流程也可由专用逻辑电路(例如,fpga(现场可编程门阵列)或asic(专用集成电路))执行,并且所述装置也可被实现为所述专用逻辑电路。

适用于执行计算机程序的处理器包括例如通用和专用两种微处理器、以及任何种类的数字计算机处理器。总体上,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机包括用于根据指令执行动作的处理器,以及用于存储指令和数据的一个或多个存储器设备。计算机还可包括用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘、或光盘),或可操作地联接以从其接收数据、或向其传送数据、或进行两者。然而,计算机不必具有此类设备。适用于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备(例如,eprom、eeprom和闪存存储器设备等)、磁盘(例如,内部硬盘或可移动磁盘)、磁光盘以及cd-rom和dvd-rom磁盘。处理器和存储器可由专用逻辑电路补充或并入其中。

为了提供与用户的相互作用,可在计算机上实现操作,所述计算机具有用于向用户显示信息的显示设备(例如,监视器或其他类型的显示设备)以及用户可藉以向计算机提供输入的键盘和指向设备(例如,鼠标、轨迹球、平板电脑、触感屏或其他类型的指向设备)。也可使用其他种类的设备来提供与用户的相互作用;例如,提供给用户的反馈可以是任何形式的感官反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且来自用户的输入(包括声音、语言或触觉输入)可以任何形式被接收。另外,计算机可通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收的请求而将网页发送到用户的客户端设备上的web浏览器。

计算机系统可包括单个计算设备或多个计算机,所述多个计算机在彼此附近或总体上彼此远离地操作并且通常通过通信网络交互。通信网络的实例包括局域网(“lan”)和广域网(“wan”)、跨网(例如,互联网)、包括卫星链路的网络以及对等网络(例如,自组织(adhoc)对等网络)。客户端与服务器的关系可由于在相应的计算机上运行且彼此具有客户端-服务器关系的计算机程序而产生。

图16示出示例性计算机系统1200,所述计算机系统1200包括处理器1600、存储器1620、存储设备1630和输入/输出设备1640。组件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)的驱动器设备。在一些实现方式中,可使用移动计算设备、移动通信设备和其他设备。

尽管本说明书包含许多细节,但是这些细节不应被解释为对所要求保护的范围的限制,而应被解释为特定于特定实例的特征的描述。也可将在本说明书中独立实现方式的上下文中描述的某些特征加以组合。相反,独立实现方式的上下文中描述的各种特征也可单独地或以任何适合的子组合实现于多个实施方案中。

已经描述多种实现方式。然而,应了解可在不脱离本发明的精神和范围的情况下作出各种修改。因此,其他实现方式也在所附权利要求的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1