3 ms·
> Uber migrated all its payment transaction data from DynamoDB and blob storage into a new long-term solution No way they have 1 trillion transactions right?
by drexlspivey 2y ago
> Uber migrated all its payment transaction data from DynamoDB and blob storage into a new long-term solution
No way they have 1 trillion transactions right?
- rco8786 2y ago1T "records". Any given transaction can have N records. I'm assuming this includes Uber Eats as well.
- drexlspivey 2y agoStill, they have 10B rides in 2023 including Eats, say 75-100B since inception. What would be a record such that each transaction needs 10-15 on average?
- ndr 2y agoConsider it might be quite de-normalized as typical at scale. Some records for the customer, some for the driver, some for the restaurant...
- eru 2y agoYou might even have a few more. Eg you might have a record for each stage of the meal. When it's ordered, when it's cooked, when it's delivered, etc.
- re-thc 2y ago> What would be a record such that each transaction needs 10-15 on average? Does it have to be 1-dimensional? Depends exactly what payments is. There are refunds, discounts, paying e.g. drivers. There are also things like monthly subscriptions people can subscribe to for discounts / unlimited uses. Lots of things add up.
- csomar 2y agoI can see that as transactions with credit cards go through lots of process (withholding, approval, charging, settling, etc..)
- shrubble 2y agoThey need to pay the driver and they need to handle taxes; that alone triples your estimated 100B.
- rco8786 2y ago> 75-100B This seems low, off the bat. 15 years of Uber, 9 years of Uber Eats. But even just looking at my most recent trip with Uber, there are 7 different records visible on the receipt. Not including backend recordkeeping that isn't exposed to the user (driver payments, driver loan repayments, revenue recognition, internal fees/records, etc). Total trip amount, Trip fare, Booking fee, Tip, State fee, Payment #1 (trip itself), and Payment #2 (driver tip) Now consider Uber Eats where there is (at least) one record for each item in an order...plus tax, tip, etc as always. Then consider things like wait time charges, subscriptions, split charges, pending charges, chargebacks, refunds, disputes, blah blah blah. An average of 10 records per customer transaction seems entirely reasonable.
- bjornsing 2y agoThe blog post says billions of transactions and trillions of indexes (or rather index entries I presume), if I remember correctly.