ユーザーごとにデータを保存して、必要なときだけデータを引き出すアーキテクチャを考えてるんだけど、こうすれば多くのデータ漏洩があっても、サーバーがほとんどのユーザーデータを保存してないから影響が少なくなると思う。人間はミスをするから、こういう漏洩は避けられないし、そもそもユーザーデータを保存しないのが正しい解決策だと思う。ただ、いくつかの問題があるんだ。1. ユーザーがx人、グループがy個あって、その中の一部のxが必要な場合、データを必要に応じて結合するのは高くつくことがある、O(x*y)。2. このアーキテクチャの主な利点はデータがユーザーと一緒に保存されることだけど、グループサイズyが増えると、特定のユーザーのデータがオフラインだと集計利用が難しくなる。これだとサーバー側でデータを複製することになり、目的が達成できなくなる。3. 前の二つの問題が解決されたとしても、どうやってユーザーのデータを守るか、これを知っている人がクライアントに行って簡単にデータをスクレイピングできないようにするかが難しい。4. こういう機能を許可しつつ、ユーザーが望ましくない方法でデータを変更できないようにするにはどうすればいいのか?暗号化?具体的な例としては、HNが各ユーザーにsqliteデータベースを持たせて、ユーザーごとの投稿を保存するようにした場合、HNサーバーは各投稿者のデータを取得して通常のページを表示することになる。ここで、特定のユーザーのデータがアクセスできない場合、そのデータは省かれることになるだろうね。