9

localhost:8998/sessions/0/statements次の本文で、へのHTTP POST 呼び出しを使用して、Livy Server でステートメントを実行しています。

{
  "code": "spark.sql(\"select * from test_table limit 10\")"
}

次の形式で回答を希望します

(...)
"data": {
  "application/json": "[
    {"id": "123", "init_date": 1481649345, ...},
    {"id": "133", "init_date": 1481649333, ...},
    {"id": "155", "init_date": 1481642153, ...},
  ]"
}
(...)

しかし、私が得ているのは

(...)
"data": {
  "text/plain": "res0: org.apache.spark.sql.DataFrame = [id: string, init_date: timestamp ... 64 more fields]"
}
(...)

データフレームのtoString()バージョンです。

Livy サーバーを使用してデータフレームを JSON として返す方法はありますか?

編集

問題に対処する JIRA の問題を見つけました: https://issues.cloudera.org/browse/LIVY-72

コメントによって、Livy はそのような機能をサポートしておらず、今後もサポートしないと言えますか?

4

3 に答える 3

0

一般的に、最善の策は、出力を何らかのデータベースに書き込むことだと思います。ランダムに名前が付けられたテーブルに書き込む場合、スクリプトの実行後にコードでそれを読み取ることができます。

于 2017-03-15T22:09:37.723 に答える