How we use DynamoDB streams to replicate data into Elasticsearch

  Рет қаралды 5,193

Web Dev Cody

Web Dev Cody

Күн бұрын

Пікірлер: 24
@Nova-ul3vv
@Nova-ul3vv 6 ай бұрын
Dude i feel ya! 😅 DynamoDB is nice but its hell to serve data to other applications. Especially if you have a lot of data which needs to be paginated on complex queries its simply not possible. We currently query all data then do further processing in lambda and put the results in memory. But your video gave me an idea how to restructure. Thx!
@ImranKhan-xn6ig
@ImranKhan-xn6ig Жыл бұрын
Crisp and Clean Explanation
@renanlisboa123
@renanlisboa123 9 ай бұрын
Why not use a SQL database? I'm not judging or anything I'm just trying to learn so I can make some decisions in my job.
@WebDevCody
@WebDevCody 9 ай бұрын
i wish we did. I'm not a fan of dynamo unless you have "super large data" needs.
@MdRahman-ho8fl
@MdRahman-ho8fl 5 ай бұрын
excellent. brief and clear.
@raygan3
@raygan3 2 жыл бұрын
I dont know much about elastic serach but i wonder why do you need dynamodb, cant you just use elasticsearch as your database?
@WebDevCody
@WebDevCody 2 жыл бұрын
bonsai.io/blog/why-elasticsearch-should-not-be-your-primary-data-store
@uzair004
@uzair004 4 ай бұрын
It would be expensive process. I need to know how I to improve dynamodb modeling and mapping process, it took me so much time to come up with few access patterns.
@pshaddel
@pshaddel Ай бұрын
Nice video! We are planning to do the same thing with Postgres, searching for phrases is not that efficient specially in our architecture that we have to join 4 or 5 tables. I am wondering if we could do it smoothly inside the AWS Lambda. My plan is to join all of those tables and put them as just one document in Elastic Search, which makes it quite fast, but on the other hand I have to update these elastic search documents in cases that somebody updates another table(let's say tags).
@WebDevCody
@WebDevCody Ай бұрын
Elasticsearch is also a pain. Honestly id try to just find ways to achieve this using Postgres. In elasticsearch, joining data using parent child relationships is aweful performance, and also you have to keep creating new indexes the moment you change search properties or add new search properties.
@pshaddel
@pshaddel Ай бұрын
@@WebDevCody My plan was to denormalize these documents in Elastic Search, you are right, joins in elastic search would not give us the performance we want.
@PTBKoo
@PTBKoo 11 ай бұрын
Is there a service that can provide similar functionality as dynamodb streams for planetscale mysql?
@ebukaume
@ebukaume Жыл бұрын
Nice design, but perhaps we could buffer the stream using an SQS (with a DLQ) so the Lambda doesn't choke and so we could recover from errors in the lambda without losing data. WDYT?
@WebDevCody
@WebDevCody Жыл бұрын
I think the dynamodb streams (kinesis) is built to hold a LOT of messages, so I don't think it would ever choke. Also the lambda processing the streams from the dynamodb stream already have a fixed limit on how many message they can read per second, so I don't think they will ever choke per say.
@ImranKhan-xn6ig
@ImranKhan-xn6ig Жыл бұрын
@@WebDevCody Lambda could fail cause of other unexpected reason. Don't you think adding a SQS as buffer (with a DLQ) with ensure data processing of each event streamed from dynamoDB. Just curious can we ensure 100% processing of streams without involving Buffer SQS but including DLQ
@carlosmedinaio
@carlosmedinaio 7 ай бұрын
I think a SQS (with DLQ) should be added for example just in case the communication between Lambda and ElasticSearch faces some unexpected issue, and the data record to be inserted is lost. Having the SQS, the message involved in the issue will go back to the SQS and event will be launched again. Am I ok?
@SeibertSwirl
@SeibertSwirl 2 жыл бұрын
Good job babe!!!
@allenchun48
@allenchun48 Жыл бұрын
What if I update, or delete a record in dynamodb? will it also reflect in Elasticsearch?
@WebDevCody
@WebDevCody Жыл бұрын
Yes if you handle the update or delete event in the stream, you can also remove it from elastic search.
@adriancoliba
@adriancoliba Жыл бұрын
Great, thanks!
@vaultek_
@vaultek_ 2 жыл бұрын
Where we get that dynagrams images
@WebDevCody
@WebDevCody 2 жыл бұрын
Which one? You’d need to take a screenshot
@vaultek_
@vaultek_ 2 жыл бұрын
@@WebDevCody I find it, no worries thanks
@sheldonfourie5959
@sheldonfourie5959 2 жыл бұрын
Nice🤓
Microservices with Databases can be challenging...
20:52
Software Developer Diaries
Рет қаралды 70 М.
How it feels when u walk through first class
00:52
Adam W
Рет қаралды 24 МЛН
Ouch.. 🤕⚽️
00:25
Celine Dept
Рет қаралды 20 МЛН
小丑家的感情危机!#小丑#天使#家庭
00:15
家庭搞笑日记
Рет қаралды 34 МЛН
Wait for the last one 🤣🤣 #shorts #minecraft
00:28
Cosmo Guy
Рет қаралды 10 МЛН
Why I like to use Clean Architecture for my software projects
17:35
This is why testing is hard
22:18
Web Dev Cody
Рет қаралды 8 М.
Common Single-Table design modeling mistakes with DynamoDB
1:05:29
Here's what I know about DynamoDB
37:36
Web Dev Cody
Рет қаралды 8 М.
What is a DynamoDB Transaction?
9:55
Be A Better Dev
Рет қаралды 12 М.
Elasticsearch anti-patterns and bad practices to be aware of
9:17
George Bridgeman
Рет қаралды 29 М.
The only Cloud services you actually need to know
17:17
NeetCodeIO
Рет қаралды 177 М.
How it feels when u walk through first class
00:52
Adam W
Рет қаралды 24 МЛН