问题标签 [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 投票
1 回答
263 浏览

scala - 烫伤,在 Job 中不能使用多个特征

我有一份烫伤的工作。我创建了两个特征 A,B 每个特征都有伴生对象 A,B,其中包含 trait 和 Pipe 的隐式包装。

当我只使用一个特征时,作业编译成功。当我导入这两个特征时,编译失败。它说来自特征的所有方法“不是 cascading.pipe.Pipe 的成员”

为什么?我做错了什么?如果我评论A的导入。B.,它编译。

UPD,我已经更改了代码:

并删除了隐含:

类 TraitAWrapper(val self: RichPipe) 使用 TraitA 扩展 AnyRef 类 TraitBWrapper(val self: RichPipe) 使用 TraitB 扩展 AnyRef

现在编译器抱怨:

value otherMethodFromTraitA 不是 cascading.pipe.Pipe 的成员可能的原因:可能在 `value otherMethodFromTraitA' 之前缺少分号?

0 投票
1 回答
403 浏览

scala - mapTo 如何比 Scalding 中的 map 更高效

Github 上的 Scalding 参考(https://github.com/twitter/scalding/wiki/Fields-based-API-Reference#map-functions)说明如下:

MapTo 相当于映射然后投影到新字段,但效率更高。因此,以下两行产生相同的结果:

pipe.mapTo(existingFields -> additionalFields){ ... } pipe.map(existingFields -> additionalFields){ ... }.project(additionalFields)

我的问题是:

  • mapTo 如何比 map 更高效?
0 投票
1 回答
805 浏览

hadoop - 为烫伤添加 parquet-avro 支持

如何创建一个Scalding Source可以处理 和 之间avro的转换parquet

解决方案应该:

注意:我注意到 Cascading 有一个用于利用 thrift 和 parquet 的模块。我突然想到这将是一个开始寻找的好地方。我还在google-groups/scalding-dev上开了一个帖子

0 投票
1 回答
1259 浏览

scala - 在 groupBy 之后烫伤,展平字段

我看到了: Scalding:如何在 groupBy('field){.size} 之后保留另一个字段?

与 Apache Pig 相比,这是一个真正的痛苦和混乱......我做错了什么?我可以像GENERATE(FLATTEN())猪一样做吗?

我很困惑。这是我的烫伤代码:

我的测试:

我确实在运行时遇到了异常:

我做错了什么?

升级版:

我是这样做的:

测试通过,但我不确定这是一个好方法......

0 投票
1 回答
145 浏览

scala - 在子类中烫伤覆盖参数

我有两个烫伤工作,其中一个继承自另一个。像这样的东西

这个想法是 MyJob 中的一些代码假设我们正在使用详细标志运行,因此我不想将其作为参数,而是要确保始终设置它。然而,简单地覆盖类变量是行不通的,因为它仍然会从命令行参数中获取 'verbose' 的值。有谁知道如何做到这一点?

0 投票
1 回答
306 浏览

java - Hadoop-Cascading:部分目录源点击

我的数据结构如下:

我知道我可以使用数据目录中的所有文件,Tap如下所示:

但我想要目录的特定部分,例如只有 date 上的文件20140807。因此它将包括所有带有前缀的文件20140807。有没有办法用级联来做到这一点?或者有什么方法可以通过烫伤来做到这一点?

0 投票
1 回答
141 浏览

mapreduce - 烫伤作业中的 HBase 获取/扫描

我正在使用带有 Spyglass 的 Scalding 来读取/写入 HBase。

我正在对 table1 和 table2 进行左外连接,并在转换列后写回 table1。table1 和 table2 都被声明为 Spyglass HBaseSource。

这工作正常。但是,我需要使用 rowkey 访问 table1 中的不同行来计算转换后的值。

我为 HBase 尝试了以下获取: val hTable = new HTable(conf, TABLE_NAME) val result = hTable.get(new Get(rowKey.getBytes()))

我可以访问此链接中提到的 Scalding 作业中的配置:

https://github.com/twitter/scalding/wiki/Frequently-asked-questions#how-do-i-access-the-jobconf

当我在本地运行烫伤作业时,这有效。但是,当我在集群中运行它时,在 Reducer 中执行此代码时,conf 为空。

对于这种情况,是否有更好的方法在 Scalding/Cascading 作业中进行 HBase 获取/扫描?

0 投票
1 回答
511 浏览

hadoop - 如何在 Scalding 中登录文件?

在我的 Scalding map reduce 代码中,我想注销正在发生的某些步骤,以便在出现问题时调试 map-reduce 作业。

如何将日志记录添加到我的烫伤作业中?

例如

0 投票
1 回答
691 浏览

scala - 在烫伤中读取 ctrl 分隔符

我正在尝试在烫伤中读取 ctrl-a 分隔文件。我收到一条错误消息,指出它找到了错误数量的字段(期望 166,找到 142),然后它显示它试图读取的行。由于某种原因,它不会读取文件三分之一的分隔符。这是我正在使用的代码:

我是烫伤的新手,所以我可能不正确/不恰当地使用了 CSV 函数。关于为什么会发生这种情况的任何想法?

0 投票
1 回答
508 浏览

scala - Scala/Scalding:透视数据

我有一个数据集,它是烫伤管道的输出,如下所示:

我试图把它变成这样的东西:

首先,我认为以某种方式使用 flatMap 会起作用,但这似乎不对。似乎使用枢轴函数应该可以工作,但我不太清楚如何枢轴多个列。

任何帮助表示赞赏。