Fundamentals of Amazon DynamoDB Single Table Design with Rick Houlihan

preview_player
Показать описание

Рекомендации по теме
Комментарии
Автор

For all the "talks" and whatever people do trying to get the big idea out, theres something nice about being able to just watch a guy use the tool and do it. This was extremely helpful

StephenBlackstone
Автор

01:31 client story dynamoDB cost 75% reduced after changing to single table design
05:19 Data modeling steps
06:08 Use case discovery phase
07:35 Entity relation diagram
08:43 NoSQL table example
11:08 Access patterns
12:00 Create data model in NoSQL workbench
19:16 Add relational pattern to data (partition key + sort key)

naraekim
Автор

So far the best video to understand single table design on dynamoDB, learnt a lot about this powerful db

shashank_rajak
Автор

Excellent video for DynamoDb single table modeling. The presentation style was very interesting, loved it, thanks!

MrJKer
Автор

You have got an enviable workplace Rick. One of the best sessions for DynamoDb single table modelling.

tejaschachcha
Автор

I really appreciate the workflow of writing the access patterns out and writing the model step by step. It’s really difficult to find design patterns for typical entity relationships, and this is extremely helpful. I’m still trying to figure out when a GSI/LSI is warranted, it seems like they make many to many relationships easy. It seems like Table/PK/SK are the only real hierarchies to index something, and if you needed to access it from the other direction you either need another index, duplicate/pointer nodes and multiple requests, or a scan. It seems dynamodb is really a cache for direct lookups and there are costs to maintain that cache for instant lookups.

My current table model is to use an ID appended to sort keys so that I can use Queries, just haven’t seen this model anywhere and I’m trying to figure out if I’ll run into issues — EDIT it looks like Alex DeBrie’s single table design video shows this pattern around 53:00, exactly what I was thinking

neaumusic
Автор

For a dolt like myself this video really helped me reason and make peace with my 'normalization' biased thinking. I still hate myself a little (for going to the dark side) but I am starting to see the advantages in single table design. Thank you for your efforts.

AS-zwlk
Автор

Thanks for your video, it's very helpful!! this topic is pretty complicated especially if you are from sql like me

cloud_architector
Автор

My team has been delaying this because of the complexity. Now I know how to convince them step by step. Crack the entity relation ship and then the access pattern and then start modeling. Now see if the model satisfies the access pattern. Boom !! Thanks for this video.

rishabhjain
Автор

I have seen almost all videos of ric and alex but there is a common use case related to get all data of a particular entity which is similar to select * from table. how should we approach that? if we keep it in a partition it can create a hot partition issue

shailendraacharya
Автор

It took me at least two watches of this video to wrap my head around it

paracha
Автор

I am japanese.I was impressed with this video.

ryunosukehayashi
Автор

would you please give the workbench data model files

akashmaurya
Автор

At 10:26, does the sort key really allow querying with an "in" condition? AFAIK, we cannot currently do this.

khanhdo
Автор

You are a Hands down, this is the best explanation out there!

the-dark-matter
Автор

Would be great if you would share data model for Nosql workbench.

danixlt
Автор

Hey, very interesting approach, what would be the best method for a get all Customer or get all Product for example?

jeremyllanta
Автор

00:05 Focus on single table design benefits
01:52 Challenges with multi-table data model and large hierarchical documents.
05:12 Understanding use case and data modeling for single table
06:48 Entities include customers, products, orders, invoices, payments, warehouses, and shipments
10:05 Decorating objects with attributes and indexing for efficient querying
11:43 Designing the data model using NoSQL Workbench
15:13 Implementing access patterns for querying DynamoDB tables.
16:57 Iterating through result set and switching on object type for dynamic wrapping.
20:09 Query table by product id and warehouse id
21:43 Redesigning the data model to handle complex access patterns.
24:47 Consider adding individual items to separate partitions for efficient indexing.
26:28 Payments are added to orders and entered on the invoice item
29:53 Using partitions in DynamoDB Single Table Design
31:25 Consider consolidating related data into a single object when it makes sense.
34:36 Creating a new index and adding index attributes to the data model
36:20 Structuring data for different customer needs
39:36 Querying GSI1 for different access patterns
41:13 Iterating through shipments and updating status using secondary index
44:26 Implementing Time To Live (TTL) for automatic data removal after a specified time period
45:52 Different access patterns may require varied amounts of metadata, so it's important to design data models that minimize unnecessary data retrieval.
49:18 Using selective prefixes for querying customer data in Amazon DynamoDB
50:48 Understanding data reading and filtering in DynamoDB
54:10 Efficient data modeling is essential for scaling systems and reducing inefficiency.
55:46 Single table design model represents the design implemented thousands of times at Amazon and across the customer base.
Crafted by Merlin AI.

andreymashukov
Автор

I realize this is an old video now, but it would be very helpful if you provided a link to the final data model file you import. You move through the data pretty fast and being able to check it out at my leisure would be very helpful.
It's still a great video though!

guynicholas
Автор

It was understandable in the first half, but got unclear real quick... thanks for the efforts still.

HaibertBuilds