大家好,今天小编关注到一个比较有意思的话题,就是关于千锋c语言的问题,于是小编就整理了1个相关介绍千锋c语言的解答,让我们一起看看吧。
大数据究竟是什么?大数据有哪些技术呢?
我有幸做了有五六七八年的大数据吧,谈谈自己的看法。简单来说,就是现在各个app,网站产生的数据越来越多,越来越大,传统的数据库比如MySQL Oracle之类的,已经处理不过来了。所以就产生了大数据相关的技术来处理这些庞大的数据。
第一,首先要把这些大数据都可靠的存储起来,经过多年的发展,hdfs已经成了一个数据存储的标准。
第二,既然有了这么多的数据,我们可以开始基于这些数据做计算了,于是从最早的MapReduce到后来的hive,spark,都是做批处理的。
第三, 由于像hive这些基于MapReduce的引擎处理速度过慢,于是有了基于内存的olap查询引擎,比如impala,presto。
第四,由于批处理一般都是天级别或者小时级别的,为了更快的处理数据,于是有了spark streaming或者flink这样的流处理引擎。
第五,由于没有一个软件能覆盖住所有场景。所以针对不同的领域,有了一些特有的软件,来解决特定场景下的问题,比如基于时间序列的聚合分析查询数据库,inflexdb opentsdb等。***用预聚合数据以提高查询的druid或者kylin等,
第六,还有其他用于数据削峰和消费订阅的消息队列,比如kafka和其他各种mq
第七,还有一些其他的组件,比如用于***管理的yarn,协调一致性的zookeeper等。
第八,由于hdfs 处理小文件问题不太好,还有为了解决大数据update和insert等问题,引入了数据湖的概念,比如hudi,iceberg等等。
第九,业务方面,我们基于大数据做一些计算,给公司的运营提供数据支撑。做一些推荐,给用户做个性化推荐。机器学习,报警监控等等。
这是我通常与想要了解大数据的人进行对话:
问:什么是大数据?
答:大数据是描述庞大数据的术语。
问:现在,大数据有多大?
答:如此庞大,以至于无法用常规工具处理?
问:通常的工具是什么意思?
答:普通文件系统,数据库等工具。
所有这些大数据工具都有一个共同的特性:分布式计算。
因此,大数据是一个通常只能通过分布式的工具才能解决的问题。我知道这些天,每个人都在尝试将他们的BI(商业情报)工具描绘成大数据工具,但不要被喧闹声所欺骗。
问:哪些典型的大数据问题?
就以悟空问答为例说说大数据的故事。以下说的数字都不是真实的,都是我的***设。
比如每天都有1亿的用户在悟空问答上回答问题或者阅读问答。
***设平均有1000万的用户每天回答一个问题。一个问题平均有1000的字, 平均一个汉字占2个字节byte,三张图片, 平均一帐图片300KB。那么一天的数据量就是:
文字总量:10,000,000 * 1,000 * 2 B = 20 GB
图片总量: 10,000,000 * 3 * 300KB = 9 TB
为了收集用户行为,所有的进出悟空问答页面的用户。点击,查询,停留,点赞,转发,收藏都会产生一条记录存储下来。这个量级更大。
所以粗略估计一天20TB的数据量. 一般的PC电脑配置大概1TB,一天就需要20台PC的存储。
如果一个月的,一年的数据可以算一下有多少。传统的数据库系统在量上就很难做到。
另外这些数据都是文档类型的数据。需要各种不同的存储系统支持,比如NoSQL数据库。
到此,以上就是小编对于千锋c语言的问题就介绍到这了,希望介绍关于千锋c语言的1点解答对大家有用。