通过 Livy REST 提交 PySpark 应用程序时出错 API
Error while submitting PySpark Application through Livy REST API
我想通过 REST API 向 Livy 提交 Pyspark 应用程序以调用 HiveWarehouse 连接器。基于 Cloudera 社区中的这个答案
我创建了一个test1.json如下
{
"jars": ["hive-warehouse-connector-assembly-1.0.0.3.1.0.0-78.jar"],
"pyFiles": ["pyspark_hwc-1.0.0.3.1.0.0-78.zip"],
"file": ["test1.py"]
}
并调用 InvokeHTTP。但是我得到这个错误“"Cannot deserialize instance of java.lang.String
out of START_ARRAY token\n at [Source: (org.eclipse.jetty.server.HttpInputOverHTTP); line: 1, column: 224] (through reference chain: org.apache.livy.server.batch.CreateBatchRequest[\"file\”
我认为带有 test1.py 的 'file' 字段是错误的。谁能告诉我如何提交这个?
这适用于简单的 spark-submit test1.py
欢迎所有建议
以下作品
对于基本的 Hive 访问,以下作品使用以下 JSON
{
"file":"hdfs-path/test1.py"
}
对于 Hive LLAP 访问,请使用 JSON,如下所示
{
"jars": ["<path-to-jar>/hive-warehouse-connector-assembly-1.0.0.3.1.0.0-78.jar"],
"pyFiles": ["<path-to-zip>/hive_warehouse_connector/pyspark_hwc-1.0.0.3.1.0.0-78.zip"],
"file": "<path-to-file>/test3.py"
}
有趣的是,当我将 zip 文件放入 "archives" 字段时出现错误。它适用于 "pyFiles" 字段,尽管如上所示
我想通过 REST API 向 Livy 提交 Pyspark 应用程序以调用 HiveWarehouse 连接器。基于 Cloudera 社区中的这个答案
我创建了一个test1.json如下
{
"jars": ["hive-warehouse-connector-assembly-1.0.0.3.1.0.0-78.jar"],
"pyFiles": ["pyspark_hwc-1.0.0.3.1.0.0-78.zip"],
"file": ["test1.py"]
}
并调用 InvokeHTTP。但是我得到这个错误“"Cannot deserialize instance of java.lang.String
out of START_ARRAY token\n at [Source: (org.eclipse.jetty.server.HttpInputOverHTTP); line: 1, column: 224] (through reference chain: org.apache.livy.server.batch.CreateBatchRequest[\"file\”
我认为带有 test1.py 的 'file' 字段是错误的。谁能告诉我如何提交这个? 这适用于简单的 spark-submit test1.py
欢迎所有建议
以下作品 对于基本的 Hive 访问,以下作品使用以下 JSON
{
"file":"hdfs-path/test1.py"
}
对于 Hive LLAP 访问,请使用 JSON,如下所示
{
"jars": ["<path-to-jar>/hive-warehouse-connector-assembly-1.0.0.3.1.0.0-78.jar"],
"pyFiles": ["<path-to-zip>/hive_warehouse_connector/pyspark_hwc-1.0.0.3.1.0.0-78.zip"],
"file": "<path-to-file>/test3.py"
}
有趣的是,当我将 zip 文件放入 "archives" 字段时出现错误。它适用于 "pyFiles" 字段,尽管如上所示