DAG and Lazy Evaluation in spark

Поделиться
HTML-код
  • Опубликовано: 24 авг 2024
  • In this video I have talked about dag and lazy evaluation in spark in great detail. please follow video entirely and ask doubt in comment section below.
    Directly connect with me on:- topmate.io/man...
    For more queries reach out to me on my below social media handle.
    Follow me on LinkedIn:- / manish-kumar-373b86176
    Follow Me On Instagram:- / competitive_gyan1
    Follow me on Facebook:- / manish12340
    My Second Channel -- / @competitivegyan1
    Interview series Playlist:- • Interview Questions an...
    My Gear:-
    Rode Mic:-- amzn.to/3RekC7a
    Boya M1 Mic-- amzn.to/3uW0nnn
    Wireless Mic:-- amzn.to/3TqLRhE
    Tripod1 -- amzn.to/4avjyF4
    Tripod2:-- amzn.to/46Y3QPu
    camera1:-- amzn.to/3GIQlsE
    camera2:-- amzn.to/46X190P
    Pentab (Medium size):-- amzn.to/3RgMszQ (Recommended)
    Pentab (Small size):-- amzn.to/3RpmIS0
    Mobile:-- amzn.to/47Y8oa4 ( Aapko ye bilkul nahi lena hai)
    Laptop -- amzn.to/3Ns5Okj
    Mouse+keyboard combo -- amzn.to/3Ro6GYl
    21 inch Monitor-- amzn.to/3TvCE7E
    27 inch Monitor-- amzn.to/47QzXlA
    iPad Pencil:-- amzn.to/4aiJxiG
    iPad 9th Generation:-- amzn.to/470I11X
    Boom Arm/Swing Arm:-- amzn.to/48eH2we
    My PC Components:-
    intel i7 Processor:-- amzn.to/47Svdfe
    G.Skill RAM:-- amzn.to/47VFffI
    Samsung SSD:-- amzn.to/3uVSE8W
    WD blue HDD:-- amzn.to/47Y91QY
    RTX 3060Ti Graphic card:- amzn.to/3tdLDjn
    Gigabyte Motherboard:-- amzn.to/3RFUTGl
    O11 Dynamic Cabinet:-- amzn.to/4avkgSK
    Liquid cooler:-- amzn.to/472S8mS
    Antec Prizm FAN:-- amzn.to/48ey4Pj

