I know memory is fairly cheap but e.g. there are millions of new videos on youtube everyday, each probably few hundred MBs to few GBs. It all has to take enormous amount of space. Not to mention backups.
Google just has a lot of storage space. They have dozens of data centers, each of which is an entire building dedicated to nothing but storing servers, and they’re constantly adding more servers to previous data centers and building new data centers to fit even more servers into once the ones they have are full.
IIRC, estimates tend to put Google’s current storage capacity somewhere around 10-15 exabytes. Each exabyte is a million terabytes. Each terabyte is a thousand gigabytes. That’s 10-15 billion gigabytes. And they can add storage faster than storage is used up, because they turn massive profits that they can use to pay employees to do nothing but add servers to their data centers.
Google is just a massive force in terms of storage. They probably have more storage than any other organization on the planet. And so, they can share a lot of it for free, because they’re still always turning a profit.
The 10-15 EB estimate from XKCD was 10 years ago.
And thats just Google. Amazon and Microsoft also run also have massive massive data capacity that runs large chunks of the internet. And then you get into the small and medium sized hosting companies, that can be pretty significant on their own.
There are also techniques where data centers do offline storage by writing out to a high volume storage medium (I heard Blu-ray as an example, especially because it’s cheap) and storing it in racks. All automated of course. This let’s them store huge quantities of infrequently accessed data (most of it) in a more efficient way. Not everything has to be online and ready to go, as long as it’s capable of being made available on demand.
Edit: Clarifying that tape medium is typically used for the longest term storage with the caveat that read is slow, so that used for the stuff that is least likely to be accessed. For things that are accessed infrequently but still need to be available relatively frequently you can have a “caching layer” which is what I was referring to with the discs. It’s a tradeoff between speed of access and information density. Here’s an article from 2015 where Facebook/Meta is discussing their design: https://engineering.fb.com/2015/05/04/core-data/under-the-hood-facebook-s-cold-storage-system/
It’s far more likely that Google, AWS, and Microsoft are using tape for high-volume, long-term storage.
According to diskprices.com, these are the approximate cost of a few different storage media (assuming one is attempting to optimize for cost):
- Tape $0.004 - $0.006 / GB
- HDD $0.009 - $0.012 / GB
- BluRay $0.02 - $0.04 / GB
- SSD $0.035 - $0.04 / GB
- microSD $0.065 - $0.075 / GB
Tape archives are neat too, little robot rearranging little tape drives in his cute little corridor
You can feel it on YouTube when you try to access an old video that no one has watched in a long time.
every time it lags, it’s because youtube has to send someone down to the basement to retrieve the correct blu-ray disc from a storage room
God bless those interns. Earning those college credits.
That’s the difference between getting a video served off a disk off in some random DC in some random state vs. the videos being served off a cache that lives at your ISP.
It’s not offline storage vs. disk, it’s a special edge-of-network cache vs. a video that doesn’t live in that cache, but is still on a hard drive.
Tape drives are still in use in a lot of places too. Enormous density in storage for stuff that’s in “cold storage”
I don’t think the storage density of a blu ray is anywhere near good enough for that use
Doesn’t BR only have like 100 gigs capacity? That would take a shitton of space.
They use tapes for backups, but indeed there ought to be something inbetween.
https://engineering.fb.com/2015/05/04/core-data/under-the-hood-facebook-s-cold-storage-system/
This is an article from 2015 where Facebook/Meta was exploring Blu-ray for their DCs. You’re definitely right though. Tape is key as the longest term storage.
2015 was quite a while ago tho.
15 exabytes sounds low. Rough math, 1 20 TB hard drive per physical machine with 50,000 physical machines is one exabyte raw storage. I bet 50,000 physical machines is a small datacenter for Google.
Let’s be honest, it isn’t “free”. The user is giving their own data to Google in order to use there services; and data is a commodity.
Kinda starting to seem like “data” is becoming less and less valuable, or am I wrong?
well there’s more and more of it so the value per byte is decreasing as everything tracks you and there’s only so much info you can get
I was recently doing a tour of CERN in Geneva, and they actually still store data on tape because of its cost and reliability over hard drives!
Apparently tape is nowhere near the magnetic density limit that hard drives are hitting, so tape is just going to continue to improve in future
YouTube isn’t even profitable yet. Google pours billions into storage and compute, so does Amazon and Microsoft and all the others. They have so much space we probably can’t even comprehend it
TIL that Google owned YouTube. How did I not know this? I honestly thought that they were their own entity still after all these years. God I feel dumb.
acquisition happened in 2006
For twitter it’s not that complicated because tweets are quite short and text compresses very well. The pictures and videos people upload are of course another story, I’m not sure what Twitter uses as a backend for anything though.
Three additional things that you have to keep in mind are that:
1 - Enterprise storage is much, much denser (as in, capacity per physical space occupied) than you would expect.
2 - These systems have capacity recovery features (primarily compression and deduplication) that save a lot more storage than you would expect.
3 - The elements in the infrastructure are periodically refreshed by migrating them to newer infrastructure (think of how you could migrate two old 500GB disks to a single modern 1TB disk to save the physical space of a disk).As an example about point 1, this is what IBM advertises in their public whitepaper for their Storage Scale systems (https://www.ibm.com/downloads/cas/R0Q1DV1X):
“IBM Storage Scale System is based on proven IBM Storage 2U24 hardware that can be expanded with additional storage enclosures up to 15.4PB of total capacity in a single node and 633YB in a single cluster. You can start with 48TB using half-populated flash nodes or create a fully-populated NVMe flash solution with 24, 2.5” drives in capacities of 3.84TB, 7.68TB, 15.36TB or 30TB. Using the largest capacity 30TB NVMe drives, up to 720TB total flash capacity, in a 2U form factor, along with associated low weight and low power consumption. Adding storage enclosures is easy as up to 8 enclosures (each 4u with 102 drives) can accommodate up to 816 drives of 10TB, 14TB or 18TB or 14.6PB of total raw HDD capacity.”
In short, you end up packing a stupid amount of storage in relatively moderate spaces. Combined with the other two points, it helps keep things somewhat under control. Kinda.
Absolutely huge data centers.
A full third of my towns real estate is currently covered with a sprawling Google data center. Just enormous.
NoVa?
One of the largest.
I love driving through it when I go up to Winchester. Data center galore.
I can’t fathom that amount stored there in addition to the amount of data traffic occurring. Those fibers are on fire; coming in the centers in 3 foot tubes! For some reason they don’t appear on google image search. ;)
I lived in Herndon VA for work for a while.
Was so nice gaming with 2 ping.
Twitter probably doesn’t take to that much space (comparatively) because it’s mostly text with some images.
YouTube is another matter. There’s an enormous amount of content uploaded to YouTube, as much as 30,000 hours of video uploaded per hour. That’s around 1PB per hour assuming most videos are uploaded in 1080p.
I wasn’t able to find an official source for what YouTube’s total data storage is, but this estimate puts it at 10 EB or 10,000,000,000 GB of video.
On Amazon AWS that would cost $3 Billion per month to store. The actual cost to Google is probably much lower because of economy of scale and because it is run by and optimized for them, but it is still a colossal figure. They offset the cost with ads, data collection, and premium subscription, but I would imagine running YouTube is still a net loss for Google.
I’m generally the first to criticize Google, but when it comes to pushing ads on YouTube I’m having a hard time really condemning them for it. I struggle to wrap my head around how this service can exist at all.
Also, second to direct transactions, I’d much rather have Google make money through ads than anything else.
Agreed, I pay for YouTube premium and in the world of corporate crap and fees and stuff I’m ok with that value trade off relatively. Hell, I would have paid for Reddit, too, if they weren’t assholes.
Edit: I mistyped Google premium instead of YouTube premium… same place though of course
They’ll make it through data collection too even if you pay for premium. You are still the product even if you pay in this era.
I would imagine running YouTube is still a net loss for Google.
I doubt it, youtube generates about 30 billion in revenue per year!
If I remember correctly YouTube has been run at a loss basically since its inception, but it’s such a popular platform (and such an efficient vehicle for advertisement) that they keep it running. Google makes up the difference elsewhere. It’s like Costco’s loss leader hot dogs, it literally costs them money to sell it to you, but it gets you inside the store where you’re likely to buy other stuff. YouTube costs Google money to maintain, but it gets people creating Google accounts and watching ads, and recently over the past few years it also gets people buying YT Premium.
Besides, so much propaganda of all sorts is channeled through YouTube that if Google ever seriously considered shutting it down I expect they’d have a boardroom full of shareholders immediately putting their foot down about it. YouTube is no longer about the cost, it’s about the platform accessibility and the existing userbase.
Holy shit I didn’t know it was that insane.
It gets even crazier when you realize they are sort of obligated to keep every video forever. So it will just keep growing indefinitely since they have no way to trim it down. We may eventually reach a point where the majority of the content that they host is older than most living people and the uploader has since passed on.
They won’t, eventually they’ll pull a Imgur and start deleting stuff that hasn’t been accessed in a while.
I mean didn’t they just announce they’ll start deleting inactive accounts?
But even if not, storage always becomes cheaper with time, so it’s just a matter of copying old data to a newer medium. Eventually that will become an issue, but for now, capacity and storage density keeps growing.
I mean didn’t they just announce they’ll start deleting inactive accounts?
They stated they would delete the accounts but that the videos would remain. But obviously the policy could change. My point was more that a ton of people would be watching content that was uploaded by and for people who are no longer alive. Which makes me feel uncomfortable in a way I can’t quite describe. Like a modern version of seeing a ghost.
It’s the same story with AWS as well. They use vast amounts of storage and leverage different tiers of storage to get the service they want. It’s funny but they have insane amounts of SD cards ( cheapest storage available at the size) and use that for some storage and just replicate things everywhere for durability. Imagine how small 256GB SD cards are and they you have hardware to plug-in 200 of them practically stacked on top of each other. The storage doesn’t need to be the best, it just needs to be managed appropriately and actively to ensure that data is always replicated as devices fail. That’s just the cooler tier stuff. It gets complex as the data warms.
I am very skeptical of your claim that AWS stores data on SD cards. They do have a higher storage density than HDDs/SSDs, but are much more expensive. They are also less reliable and have much slower read/write speeds. It sounds like you’re just making this up. Could you provide a source?
Yeah this seems false. SD cards are unreliable, hard to keep track of, and don’t actually store that much data for the price. I do think they use tapes though to store long term, low traffic data.
Used to work there but it’s been a few years so maybe things changed but that was how we originally got super cheap and durable s3.
We use LTO tapes in Hollywood to back up raw footage; it wouldn’t surprise me if AWS uses tapes for glacier.
I got a tour of Iron Mountain once (where we sent tapes for long term archival). They had a giant room with racks and racks of LTOs, and a robot on rails that would make copies of each tape at regular intervals to keep the data from corrupting. It looked kinda like the archive room in Rogue One. Wouldn’t surprise me if Iron Mountain was an inspiration for the design. Super interesting.
Not only that but for each video on YouTube there are different versions for each resolution. So if you upload a 1080p video, it gets converted to 1080p AVC/VP9, 720p AVC/VP9, 480p… also for the audio.
If you run
youtube-dl -F <youtube url>
you will see different formats.Does youtube actually store copies of each one? Or does it store 1 master copy and downsaple as required in real time. Probably stores it since storage is cheaper than cpu time
If it converts every video in realtime it will require a lot of CPU per server, it’s cheaper to store multiple copies. Also the average video isn’t more than some 300MB, less if it’s lower quality.
Anyone with Plex or Jellyfin knows that it’s better to have the same movie in both qualities (1080,720) the transconding to avoid CPU usage.
It’s possible to have fast transconding with GPUs, but with high so many users on youtube that will require a lots of power and high energy prices, store is cheaper.
It probably depends on how popular the video is anticipated to be.
I remember hearing that something like 80% of uploads to YouTube are never watched. 80% of the remaining 20% are watched only a handful of times. It’s only a tiny fraction that are popular, and the most popular are watched millions of times.
I’d guess that they don’t transcode the 80% that nobody ever watches. They definitely transcode and cache the popular 4%, but who knows what they do with the 16% in the middle that are watched a few times, but not more than 10x.
I believe they store and that’s why it processes lowest res first and works up
It’s transposed on the fly, this is a fairly simple lambda function in AWS so whatever the GCP equivalent is. You can’t up sample potato spec, the reason it looks like shit is due to bandwidth and the service determining a lower speed than is available.
Are you suggesting they don’t store different versions? This (speculative ik) suggests they do.
That response is almost 10 years old and completely outdated. I’ve designed and maintained a national media service and can confirm that on the fly transcoding is both cheaper and easier. It does make sense to store different formats of videos that are popular at the minute but in the medium to long term streams are transcoded.
Sure it’s old but the stats I posted in a lower comment show that at YouTube’s scale, it makes sense to store.
At a certain point the cost of compute is going to be cheaper than the cost of storage.
Do you have a source? My instinct is the opposite. Compute scales with users but storage scales with videos
Consider two cases:
- the most recent MrBeast video receiving millions of views from all kinds of devices (some of which require specific formats)
- a random video of a cat uploaded 5 years ago, total view count: 3
Design a system that optimizes for total cost.