2016-05-30 6 views
0

H2Oインスタンスをパスワードで保護するためにJetty HashLoginService(すなわち-hash_login -login_conf realm.properties)を使用してH2Oを開始すると、H2OオブジェクトをRオブジェクトに変換できません。H2O(0xData)データフレームをR data.frameに戻す

> require(h2o) 
> h2o.init(port  = 54324, startH2O = F, 
      password = "pass", username = "uname") 
Connection successful! 

R is connected to the H2O cluster: 
    H2O cluster uptime:   5 days 15 hours 
    H2O cluster version:  3.9.1.3405 
    H2O cluster name:   uname 
    H2O cluster total nodes: 1 
    H2O cluster total memory: 22.19 GB 
    H2O cluster total cores: 8 
    H2O cluster allowed cores: 2 
    H2O cluster healthy:  TRUE 
    H2O Connection ip:   localhost 
    H2O Connection port:  54324 
    H2O Connection proxy:  NA 
    R Version:     R version 3.1.1 (2014-07-10) 

> packageVersion("h2o") 
[1] ‘3.9.1.3405’ 

> df <- data.frame(a = c(0.2, 0.3, 0.1, 0.5, 0.1, 0.2), 
        b = c(0.1, 0.1, 0.7, 0.3, 0.2, 0.9)) 

> h2o_df <- as.h2o(df, "h2o_df") 
    |==============================================================================| 100% 

> head(h2o_df) 
    a b 
1 0.2 0.1 
2 0.3 0.1 
3 0.1 0.7 
4 0.5 0.3 
5 0.1 0.2 
6 0.2 0.9 

> class(h2o_df) 
[1] "H2OFrame" 

> as.data.frame(h2o_df) 
                   X.html. 
1                <head> 
2 <meta http-equiv=Content-Type content=text/html;charset=ISO-8859-1/> 
3         <title>Error 401 Unauthorized</title> 
4                </head> 
5                <body> 
6            <h2>HTTP ERROR: 401</h2> 
7      <p>Problem accessing /3/DownloadDataset. Reason: 
8          <pre> Unauthorized</pre></p> 
9      <hr /><i><small>Powered by Jetty://</small></i> 
10                  
11                  
12                  
13                  
14                  
15                  
16                  
17                  
18                  
19                  
20                  
21                  
22                  
23                  
24                  
25                  
26                  
27                  
28                  
29                  
30                </body> 
31                </html> 
Warning message: 
In read.table(file = file, header = header, sep = sep, quote = quote, : 
    cols = 1 != length(data) = 11 

任意のアイデアどのようにこの問題を解決するには:うまくいくかのように私はHashLoginServiceを使用しなかった場合は、次のas.data.frameで例えば

は、動作しないのだろうか?


UPDATE

これはバグであり、あなたがここでそれを追跡することができます:https://0xdata.atlassian.net/browse/PUBDEV-2968

+0

あなたは 'username'と' password'パラメータを 'h2o.init()'に渡していますか? –

+0

@MateuszDymczykはい!私はその質問を編集した。 –

+0

は 'as.data.frame'のバグかもしれません(資格情報を使用していないようです) - チームに相談して、あなたに連絡します! –

答えて

0

は、これまでのバグのようです。

as.data.frame.H2OFrame機能でgetURL(パッケージRCurlから)H2Oサーバーからデータを取得するために呼び出されます。

この機能は、資格情報を渡さずに使用されます。

回避策の一つは、この機能を変更し、

ttt <- getURL(url, userpwd=paste0([email protected],':',[email protected]), httpauth = 1L) 

またはユーザ名は、そうでない場合は、前者を使用し、後者の使用を与えられているかどうかを確認してgetURL(url)を置き換えることであろう。

完全使用例はhereです。