4 STEPS TO MODEL DATA FOR DYNAMODB - Find you access patterns and get the most efficient data model

แชร์
ฝัง
  • เผยแพร่เมื่อ 18 ธ.ค. 2024

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

  • @MrShredder2011
    @MrShredder2011 5 ปีที่แล้ว +13

    Love this video! I really enjoyed the discussion on design iterations. Thanks for this nice exploration of the schema design process in NoSQL.

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

      I'm a fan of your reinvent talk so this comment makes me very happy :D

  • @lobobogard9236
    @lobobogard9236 ปีที่แล้ว

    I watching two times for understand this is the best series for start the modeling help me to undertand many things in the end all is so clear thnx so much for this series from mexico.

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

    What a brilliant video! Probably the only video that walk thru a design phase! Love it! So much to learn. With this series, I am very confident I will complete my app with DynamoDB! Much thanks!

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

    Very well explained, nice and compact. Thank you for this.

  • @NZTechArc
    @NZTechArc ปีที่แล้ว

    the last 2 chapters were super important, and still relevant 3 years later.

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

    Best part, schema design process, love it

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

    Simply brilliant - apart from proper modeling, biggest benefit of this VDO is discussion on "pros and cons" of each decision - plz keep posting such use cases. You have awesome thought process and presentation skill.

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

    Nice video ! I ended up close to your final thoughts. 4 access patterns solved by the table and 3 by GSI. Regarding the table I prefer to have a sort key with value #info or booking#bookginId to be able to fetch info of a property or all its bookings. For GSI location I prefer to have country as PK and city as SK to be able to fetch all property of a country. For GSI userId I ended up with a SK propertyID but I prefer yours with the starting date to be able to sort with a date. For GSI ownerId I perfer to have the SK the same as the table to have the info and bookings straight forward. I tried the dynamoDB workbench. It's very useful. Don't hesitate if you want to compare with my model. Thanks again for all your videos !

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

      That is great that you tried the example and shared your results :D

  • @ahmetssoykan
    @ahmetssoykan ปีที่แล้ว

    hello, thank you for sharing this video, i have a question about GSI3. the sort key is the property_id, i was expecting to see "property" again as we're requesting all properties. while scaning do we know the property_id?

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

    I always enjoy your videos. Teaching isn't as easy people think. Great video.

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

      Thanks a lot 😊😊😊

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

    Great video, thanks. It would have been good to see a discussion about GSI Overloading (including the PK, SK, Data pattern).

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

    Excellent. Cant wait to see your coming videos

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

      I hope you like then 😊😊😊

  • @anzo.p
    @anzo.p 4 ปีที่แล้ว +1

    Nice energetic vid! Together with some vids on Cassandra I feel like I'm very well equipped to start experimenting with things

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

    Gracias por el video . De casualidad tienes el video es español ?

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

      No de esto no tengo en español 😓

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

    Muchas gracias. Buen video.

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

    Just awesome video, one question do aws proserve team or premium support design the data models in dynamo DB? Fro some particular project?

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

    Great video thanks for sharing, I am new to DynamoDB and find it very useful, the only part I found confusing is when you mentioned that you are using only one table, I thought you had at the end two different tables because they have different Primary Keys, does it mean that DynamoDB can have more than one primary key definition in a single table?

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

      Yes you can have different data stored in one table. Mixing different type of ítems.

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

    Thank you, can you please share sample dynamodb cloud formation template you used for this?

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

      github.com/mavi888/fireBnB-dynamo

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

      @@foobar_codes Thank you so much for quick response, got a question. So the attribute we define for a DynamoDB should be a key schema or GSI/LSI? So what should we do if there are more number of attributes which we dont want to be part of keyschema or GSI/LSI?

  • @greggroseker8467
    @greggroseker8467 ปีที่แล้ว

    I'm confused. Do we end with one table or two? I ask because it's possible to have 1 composite key with multiple indicies (GSI & LSI) on a single table but you can't have multiple composite keys on a single table in dynamo like we seem to have at the end of this video.

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

    Based on this one-table model, after a USER signs up for an account, I assume we have all the user's information like user_id, address, city, phon_number Etc. We can locate a user using the GSI. I get that. But we must have values for the table's primary key and sort key. What do we use? The user account has no property_number or booking_date because those records aren't yet related to properties in any way.
    Also, how do you put the string "property" in a date field? Isn't that field of type, number (i.e, unix timestamp)?

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

    Hola, Excelentes tus video.... Crees que puedas hacer videos relacionados a DynamoDB pero en español...

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

      si le pongo subtitulos? seria de ayuda?

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

      @@foobar_codes si, por favor... es que quiero entender bien el uso de DynamoDB y tus videos me han servido mucho... he estado revisando mucho pero tus videos estan bien explicados... y traducirlo con youtube es patetico.. no se entiende nada

  • @jean-louisgouwy
    @jean-louisgouwy 3 ปีที่แล้ว

    Really interesting, but as usual, sometimes we do not have all the requirements access at the beginning of the project.
    The PO could come later with another access, such as : Ok now, we need to get properties available between two dates.
    How do you handle this when it could "break" your first access patterns ?

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

      You have probably already solved this, but you can add a global secondary index if your app allows for downtime, otherwise if you need a local secondary index or can't have downtime you would have to copy your table into a new table with your new index added in the setup process

    • @jean-louisgouwy
      @jean-louisgouwy 2 ปีที่แล้ว

      @@jesse9999999 we added a GSI indeed, but it was complicate because initially, the value was in a nested attributes. As we can't create a GSI based on nested property, we had to duplicate the information at the root. Not really pretty.

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

    Have you tried modeling this with NoSQL Workbench?

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

      i have played with it :) its quite a nice tool