2017-02-06 80 views
0

我是一位新的hadoop开发人员,我已经能够在单节点集群中安装和运行hadoop服务。数据可视化过程中出现问题。当我需要使用像Tableau这样的数据可视化工具时,MapReduce jar文件起到了什么作用。我有一个结构化的数据源,在这个数据源中我需要添加一层逻辑,以便数据在可视化过程中有意义。如果我要用其他工具进行可视化,是否需要编写MapReduce程序?请澄清一下我在这个问题上可以做些什么。Hadoop数据可视化

回答

1

这可能取决于您使用的Hadoop分布以及存在哪些工具。这也取决于实际的数据准备任务。

如果你不想实际编写地图,减少或火花代码自己,你可以使用蜂巢(这相当于映射简化)或更快帕拉尝试类似SQL的查询。使用SQL,您可以创建可以轻松使用的表格数据(配置表)。 Tableau具有两个连接器,可自动将您的Tableau配置/请求转换为Hive/Impala。因为它的速度,我会建议与Impala连接。 如果你需要做的工作,需要更多的编程或SQL只是不够,你可以尝试。 Pig是一种高级脚本语言,可编译映射 - 减少代码。您可以在各自的Hue编辑器或CLI中尝试以上所有内容。

如果你觉得上述所有仍然不适合你的使用情况,我建议写的map-reduce火花代码。 Spark不需要仅用Java编写,而且通常速度更快。

大多数工具都可以与hive表集成,这意味着您不需要重写代码。如果某个工具没有提供此功能,则可以从配置单元表中进行CSV提取,也可以将表格保存为CSV/TSV。然后,您可以在可视化工具中导入这些文件。

0

现有的答案已经触及了这一点,但有些宽泛,所以我决定把重点放在关键部分:

数据可视化的典型步骤

  1. 不要使用任何复杂的计算您喜欢的hadoop工具
  2. 在(蜂巢)表中提供输出
  3. 将数据提取到可视化工具(例如Tableau)的内存中,例如使用JDBC

如果数据太大而无法存入内存,您可以将其转换为正常的SQL数据库,然后直接使用可视化工具进行处理。 (如果您直接在蜂房的工作,你会为最简单的查询需要30秒以上发疯。)


如果它是不可能的/需要的连接由于某种原因,你的可视化工具,解决办法是转储输出文件(例如CSV),然后将这些文件加载​​到可视化工具中。