Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 向上插入ApacheSpark中的Phoenix表_Scala_Apache Spark_Phoenix - Fatal编程技术网

Scala 向上插入ApacheSpark中的Phoenix表

Scala 向上插入ApacheSpark中的Phoenix表,scala,apache-spark,phoenix,Scala,Apache Spark,Phoenix,想知道是否有人通过ApacheSpark在Phoenix上执行升级(append/update/partial insert/update)。我可以按照saveSaveMode查看。只支持覆盖,即满负荷覆盖。我试着改变模式,它会引发错误 目前,我们正在运行*.hql作业来执行此操作,现在我们希望在Spark Scala中重写它们。感谢分享您的宝贵意见。虽然Phoenix connector确实只支持保存模式。覆盖,但实现不符合Spark标准: 覆盖模式意味着在将数据帧保存到数据源时,如果数据/表

想知道是否有人通过ApacheSpark在Phoenix上执行升级(append/update/partial insert/update)。我可以按照save
SaveMode查看。只支持覆盖
,即满负荷覆盖。我试着改变模式,它会引发错误


目前,我们正在运行*.hql作业来执行此操作,现在我们希望在Spark Scala中重写它们。感谢分享您的宝贵意见。

虽然Phoenix connector确实只支持
保存模式。覆盖
,但实现不符合Spark标准:

覆盖模式意味着在将数据帧保存到数据源时,如果数据/表已经存在,则现有数据将被数据帧的内容覆盖

如果您选中,您将看到
saveToPhoenix
仅使用
PhoenixOutputFormat
调用
saveAsNewAPIHadoopFile

在内部为您构建UPSERT查询


换句话说,
SaveMode.Overwrite
使用Phoenix Connector实际上是
UPSERT

谢谢您的回答,您是对的!我还通过再次插入相同的记录来验证它。