AWS Aurora VS DynamoDB

  Рет қаралды 77,220

Be A Better Dev

Be A Better Dev

Күн бұрын

RDS Aurora is a popular SQL based Database Engine offered by AWS. DynamoDB is the competitor, a NoSQL database engine that enables limitless scaling potential with excellent performance. Wondering what the difference is between them and which one is right for your new project? Then this is the video for you.
Looking to get hands on experience building on AWS with a REAL project? Check out my course - The AWS Learning Accelerator! courses.beabetterdev.com/cour...
01:05 What is RDS and Aurora?
06:23 What is DynamoDB?
11:23 The Four Quadrants - Aurora
20:23 The Four Quadrants - DynamoDB
26:34 The Difference of Mental Models + Usage Example
33:20 When to use what - Aurora vs DynamoDB
DynamoDB Playlist - • AWS DynamoDB Guides - ...
Horizontal vs Vertical Scaling - • System Design: What is...
🎉SUPPORT Daniel @ BE A BETTER DEV🎉
Become a Patron: / beabetterdev
📚 MY RECOMMENDED READING LIST FOR SOFTWARE DEVELOPERS📚
Clean Code - amzn.to/37T7xdP
Clean Architecture - amzn.to/3sCEGCe
Head First Design Patterns - amzn.to/37WXAMy
Domain Driver Design - amzn.to/3aWSW2W
Code Complete - amzn.to/3ksQDrB
The Pragmatic Programmer - amzn.to/3uH4kaQ
Algorithms - amzn.to/3syvyP5
Working Effectively with Legacy Code - amzn.to/3kvMza7
Refactoring - amzn.to/3r6FQ8U
🎙 MY RECORDING EQUIPMENT 🎙
Shure SM58 Microphone - amzn.to/3r5Hrf9
Behringer UM2 Audio Interface - amzn.to/2MuEllM
XLR Cable - amzn.to/3uGyZFx
Acoustic Sound Absorbing Foam Panels - amzn.to/3ktIrY6
Desk Microphone Mount - amzn.to/3qXMVIO
Logitech C920s Webcam - amzn.to/303zGu9
Fujilm XS10 Camera - amzn.to/3uGa30E
Fujifilm XF 35mm F2 Lens - amzn.to/3rentPe
Neewer 2 Piece Studio Lights - amzn.to/3uyoa8p
💻 MY DESKTOP EQUIPMENT 💻
Dell 34 inch Ultrawide Monitor - amzn.to/2NJwph6
Autonomous ErgoChair 2 - bit.ly/2YzomEm
Autonomous SmartDesk 2 Standing Desk - bit.ly/2YzomEm
MX Master 3 Productivity Mouse - amzn.to/3aYwKVZ
Das Keyboard Prime 13 MX Brown Mechanical- amzn.to/3uH6VBF
Veikk A15 Drawing Tablet - amzn.to/3uBRWsN
🌎 Find me here:
Twitter - / beabetterdevv
Instagram - / beabetterdevv
Patreon - Donations help fund additional content - / beabetterdev
#AWS
#Aurora
#DynamoDB

