问题标签 [scalding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
703 浏览

scala - 烫伤如何使用'*关键字映射所有字段?

我想对我的 Pipe 的所有字段应用一个操作。我在https://github.com/twitter/scalding/wiki/Fields-based-API-Reference上看到 “您可以使用 '*(此处和其他地方)来表示所有字段。” 但不知何故,我没有成功让它发挥作用。有人可以给我举个例子吗?

最初我有类似的东西

我现在想将其应用于所有领域,例如

?

0 投票
1 回答
693 浏览

serialization - Scalding中的读写案例类

有人可以指出一个链接,解释如何在烫伤中读写简单的案例类吗?是否有一些默认的序列化方案?

例如,我有创建 com.twitter.algebird.Moments 管道的工作。我希望将管道写入 HDFS 并使用不同的作业读取它们。

Fer示例:我尝试使用以下方式编写:

并阅读使用:

我收到以下错误:

0 投票
1 回答
1264 浏览

apache-pig - 烫伤:保留 groupBy 之后的所有字段

我正在groupBy计算一个值,但似乎当我分组时,我丢失了所有不在聚合键中的字段:

在猪中,它会是这样的:

0 投票
1 回答
89 浏览

scala - 使用 HTTP 请求作为管道

我正在摆脱Scalding的困扰,我需要从互联网上获取一些 URL。

看起来,Scala 并没有在其标准库中提供单个类来执行 HTTP 请求。

由于我见过的许多裸 Java 解决方案似乎过于冗长,我想知道我是否可以只使用 Scalding Pipe 机器来执行此操作,或者这不是它打算用于的那种任务。

还。在使用诸如Dispatchscalaj-http之类的外部库的情况下:我可以直接将结果获取到管道还是涉及更多管道?

0 投票
2 回答
1185 浏览

scala - 使用 Scalding JobTest 模拟 TSV 源

我很难为我的烫伤工作进行单元测试。

我的工作需要一个包含三个字段的文件:

我天真地期望这些字段被映射为一个 nTuple,而不需要任何进一步的设置。但从我的测试中,我了解到情况并非如此,需要建立一些进一步的合同:

目前这失败了cascading.tuple.FieldsResolverException: could not select fields: [{1}:'url'], from: [{2}:'offset', 'line']。所以我我需要以某种方式声明 TSV 字段,然后再将其作为 TextLine 的输入。

我发现的大多数文档在这方面都参差不齐。定义此测试的正确原因是什么?

0 投票
1 回答
1585 浏览

scala - scala 文件名太长

我正在使用 scala 2.10 和 gradle 1.11

我的问题是,当我尝试在 hadoop 集群中运行时,编译的 jar 会出错。我想在 hadoop 上运行,因为我使用烫伤。

例外是:

欢迎任何意见...

0 投票
1 回答
215 浏览

map - [Scala/Scalding]:将 ID 映射到名称

我对 Scalding 相当陌生,我正在尝试编写一个将 2 个数据集作为输入的 scalding 程序:1) book_id_title: ('id,'title): 包含书 ID 和书名之间的映射,两者都是字符串。2) book_sim: ('id1, 'id2, 'sim):包含书籍对之间的相似性,由它们的ID标识。

scalding 程序的目标是通过查找 book_id_title 表将 book_ratings 中的每个 (id1, id2) 替换为它们各自的标题。但是,我无法检索标题。如果有人可以帮助使用下面的 getTitle() 函数,我将不胜感激。

我的烫伤代码如下:

谢谢

0 投票
1 回答
1492 浏览

gradle - Gradle 构建的 jar 找不到我的主类

在工作中,我们在 Scalding 项目中使用 gradle,我正在尝试提出最简单的工作来摆脱堆栈。

我的班级看起来像:

和生活in playground/src/org/playground/readCsv.scala。我的构建脚本如下所示:

这会成功编译和构建,但尝试运行 jar 会引发此错误:

我有根据的猜测是,让工作从不Job符合某些约定并且看起来不像有效的主类,但我不希望它抱怨找不到它。

另一种可能性是运行它java -jar jarname是不正确的,我只需要使用 hadoop 或类似的东西运行它。

无论如何,只是为了验证:我的设置有什么问题?

0 投票
1 回答
401 浏览

scala - 自定义烫伤水龙头(或 Spark 等效)

我正在尝试使用自定义文件格式转储我在 Hadoop 集群上的一些数据,通常在 HBase 中。

我想做的或多或少是以下几点:

  • 从分布式记录列表开始,例如 Scalding 管道或类似的
  • 通过一些计算函数对项目进行分组
  • 使属于同一组的项目驻留在同一台服务器上
  • 在每个组上,应用一个转换 - 涉及排序 - 并将结果写入磁盘。事实上我需要写一堆 MapFile——它们本质上是排序的 SequenceFile,加上一个索引。

我想用 Scalding 实现上述功能,但我不知道如何做最后一步。

虽然当然不能以分布式方式写入已排序的数据,但将数据拆分为块然后写入本地排序的每个块应该仍然可行。尽管如此,我还是找不到任何 MapFile 输出用于 map-reduce 作业的实现。

我认识到对非常大的数据进行排序是一个坏主意,这就是即使在单个服务器上我也计划将数据拆分成块的原因。

有没有办法用 Scalding 做类似的事情?可能我可以直接使用 Cascading,或者真正使用其他管道框架,例如 Spark。

0 投票
1 回答
171 浏览

java - 作业在没有映射器或减速器的情况下运行

我写了一份使用在本地模式下运行良好的烫伤的作业。但是当我尝试以 hdfs 模式(在同一个文件上)执行它时,它什么也没做。更准确地说,第一步没有任务(映射器或减速器),之后的步骤显然什么都不做。

我尝试 grepping 日志中的异常并将我的代码包装在 try-catch 中(在烫伤作业定义在构造函数中,我还包装了 run 方法)。

也许由于某种原因级联决定忽略输入文件?这是一个 Avro 放气文件。

更新:挖掘更多,我可以看到这一行:

在作业 xml 中,mapred.input.dir 属性设置为我的文件的路径。

看起来 JobInProgress 正在从作业 xml 文件中不存在的 mapred.job.split.file 获取其信息