Over time, Lemmy instances are going to keep aquiring more, and more data. Even if, in the best case, they are not caching content and they are just storing the data posted to communities local to the server, there will still be a virtually limitless growth in server storage requirements. Eventually, it may get to a point where it is no longer economically feesible to host all of the infrastructure to keep expanding the server’s storage. What happens at this point? Will servers begin to periodically purge old content? I have concerns that there will be a permanent horizon (as Lemmy becomes more popular, the rate of growth in storage requirements will also increase, thereby reducing the distance to this horizon) over which old – and still very useful – data will cease to exist. Is there any plan to archive this old data?

  • 018118055@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    7
    ·
    1 year ago

    One way to approach the geometric storage growth would be to not cache everything everywhere all at once. With 1000+ instances, storing an object in a few instances would be ok if others can pull it in on demand. Can use some typical caching methodology like use frequency, aging etc.

    • vamp07@lemm.ee
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      This is a great idea. Instances will need eventually to agree to common storage areas, even if they dont all allow the same content on their instance. That savings would be huge in the long run.

  • HamSwagwich@kbin.social
    link
    fedilink
    arrow-up
    3
    ·
    1 year ago

    @Kalcifer

    The long term solution is something like IPFS object storage that’s read only for everyone but the author instance. One copy of the data but all instances can read it and it’s stored forever in a redundant medium with bitrot protection.

  • Hotzilla@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    3
    arrow-down
    1
    ·
    1 year ago

    Premature optimization is not good. Content here is not very storage intensive, so I would not yet make it to issue. Postgre can handle billions of rows when indexed right.

  • ubergeek77@lemmy.ubergeek77.chat
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 year ago

    Pictrs 0.4 recently added support for object storage. This is fantastic, because object storage is dirt cheap compared to traditional block storage (like a VM filesystem). This helps a lot for image storage, which is a large part of the problem, but it’s not the whole problem.

    I know Lemmy uses Postgres for everything else, but they should really invest time into moving towards something more sustainable for long term/permanent hosting. Paid Postgres services are obscenely upcharged and prohibitively expensive, so that’s not an option.

    I’m armchair architecting here so I’m not sure what that would look like for Lemmy (Cloudflare KV? Redis?)

    Still, even my own private instance has been growing at a rate of about 700MB per day, and I don’t even subscribe to that many things. I can’t imagine what the major instances are dealing with. This isn’t sustainable unless we want to start purging old data, which will kill Lemmy long term.


    EDIT: Turns out ~90% of my Lemmy data is just for debugging and not needed:

    https://github.com/LemmyNet/lemmy/issues/3103#issuecomment-1631643416

      • morrowind@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Honestly selective purging might work. There definitely some communities we should keep but if you purge like !memes, I don’t think anyone would care.

          • Atemu@lemmy.ml
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 year ago

            if you also target low score posts first

            That’s not a good metric either. There are many low scored posts I found on Reddit that were immensely helpful for some niche issue I was having.

            While I’d still prefer to keep it, I’d agree that content meant for entertainment such as memes aren’t as valuable for long-term archival though. You can always get entertainment in so many places and forms but you can’t revive lost knowledge.
            The most value memes could have would be for historical analysis.

    • YMS@kbin.social
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      I m sure I won’t miss this post in one month or even one day.

      Well, maybe you won’t, but others might. That was the great thing about Reddit. Found a sub that might be interesting? Browse its top content of the last ten years and you’ll see. Have a specific programming question? Google it with site:reddit.com and you’ll likely find a good discussion on it. Reading on old interview somewhere and wonder if someone ever fact-checked that one statement there? The guys at Reddit likely have.

      Even before the blackout it already happened way too often that you stumbled upon an interesting Reddit thread just to see that one of the central comments has been deliberately deleted by its author and so the whole thing gets less helpful. Would be a shame if the system itself would further delete even more content.

    • Kalcifer@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      ie oldest postes && least liked First

      This would pretty much automatically throw out all troubleshooting posts. These sorts of posts, very often, don’t receive many likes, as that is not their purpose. On top of that, there has been many a time that I have been saved by finding some ancient forum post that solved my problem.

  • BaroqueInMind@kbin.social
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    1 year ago

    Sounds like the federated instances should consider opening up for donations and paid features like comment awards and animated shit like Discord or Reddit.

      • sugar_in_your_tea@sh.itjust.works
        link
        fedilink
        arrow-up
        2
        ·
        1 year ago

        No, we ended up with Reddit from stupid top-down leadership stupidity. I have no problem with Reddit’s awards and whatnot, I have a problem with them locking kicking out third party apps and limiting the mobile web experience.

        If you don’t like an instance’s profit model, just move to another one or host your own. There are plenty to choose from, so competition will keep away the worst of it.

        My preference is for monetary subscribers to get access to new features early and to get more of limited features (i.e. if everyone gets X awards to distribute/day, subs get 2X or something), but for features to eventually make their way to everyone else. This allows A/B testing in an interesting way while funding the project. Since the project is FOSS, individual instances can decide to roll them out to everyone or block usage of these optional features from other instances.

        If instance admins will be paying hundreds per month for hosting, they should have some way outside of donations to recoup that cost (plus their time spent). I doubt anyone will get rich from it, but hopefully it’ll be enough to help admins offset the costs.

    • Kalcifer@lemmy.worldOP
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      I worry that these sorts of things would end up turning the site into a popularity contest (or, well, more of a popularity contest than these sorts of sites already are. That being said, I’m quite proud of Lemmy, currently, as it appears to be resisting that). Also I’m not entirely sure how things like payed comment awards would work with everything being federated.

  • o_o@programming.dev
    link
    fedilink
    English
    arrow-up
    0
    arrow-down
    1
    ·
    1 year ago

    Personally I think we should add a differentiation between the storage policies of content which is owned by your own instance and content that federates from other instances.

    The former should be kept for a long time (forever?), while the latter can be cleared more regularly.