刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

试题四:

某国际大型企业拟向企业开发一个在线社交网络服务(SNS)系统,让企业内部的员工能够通过类似社交网络的方式进行工作和自我管理,以实现企业内部员工高效、透明、便捷的沟通与协作。其基本的工序包括:

1、  企业内部部门、员工等基本信息的维护和管理

2、  提供常见的 SNS 服务,如 Blog,WiKi,数钱,RSS,即时通信和邮件等

3、  提供社交网络,推荐系统等基本功能提高业务协作

除了上述功能性的需求外,还需要满足系统的可拓展、灵活部署以及高性能和高可用性需求

企业设计系统小组...

关于在线社交网络服务(SNS)系统设计和数据库选择的问题

使用微信搜索喵呜刷题,轻松应对考试!

答案:

在线社交网络服务(SNS)中的即时通讯系统,需要存储巨量的数据,同时需要快速的响应(查询速度),传统关系型数据库的特点是数据量越大查询越慢,而某些 NoSQL 数据库比如 键值数据库,列式存储数据库等都非常适合此场景。键值数据库类似于传统语言中使用的哈希表。可以通过key来添加、删除、查询数据,因为使用key主键来访问,所以键值数据库有很高的性能及拓展性。不同于关系型数据库的以行为单位储存,列式存储数据库将数据存储于列族中,一个列族存储经常被一起查询的相关数据。由于它的查询速度快,列式存储数据库可以发挥他查询速度方面的优势,主要用于海量数据分析一类的方面。例如HBase。

在线社交网络服务(SNS)系统的核心功能社交网络和推荐系统,这两个功能的特点是需要处理大量的数据和复杂的关联关系,这些都是传统关系型数据库的短板,而图数据库在处理此类问题时具有完全的优势。如果我们希望知道谁 LIKES(喜欢)谁(喜欢可以是单向或双向),也想知道谁是谁的 FRIEND_OF(朋友),谁是所有人的 LEADER_OF(领导)。通过传统关系型数据库提供的搜索算法来查找,便需要耗费巨量的时间来一一对比,但通过图数据库的子图查询,则可以对这些各异的需求进行更精准的响应。子图查询最直接的优点就是对数据需求的表达能力很强。

描述系统的特点,也就是需要使用 NoSQL 数据库的动机,然后描述所使用的 NoSQL 数据库实现原理即可。


解析:

本题主要考察了对在线社交网络服务(SNS)系统采用数据库技术的理解和分析。根据题目描述,系统需要满足大量数据的存储和快速查询的需求,同时还需要处理复杂的关联关系。传统的关系数据库在处理这些需求时存在困难,因此不适合采用。而NoSQL数据库具有高性能、高拓展性和灵活部署的特点,更适合处理SNS系统中大量的实时数据。答案中详细解释了为什么不能使用传统关系数据库,并给出了NoSQL数据库的基本特点。

创作类型:
原创

本文链接:关于在线社交网络服务(SNS)系统设计和数据库选择的问题

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share