人々は既存のアプリケーションを Hadoop インフラストラクチャに移行することに非常に熱心であるように思われ、多くの企業や組織では、大量のデータがある場合は Hadoop を使用するというマントラがあるようです。既存のソリューションが集中型 (ビッグ) データに依存していることが、Hadoop が優れたソリューションであるかどうかの決定にどのように影響するかを理解したいと思います。
多くの場合、典型的な「ビッグデータ」アプリケーションは、ドキュメント、メッセージ、ファイルなど、何十億ものものを可能な限り効率的かつ高速に処理したいと考えています。マップ/リデュース方式で多くのノード間で機能を分散することの利点を理解しています。ただし、多くの場合、これらを処理できるようにするために、処理関数 (マッパー) はどこかで何かを検索する必要があります。たとえば、クエリを SQL サーバーに送信したり、グラフ データベースで検索したり、巨大なキー/値ストアでデータを検索したりします。また、各関数は、処理に必要なすべてのデータを保存/キャッシュするために、おそらく大量のメモリを必要とします。
これは Hadoop のやり方に反するものですか、それとも一般的にそのように行われますか? 肝心なのは、処理作業を多数の Hadoop ノードに分散することに加えて、「中央サーバー」(SQL、グラフ データベースなど) を並列化またはアップスケールする方法を見つける必要があるということです。並列 Hadoop ノードからのすべての要求に応答しますね。
並列化されつつある処理が巨大な中央データ ストアでの高速ルックアップに依存している場合、Hadoop の使用に移行する最善の方法は何ですか?