Комментарии • 129

  • @tnmyk_
    @tnmyk_ 6 месяцев назад +8

    Faadu explanation! Finally someone explained why Lazy evaluation actually works betters for Big Data processing. Amazing examples, very nice code! Loved the way you explained each line and each job step by step

  • @prasadBoyane
    @prasadBoyane 4 месяца назад +2

    I think spark considers 'sum' as action. hence 4 jobs. Greatt series !!!

  • @PARESH_RANJAN_ROUT
    @PARESH_RANJAN_ROUT 7 дней назад

    Great Bhai

  • @fervabatool1037
    @fervabatool1037 9 дней назад

    Excellent

  • @ChandanKumar-xj3md
    @ChandanKumar-xj3md Год назад +2

    "Job kaise create hota hai?" ye question pehle kabi clear nai hua tha but thanks Manish for clearing this out and add on was lazy evaluation understanding. 👍

    • @vsbnr5992
      @vsbnr5992 Год назад

      NameError: name 'flight_data_repartition' is not defined what to do in this case even i import functions and types from pyspark
      please I stuck here

  • @SanjayKumar-rw2gj
    @SanjayKumar-rw2gj 2 месяца назад

    Truly impressed Manish bhai. Great explanation as you mentioned already "Itna detail mein kahin nhi milega"

  • @krishnavamsirangu1727
    @krishnavamsirangu1727 3 месяца назад

    Hi Manish
    Thanks for explaining the concept in detail by running the code.
    I have understood the concept of dag ,lazy evaluation and optimization.

  • @arijitsamaddar268
    @arijitsamaddar268 3 месяца назад +1

    bohot sahi explanation !

  • @akhiladevangamath1277
    @akhiladevangamath1277 3 месяца назад +1

    Thank you Thank you Thank you Manish for this video✨✨✨

  • @Watson22j
    @Watson22j Год назад +3

    wow! very nicely explained. Thank you! :)

  • @prabhakarkumar8022
    @prabhakarkumar8022 5 месяцев назад +1

    Awesome bhaiyaji!!!!!

  • @bhavindedhia3976
    @bhavindedhia3976 5 месяцев назад +1

    amazing content

  • @souradeep.official
    @souradeep.official 5 месяцев назад

    Detailed Explanation. Better than paid lectures.

  • @220piyush
    @220piyush 4 месяца назад

    Maza aa gya lekin video dekh ke... Wahhh❤

  • @abinashpandit5297
    @abinashpandit5297 Год назад

    Very good Bhaiya. Aaj bhaut kuch isme indepth sikhne ko Mila jo phele pata hi nahi tha. Keep it up 👍

  • @AnuragsMusicChannel
    @AnuragsMusicChannel Месяц назад

    sum() is an action, but the key here is to understand that its not triggerred until an action triggers it. Example : select(sum("value")) is indeed a transformation. It creates a new DataFrame that represents the sum of the value column but does not immediately compute the result, but the actual computation does not happen until an action is triggered. Later stage par, when we call show() (or even collect() ) tab jake, action trigger hoga and will call sum() which is inside select() which creates a job corresponding to sum(). Thats why 4 jobs were seen.

  • @SqlMastery-fq8rq
    @SqlMastery-fq8rq 4 месяца назад

    very well explained Sir..Thank You.

  • @ankitachauhan6084
    @ankitachauhan6084 2 месяца назад

    thank you ! great teaching style

  • @prabhatgupta6415
    @prabhatgupta6415 Год назад

    He has mastered and crunched the spark.

  • @maurifkhan3029
    @maurifkhan3029 Год назад +4

    I too got confused as to why sometimes number of jobs as more or less than Actions. Try clearing the state using menu option run ->clear state and option and then run the cell again which has code from reading of file till all the things you want to perform . I think Data bricks intelligently stores state of system and later when you run same read command the Jobs count might not match
    I tried this and it seems to be working

    • @jatinyadav6158
      @jatinyadav6158 7 месяцев назад +4

      Jobs count is right it is 4 only because sum() function is an action, which I guess Manish missed by mistake. Btw @Manish thank you so much for the amazing course.

    • @deepanshuaggarwal7042
      @deepanshuaggarwal7042 4 месяца назад

      @@jatinyadav6158 If 'sum' is an action then why it didn't create a job before adding 'show' codeline ?

    • @jatinyadav6158
      @jatinyadav6158 4 месяца назад +2

      @deepanshuaggarwal7042 yes sum is an action, I am not sure why it didn't show a job earlier

  • @rishav144
    @rishav144 Год назад +1

    great video Manish bro

  • @aasthagupta9381
    @aasthagupta9381 Месяц назад

    You are an excellent teacher, you make lectures so interesting! ye answer dekar to interview ko sikha denge :D

  • @a26426408
    @a26426408 4 месяца назад

    Very well explained.

  • @yugantshekhar782
    @yugantshekhar782 5 месяцев назад

    Great explanation sir, really helpful!

  • @akashprabhakar6353
    @akashprabhakar6353 4 месяца назад

    Awesome lecture...thanks a lot!

  • @prathapganesh7021
    @prathapganesh7021 5 месяцев назад

    Thank you so much for clarifying my doubts 🙏

  • @kavyabhatnagar716
    @kavyabhatnagar716 10 месяцев назад

    Wow! Thank you for such great explanation. ❤

  • @arpitchaurasia5132
    @arpitchaurasia5132 6 месяцев назад

    bhai gajabe padate ho yar maja hi a gya yar

  • @pramod3469
    @pramod3469 Год назад

    very well explained...thanks Manish

  • @ravikiran3672
    @ravikiran3672 День назад

    For wide trabsformation there iwll be an extra job will be created. For n transformations there will be n+1 jobs.

  • @manojkaransingh5848
    @manojkaransingh5848 Год назад

    @wow...!..v.nice bro

  • @mmohammedsadiq2483
    @mmohammedsadiq2483 10 месяцев назад +1

    I have confusion? read and inferSchema are typically used with Spark's DataFrame API, which is part of Spark SQL. They are not transformations or actions ,part of the logical and physical planning phase of Spark, which occurs before any actions are executed

  • @welcomefoodies6901
    @welcomefoodies6901 7 дней назад

    Hi manish bhaiya, yahan pr 4 actions hit hue ha : read, inferschema, sum, show

  • @tahiliani22
    @tahiliani22 5 месяцев назад +1

    Awesome. By the way, do we know why its creating 4 Spark Jobs instead of 3 ?

  • @SanjayKumar-rw2gj
    @SanjayKumar-rw2gj 2 месяца назад

    Is there any cheat sheet to know what all are transformations and actions, like read is a action whereas filter is a transformation?

  • @choubeysumit246
    @choubeysumit246 2 месяца назад

    one Action one job is true for rdd api only. one action in dataframe or dataset can lead to multiple actions being generated internally. or sue to adaptive query executions as well multiple jobs are created in databricks which you can see using describe method

  • @jasvirsinghwalia401
    @jasvirsinghwalia401 2 месяца назад +1

    Sir Read an inferschema to Transformations hai na and not actions? to inki alag jobs kyu bani hai?

  • @abhilovefood4102
    @abhilovefood4102 Год назад

    Sir ur teaching is good

  • @rohitjhunjhunwala9174
    @rohitjhunjhunwala9174 Месяц назад

    One thing, spark.read is a transformation not action. Is it an action because we included any options? Pls clarify

  • @mission_possible
    @mission_possible Год назад

    Thanks for the session and Please make video on Spark Lineage

  • @koushlendrasinghrajput6040
    @koushlendrasinghrajput6040 Месяц назад

    please give data set so we can practice on thAT

  • @krushitmodi3882
    @krushitmodi3882 Год назад

    Sir please ye series thodi jaldi finish karo taki ham interview de sake mene apki puri channel dekhli hai
    Thank you

  • @Storytime389
    @Storytime389 27 дней назад

    4 jobs come because u calculated sum and then .show(). I think sum() increases the job number. Correct me if am wrong

  • @AmitSharma-ow8wm
    @AmitSharma-ow8wm Год назад

    waiting for ur next vidio...

    • @AmitSharma-ow8wm
      @AmitSharma-ow8wm Год назад

      @@rampal4570 is it true bro

    • @manish_kumar_1
      @manish_kumar_1  Год назад

      Aaj aa jayega

    • @vsbnr5992
      @vsbnr5992 Год назад

      @@AmitSharma-ow8wm NameError: name 'flight_data_repartition' is not defined what to do in this case even i import functions and types from pyspark
      please I stuck here

  • @roshniagrawal4777
    @roshniagrawal4777 11 дней назад

    sum is action

  • @ankitas4019
    @ankitas4019 4 месяца назад

    Where he explained about fligh data download

  • @user-ww6yf3iq8q
    @user-ww6yf3iq8q 4 месяца назад

    Because of group by jobs is created

  • @vaibhavdimri7419
    @vaibhavdimri7419 3 месяца назад

    Sir apko samjh aya ki ek action hit karne par 2 jobs kaise create hui?

  • @DevendraYadav-yz2so
    @DevendraYadav-yz2so 11 месяцев назад

    Databricks community ko kaise use karege, Spark kaise setup karege databricks ke sath. Please ye bata dijiye so that code write kr sake

  • @aditya_1005
    @aditya_1005 Год назад +1

    well explained.....Sir could you please clarify, 3 actions and 4 jobs created?

    • @manish_kumar_1
      @manish_kumar_1  Год назад

      Aapke 3 actions me 4 jobs create hue hai?
      Aapne show use kara hai? And aap apna code v paste kar dijiye comment section me

    • @hazard-le7ij123
      @hazard-le7ij123 11 месяцев назад

      @@manish_kumar_1 Aapne jo code likha hai usme bhi 4 jobs create hue hain. Can you explain that?
      Below is my code and same thing is happening. 4 Jobs are getting created. Stage is getting skipped but why do we have an extra job with 4 diff Job Ids?
      from pyspark.sql import SparkSession
      from pyspark.sql.functions import *
      spark = SparkSession.builder.master('local[5]') \
      .appName("Lazy Evaluation internal working") \
      .getOrCreate()
      flight_data = spark.read.format("csv")\
      .option("header","true")\
      .option("inferSchema","true")\
      .load("D:\\Spark\\flight_data.csv")
      flight_data_repartition = flight_data.repartition(3)
      us_flight_data = flight_data.filter(col("DEST_COUNTRY_NAME")=='United States')
      us_india_data = us_flight_data.filter((col("ORIGIN_COUNTRY_NAME")=='India') | (col("ORIGIN_COUNTRY_NAME")=='Singapore'))
      total_flight_ind_sing = us_india_data.groupby("DEST_COUNTRY_NAME").sum("count")
      total_flight_ind_sing.show()
      input("Enter to terminate")

  • @user-gt3pi6ir5u
    @user-gt3pi6ir5u 4 месяца назад

    any idea now, where the 4th job came from?

  • @pramod3469
    @pramod3469 Год назад

    is lazy evaluation consider the partition also
    like after we have applied orderby on salary col and now we want to show only first two highest salary
    so will lazy evaluation also works here spark will process only that partition which has these two salary records or it will process all partitions and then extract first two highest salary record for us

    • @manish_kumar_1
      @manish_kumar_1  Год назад +1

      Yes until you write .head(2) for 2 highest record your process will not start although in backend it will create DAG.

  • @ruinmaster5039
    @ruinmaster5039 Год назад

    Bro Plese add summery at the end.

  • @anirbanadhikary7997
    @anirbanadhikary7997 Год назад

    Aj apne interview questions bataya Nehi.

    • @manish_kumar_1
      @manish_kumar_1  Год назад

      Basic questions would be there. Like what is DAG and what is edges and vertices in it.

  • @ChetanSharma-oy4ge
    @ChetanSharma-oy4ge 6 месяцев назад

    I am trying to find , why 4 jobs are generating here although we have provided only 3 actions

  • @techworld5477
    @techworld5477 6 месяцев назад

    Hi Sir..jab main yeh code run kar raha hoon I am getting error as--name 'col' is not defined
    isko kaise solve kare?

  • @chethanmk5852
    @chethanmk5852 5 месяцев назад

    Why do we have 4 jobs when we are using only 3 actions in the application??

  • @vsbnr5992
    @vsbnr5992 Год назад +1

    NameError: name 'flight_data_repartition' is not defined what to do in this case even i import functions and types from pyspark
    please I stuck here

    • @manish_kumar_1
      @manish_kumar_1  Год назад

      Seems like your df is not defined

    • @vsbnr5992
      @vsbnr5992 Год назад

      @@manish_kumar_1 ok working now thanks

  • @abhayjr11
    @abhayjr11 3 месяца назад

    Bhai iske phle wala video dedo, mujhe mil nhi rha hai..

  • @welcomefoodies6901
    @welcomefoodies6901 14 дней назад

    I have 1 doubt bhai , what is difference between apache spark and apache airflow ?

    • @manish_kumar_1
      @manish_kumar_1  14 дней назад +1

      Completely different purpose and different technology. Google kijiye aap

    • @welcomefoodies6901
      @welcomefoodies6901 13 дней назад

      @@manish_kumar_1 thanku bhaiya , ap Apache airflow pr bhi series bna do please, i really connect with you , jo paid courses se samj nhi aata wo ap ache se samjha rhe ho , thanku bhai , love you bro 🙌❤️

  • @deepaliborde25
    @deepaliborde25 8 месяцев назад

    where is the practical session link ?

  • @mahendrareddych334
    @mahendrareddych334 4 месяца назад

    Bro, you are explaining superbly but why don't you explain in English. Everyone doesn't know Hindi. I don't know Hindi but watching your videos to understand the concepts but not getting it fully because it was explained in Hindi.

  • @chandanpatra1053
    @chandanpatra1053 6 месяцев назад

    ek code likha hai using spark .usse dekhkar kese bataya ja sakta hai ki wo code 'action' hai ya 'transformation' hai.

    • @manish_kumar_1
      @manish_kumar_1  6 месяцев назад

      Aapko google karke pata karna chahiye ki kon kon se actions hai. Rest are transformation

  • @prateekpawar1871
    @prateekpawar1871 11 месяцев назад

    Do you have theory notes for spark?

  • @ordinary_indian
    @ordinary_indian 6 месяцев назад

    where to find the files ? I just have started the course

  • @snehalkathale98
    @snehalkathale98 5 месяцев назад

    Where I get CSV file

  • @abhishekchaturvedi9855
    @abhishekchaturvedi9855 8 месяцев назад

    Hello Manish.
    When you mentioned the sql query gets optimized by spark. Just wanted to know will it help improve the execution time if we use the optimized query in our code itself so that spark need not do it ?

    • @manish_kumar_1
      @manish_kumar_1  8 месяцев назад +1

      Spark optimization is very limited. So as a developer we should write optimized code to run our process faster

  • @prabhatsingh7391
    @prabhatsingh7391 Год назад

    Hi Manish Bhaiya, in the code snippet you told there are three actions in this applications(read, infer schema and show) but in spark ui there are 4 jobs created ,can you please explain this.

    • @manish_kumar_1
      @manish_kumar_1  Год назад

      1 job skip hua hoga. Agar data Kam hai to explain karke dekhiye 3 aana chahiye

  • @ajaysinghjadoun9799
    @ajaysinghjadoun9799 Год назад

    please make a video in Windows function

  • @asif50786
    @asif50786 Год назад

    How many more videos to come on Apache spark??

  • @DevendraYadav-yz2so
    @DevendraYadav-yz2so 11 месяцев назад

    Lec 7 Tak view kr liya Jo aap code dika rahe hai usko kise databricks and pyspark

    • @manish_kumar_1
      @manish_kumar_1  11 месяцев назад

      Aapko practical and fundamentals sath me dekhne hai. First video me hi bataya tha

  • @shrikantpandey6401
    @shrikantpandey6401 Год назад

    could you provide notebook link?. It will good for hands on

    • @manish_kumar_1
      @manish_kumar_1  Год назад +2

      I don't provide notebook or pdf. Take notes and type every line of code by yourself. This will give you confidence

    • @sankuM
      @sankuM Год назад

      @@manish_kumar_1 this is indeed really great point! However, if possible, do share your own reference material for our benefit! Thanks! This series is really helpful, I've 4+ YoE in DE but never tried to go into spark internals, now while interviewing for switch, I'm definitely going to utilize all this! Keep 'em coming!! 🙌🏻👏🏻

  • @raghavsisters
    @raghavsisters Год назад

    Why it is called acyclic?

    • @manish_kumar_1
      @manish_kumar_1  Год назад

      Because it doesn't make cycle. If it's get into cycle or you can consider it as a circle then it will run endlessly

  • @khurshidhasankhan4700
    @khurshidhasankhan4700 9 месяцев назад

    Sir csv read karne pr two jobs kaise create ho raha hai, read only one action call kr rahe hain.
    If possible please clearify

    • @manish_kumar_1
      @manish_kumar_1  9 месяцев назад

      Aur inferschema v use kiye honge. Isliye aa rha hoga

    • @khurshidhasankhan4700
      @khurshidhasankhan4700 9 месяцев назад

      @@manish_kumar_1 thank you sir, can you please share the action list how many action hai spark me, if possible please share sir

  • @akhilgupta2460
    @akhilgupta2460 Год назад

    Hi manish Bhai, Could u provide the flight data file.

    • @manish_kumar_1
      @manish_kumar_1  Год назад

      Kisi ek video me bataya tha. Please follow all videos in sequence

  • @avanibafna6207
    @avanibafna6207 Год назад

    In my case same code has created 5 jobs?I have import col so it will also be treated as action and new job will be created is it so?

    • @manish_kumar_1
      @manish_kumar_1  Год назад

      Can you please paste your code in comment section

    • @avanibafna6207
      @avanibafna6207 Год назад

      @@manish_kumar_1 from pyspark.sql.functions import col
      flight_data=spark.read.format("csv")\
      .option("header","true")\
      .option("inferSchema","true")\
      .load("dbfs:/FileStore/tables/flight_data.csv")
      flight_data_reparition=flight_data.repartition(3)
      us_flight_data=flight_data_reparition.filter("DEST_COUNTRY_NAME='United States'")
      us_india_data=us_flight_data.filter((col("ORIGIN_COUNTRY_NAME")=='India')|(col("ORIGIN_COUNTRY_NAME")=='Singapore'))
      total_flight_ind_sing=us_india_data.groupby("DEST_COUNTRY_NAME").sum("count")
      total_flight_ind_sing.show()
      (5) Spark Jobs
      Job 22 View(Stages: 1/1)
      Job 23 View(Stages: 1/1)
      Job 24 View(Stages: 1/1)
      Job 25 View(Stages: 1/1, 1 skipped)
      Job 26 View(Stages: 1/1, 2 skipped)
      flight_data:pyspark.sql.dataframe.DataFrame = [DEST_COUNTRY_NAME: string, ORIGIN_COUNTRY_NAME: string ... 1 more field]
      flight_data_reparition:pyspark.sql.dataframe.DataFrame = [DEST_COUNTRY_NAME: string, ORIGIN_COUNTRY_NAME: string ... 1 more field]
      us_flight_data:pyspark.sql.dataframe.DataFrame = [DEST_COUNTRY_NAME: string, ORIGIN_COUNTRY_NAME: string ... 1 more field]
      us_india_data:pyspark.sql.dataframe.DataFrame = [DEST_COUNTRY_NAME: string, ORIGIN_COUNTRY_NAME: string ... 1 more field]
      total_flight_ind_sing:pyspark.sql.dataframe.DataFrame = [DEST_COUNTRY_NAME: string, sum(count): long]
      +-----------------+----------+
      |DEST_COUNTRY_NAME|sum(count)|
      +-----------------+----------+
      | United States| 100|
      +-----------------+----------+

  • @shivakrishna1743
    @shivakrishna1743 Год назад

    Where can I get the flight_data.csv file? Please help.

  • @3mixmusic564
    @3mixmusic564 11 месяцев назад

    Guru ibutton khi nhi aaya na idhr na udhr😂😂😂

  • @Tushar0797
    @Tushar0797 Год назад

    bhai please vo extra job kese create hua ye doubt clear krdo

    • @manish_kumar_1
      @manish_kumar_1  Год назад

      Aap sql tab me jaake dekho. Kitne jobs skip hue hai. And share me your code and screenshot of the sql tab on LinkedIn or Instagram.

    • @rohitgade2382
      @rohitgade2382 Год назад

      @@manish_kumar_1 abe chutiya tere video ka bol Raha he wo 😂

  • @amlansharma5429
    @amlansharma5429 Год назад

    us_india_data = us_flight_data.filter((col("ORIGIN_COUNTRY_NAME") == 'India') |
    (col("ORIGIN_COUNTRY_NAME") == 'Singapore'))
    Ismein error bata raha hai : NameError: name 'col' is not defined
    Isko kaise define kare?

    • @AliKhanLuckky
      @AliKhanLuckky Год назад

      Col ko import karna padenga voh ek function hai toh import functions karo I think so

    • @manish_kumar_1
      @manish_kumar_1  Год назад

      Correct "from pyspark.sql.functtions import *"

    • @vsbnr5992
      @vsbnr5992 Год назад

      @@AliKhanLuckky NameError: name 'flight_data_repartition' is not defined what to do in this case even i import functions and types from pyspark
      please I stuck here

    • @vsbnr5992
      @vsbnr5992 Год назад

      @@manish_kumar_1 NameError: name 'flight_data_repartition' is not defined what to do in this case even i import functions and types from pyspark
      please I stuck here

  • @navjotsingh-hl1jg
    @navjotsingh-hl1jg Год назад

    bhai iski file de do iss lecture ki

  • @Tanc369
    @Tanc369 5 месяцев назад

    csv kaha milegi sir ?

    • @manish_kumar_1
      @manish_kumar_1  5 месяцев назад

      2 playlist hai. Parallely dekhiye. Practical wale me data milega description me usko copy karke save Kar lijiye as csv

  • @manish_kumar_1
    @manish_kumar_1  Год назад

    Directly connect with me on:- topmate.io/manish_kumar25

  • @PARESH_RANJAN_ROUT
    @PARESH_RANJAN_ROUT 6 дней назад

    App kar pate ho toh, mein bhi kar sakta Manish Bhai

  • @aishwaryamane5732
    @aishwaryamane5732 5 месяцев назад

    Hi sir.. In which video series u have explained about schema @manish_kumar_1