问题标签 [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.
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' 之前缺少分号?
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 更高效?
hadoop - 为烫伤添加 parquet-avro 支持
如何创建一个Scalding
Source
可以处理 和 之间avro
的转换parquet
。
解决方案应该:
注意:我注意到 Cascading 有一个用于利用 thrift 和 parquet 的模块。我突然想到这将是一个开始寻找的好地方。我还在google-groups/scalding-dev上开了一个帖子
scala - 在 groupBy 之后烫伤,展平字段
我看到了: Scalding:如何在 groupBy('field){.size} 之后保留另一个字段?
与 Apache Pig 相比,这是一个真正的痛苦和混乱......我做错了什么?我可以像GENERATE(FLATTEN())猪一样做吗?
我很困惑。这是我的烫伤代码:
我的测试:
我确实在运行时遇到了异常:
我做错了什么?
升级版:
我是这样做的:
测试通过,但我不确定这是一个好方法......
scala - 在子类中烫伤覆盖参数
我有两个烫伤工作,其中一个继承自另一个。像这样的东西
这个想法是 MyJob 中的一些代码假设我们正在使用详细标志运行,因此我不想将其作为参数,而是要确保始终设置它。然而,简单地覆盖类变量是行不通的,因为它仍然会从命令行参数中获取 'verbose' 的值。有谁知道如何做到这一点?
java - Hadoop-Cascading:部分目录源点击
我的数据结构如下:
我知道我可以使用数据目录中的所有文件,Tap
如下所示:
但我想要目录的特定部分,例如只有 date 上的文件20140807
。因此它将包括所有带有前缀的文件20140807
。有没有办法用级联来做到这一点?或者有什么方法可以通过烫伤来做到这一点?
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 获取/扫描?
hadoop - 如何在 Scalding 中登录文件?
在我的 Scalding map reduce 代码中,我想注销正在发生的某些步骤,以便在出现问题时调试 map-reduce 作业。
如何将日志记录添加到我的烫伤作业中?
例如
scala - 在烫伤中读取 ctrl 分隔符
我正在尝试在烫伤中读取 ctrl-a 分隔文件。我收到一条错误消息,指出它找到了错误数量的字段(期望 166,找到 142),然后它显示它试图读取的行。由于某种原因,它不会读取文件三分之一的分隔符。这是我正在使用的代码:
我是烫伤的新手,所以我可能不正确/不恰当地使用了 CSV 函数。关于为什么会发生这种情况的任何想法?
scala - Scala/Scalding:透视数据
我有一个数据集,它是烫伤管道的输出,如下所示:
我试图把它变成这样的东西:
首先,我认为以某种方式使用 flatMap 会起作用,但这似乎不对。似乎使用枢轴函数应该可以工作,但我不太清楚如何枢轴多个列。
任何帮助表示赞赏。