For reference, here's a diagram of how the service exactly works:
We are aware of the issue with the badge emails resending to everyone, we apologise for the inconvenience - learn more here.
We are aware of the issue with the badge emails resending to everyone, we apologise for the inconvenience - learn more here.
Hey Akhil_M_S, I'd happily take it from where you left off with Daphne; I hope my message finds you well today!
To answer your initial question Akhil, different features on different platforms tend to have slightly different models, but the most common pattern is the observer pattern. This is implemented as long-polling from the client to the server, which holds the canonical representation of the data. For example, we do this for a lot of sync features, but also for comments/file activity. Where we don't use long-polling, we do client/server polling.
Hope that helps with your class presentation and good luck with your project!
Hi Daphne,
I was reading about the Dropbox architecture. (Streaming File Sync). And in my search for the backend database details I found this thread. In the Under the hood : architecutre overview , i understood that Metadata database is a RDBMS. Is it fair to understand that the block storage where the actual files is on the cloud (S3)?
Hi prasanthkp; how are you today?
Sorry to jump in here, but quoting from the relevant resource I just wanted to let you know that (sic) once a file is added to your Dropbox, it's synced to our secure online servers. All files stored online by Dropbox are encrypted and kept in secure storage servers. Storage servers are located in data centers across the United States. Additionally, storage servers are available in Germany, Australia, and Japan for some Dropbox Business users.
For reference, here's a diagram of how the service exactly works:
Hi Walter,
Am good. Hope all is well there.
Thanks for the quick reply. I appreciate that.
The reference diagram was helpful. That answer my question partially. My question was more towards the database. Based on the reference diagram,
Is the above a right understanding?
I guess MySql was opted to maintain ACID. How is sharding done as scaling a RDBMS is a costly effort.
Thanks in advance.
Prasanth
Thanks for getting back to me Prasanth; how are you today?
I'll try to address your questions here but please feel free to also check our security whitepaper as most of your concerns are addressed within that document.
To cut to the chase now, note that (1) the actual contents of users’ files are stored in encrypted blocks with the Block Storage Servers while prior to transmission, the Dropbox client splits files into file blocks in preparation for the storage. The Block Storage Servers act as a Content-Addressable Storage (CAS) system, with each individual encrypted file block retrieved based on its hash value.
And (2) File metadata is stored in a MySQL-backed database service, and is sharded and replicated as needed to meet performance and high availability requirements.
And to further elaborate, file blocks are stored in one of two systems: Amazon Web Services (AWS) or Magic Pocket, our in-house storage system. Magic Pocket consists of both proprietary software and hardware and has been designed from the ground up to be reliable and secure. In both Magic Pocket and AWS, file blocks are encrypted at rest, and both systems meet high standards for reliability.
I hope this information helps and we're always around if you have any additional queries; just give us a nudge here prasanthkp!
Thanks Walter. I am doing good. How about you?
Your explanation helps. I appreciate that. I am reading the docs and will revert if I have more questions.
Cheers.
Prasanth
Need support with viewing, downloading, and exporting files and folders from your Dropbox account? Find help from the Dropbox Community.
If you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!