Пікірлер: 105
@noahlomax1
@noahlomax1 3 жыл бұрын
You're an amazing person! I know you answered my question about the differences in Amazon Aurora and Dynamo DB in another video response of mine, but to take it a step further and create a video that thoroughly breaks down the differences and how and when they are used is literally something that I had no idea I wanted. I truly want to thank you for making difficult study undertakings so great for the average Joe. Please keep these videos coming as I'm watching as many as possible to make sure I can not only pass the test but to work in this field.
@BeABetterDev
@BeABetterDev 3 жыл бұрын
Thanks Noah! This video was inspired by your earlier question, and I hope you enjoyed the content! This comment means a lot to me and is part of the reason I find making videos so enjoyable. I truly appreciate your kind words and continued support. Stay safe during these uncertain times! Thanks, Daniel
@noahlomax1
@noahlomax1 3 жыл бұрын
@@BeABetterDev Daniel, the inspiration is definitely mutual. I really appreciate you helping me along my AWS path. Not only are your videos relevant to the certification test, but for life. I will continue to watch and learn even after passing the certification. I'm truly staying safe and I pray and hope the same for you and your family, Daniel. Thank you again.
@xVersioNz
@xVersioNz 2 жыл бұрын
i can tell you put a lot of effort into this video! It was done perfectly, thank you!
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Thanks Harry!
@namritp
@namritp Жыл бұрын
Watched several videos to get concept of RDS vs Aurora vs Aurora Postgres, but none explained the way you did ! You have the ability to explain clearly in simple yet powerful way
@timmyzheng6049
@timmyzheng6049 2 жыл бұрын
Thank you for uploading this video, the session is well organized and clean.
@alibarznji2000
@alibarznji2000 2 жыл бұрын
This channel is underrated
@srb1855
@srb1855 2 жыл бұрын
This was an exceptional video. The explanation using the four quadrants was particularly useful - especially for creating a mind map.
@manishmaharjann
@manishmaharjann Жыл бұрын
Just a appreciation for making these sort of video. Thank you.
@karimkhan9941
@karimkhan9941 2 жыл бұрын
Daniel, you're a legend! Your video paved the way for us to make a decision on which data store to go for given our use case. Please keep up the good work and continue to post world-class quality videos like this one!
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Thanks so much for the kind words Karim!
@abdulazeez.98
@abdulazeez.98 2 жыл бұрын
Excellent explanation. I finally understood the idea of DynamoDB. Thank you very much
@andrewsouthpaw
@andrewsouthpaw 2 жыл бұрын
The comparison of the different mental models and usage was brilliant. A perfect, simple look at the fundamental difference.
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Thanks so much Andrew and glad you enjoyed!
@nagu1080
@nagu1080 2 жыл бұрын
Deserves million views. Very intuitive and practical reasoning. Thanks!
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Thanks Nagu!
@aminatashi
@aminatashi 3 жыл бұрын
Really liked the way you presented it! Awesome!
@BeABetterDev
@BeABetterDev 3 жыл бұрын
Thanks Amin! Glad you enjoyed :)
@ridaali9499
@ridaali9499 Жыл бұрын
I only get cloud concepts when you explain them! Thank you so much!!
@Nashte.kibaat
@Nashte.kibaat Жыл бұрын
very nice video sorted and elaborate explanation .one stop for RDS vs Dynamo DB Thanks so much for sharing this .
@hasnainahmadtanim1190
@hasnainahmadtanim1190 Жыл бұрын
Wow! brief explanation. Thanks a lot.
@stillmattwest
@stillmattwest Жыл бұрын
Great overview, thanks!
@jazzsha
@jazzsha 3 жыл бұрын
Very well explained. Thank you!!
@BeABetterDev
@BeABetterDev 3 жыл бұрын
You're very welcome Jazir!
@julianjacobs8956
@julianjacobs8956 Жыл бұрын
didn't expect to stick around for the Dynamo part but it was a great video :)
@BeABetterDev
@BeABetterDev Жыл бұрын
Thank you!
@assafcohen10
@assafcohen10 3 жыл бұрын
super clear and super professional! thank you!
@BeABetterDev
@BeABetterDev 3 жыл бұрын
You're very welcome Assaf!
@ChanceMinus
@ChanceMinus Жыл бұрын
Illuminating. Thank you.
@alekshernandez2
@alekshernandez2 10 ай бұрын
Excellent video! Congrats
@celiagaylard489
@celiagaylard489 2 жыл бұрын
Practically understandable, thank you.
@BeABetterDev
@BeABetterDev 2 жыл бұрын
You're very welcome Celia!
@sanjeevkumaryadav9154
@sanjeevkumaryadav9154 2 жыл бұрын
Thanks for explaining in detail the use cases, it helped me to decode for my own project, however, i feel if you can also talk about transaction support for both DB, it will be much helpful.
@davidlean8674
@davidlean8674 Жыл бұрын
Is anyone else having flashbacks to the early '80's. Exactly the same design points were discussed when choosing between the Network/Heirachical DB's people knew & this new-fangled Relational Technology. ie: IMS/CODASYL vs Ingres/System R/DB2/Oracle. It seems we've come full circle. New names but similar technical tradeoffs.
@BeABetterDev
@BeABetterDev Жыл бұрын
Hi David, I was actually born in the 80s! Guess I haven't been around enough to see the first iteration. You've given me a lot to read about. Cheers. Daniel
@bigstones84
@bigstones84 Жыл бұрын
@@BeABetterDev I've read about this in a wonderful book called "Designing Data Intensive Applications" by Martin Kleppmann. Indeed he reports that the first databases where hierarchical, and RDB's were introduced also to solve the problem of duplication of data in the hierarchies. Honestly, it's probably the most beautiful technical book I've read.
@sakarsr
@sakarsr 3 жыл бұрын
Thank you for this video. It really helped us a lot in deciding Aurora and DDB. Make a Cost analysis on this both.
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Glad I could help Sakar!
@PaulEllisBIGDATA
@PaulEllisBIGDATA 2 жыл бұрын
Thank you!!! Appreciate your time and effort.
@BeABetterDev
@BeABetterDev 2 жыл бұрын
You're very welcome Paul!
@alturusatish
@alturusatish 3 жыл бұрын
Very well explained. Great content.
@BeABetterDev
@BeABetterDev 3 жыл бұрын
Glad it helped!
@SwapanD
@SwapanD 2 жыл бұрын
Brilliant. Superb. Hats off.
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Thanks so much!
@asfahanansari4669
@asfahanansari4669 Жыл бұрын
Excellent explanation
@Minecraftzocker766
@Minecraftzocker766 2 жыл бұрын
Great video! Thank you!
@BeABetterDev
@BeABetterDev 2 жыл бұрын
You bet!
@nadaralpenidze9549
@nadaralpenidze9549 3 жыл бұрын
Great video. Thanks
@BeABetterDev
@BeABetterDev 3 жыл бұрын
Thanks Nadar
@XLpacman805
@XLpacman805 7 ай бұрын
Great video
@imyashkale
@imyashkale Жыл бұрын
Your channel is awesome.
@ZAXSMAXBY
@ZAXSMAXBY 3 жыл бұрын
Thank you so much!!!
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Thanks so much Zach!
@adamkinsey3139
@adamkinsey3139 Жыл бұрын
You repeatedly state that "DynamoDB has better performance" (such as at 31:20), and suggest that NoSQL databases are faster than relational ones. I SINCERELY believe that you need to question this assumption. If the use case is for a glorified hash table, then that *might* be true, but RDBMSs are pretty fast at primary-key lookups, too. You also say that you don't have much experience with high-demand implementations of RBDMS systems, so I am surprised that you so confidently state that DynamoDB is *just better*. I would be happier to see your assertions backed by some kind of data. And thank you VERY MUCH for taking the time to make this video.
@ralfrolfen5504
@ralfrolfen5504 Жыл бұрын
33:01 I'd really like to hear you though/experience on the following model change of the table below: Columns: CustomerId, OrderId, OrderDetails ( shipping name, shipping address, ...) If you really need customer details, you can get them through the CustomerId in the "CustomerDetails" table. If I understand your explanation correctly, DynamoDB (or more general /Key-value databases/) are very good for record data, you would have written down on paper and archive, in former times (so stuff, that doesn't change in bulk, like "customer details"). And again, thank you very much for all the effort you put in all your videoS! They are helping a great deal!
@naweedsyed1556
@naweedsyed1556 2 жыл бұрын
Amazing video
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Thank you Naweed!
@toshyamg
@toshyamg 2 жыл бұрын
Great video 👍... Great content
@BeABetterDev
@BeABetterDev 2 жыл бұрын
You're very welcome
@pauldittus
@pauldittus Жыл бұрын
Super helpful video. Question: Which DB would you recommend for WordPress?
@arkajitmondal7320
@arkajitmondal7320 3 жыл бұрын
You should have considered cost in your explanation as well which is a pretty important factor in deciding the type of database to choose depending upon the size of storage and also the number of read/writes. I have seen many forums where many said even though dynamodb may look very cheap initially and one might feel like it's the ultimate solution for all your database problems, reads/writes can get expensive when storage increases as it requires multiple indexes and quering through large documents resulting in larger RRU/WRU or RCU/WCU.
@shikhardev1
@shikhardev1 2 жыл бұрын
Really amazing video! Just a question when you are modelling the DynamoDB table at around @30:00, would it then make sense to split the information into 2 separate tables? A table with CustomerId as the partition key and OrderId as the sort key to answer the question "I want to be able to access all OrderIDs for a customer by their CustomerId", and another table with CustomerId as a partition key and one of other details as a sort key to find / update customer details?
@RafaganAbreu
@RafaganAbreu 3 жыл бұрын
Very nice video
@BeABetterDev
@BeABetterDev 3 жыл бұрын
Thanks Rafagan! Glad you enjoyed
@maazm4722
@maazm4722 3 жыл бұрын
Hi , are u going to make a vid on aurora 2 ?
@akin242002
@akin242002 2 жыл бұрын
If you haven't done a video on it yet, could you do a video on Mariah DB vs Aurora DB.
@tn9753
@tn9753 2 жыл бұрын
Thank you Daniel for the content and insight. Would you use DynamoDB for Cognito (User ID & Auth)?
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Hey TN, I would definitely consider DynamoDB for my backend and cognito for my authn/authz layer. In fact, this exact pattern is part of an application I am currently building right now at work! Daniel
@visvajeet5609
@visvajeet5609 2 жыл бұрын
Amazing work. 👏 Which one is best suitable for social media app?
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Hi Visva, This really depends - I think starting with Aurora is always a fine choice. You can always migrate afterwards if you scaling needs evolve. Hope this helps.
@ralfrolfen5504
@ralfrolfen5504 Жыл бұрын
What tool do you use for the presentation?
@pacoluna7969
@pacoluna7969 Жыл бұрын
Hi! You think is a good idea to store all information related to an APP/SAAS in DynamoDB? I'm building it and I'm thinking of host the API in lambda (using your tutorials), I already know how to use pretty well postgres databases, but I'm new to DynamoDB, as is just an APP concept and not a business, I'm thinking ofDynamo due to the free tier, but I don't know if it will serve my purpouse. I'm talking about data like user info, posts from users, etc. I have the model well defined with a relational database, but with Dynamo I'm having troubles.
@galeop
@galeop 2 жыл бұрын
The actual comparison starts at 26:36 But great explanations :-) I have a few questions: 1) Will I get significantly improved performances even if I choose DynamoDB for Transactions ? 2) By "access pattern", do you also mean for writing data, or only reading data ? 3) DynamoDB seems to complicate things quite a lot, as one almost never knows how access patterns will change, and this de-normalization introduces complexity. But I would argue that for micro-services, it is still a good fit, as they have a narrow and clearly defined scope, and you rarely add new entities to your microservice's data model.
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Hi Galeop, Good questions. For #1 - Its really hard to say. It would depend on the structure of your data and how many records need to get updated to perform the transaction. There's a great performance analysis article on Dynamo transactions here: www.alexdebrie.com/posts/dynamodb-transactions-performance/ For #2 - Access pattern typically refers to reading your data. For #3 - Dynamo does make things a bit more complicated when compared to traditional NoSQL or SQL databases. There are some tools such as GSI's that help you adapt to new patterns, but it can be cumbersome if faced with a brand new access pattern that just wont 'work' with your Dynamo table. I do agree though they are well suited for microservices with well defined models and responsibilities. For that, dynamo is a great choice. Hope this helps
@galeop
@galeop 2 жыл бұрын
Thank you very much for your answers
@troyfrericks1904
@troyfrericks1904 Жыл бұрын
At 06:00 you mention: Aurora Serverless... and at 08:00 you mention: DynamoDB is a pay-for-what-you-use model.... It's worth mentioning that Aurora Serverless is also a pay-for-what-you-use model.
@BeABetterDev
@BeABetterDev Жыл бұрын
Good point Troy. At the time only Aurora Serverless V1 which isn't what I could to be production capable. But as of now, I agree its viable and noteworthy. Cheers
@miluna94
@miluna94 2 жыл бұрын
Is it possible to use something like a unique field in dynamodb?? Does that field need to be a PK/SK/GSI??
@tom_zanna
@tom_zanna 3 жыл бұрын
Is Aurora a fork of open source DBMSs deeply integrated in the AWS ecosystem or a fully proprietary DBMS?
@shivamanand6112
@shivamanand6112 2 жыл бұрын
Extracting from PRAW Jsons. Load raw jsons in dynamo then staged table in s3 then db in rds Or store raw Jsons and staged tabled both in s3? Heard staging = load + staged so should one decouple? Or overkill?
@kiranmaheshreddy7417
@kiranmaheshreddy7417 3 жыл бұрын
we can also change the access pattern of the dynamodb by creating new GSI, whenever we want it . is is right?
@BeABetterDev
@BeABetterDev 3 жыл бұрын
Hi Kiranmahesh, Yes this is true, but be aware that GSIs do cost extra which may affect your decision to use them. Daniel
@stiffyBlicky
@stiffyBlicky 2 жыл бұрын
Great video, can you clarify the point around 36:34, "when you know in advance its good. idea to use dynamo and when you're convinced that its not going to change, def a good idea to use dynamodb, because you're going to be able scale a lot further if you use something like aurora" did you mean to say aurora here? I think you meant o say "you're going to be able to scale a lot further if you user something like dynamodb"?
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Hi Mark, thank you for catching this. Yes I did mean to reference Dynamo instead of Aurora. I wish youtube had a way of adding popups so I could fix this :(
@stiffyBlicky
@stiffyBlicky 2 жыл бұрын
@@BeABetterDev No worries, a response like this is sufficient, just wanted to make sure I understand what you are saying and now I do 100%. Thanks again.
@surfbug1
@surfbug1 7 ай бұрын
it's hard to hear you. on your next videos please increase your vocal your voice volume everything is great that ur presenting thank u!
@swanandrajure
@swanandrajure 2 жыл бұрын
What if the MasterDB for Aurora fails? How does it restores
@BeABetterDev
@BeABetterDev 2 жыл бұрын
Great question Swanand. Aurora will fail over to a Read Replica and promote it to master.
@pikachu5223
@pikachu5223 2 жыл бұрын
@@BeABetterDev what?
@vishalkothari8065
@vishalkothari8065 3 жыл бұрын
So aurora is better for serverless lambda over RDS?
@BeABetterDev
@BeABetterDev 3 жыл бұрын
Hi Vishal, Currently, Aurora is the only option that has 'serverless' mode. Not sure if this will change in the future but that is current state. Hope this helps, Daniel
@vishalkothari8065
@vishalkothari8065 3 жыл бұрын
@@BeABetterDevOkay , btw it was a nice video
@mraburles
@mraburles Жыл бұрын
How does DynamoDB compare to Amazon Neptune?
@BeABetterDev
@BeABetterDev Жыл бұрын
Hi adria, DynamoDB is great for key-value storage. Neptune is more for graph type use cases such as a social network or a road network. Hope this clarifies.
@SaiKiran-kd6cq
@SaiKiran-kd6cq 3 жыл бұрын
Can you please create a whole tutorial on creating a serverless app using python
@BeABetterDev
@BeABetterDev 3 жыл бұрын
Hi there, have you seen the two below videos I made? They may be helpful for you: kzfaq.info/get/bejne/jZOkrdJ4vrPKhHU.html kzfaq.info/get/bejne/hLNkicdoy9a-h58.html
@SaiKiran-kd6cq
@SaiKiran-kd6cq 3 жыл бұрын
@@BeABetterDev Yes ..I have not missed any videos of yours till now 😊 Your videos are crisp and to the point .My point was if you can please make a whole tutorial on serverless app python Django starting from Dyanmo dB to Cognito ..
@BeABetterDev
@BeABetterDev 3 жыл бұрын
Ah thank you for clarifying Sai! I'll put this on my todo list for my practical project series. Thank you for the suggestion!
@damienspectre4231
@damienspectre4231 Жыл бұрын
13:35 - thats not correct. Multi-AZ replication is SYNCHRONOUS!! Its why its are Failover Candidates and is virtually instantaneous replication (as opposed to read replicas which are Disaster Recovery candidates which as ASYNCHRONOUS and have a replica lag) This is from the official docs: "Aurora synchronously replicates the data across Availability Zones to six storage nodes associated with your cluster volume"
@BeABetterDev
@BeABetterDev Жыл бұрын
Thank you for pointing this out!
@trekmotion
@trekmotion Жыл бұрын
I would've been lot smarter if I found your videos years ago, I wasted hundreds of watch hours watching indian tech gurus reading slide shows. lol Thank you
@RaviKumar-uy9ij
@RaviKumar-uy9ij 2 жыл бұрын
I came for only from 26:52 🤔🤔
AWS DynamoDB Tutorial For Beginners
38:12
Be A Better Dev
Рет қаралды 327 М.
UFC Vegas 93 : Алмабаев VS Джонсон
02:01
Setanta Sports UFC
Рет қаралды 223 М.
터키아이스크림🇹🇷🍦Turkish ice cream #funny #shorts
00:26
Byungari 병아리언니
Рет қаралды 25 МЛН
小女孩把路人当成离世的妈妈,太感人了.#short #angel #clown
00:53
AWS SQS vs SNS vs EventBridge - When to Use What?
22:37
Be A Better Dev
Рет қаралды 166 М.
AWS MySQL Aurora Vs RDS - What one should I chose?
7:02
Johnny Chivers
Рет қаралды 16 М.
AWS EC2 vs ECS vs Lambda | Which is right for YOU?
16:50
Be A Better Dev
Рет қаралды 181 М.
AWS DynamoDB Schema Design | How to choose the right key
12:15
Be A Better Dev
Рет қаралды 204 М.
What is a DynamoDB Stream? (And why you should be using it!)
14:59
Be A Better Dev
Рет қаралды 62 М.
What is a DynamoDB GSI (Global Secondary Index) ?
10:19
Be A Better Dev
Рет қаралды 114 М.
UFC Vegas 93 : Алмабаев VS Джонсон
02:01
Setanta Sports UFC
Рет қаралды 223 М.