数据切分方案在提高大数据查询性能过程中应用.docVIP

数据切分方案在提高大数据查询性能过程中应用.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据切分方案在提高大数据查询性能过程中应用

数据切分方案在提高大数据查询性能过程中的应用   摘 要 在当今互联网技术广泛普及的今天,大数据已经不再是新的研究课题,在当今数据来源越来越繁杂,每天都有海量的数据进行储存、访问的形势下,过高的数据负载对系统的稳定性与扩展性造成不可忽视的影响。基于此,本文分析采用数据切分方案的特征,并对以数据切分方案提高大数据查询性能的应用进行了研究与设计 【关键词】数据切分 方案 大数据 查询性能 设计 1 数据切分概述 数据切分方法是按照某种切分规则将数据分布到指定的范围内,达到数据查询时提高系统并行处理能力的目的。数据切分后规模会进一步的减小,而且通常分布在多个数据库中,当对数据进行查询时,查询的响应时间会大大降低,也可以减少通信开销,平衡系统负载和减少计算量,从而提高系统性能 2 数据切分模式及特征 数据切分按照不同的切分规则类型,可以分为垂直切分、水平切分两种切分模式 垂直切分是根据业务的特性,将不同的数据表按照某种切分规则切分到不同的数据库上。垂直切分的最大特点是切分规则比较简单,实施起来也比较方便,适合各个模块耦合度低、相互影响小、业务逻辑简单清晰的系统。这种系统很容易将不同模块所使用的表拆分到不同的数据库中 水平切分则是根据表中数据的逻辑关系,按照某种切分规则将同一个表中的数据拆分到多个数据库上,相对于垂直切分来说切分规则复杂一些。当一张表中的数据量巨大而且??长速度比较快时,为了提高查询的效率就需要对其进行水平切分,按照指定的规则将表中的数据拆分到不同的数据库中。水平切分通常需要根据指定字段进行数据切分,常用的切分规则如下: 2.1 枚举法 比如数据是按照地区省份来保存的,用户通过多级别划分的,本规则适用于这些特定的场景 2.2 求模 如果分片字段为数字,对分片字段进行十进制/百进制求模运算,数据可以均匀落在各分片内,也可以对字符串hash取模,支持存在符号字母的字段的分片 2.3 范围约定 对分片字段约定一个范围,比如ID0-100000为一个分片,ID100001-200000为一个分片 2.4 按日期 可以按月,按日,按小时分片 2.5 一致性hash 对指定字段进行hash取值,然后根据hash值将数据进行分片 当某个表或者某些表的数据量比较大而且访问频繁时,通过垂直切分仍然无法满足系统的读写要求时,就需要将垂直切分和水平切分结合起来使用,先对数据进行垂直切分,然后进行水平切分,通过这两种方式的组合来解决超大型表的读写性能问题 3 以数据切分提高大数据查询性能的设计方案 当前的大部分企业都拥有自己的数据存储系统,利用数据存储系统可以方便快捷的对企业信息数据进行查询。但当这些信息数据的数据量达到一定级别时,从数据中查询某一数据通常需要花费大量的时间,影响到整体工作效率,因此需要对数据查询进行优化。以下以垂直切分与水平切分方案设计为例,通过对数据的划分来提高海量数据的查询性能 3.1 垂直切分方案设计 本应用数据包括设备基本信息、内容推送序列信息、用户行为信息及相关统计信息。分析数据的特性可以发现设备基本信息主要是用于查询,数据更新的操作并不是很多。内容推送序列由管理员提前进行编辑,然后推送给各个用户。因此内容序列也是主要用于用户查询操作。用户行为信息是用户使用移动端时产生的日志信息,主要记录用户使用设备浏览广告的次数以及时长等,因此用户行为信息主要进行数据库的写操作。统计信息主要是用户浏览信息的次数,用户的积分等信息,这些信息主要是由定时统计任务用户活动较少的时段对相关信息统计后写入到表中,也主要用于用户查询 由于应用存在着大量的读写操作,为了保证数据库系统的能够较好的处理用户的读写需求,获得良好的用户体验,应该对数据进行读写分离,将大并发读的数据和大并发写的数据进行垂直切分存入不同的数据库中 另外,由于用户量巨大,将所有的查询密集的信息存入一个数据库中,并不能满足系统查询性能的需求。同样,将所有的写密集型的数据写到单台数据库,也不能满足系统快速存储数据的需求。因此,需要对数据进行进一步的切分。内容序列信息和统计信息并发查询量都超出了单个数据库的承受能力,所以将这两个信息相关表放在不同的数据库中,以更好的满足用户查询的需求 3.2 水平切分方案设计 以用户行为信息表为例,由于应用将来会有大量的用户,每天将会有海量记录信息写入数据库。单台数据库己经不能满足如此巨大数据的处理需求,因此,需要对用户行为信息表进行水平切分 对用户行为信息表进行水平切分需要选取一个字段作为切分依据和标记。本文选取手机号字段进行数据切分,并且按照手机号的地域(省或者直辖市)作为切分标准。在用户不断增加的情况下可以更细

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档