私は大きなデータスペースで非常に新しいです。hbaseを選択する前に考慮すべき点は?
高性能のためにRDBMSの代わりにhbaseを使用するチームから提案がありました。 RDMSをhbaseに切り替える前に、何を考慮する必要があるか、何を考慮する必要があるかわからない。何か案は?
私は大きなデータスペースで非常に新しいです。hbaseを選択する前に考慮すべき点は?
高性能のためにRDBMSの代わりにhbaseを使用するチームから提案がありました。 RDMSをhbaseに切り替える前に、何を考慮する必要があるか、何を考慮する必要があるかわからない。何か案は?
One of my favourite book describes..
@ホワイトフレットの最後のポイント:CAP theormと呼ばれるものがありますが、それに基づいて決定することができます。
一貫
可用性
分割耐性を((すべての要求は、それが成功したか失敗したかどうかについての応答を受け取る)(すべてのノードが同時に同じデータを参照してください)システムは、ネットワーク障害のために任意のパーティショニングにもかかわらず動作し続ける)。
ただし、RDBMSをHBASEに切り替えるにはSQOOPを使用できます。
これは難しい質問です。考慮すべき点がたくさんあります。
を使用してRDBMSモデルを持っていることが一般的に悪い考えであり、あなたがあなたのチームかを尋ねる、NoSQLのはドリルだと思います彼らはそれについて感じる。 NoSQLデータベースには、SQL世界で決して会わない問題があります。彼らは最初にプロトタイプを構築して、どのようにこのすべてがうまくいくかを理解し、それらのためにいくつかのトレーニングを利用できるようにする必要があります。要約すると
:
- あなたは非リレーショナルデータベース
が必要な場合は検索 - 右1(HBaseのが本当に何が必要?なぜカサンドラやMongoDBのを考慮していない?)
HBaseのようにすべてNoSQL DBには素晴らしい新機能が付いていますが、残念ながら何も無料ではありません(お金のコストは言及していません)。
HBaseでは、実行する可能性があるすべてのクエリをHBaseデータモデルで完全に満たすことができるかどうかを確認する必要があります。考慮すべき重要なことは、スキーマの設計(最も重要なのは、ロウキーのモデル化です)です。あなたがこれは本当に良い論文を読むため Iのアドバイス:
は、私はあなたの質問には本当に良い答えはHBaseの公式サイト上で見つけることができると思います。
「HBaseのは、すべての問題には適していません。
まず、あなたは十分なデータを持っていることを確認してください。あなたは数百万行または数千億を持っている場合は、HBaseのが良い候補である。あなたが唯一持っている場合従来のRDBMSを使用する方がよいでしょう。は、すべてのデータが1つのノード(または2つ)に集中し、残りのクラスタがアイドル状態になることがあるためです。
第2に、は、RDBMSが提供する余分な機能(例:型付き列、2次索引、トランザクション、adva ncedクエリ言語など) RDBMSに対して構築されたアプリケーションは、単にJDBCドライバを変更するだけで、HBaseに「移植」することはできません。ポートではなく、RDBMSからHBaseへの移行を検討してください。
第3に、十分なハードウェアがあることを確認します。 HDFSでさえ、DataNodeが5つ以下(HDFSブロックの複製(デフォルトは3)など)で、NameNodeよりも優れています。
HBaseは、ラップトップでスタンドアロンで実行することができますが、これは開発構成とみなしてください。 "