Spark - How can get the Logical / Physical Query execution using - Thirft - Hive Interactor

前端 未结 2 1027
北荒
北荒 2021-01-05 08:54

Spark - How can get the Logical / Physical Query execution using the following

  1. Via Thrift
  2. Via SparkInteractor
相关标签:
2条回答
  • 2021-01-05 09:11

    If you are using Spark 1, You can get the explain on a query this way:

    sqlContext.sql("your SQL query").explain(true)
    

    If you are using Spark 2, it's the same:

    spark.sql("your SQL query").explain(true)
    

    The same logic is available on a dataframe:

    yourDF.explain(true) or yourDF.someOperation.explain(true)
    

    Where someOperation could be maybe a select on a join or something else.

    0 讨论(0)
  • 2021-01-05 09:12

    You can use explain statement with query as below in beeline via thrift.

    EXPLAIN EXTENDED select * from sr23 join sr12 [<join condidtion>]
    

    What do you mean be spark interceptor.? is it spark-sql shell.? if it is, then you can use above query.

    If you meant spark-shell, then you need to call explain() function on dataframes.

    eg:

    val df1 = sqlContext.sql(" < your sql query > ");
    
    df1.explain;
    

    this will give both physical and logical plans. You can also see them from spark web UI in SQL tab.

    0 讨论(0)
提交回复
热议问题