问题标签 [writable]

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 回答
645 浏览

null - Hadoop 0.20.205.0 WritableComparator 不尊重可配置键

我一直在尝试运行表现出各种奇怪和意外行为的 hadoop 0.20.205.0 MapReduce 作业(单线程,本地)。我终于明白为什么了。在我看来,这就像 hadoop 中的一个错误,但也许有一些我不明白的地方。有人可以给我一些建议吗?我的 setMapOutputKeyClass 类实现了 Configurable。除非首先调用 setConf,否则 readFields 方法将无法正确读取(我相信这是 Configurable 接口的重点)但是查看 WritableComparator 的代码,我发现当框架对它们进行排序时,它会实例化其内部关键对象:

而 newKey() 使用 null 配置来构造键:

确实,当我在调试器中运行时,我发现

key1 中的 conf 为 null,因此未调用 setConf。

这是 hadoop 中的错误还是我应该使用 Configurable 以外的东西来配置密钥?如果这是一个错误,有人知道任何解决方法吗?

编辑:这是一个因这个原因而失败的工作的简短(有点做作)示例:

0 投票
2 回答
1253 浏览

java - 在hadoop FS中写一棵二叉树

我需要将二叉树写入 HDFS,我将用它来表示决策树。但为了做到这一点,我首先需要创建一个 BinaryTreeNode 类,它将是树节点。这些是我的类属性:

所以现在我需要实现 write 和 readFields 方法来读写这些节点。这些是我所做的:

我想不到的是如何编写和读取我的 2 个子节点。请注意,树将递归构建,每个节点将有 0-2 个子节点。所以我后来的目的是拥有一个 BinaryTree 类,该类将具有属性 BinaryTreeNode 根。谢谢

0 投票
2 回答
4751 浏览

ruby - 如何检测目录是否可在 Ruby 中写入

我正在使用 Ruby,需要在尝试创建新文件之前检测目录是否可写。

我尝试了以下代码,它根据@path 是否为目录正确返回真/假。但是,当 @path 文件夹没有写入权限时,它仍然返回 true。

我查看了 File 和 Dir 类的帮助,但看不到任何允许我检查目录写入权限的方法。有办法吗?

我只需要它在 Windows 上工作,使用 Ruby 1.9.3。

0 投票
2 回答
497 浏览

php - 如何在文件上传时分配 chmod 值 0777 (PHP)?

我的系统有一个对话区,可以写入和提取 .txt 文件。我显然能够通过我的 FTP 客户端设置权限,但我希望将可写功能应用于通过我的系统在 PHP 中上传的所有文件。我要补充一点,安全性不是问题。

我为我的代码的布局和一般语法道歉

0 投票
1 回答
238 浏览

java - 使用代理将 3rd 方类扩展为 Hadoop Writable

我有一个我想在 Hadoop 中使用的第三方类,因此需要让它实现Writable。问题是 Hadoop 使用的方式Writable是创建一个 object o = SomeObject(),然后调用o.readFields(in)反序列化,在我的情况下我无法创建空对象:

注意sizefinal

这里RealCube只有一个超级构造函数可以调用,并且该构造函数final在抽象超类中设置变量。

当我们开始尝试实现RealCubeWritable时,我无法拥有构造函数,并且在检查流之前RealCubeWritable()我无法知道实际情况。sizeDataInput

因此,在 Hadoop 中执行此操作的唯一方法似乎是使用包装器。我想知道是否有一种方法可以使用包装器,但RealCubeWritable仍然表现得像RealCube?我已经研究过使用动态代理类,但我不确定这是否可行(或如何实际执行)。

谢谢!

0 投票
3 回答
681 浏览

hadoop - 多种自定义可写格式

我有多个输入源,我使用 Sqoop 的 codegen 工具为每个输入源生成自定义类

在 Map 方面,根据输入源,我相应地创建了上述 2 个类的对象。

我将键作为“文本”类型,并且由于我有 2 种不同类型的值,因此我将值输出类型保持为“可写”。

在减少方面,我接受值类型为可写。

我也设置

在执行过程中,它根本不进入reduce函数。

有人可以告诉我是否可以这样做?如果是这样,我做错了什么?

0 投票
1 回答
3589 浏览

java - 如何将 MapWritable 与 SequenceFile 一起使用?Hadoop

我正在尝试使用 SequenceFile 在两个 mapReduce 程序之间传递数据。我要传递的数据格式为 >. 由于某种原因,地图中的某些条目似乎没有从一个程序传递到另一个程序。这是我的代码,首先是生成 de SequenceFileOutput 的 reducer,然后是从中读取的映射器。

公共静态类 IntSumReducer 扩展 Reducer {

和映射器:

公共静态类 TokenizerMapper 扩展 Mapper{

}

0 投票
1 回答
326 浏览

apache - 如何配置同时对 apache 可写的主目录

我已经将我的 apache 配置为为public_html每个用户内部的文件夹提供服务。然后我配置了将访问这些文件夹的虚拟主机。

因此,当前状态在以下示例中进行了描述:我有一个foo-bar.com由虚拟主机提供服务并指向/home/foo-bar/public_html文件夹的域 ( )。这发生在几个域<->用户对中。

我的问题是当网站必须将一些文件上传到例如/home/foo-bar/public_html/contents. 到目前为止,我的解决方案是将该文件夹的所有权更改为 apache 用户和组,但这使得用户无法通过 FTP 将文件上传到该文件夹​​。

在这种情况下,最佳做法是什么?如何解决这个问题?

谢谢你。

进一步的发展

我设法通过将组更改为/home/foo-bar/public_html/contentsapache 用户并向组添加写入权限来做到这一点。这样,该文件夹对于 apache 用户及其所有者是可写的。

可能的解决方案(尚未实施或测试)

有人给了我一个答案,在我看来这是迄今为止解决这个问题的最佳解决方案:使用 pureftp 和 mysql 设置虚拟用户和帐户。

由于我使用的是 vsftp,因此我发现此链接可能对某人有用:

http://howto.gumph.org/content/setup-virtual-users-and-directories-in-vsftpd/

0 投票
2 回答
3323 浏览

java - Hadoop 可写日期/日历

我正在寻找实现一个自定义 hadoop Writable 类,其中一个字段是时间戳。我似乎无法在 hadoop 库(例如,可写日期或日历)中找到可以简化此操作的类。我正在考虑在日历上使用 get/setTimeInMillis 创建自定义可写,但我想知道是否有更好/内置的解决方案来解决这个问题。

0 投票
1 回答
862 浏览

java - Hadoop 序列化嵌套对象

我有一堂课:

当使用 Class1 作为输出值时,Hadoop 在 reducer 端抛出此错误:

我的直觉告诉我,问题与 Class1 或更可能与实现 Serializable 和 Writable 的 Class2 有关。

有任何想法吗 ?

更新:

我将问题本地化:问题是 Class1,现在,我已更改为仅实现 Writable(而不是 Serializable)。我还对其进行了更改,因为它不再包含对 Class2 的引用。我仍然得到同样的错误。如果我将 Class1 替换为另一个 Writable 实现作为输出值,它就可以工作!为什么 ??