英语原文共 10 页,剩余内容已隐藏,支付完成后下载完整资料
基于社交网络用户数据的数据收集和分析系统的开发*
拉达·鲁迪科瓦a,奥列格·米斯里维克*,斯坦斯莱·索波列夫斯基b,
亚历山德拉·纳科c, 伊利亚·萨文科夫c
(a延卡库帕拉州立大学格罗德诺,白俄罗斯
b纽约大学,美国
c圣彼得堡国家研究信息技术大学,力学与光学学院,俄罗斯)
摘 要 本文讨论了面向实践的社交网络数据存储和分析系统的一般概念和实现。对这样一个概念的需要来自这样一个事实,即目前很少关注这样一个系统的内部结构。该系统组织了数据收集、从第三方来源填充数据库和分析收集到的数据的过程。还讨论了从不同来源收集零碎数据的主要问题。由于可能的信息格式多种多样,本文讨论了为进一步分析社交网络用户数据而设计高效数据仓库的方法。数据采集子系统的设计和实现方法可以根据当前社会网络的发展趋势来存储用户的数据。文中还讨论了系统中的数据保密问题。最后给出了系统主要部分的实现实例。
关键词 社会网络数据;OLTP系统;社会经济迁移;数据模型;通用架构;Boyer-Moore算法;客户端-服务器体系;分析子系统;
1 引言和文件综述
目前来说,似乎有必要实现一个用于在Internet上收集和分析社交社区数据的系统,可以从创建单个数据存储库的角度考虑该系统,该数据存储库可以根据需要分析社交网络用户的数据[1,2]。
这些学科领域的研究与归纳是密切相关的研究领域[3、4]。当前,越来越多的研究人员正在使用大数据来评估人类活动的各个方面,包括不同社交网络中的人类关系。例如,此类数据集用于不同规模的区域差异[5]、土地用途分类[6]、交通运输的优化[7]和交通运输的研究[8]、城市邻里的社会经济指标的计算[ 9]、旅游行为研究[10]、人类迁徙[11,12]等。
还应注意,世界上正在积累大量信息,已经开发了许多用于分析数据的方法、算法和方法[13,14],有足够数量的必要软件、技术和方法用于对数据数组进行形式化,从而可以为特定的研究方向构建数据。
结合以上所述,社交网络数据的分析当前是相当有前途的方向,其在分析过程中获得的结果已经广泛应用。首先,社交用户资料的数据已经在建模社交网络中信息波传播的领域中得到了应用。其次,各种公司在很大程度上依赖于来自社交网络用户的数据:此类数据使更有效地营销成为可能。第三,这些社交网络最普遍的应用领域是确定消费者的偏好。
尽管世界各地积累了大量信息,但这些数据通常是零散的,并且远不能提供有关社会生活的一般概述。由于缺乏软件界面和特定的数据存储格式,可公开获取的数据源(在我们的案例中是社交网络)并不总是易于处理的。这些限制通常不允许在执行必要的数据分析时使用可用的信息。数据格式和供应策略的频繁更改仍然是一个主要问题。此外,以第三方可以访问的形式可视化存储数据的问题非常相关,并且与数据分析本身同样重要。
从各种社交网络和Internet资源收集的信息的另一个问题是个人数据处理领域的全新法律。这些法律直接影响处理用户社交网络数据的各个方面。从社交网络泄漏个人数据的问题是谈论个人数据安全性时最常见的问题[23]。考虑到数据处理的新要求,我们还应记住,许多社交网络用户不希望其数据被某些第三方软件应用程序或公司收集。没有人想知道他们的数据存储不安全。因此,如今设计用于社交网络数据分析的复杂系统需要新颖的方法。
社交网络用户数据分析系统的一般概念的发展是必要的,因为事实上,该领域的研究主要致力于直接数据分析的过程,就好像数据是由研究人员事先获得的一样[15,16,17,18]。阿里云[19],Netflix[20]和可口可乐公司[21]提出了有关全栈数据收集和分析系统的一些基本信息。有关其大数据分析系统的所有事实均附带有关其使用的技术、框架和软件的信息。很难找到有关此类系统内部结构的信息:其系统如何处理用户数据,如何有效地存储来自不同来源的非结构化数据,其系统如何对用户进行身份验证和授权等。所有考虑的系统都从各种来源接收信息,并且开发的系统专注于处理来自各种社交网络的有效数据处理,同时考虑到所有社交网络都在开发并且用户将来可以使用完全不同格式的数据这一事实。所开发系统的功能之一是尝试以最通用的形式存储所有用户数据(当前可用的数据以及将来可能出现的各种格式)。
缺乏有关社会数据分析系统内部结构的特定信息,需要对此类建筑系统的各个方面进行深入研究。本文将考虑开发一种通用方法,以构建专门为社交网络收集和分析数据的系统。为了处理社交网络用户的统计数据,软件包应该能够收集所有相关的社交信息,将其安全地存储在数据库中并提供预测模型,例如根据用户的社交网络活动预测不同用户的偏好,或在特定背景下可视化社交文化发展趋势。
2 系统处理和可视化社交网络数据的主要要求
提出的系统基于信息存储技术。它满足了多个要求-可扩展的复杂域,数据完整性(用于来自各种来源的数据),具有强制性标签的存储数据随时间的持久性,高数据稳定性,数据冗余的最佳解决方案,单个系统单元的模块化,灵活且可扩展的体系结构,对存储的数据有严格的安全要求。图1显示了用于从在线社区收集和分析数据的系统的简化方案。
图1 通用实施架构
所提出的用于从Internet上的社交社区收集和分析数据的系统的基本概念基于数据仓库技术。该系统的开发基于广泛的用户,也就是说,该系统的功能将被广泛的人们用来解决各种任务。在此过程中,系统的功能将会增长,并且会影响其资源强度。在开发的系统中应考虑模块化的原则。假设至少有四个模块:
1.数据收集模块。
2.数据分析模块。
3.系统管理模块。
4.系统界面模块。
3 存储和处理社交网络数据的总体架构
图2显示了用于从社交网络收集和分析数据的系统的开发架构。拟议的信息系统具有模块化的客户端-服务器体系结构,其中每个模块执行其自身的功能,其扩展不会影响其他模块。
收集有关用户的精确信息是工作流中的重要阶段,但是,此类子系统的开发和设计提出了许多问题。用于构建软件系统的面向对象的方法和结构方法论用于开发系统模块,以确保收集准确的数据。
图2 信息提取和存储模块的结构
4 社交媒体数据使用
从社会网络获得的数据被用于许多研究领域,从确定消费者的喜好到分析社会关系和竞争情报。社交网络数据比个人资料中的自愿共享信息能更多地说明个人的隐藏偏好。但是,这些数据的结构较差[9]。这意味着正确的数据处理问题将进入存储系统。为了克服这个障碍,我们使用ETL过程,该过程是从OLTP系统(数据库)中提取(检索)信息,然后将其进一步转换为已存储数据的格式并加载到数据库中的过程[13]。数据是从不同的社交网络收集的,可以以多种格式显示并具有不同的信息负载,因此无法使用现成的软件。最好自己开发软件解决方案。在开发此子系统时,应考虑社交网络对数据可用性的其他限制,即隐私设置。如果用户隐藏了他的个人数据,则子系统仅部分接收它,这会影响最终结果。解决此问题的可能方法如下:首先,使用用户个人资料对页面进行直接分析(需要开发其他功能,并且由于各种社交网络中用户个人资料的数量不断增加,因此极难实施)。其次,使用一段时间内收集的数据,这可以显示用户首选项更改的动态。由于隐私限制不允许手动页面解析和使用API,因此我们采用了第二种方法。
5 来自各种社交网络的集中数据存储
如上所述,社交网络的特征在于数据结构不足。如何将来自不同社交网络的数据存储在一个数据库中,而又不影响整个系统的效率?一些社交网络专注于消息传递(Twitter),一些专注于用户放置大文本(LiveJournal),但是大多数社交网络都提供了汇总不同格式数据的可能性(Vkontakte,Facebook)。来自社交网络的数据的集中存储是一个问题,我们还在开发用于收集和存储社交网络数据的子系统的过程中试图解决这一问题[14]。图3显示了一个概念性的数据库模型,该模型将有效地存储来自各种社交网络的数据。我们的数据收集和存储子系统允许存储有关用户的以下信息:基本用户信息,用户注册所在的社交网络列表(表连接),教育信息,工作地点。一个重要因素是能够在所有社交网络中存储与用户相关的所有社区的能力[13,23]。主表是一个称为“帖子”的表,其中存储着用户发布的所有不同格式的所有资料(文本,视频,照片等)。该系统提供了跟踪主题标签的功能。
图3 概念数据库模式
6 数据去个性化
根据个人数据保护的要求,我们的系统必须对个人数据进行个性化处理。同时,它应保留处理个人数据的可能性[22],即取消个性化处理后的数据必须具有许多属性,其中包括:
–数据完整性–保存有关特定用户的信息;
–数据结构–维护去个性化数据之间的适当结构关系;
–数据相关性–处理个人数据处理请求并以相同语义形式接收答案的能力;
–数据适用性–在不取消引用全部用户数据的情况下解决个人数据处理任务的能力;
–数据匿名性–在不使用任何其他信息的情况下,无法唯一标识源自个性化的数据主体。
然而,用于分析社交社区的系统的开发与完全取消个性化设置不兼容,因为该系统的客户需要了解有关用户的特定信息。只能部分实现所存储数据的匿名性。它应该对有关用户的基本信息(姓名,姓氏,出生日期,地址)进行加密,并防止未经授权访问数据库。换句话说,整个数据库应分别加密。为防止未经授权访问运行该服务的系统,您应使用本文未涉及的适当安全策略。
收集和存储子系统收集的数据将用于以下任务:
- 受众群体细分。拟议的系统建议根据各种标准细分受众的可能性。这源自上述使用社交网络数据的方法。因此,该系统将允许根据用户的兴趣来对其进行划分,并为他们提供相关的社区。而且,它可以根据用户发布的信息来做出关于哪个社区对用户感兴趣的假设。
- 正确定位。如果预先分析目标受众,则与商品和服务相关的特定内容的推广将更加有效。问题是双重的:一方面,某些社区甚至可能没有意识到他们感兴趣的产品或服务已经出现。另一方面,许多生产者的受众太少,需要手段来更有效地展示和传播有关其商品和服务的信息。所提出的系统能够定义服务提供商应呼吁的可能的目标在线和离线受众。该系统还能够构建和分析社区内的兴趣图。每个用户将能够获取有关与她有共同兴趣的人以及可能对她感兴趣的社区的信息。另外,该系统对于对城市或其他地区的社会文化,经济和政治趋势感兴趣的各种分析中心也很有用。此外,该系统可以预测破坏性的公共行为,并可以应用于预防政策。
7 OLAP-cubes模块
然后,系统收集的数据将用于构建OLAP多维数据集。该模块的一个多维数据集(图4)是基于星形模式实现的,并允许根据用户页面上的条目[24,25,26]分析用户操作。其中一些信息将不会用于分析用户;它显示在数据收集模型中。 可以将使用OLAP-cube的所有功能归因于信息处理模块,即信息系统的第二个主要模块。所有基本数据操作都在此模块中进行。
图4 OLAP-cubes模块
数据收集模块和数据分析模块是基于Microsoft的Net Framework,C#语言,数据库管理系统MSSQL和各种软件工具(实体框架,Analytics Services,Azure)实现的。基于Azure平台用于数据处理的事实,系统性能取决于所购买的虚拟机。该系统的主要限制是社交网络的API不允许连续收集数据。每秒可能请求的数量在社交网络中会有所不同,因此收集初始数据是一个相当长的过程。另一个问题是用户数据的“质量”——社交网络的许多用户不够活跃,无法对其数据进行分析。
尽管没有管理模块和GUI模块很难估计系统性能,但仍有可能在数据收集过程之后获得一些有关社交网络用户活动的基本信息。当时考虑的系统可以实时工作并收集可能的用户数据。根据已经收集的数据,有可能覆盖用户互通的前20个城市。最初,数据收集是从Grodno(白俄罗斯)开始的,因此,社交网络用户大多与基辅,明斯克和莫斯科进行通信(图5)。工作一个月后,系统当前包含10444个用户记录。
通过监视数据收集错误来实现容错。如果由于某种问题而无法获取某些数据,则将有关此问题的信息存储在日志文件中,然后以一定的周期性尝试获取必要的信息块。最初,由于各种错误而未获得181个用户的数据,其中收集一般用户配置文件数据(删除或暂时阻止了配置文件)时收到121个用户的数据错误,由于配置文件隐私限制而收到50个错误,以及10个 由于请求API超时导致错误(Internet连接问题)。总共记录和处理了7616个失败的请求,大约占请求总数的5.5%。综上所述,可以说所有181个用户的丢失数据块都是重新获得的。
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[235308],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。