大数据问题背景
大数据虽然是一个比较宽泛的词,但对于我们来说其实可以简单理解为“海量数据的存储与处理”。之所以人们专门大数据这个课题,是因为海量数据的处理和较小量级数据的处理是不一样的,例如我们对一个mysql表中的数据进行查询,如果是100条数据,那对于mysql来说毫无压力,但如果是从十亿条数据里面定位到一条呢?情况就变得复杂了,换个角度想,十亿条数据是否适合存在mysql里也是尚待讨论的。实时上从功能角度的出发,我们完全可以使用以往的一些技术栈去处理这些问题,只不过高并发高可用高实时性这些都别想了。接下来要介绍的这些腾讯大数据组件就是在这一个问题背景下一个个诞生的。
现在我把海量数据的处理当作一个需求去做列一个step by step,一步一步去看我们如何做:
Step 1:海量数据怎么存储?
先从文件维度来看:
对于一般量级的数据来说,我们会存在单机上,如果数据量比较大,我们会存储在分库分表的mysql集群上。但海量数据需要的可能是成千上百个单机的存储量,因此存储海量数据我们需要解决两个问题:
1)大规模跨机器存储(成千上百的机器);
2)用户无感知,也就是对用户来说感受到的是同一个系统。
尽管我们可以通过MySQL的中间件来实现分库分表的无感知,但是,当我们需要用全部数据,去分析全部数据的时候,这种存储方式就不合适了。
那业界就产生了一种分布式存储的系统:HDFS。
HDFS(Hadoop Distributed File System)就是做这件事情,当你引用某个文件的时候,你使用的是一个单一的路径,但它其实是同时去成千上百个机器上定位和获取的,你不需要去关注里面的细节,这些都是HDFS做的。
腾讯云解决方案 云HDFS
这里腾讯云也有相关的大数据存储的组件 云HDFS
云 HDFS(Cloud HDFS,CHDFS)为您提供标准 HDFS 访问协议,您无需更改现有代码,即可使用高可用、高可靠、多维度安全、分层命名空间的分布式文件系统。 只需几分钟,您就可以在云端创建和挂载 CHDFS,来实现您大数据存储需求。随着业务需求的变化,您可以实时扩展或缩减存储资源,CHDFS 存储空间无上限,满足您海量大数据存储与分析业务需求。此外,通过 CHDFS,您可以实现计算与存储分离,极大发挥计算资源灵活性,同时实现存储数据永久保存,降低您大数据分析资源成本。
产品特性
现在还没有对所有人开发,需要申请使用。
欢迎大家申请使用。体验 标准 HDFS 访问协议、卓越性能、分层命名空间的分布式文件系统。
今天先写到这里,下一次讲,面对这么大的数据,我们如何快速的查询和使用这些数据。
最后
现在一般的企业都不会自己搭建自己的大数据系统了,一般都是采用云服务,无论你是通过腾讯云或者是阿里云,都可以快速的搭建自己的大数据系统。
我也不建议自己搭建和维护。
see you !