如何开始大数据分析

41 投票
2 回答
18474 浏览
提问于 2025-04-16 07:52

我一直在使用R语言,最近开始接触Python。之前我主要用传统的关系型数据库(RDBMS)来做数据仓库,用R和Python来处理数据,现在我觉得有必要深入了解大数据分析。

我想知道如何开始进行大数据处理。 - 如何简单地入门Map/Reduce以及Hadoop的使用。

  • 我如何利用我在R和Python上的技能来开始大数据分析,比如使用Python的Disco项目。
  • 使用RHIPE包,寻找一些简单的数据集和问题领域。
  • 如何找到合适的信息来判断我是否需要从关系型数据库转向NoSQL数据库。

总之,我想知道如何从小做起,逐步提升我在大数据分析方面的技能和知识。

谢谢你的建议和推荐。 我为这个问题的通用性表示歉意,但我希望能对这个话题有更多的了解。

  • Harsh

2 个回答

1

你可以考虑使用DMelt这个数据分析程序(http://jwork.org/dmelt/)。它有一个很棒的特点,就是里面有成百上千个用Python语言写的例子,还有几本相关的书。我之所以使用它,是因为它可以在我的Windows 10系统上运行(因为它是用Java虚拟机开发的),而且它的2D和3D图形效果非常好,可以导出成矢量图形格式。

29

以Python Disco项目为例。

很好,试着玩玩这个。

使用RHIPE包,寻找一些小数据集和问题领域。

也不错,试试这个。

别担心找不到“大”数据集。即使是小数据集也能带来很有趣的问题。实际上,任何数据集都是一个出发点。

我曾经建立过一个小的星型架构,用来分析一个组织的6000万美元预算。源数据在电子表格里,基本上让人看不懂。所以我把它转换成星型架构,并用Python写了几个分析程序,生成相关数字的简化报告。

找到合适的信息来决定我是否需要从关系型数据库转向NoSQL。

这很简单。

首先,找一本关于数据仓库的书,比如Ralph Kimball的《数据仓库工具包》。

其次,仔细研究“星型架构”——特别是Kimball详细解释的各种变体和特殊情况。

第三,明白以下几点:SQL主要用于更新和事务处理。

在进行“分析”处理(无论大小)时,几乎没有任何更新。SQL(以及相关的规范化)其实没那么重要了。

Kimball的观点(还有其他人的观点)是,你的数据仓库大部分不是用SQL存储的,而是用简单的平面文件。数据集市(用于临时的、灵活的分析)可能会放在关系型数据库中,以便用SQL进行简单灵活的处理。

所以,“决定”其实很简单。如果是事务处理(“OLTP”),就必须用关系型或面向对象的数据库。如果是分析处理(“OLAP”),除了进行切片和切块分析时需要SQL,其他时候不需要;即便如此,数据库也是根据需要从官方文件中加载的。

撰写回答