0

Hadoop クラスターをセットアップしましたが、問題なく動作しています。その上で、豚のスクリプトを使用しています。

ただし、次のエラーが発生します。

org.apache.hadoop.ipc.RemoteException: org.apache.hadoop.security.AccessControlException: Permission denied: user=tavasthi, access=WRITE, inode="home":dsslmn:supergroup:rwxr-xr-x

誰かがこのエラーを修正するための指針を与えることができますか? 前もって感謝します。

4

2 に答える 2

0

HDFS でフォ​​ルダに保存する権限がないようですhome。あなたのユーザーは user でtavasthiはないため、フォルダーdsslmnへの書き込み権限がありません(ユーザーのみが書き込み権限を持っていることを示します)。homerwxr-xr-x

pig STORE コマンドを使用しようとしているコードを投稿してパスを含め、この出力フォルダーへのパスが存在するかどうか、およびユーザーに書き込み権限があるかどうかをお知らせください。

于 2012-04-25T10:35:35.333 に答える
0

安全な偽装機能http://hadoop.apache.org/common/docs/stable/Secure_Impersonation.htmlを使用して、同様の問題を解決できました

このコードスニペットに従う

UserGroupInformation ugi = 
                    UserGroupInformation.createProxyUser("hduser", UserGroupInformation.getLoginUser());
            ugi.doAs(new PrivilegedExceptionAction<Void>() {
                public Void run() throws Exception {
                    Configuration jobconf = new Configuration();
        jobconf.set("fs.default.name", "hdfs://server:hdfsport");
        jobconf.set("hadoop.job.ugi", "hduser");
        jobconf.set("mapred.job.tracker", "server:jobtracker port");
                 String[] args = new String[] { "data/input", "data/output" };
                ToolRunner.run(jobconf, WordCount.class.newInstance(), args);
                    return null;
                }
            });

URLcore-site.xmlに記載されているように、リモート(私の場合はWindowsデスクトップホスト)のログインユーザーIDを追加する必要があります

于 2012-06-26T17:22:45.640 に答える