4

任务是在 Azure 云中实现ETL项目的T部分(转换) 。我相信 HDInsight 是使用它的正确服务,但不确定。请批准或反对此选择。

我对这个领域很陌生,如果有人能在这里指出正确的方向,我将不胜感激。

我希望能够开发转换服务(作业)并使用Azure 存储/计算模拟器Visual Studio 2012(理想情况下在 C# 中)在本地对其进行测试。我很确定HDInsight如何适合这张图片(如果有的话)。转换作业将从 blob 存储中读取文本文件并将数据生成(映射缩减)到 Azure 表存储中。

4

2 回答 2

1

您当然可以在本地运行 HDInsight 框。这与 Azure 存储和计算机仿真是分开的,通过 Web 平台安装程序安装(只需搜索 HDInsight)。

本地版本和 Azure 版本之间存在一些细微差别,因为本地版本适用于存储在 HDFS 中的数据,而在云中您可以使用 Azure Blob 容器。至于开发和测试您转换流程(在 MapReduce / Hive / Pig 中),这并没有真正的区别。唯一的区别是您将数据输入和输出的方式。

请注意,您当然可以在 HDInsight 上使用 C# 创建 MapReduce 作业,对于基本的数据转换,使用高级语言(如 Pig)或可能在 HDInsight 上使用基于 SQL 的 HiveQL 会容易得多。

于 2013-08-23T11:24:53.380 回答
0

您需要划清您期望的 T 转换和自动化水平。

我建议您直接使用控制台应用程序,该应用程序从 blob 中提取数据并执行转换

建议使用控制台应用方式的原因

  1. 简单,直接,相同的技能
  2. 用于 blob 和 table 的良好 SDK 可以做任何你想做的事情
  3. Map-Reduce(HDInsight) 是 Azure Storage 和 c# 家族中的全新物种。我听说 HDInsight 不错,但不确定它是否适合您。
  4. 如果您有一个控制台应用程序,您可以轻松地安排它的任务,让它基于 Pub-Sub 模型运行
  5. 如果您使用自己的 c# - 控制台应用程序或 .exe,您可以轻松地调整它在Azure Worker Role 中运行。
  6. 采用您自己的应用程序方法将消除安装和设置 HDInsight 的开销
  7. 成本明智的工人角色比 HDInsight 便宜
于 2013-08-22T18:43:31.937 回答