hadoop - 海量数据入门

标签 hadoop mapreduce nosql large-data-volumes

我是一名数学家,偶尔会兼职做一些统计/机器学习分析咨询项目。我可以访问的数据通常较小,最多几百兆字节(而且几乎总是少得多),但我想了解更多有关处理和分析千兆字节/太字节规模数据的信息。我需要了解什么以及可以从哪些好的资源中学习?

  1. Hadoop/MapReduce 是一个明显的开端。
  2. 有没有我应该学习的特定编程语言? (我现在主要使用 Python、Ruby、R,偶尔使用 Java,但似乎 C 和 Clojure 经常用于大规模数据分析?)
  3. 我不太熟悉整个 NoSQL 运动,只是它与大数据相关。哪里是学习它的好地方,是否有我应该熟悉的特定实现(Cassandra、CouchDB 等)?
  4. 我在哪里可以了解如何将机器学习算法应用于海量数据?我的数学背景主要是理论方面的,绝对不是数值或近似方面的,而且我猜大多数标准 ML 算法都没有真正扩展。
  5. 任何其他关于要学习的东西的建议都会很棒!

最佳答案

  1. Apache Hadoop 确实是一个好的开始,因为它是免费的,拥有庞大的社区并且易于设置。
  2. Hadoop 是用 Java 构建的,因此可以将其作为首选语言。但是也可以将其他语言与 Hadoop 一起使用(“管道”和“流”)。我知道,例如经常使用 Python。
  3. 如果愿意,您可以避免将数据保存在数据库中。最初,Hadoop 处理(分布式)文件系统上的数据。但正如您似乎已经知道的那样,有适用于 Hadoop 的分布式数据库可用。
  4. 你有没有看过Mahout ?我认为这对您来说很受欢迎 ;-) 您需要的许多工作可能已经完成了!?
  5. 阅读Quick Start and set up你自己的(伪分布式?)集群并运行 word-count example .

如果您有任何问题,请告诉我 :-) 评论会提醒我这个问题。

关于hadoop - 海量数据入门,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2937476/

相关文章:

python - 我可以将 python 与 giraph 一起使用吗?

hadoop - 如何将本地 Hadoop 配置精确模拟到 GCP Dataproc

hadoop - Hadoop:无节点可用于 block blk_-5883966349607013512_1099

hadoop - 在用 Java 编写 MR 代码时,如何决定何时使用 Map-Side Join 或 Reduce-Side?

database - 为什么不像通常使用 MySQL 那样从 "single & small"Cassandra 服务器开始呢?

hadoop - Hadoop作业执行(如果集群中没有空间)

hadoop - TaskTracker使用本地库

hadoop - Pig 中的 SimpleTextLoader UDF

node.js - MongoDB 不会保存 JSON 文档?

database - 当我使用 MongoDB Atlas Search 时,如何处理本地 MongoDB 数据库中的查询?