こんにちはを照会するために、のHadoop(+ HBaseの/ HDFS) - 独立した、構造化データのロードが処理され、</strong> SO <strong>であっ
私から次のいくつかのアイデア/コメントをしたいと思いますあなたは名誉ある尊敬の房です。
私は処理する必要がある100Mのレコードを持っています。私はこれを行うために5つのノードを(岩石群内に)持っています。データは非常に構造化されており、リレーショナルデータモデルにはうまく収まりません。私は処理に時間がかかるので、並行してやりたい
私はそれを見ると、私は、主に2つのオプションがあります。
する各ノード上でMySQLをインストールし、それぞれに20Mレコードを入れています。ヘッドノードを使用して、ノードにクエリを委任し、結果を集約します。 クエリ機能++でも、私はパーティショニング戦略などを選択するときに頭痛に冒される可能性があります(Q.これはmysql/postgresクラスタと呼ばれていますか?)。本当に悪い点は、レコードの処理が今私に任せられていることです(マシン間での配布方法など)。
また、Hadoop、Hive、HBaseをインストールしてください。 HBaseは列指向であるため、データを格納する最も効率的な方法です)、ノードを定義するだけです。私たちはMapReduceのパラダイムにすべてを書いています。私たちはいつまでも幸せに生きています。ここで問題となるのは、「リアルタイム」クエリ機能が失われていることです(ハイブを使用できることはわかっていますが、これはリアルタイムクエリに対しては推奨されません)ワインからcolor = 'brown'を選択してください。
理論上、もし私が100Mのマシンを持っていたら、各レコードに対して処理が他のものと独立しているので、即座に全てを行うことができました。また、私のデータは読み取り専用です。私は更新が起こっているとは考えていません。私は1つのノードに100Mのレコードを必要としません。 mysql/postgresとHadoop/HBase/HDFSの両方に保存するので、冗長なデータが存在することは望ましくありません。本当の選択肢ではありません。
多くのおかげ
私の友人は私にこのようなものを投稿しました:http://www.cloudera.com/blog/2009/03/database-access-with-hadoop/それは正しい方向への小さな一歩ですが、私はデザインについてのあなたの意見を聞きたいのですが、どうすればいいのですか... – MalteseUnderdog