大数据处理需注意的问题

时间:2024-04-01 19:34:42

  信息时代,数据俨然已成为一种重要的生产要素,如同资本、劳动力和原材料等其他要素一样,而且作为一种普遍需求,它也不再局限于某些特殊行业的应用。各行各业的公司都在收集并利用大数据处理分析结果,尽可能的降低成本,提高产品质量、提高生产效率以及创造新的产品。

大数据处理需注意的问题

 

  大数据的处理都有哪些问题

 

  一、海量的数据

 

  处理超大数据集通常会受到存储和处理数据的计算资源的限制。通常一块商用硬盘可以容纳1TB的数据量。有些数据集能有好多PB(相当于上千块硬盘的容量)。这些数据需要在数据中心内跨多个服务器(或传统的RAID盘)存储。除此之外,处理这些数据也需要大量的物理内存和CPU。

 

  Hadoop(一个开源分布式大数据处理生态)的出现一定程度上降低了数据处理的成本。这套系统的核心是Hive,一种能像数据库一样存储数据的类SQL处理系统。数据处理在商用硬件上进行,使用Map-Reduce算法(专门为分布式处理设计的算法)。这些服务器通常被存放在数据中心。但是,管理维护数据中心和Hadoop套件的成本非常高。

 

  二、复杂的数据

 

  复杂数据的概念和理想数据完全相反。所有数据集都有一定的复杂性,但有一些天生更难处理。通常这些复杂数据集没有定义结构(没有行列结构),经常变化,数据质量很差或没有记录。

 

  比如人工输入的医生的笔记、博客的文字、时刻更新的网页日志以及深嵌套的XML或JSON文件。

 

  为复杂数据做快速标注时,大多数不好的数据应该在源头就进行识别。数据工程师需要构建足够强壮的系统来快速获取和过滤这些数据集,但是这些数据终还是要在源头纠正。此外,如果可以,我们建议在数据产生的源头定好SLA来减少低质量的数据,使数据更好管理。

 

  处理复杂数据集,让它们能遵从整洁的格式需要下很大的功夫。每种数据质量问题都需要区别处理,比如记录重复、主键缺失、字符/字符串的格式错误等。

 

  有很多工具可以用来处理这种数据。通常数据科学家和工程师会用Jupyternotebook以及Pandas或Spark来处理、分析、可视化这些数据集。Jupyter为开发者提供了交互式的环境使他们能在代码中逐行遍历数据集,从而节省很多时间。Databricks也提供了非常好的数据处理和分析环境,包含了一个类似Jupyternotebook的UI、独有的Spark特性、以及简单易用的节点管理能力。

 

  三、高速的数据

 

  高速数据通常被认为是实时的或是准实时的数据流。数据流本质上是在生成后就发给处理器的数据包(比如天线收到的电视信号或是通过固话传输的语音电话)。实时数据的定义值得深入讨论,但是它本质上可以归结为需要在毫秒内被更新的数据。处理数据流有很多挑战,包括在采集时不丢失数据、处理数据流中的重复记录、流数据与更大的历史数据集集成、以及进行实时分析。

 

  数据分析是目前企业工作中的一个非常重要的组成部分,企业将根据自己的销售数据、财务数据、管理数据等各类数据来分析自己企业的实际情况,然后结合有效的分析结果,做出更好的发展决策。