Hello Ruifeng,

Thank you for these pointers. Would it be different if I use the Spark
connect? I am not using the regular SparkSession. I am pretty new to these
APIs. Appreciate your thoughts.

On Wed, Aug 2, 2023 at 2:00 PM Ruifeng Zheng <zrfli...@gmail.com> wrote:

> Hi Vibhatha,
>    I think those APIs are still avaiable?
>
>
>
> ```
> Welcome to
>       ____              __
>      / __/__  ___ _____/ /__
>     _\ \/ _ \/ _ `/ __/  '_/
>    /___/ .__/\_,_/_/ /_/\_\   version 3.4.1
>       /_/
>
> Using Scala version 2.12.17 (OpenJDK 64-Bit Server VM, Java 11.0.19)
> Type in expressions to have them evaluated.
> Type :help for more information.
>
> scala> val df = spark.range(0, 10)
> df: org.apache.spark.sql.Dataset[Long] = [id: bigint]
>
> scala> df.queryExecution
> res0: org.apache.spark.sql.execution.QueryExecution =
> == Parsed Logical Plan ==
> Range (0, 10, step=1, splits=Some(12))
>
> == Analyzed Logical Plan ==
> id: bigint
> Range (0, 10, step=1, splits=Some(12))
>
> == Optimized Logical Plan ==
> Range (0, 10, step=1, splits=Some(12))
>
> == Physical Plan ==
> *(1) Range (0, 10, step=1, splits=12)
>
> scala> df.queryExecution.optimizedPlan
> res1: org.apache.spark.sql.catalyst.plans.logical.LogicalPlan =
> Range (0, 10, step=1, splits=Some(12))
> ```
>
>
>
> On Wed, Aug 2, 2023 at 3:58 PM Vibhatha Abeykoon <vibha...@gmail.com>
> wrote:
>
>> Hi Winston,
>>
>> I need to use the LogicalPlan object and process it with another function
>> I have written. In earlier Spark versions we can access that via the
>> dataframe object. So if it can be accessed via the UI, is there an API to
>> access the object?
>>
>> On Wed, Aug 2, 2023 at 1:24 PM Winston Lai <weiruanl...@gmail.com> wrote:
>>
>>> Hi Vibhatha,
>>>
>>> How about reading the logical plan from Spark UI, do you have access to
>>> the Spark UI? I am not sure what infra you run your Spark jobs on. Usually
>>> you should be able to view the logical and physical plan under Spark UI in
>>> text version at least. It is independent from the language (e.g.,
>>> scala/Python/R) that you use to run Spark.
>>>
>>>
>>> On Wednesday, August 2, 2023, Vibhatha Abeykoon <vibha...@gmail.com>
>>> wrote:
>>>
>>>> Hi Winston,
>>>>
>>>> I am looking for a way to access the LogicalPlan object in Scala. Not
>>>> sure if explain function would serve the purpose.
>>>>
>>>> On Wed, Aug 2, 2023 at 9:14 AM Winston Lai <weiruanl...@gmail.com>
>>>> wrote:
>>>>
>>>>> Hi Vibhatha,
>>>>>
>>>>> Have you tried pyspark.sql.DataFrame.explain — PySpark 3.4.1
>>>>> documentation (apache.org)
>>>>> <https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.explain.html#pyspark.sql.DataFrame.explain>
>>>>>  before?
>>>>> I am not sure what infra that you have, you can try this first. If it
>>>>> doesn't work, you may share more info such as what platform you are 
>>>>> running
>>>>> your Spark jobs on, what cloud servies you are using ...
>>>>>
>>>>> On Wednesday, August 2, 2023, Vibhatha Abeykoon <vibha...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> I recently upgraded the Spark version to 3.4.1 and I have encountered
>>>>>> a few issues. In my previous code, I was able to extract the logical plan
>>>>>> using `df.queryExecution` (df: DataFrame and in Scala), but it seems like
>>>>>> in the latest API it is not supported. Is there a way to extract the
>>>>>> logical plan or optimized plan from a dataframe or dataset in Spark 
>>>>>> 3.4.1?
>>>>>>
>>>>>> Best,
>>>>>> Vibhatha
>>>>>>
>>>>> --
>>>> Vibhatha Abeykoon
>>>>
>>> --
>> Vibhatha Abeykoon
>>
>
>
> --
> Ruifeng Zheng
> E-mail: zrfli...@gmail.com
>
-- 
Vibhatha Abeykoon

Reply via email to