@ton The way Mastodon works, every post (except DMs if you are not mentioned) from people that federate with your server are copied to your database.
So, if 100 users federate with your server (meaning someone in your servers follows that user) and on average they make 5 post a day, your database will grow by 500 records everyday. After 1 year, you are storing 182k posts.
This if you don't use a Federation Relays.
@ton In terms of sizes scaling with the number of users, usually it doesn't scale linearly because if you have 10 users and 5 of them follow remote account X. The posts from account X are only federated/stored one. So, in general the larger the number of users the smaller the database space per user.
Obviously depends on usage. If you have a closed Mastodon server where the users down follow remote users or a small number of remote follows, this isn't the case.
To further my limited understanding..
So this includes all the posts of everyone your users follow, even if they do not interact with these post threads (they just appear in the timeline, and disappear into history afterwards)?
If so, couldn't that part be ephemereal, e.g. removed after one month? I personally never scroll back in a timeline that far, and when clicking on a post the thread is fetched if not present.
@humanetech Currently as long as the post is federated with your server. it never gets deleted and leaves on your database forever.
I believe the idea has to do with being able to see the remote profile inside the web interface of your server.
About fetching the missing posts on the fly it's just too resource intensive, plus the remote server could be offline or it could overload both the local and remote server and be a very slow experience for the users.
Ton's personal Mastodon instance