Handle Late Arriving Dimensions|Early Arriving Fact|Dimensional Modeling Techniques

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 ม.ค. 2025

ความคิดเห็น • 41

  • @prashantmhatre1328
    @prashantmhatre1328 3 หลายเดือนก่อน +1

    Thanks a lot , we are building our data warehouse system and we have encountered this issue. we are planning to go ahead with insert a dummy value option at this moment. the way you have explained all methods were really helpful. Thanks a lot

    • @TechCoach
      @TechCoach  3 หลายเดือนก่อน

      I am glad I could help . Parking the record works well :)

  • @ranjanmohapatra6528
    @ranjanmohapatra6528 2 ปีที่แล้ว +1

    One of the beautifully explained video on this ! Thanks Man

    • @TechCoach
      @TechCoach  2 ปีที่แล้ว

      Thanks Ranjan :)

  • @mikewashington4188
    @mikewashington4188 4 ปีที่แล้ว +1

    Bravo! Outstanding video with great examples of COA’s. I’ve used the parking method in my jobs.

    • @TechCoach
      @TechCoach  4 ปีที่แล้ว

      Thanks Mike for the kind words :)

  • @shrutisinghal8556
    @shrutisinghal8556 5 ปีที่แล้ว

    You are a savior! Thanks!! I will go through all your videos..

  • @ronydz9045
    @ronydz9045 3 ปีที่แล้ว +1

    Very Well explained, thanks.

    • @TechCoach
      @TechCoach  3 ปีที่แล้ว

      Thanks a lot buddy, please consider subscribing to my other channel as well it will really help me :)
      th-cam.com/video/gTg6nCUuYO8/w-d-xo.html

  • @Manasuna_manasai
    @Manasuna_manasai 2 ปีที่แล้ว +2

    Nice video. Thank you.
    I have used 2nd option. We used to keep data in the staging source table for 40 days and process everyday along with incremental data. If the employee is assigned to a team(say for example after 10 days of first load), we load the data along with the team id in the stage fact table. If we don't get employee after 40 days, we ignore the record. I believe this is the clean way of processing because in this way we will get correct dimension key and fact data.

    • @TechCoach
      @TechCoach  2 ปีที่แล้ว

      If you are not getting data for 40 days that's a huge lag.

  • @Rafian1924
    @Rafian1924 5 ปีที่แล้ว +1

    This is the only video which explains this concept so easily. Great job sir!!

    • @TechCoach
      @TechCoach  5 ปีที่แล้ว +1

      Thanks a lot sandesh for the kind words, I will upload a lot of new videos soon so please keep watching :)

    • @Rafian1924
      @Rafian1924 5 ปีที่แล้ว

      @@TechCoach we will await your videos sir.

    • @TechCoach
      @TechCoach  5 ปีที่แล้ว

      The new video on Index organized table is live now, Check out here.
      Happy learning:)
      th-cam.com/video/mIo44Ydnd3o/w-d-xo.html

  • @Jit02
    @Jit02 3 ปีที่แล้ว +1

    nicely explained !!!

    • @TechCoach
      @TechCoach  3 ปีที่แล้ว

      Thanks Buddy :)

  • @AK-rw8zq
    @AK-rw8zq 5 ปีที่แล้ว

    Good work keep up the work.. and thanks for sharing knowledge..looking forward to gain knowledge from you.

    • @TechCoach
      @TechCoach  5 ปีที่แล้ว

      Sure AK1007, I will be creating new videos soon :)

  • @maheshwarvarma5933
    @maheshwarvarma5933 4 ปีที่แล้ว

    Very Well explained. Thank you!!

    • @TechCoach
      @TechCoach  4 ปีที่แล้ว

      Thanks a lot buddy for the kind words :)

  • @anirvansen5024
    @anirvansen5024 2 ปีที่แล้ว

    Awesome thank you

  • @mayankshyamsukha8301
    @mayankshyamsukha8301 4 ปีที่แล้ว

    We do both park and retry as well as dummy entries, first is the dummy entry, we check whenever a dummy entry is created, it has to be repaired so we send a notification to get it fixed after parking it. Once it is repaired, we use the new value in the parked record and process it.

    • @TechCoach
      @TechCoach  4 ปีที่แล้ว +1

      Nice Mayank, that's a good approach.

  • @PRIYANKASHARMA-jv3xm
    @PRIYANKASHARMA-jv3xm 5 ปีที่แล้ว

    Thanks for the detailed explanation👍🏻

    • @TechCoach
      @TechCoach  5 ปีที่แล้ว

      Thanks Priyanka for the kind words.
      I have a small request, I am working on this new channel and will really appreciate if you watch and subscribe to it.
      th-cam.com/video/GnVn3mPBRz4/w-d-xo.html

  • @saugatadey1913
    @saugatadey1913 4 ปีที่แล้ว

    Nicely explained. I have seen approach 3 being used more often. while doing so, data integrity, accuracy and quality is maintained. This will also help improve the quality of the OLTP systems vis a vis the business process at that layer

    • @TechCoach
      @TechCoach  4 ปีที่แล้ว

      Thanks Saugata for the kind words, My apologies for the delayed reply

  • @ronnyfernandez1986
    @ronnyfernandez1986 3 ปีที่แล้ว +2

    Nice video!! Thanks
    I agree conceptually but we know that most data warehouses will also use surrogate keys. So with option 4, you will have to not only insert in dimension but also get back the surrogate key generated and apply it on the fact. In your examples the distinction is missing between natural and surrogate keys which is quite crutial from ETL perspective. Think this step complicates things specially if you are doing this across all dimensions. Can you tell me how you would handle this?
    Also with option3, again assuming we have surrogate keys, you would need to heal that in fact and one way would be to hold both natural and surrogate key in fact and run an update process on fact at periodic intervals where you only fix if key is dummy.
    Can you share some thoughts on these ?

    • @NK-er3ci
      @NK-er3ci 2 ปีที่แล้ว

      Good comment...I know you posted this over a year ago but I'd just like to chime in with my thoughts on your suggestion regarding option 3. I agree that holding the natural key in the fact will allow for easy updates. You are suggesting to only update the fact if a surrogate key becomes available for rows which had the unknown dimension member assigned (-999). I'd be inclined to update the fact if any of the underlying natural keys have changed in the interim for whatever reason. Doing it this way would cover the above scenario and also all other corner cases where things change. I'm just thinking out loud here so feel free to disagree :)

  • @mahendart4928
    @mahendart4928 5 ปีที่แล้ว

    Super sir good explanation

    • @TechCoach
      @TechCoach  5 ปีที่แล้ว

      Thanks Mahendar for the kind words I have a small request
      I am working on this new youtube channel, I Would love it if you watch and subscribe to it as well.
      th-cam.com/video/GnVn3mPBRz4/w-d-xo.html

  • @gokukanishka
    @gokukanishka 3 ปีที่แล้ว +1

    Can you please make video on fast changing dimensions / rapid changing dimensions

    • @TechCoach
      @TechCoach  3 ปีที่แล้ว +1

      Sure Kanishk , I have noted it in my backlog I will work on it soon

    • @gokukanishka
      @gokukanishka 3 ปีที่แล้ว

      @@TechCoach thankyou so much 😊😊

    • @TechCoach
      @TechCoach  3 ปีที่แล้ว +1

      Hi Kanishk , I have created the video and scheduled for day after tomorrow at 11 AM IST :)

    • @gokukanishka
      @gokukanishka 3 ปีที่แล้ว

      @@TechCoach thankyou so much ❤️

  • @loudravetortoise
    @loudravetortoise 2 ปีที่แล้ว +1

    blessings !
    thank you

    • @TechCoach
      @TechCoach  2 ปีที่แล้ว

      Thanks Juan :)

  • @surajjavir5688
    @surajjavir5688 5 ปีที่แล้ว

    Hi there,
    I have small doubt. You said it will give error when we try to insert null value in foreign key column. But we can insert null value in foreign key column.
    I am not from DWH background so not sure about this.
    Could you please clear my doubt.

    • @NagatiAbhilashPaul
      @NagatiAbhilashPaul 5 ปีที่แล้ว

      Null is acceptable in FK but if FK and PK are not mapping it throws an error