首页 > 其他分享 >Datasets is not supported in Complete output mode, only in Append output mode

Datasets is not supported in Complete output mode, only in Append output mode

时间:2024-11-18 19:44:48浏览次数:3  
标签:Datasets t1 score mode student sql output id

我们在使用pyspark,使用structureStreaming实时流的时候,创建出来的dataframe是流式的,不同于静态的df,流式的df使用的时候,不能用show()直接打印,而且使用sparkSQL的时候不可以在sql中使用开窗函数,并且还不可以使用join进行表关联

举个栗子:

执行以下代码会报错,因为在sql中使用了join进行表关联,而在流式的df中是不支持的

# 统计每个学生的得分最低的题目
    # 以下方案不可取,报错 Join between two streaming DataFrames/Datasets is not supported in Complete output mode, only in Append output mode;
result04=spark.sql("""
      with t as (
          select student_id,min(score) minScore from temp_answer group by student_id
      )
      select t.*,t1.question_id from temp_answer t1 ,t where t.student_id =t1.student_id and t1.score = t.minScore
    """)

再来一个例子:

这种sql也是不可以的,因为使用了开窗函数,也会报错

# dataframe 流不支持开窗函数
     result04=spark.sql("""
         select t1.student_id,t1.question_id,min(t1.score) over(partition by t1.student_id) minScore from temp_answer t1
     """)

只能够这样写,但是还有一点问题,并不完全正确

    # 以下这个语法是可以的,结果不对,因为第一个数据不一定是分数最低的题目
     result04=spark.sql("""
          select t1.student_id,min(score),collect_list(question_id)[0] from
            temp_answer  t1
          group by t1.student_id
     """)

标签:Datasets,t1,score,mode,student,sql,output,id
From: https://blog.csdn.net/qq_62984376/article/details/143865182

相关文章

  • django的model时间怎么转时间戳
    在Django中,模型(Model)中的日期和时间字段通常使用Django的DateTimeField或相关字段来存储。如果你想要将这些日期时间字段转换为Unix时间戳(即自1970年1月1日以来的秒数),你可以使用Python的datetime模块中的timestamp()方法。以下是一个例子,展示了如何将Django模型中的DateTim......
  • copying model and updating field of pydantic
    copyingmodelandupdatingfieldhttps://github.com/pydantic/pydantic/discussions/2710 fromdatetimeimportdatetimefromtypingimportList,OptionalfrompydanticimportBaseModel,FieldclassUser(BaseModel):id:intclassConfig:......
  • 大型语言模型综述 A Survey of Large Language Models
    文章源自2303.18223(arxiv.org)如有侵权,请通知下线这是一篇关于大语言模型(LLMs)的综述论文,主要介绍了LLMs的发展历程、技术架构、训练方法、应用领域以及面临的挑战等方面,具体内容如下:摘要——自从图灵测试在20世纪50年代被提出以来,人类已经探索了机器对语言智能的......
  • A Text-based Interface for Energy Modeling
    UniversityofNottinghamNingboChinaArchitecturalEngineeringDesign1ComputingPartPythonMilestone2:AText-basedInterfaceforEnergyModelingInthispartofcoursework,youwillbeaskedtodevelopafewmorepythonfunctionsandatext-basedus......
  • 基于大语言模型的自治代理综述 《A Survey on Large Language Model based Autonomous
    图2基于LLM的自治代理架构设计的统一框架基于大语言模型的自治代理综述《ASurveyonLargeLanguageModelbasedAutonomousAgents》自治代理长期以来一直是学术界和工业界的研究热点。以前的研究往往侧重于在孤立的环境中训练知识有限的代理,这与人类的学习过程存......
  • SciTech-BigDataAIML-Statistical Model-Bayes Inference-数据/事实 ∩ 假设: 政治经
    SciTech-BigDataAIML-StatisticalModelBayesInference-数据/事实∩假设\(\large\begin{array}{rl}\\P(H|D)&=\dfrac{P(H)×P(D|H)}{P(D)}\\H:&HypothesisorBeliefandJudgement\\D:&Data/Reality\\P(D\bigcapH):&am......
  • emacs go-mode
    pipxinstallsemgrepGO111MODULE=onCGO_ENABLED=0goinstall-v-trimpath-ldflags'-s-w'github.com/golangci/golangci-lint/cmd/[email protected]/x/tools/cmd/[email protected]/x/tools/cmd/goimports@late......
  • 使用model-viewer加载glb文件
    实现效果代码react项目引入方式可选其一1.在html中引入<scripttype="module"src="https://unpkg.com/@google/model-viewer/dist/model-viewer.min.js"></script>npm或者yarn安装yarnadd@google/model-viewerindex.jsimportReact,{useStat......
  • Anthropic公司CEO达里奥·阿莫代伊(Dario Amodei)深入探讨了通用人工智能(AGI)、AI安全性
      每周跟踪AI热点新闻动向和震撼发展想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领域的领跑者。点击订阅,与未来同行!订阅:https://......
  • Vue2.0的v-model指令
    Vue2.0的v-model指令    v-model="属性"写在标签中上,相当于在一个标签上,同时写了  :value='属性值'  @iinput='handler' ,而handler对应的函数如果没有声明,就是给该属性值赋值的setter函数代码一: <!DOCTYPEhtml><htmllang="en"><head><meta......