今、A,B2種類のデータがあったとする。
Aは、あまり量は多くないのだけれど、非常に何回もアクセスされる
このデータを処理するには、高速のCPUが必要となってくる
Bは、大量データで、そこそこ一様にアクセスがある。
このデータひとつ分を処理するのは、たいしたCPUを食わない
したがって、
Aのほうは、キャッシュに入れ、またAを処理するコンピューターは、高速なものを使いたい
しかし、スケールする必要はない。
しかし、Bのほうは、キャッシュにいれても、ヒット率はあがらず、
高速なコンピューターは使わなくていい。高速なものを使うと、高価になるので、使いたくない
しかし、スケールする必要はある。
この状態で、クラウドにA,Bのデータを均等にいれてしまうと、
Aは、Bにあわせると、高速なコンピューターは使えないので不満があり、
Bは、Aにあわせると、高価になるので、不満がある。
どちらかの折衷案を採ると、「悪いところどり」になってしまう。
この場合、AとBをわけて、別々の特性(Aは、高速&スケールしないプライベート、Bはクラウド)をもつコンピューターにいれるのがベスト。
と、考えると、クラウドは、そこそこ一様にアクセスされ、高速処理の必要のない、ロングテールに向いているのかもしれない。
Aは、あまり量は多くないのだけれど、非常に何回もアクセスされる
このデータを処理するには、高速のCPUが必要となってくる
Bは、大量データで、そこそこ一様にアクセスがある。
このデータひとつ分を処理するのは、たいしたCPUを食わない
したがって、
Aのほうは、キャッシュに入れ、またAを処理するコンピューターは、高速なものを使いたい
しかし、スケールする必要はない。
しかし、Bのほうは、キャッシュにいれても、ヒット率はあがらず、
高速なコンピューターは使わなくていい。高速なものを使うと、高価になるので、使いたくない
しかし、スケールする必要はある。
この状態で、クラウドにA,Bのデータを均等にいれてしまうと、
Aは、Bにあわせると、高速なコンピューターは使えないので不満があり、
Bは、Aにあわせると、高価になるので、不満がある。
どちらかの折衷案を採ると、「悪いところどり」になってしまう。
この場合、AとBをわけて、別々の特性(Aは、高速&スケールしないプライベート、Bはクラウド)をもつコンピューターにいれるのがベスト。
と、考えると、クラウドは、そこそこ一様にアクセスされ、高速処理の必要のない、ロングテールに向いているのかもしれない。