Comments (3)
Also, why didn't you use something like Kubernetes and make it truly scalable? Anyways, cool project.
Laughed out loud, that's not how that works at all
How were you able to manage query performance and storage optimizations with the amount of data you were processing? I would assume it's a pretty big feat considering you have two terabytes worth of data in a single database. Did you host a managed database with DO, or did you provision a droplet with block storage and just manage your own installation?
Bare metal was the only way to go. Just a 2TB nvme, with hand-tuned ZFS on top of that, and hand-tuned Postgres on top of that, and hand-tuned queries and indexes on top of that. Queries to the biggest table, blocks
(over ten billion rows), to fetch old data about coordinates, would peak at over 30,000 SELECTs per second (sustained average over minutes).
from nocom-explanation.
Laughed out loud, that's not how that works at all
Yeah, probably should have phrased that better. I'm just curious as to why you wouldn't containerize it and just put it on something like Kubernetes to make it easy to port into multiple servers. My expertise is not in Minecraft, so I'm just curious about that.
Bare metal was the only way to go. Just a 2TB nvme, with hand-tuned ZFS on top of that, and hand-tuned Postgres on top of that, and hand-tuned queries and indexes on top of that. Queries to the biggest table, blocks (over ten billion rows), to fetch old data about coordinates, would peak at over 30,000 SELECTs per second (sustained average over minutes).
That's really cool, great job again.
from nocom-explanation.
I'm just curious as to why you wouldn't containerize it
Depends on what you mean by it. From context, I thought you were referring to the Postgres but perhaps not? Postgres doesn't have good multi-master, and given the real-time write-heavy workload of the block downloader and tracker it wouldn't make much sense to have a follower or replica (no matter if it's a replica slot or a wal shipper type scenario). We DID ship wal logs though, that's how the backups were done.
But we absolutely did use containers, there are something like a dozen different things running in docker. We just used docker-compose since kubernetes doesn't have much to offer on top of it.
from nocom-explanation.
Related Issues (20)
- [Question] Locating exact cords of the player HOT 6
- Cubic Chunks and other mods, and it acting like a full rendering system. HOT 16
- YO what is up HOT 3
- Latex Writeup HOT 1
- [Question] Create a Google drive or similar with World Downloads HOT 1
- Typo in heatmap dimensions HOT 1
- About BibleBot
- [Question] How are particles actually being filtered? HOT 1
- . HOT 46
- Question HOT 1
- [Suggestion] GitHub Discussions for question things HOT 1
- videos HOT 1
- What was headless client written in? I've seen other headless clients being written in different languages, so I'm curious. HOT 2
- comdar 2.0 HOT 4
- No documentation for the SQL files HOT 4
- how were the videos rendered?
- Since you could track hausemaster in spectator do you also know his ign? HOT 1
- [Question] abuse some other techniques (like AntiAntiXray exploits) HOT 11
- Release code just for fun cuz its patched anyways HOT 11
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nocom-explanation.