0

当社の製品適用シナリオは次のとおりです。

  1. ストア情報。
  2. カウント使用数は約8000万。
  3. ユーザーには多くのプロパティがあり、約 100 万件あります。プロパティには、Date、Boolean、Long、Int ....、または Null など、さまざまなタイプがあります。

これらの情報に対して行うことは次のとおりです。

  1. 1人のユーザーの情報(サーバープロパティ)を取得</li>
  2. コンピューティング プロパティからユーザーを選択します。たとえば、次のユーザーを検索します。propertyA>10 && propertyB=true &&...

今使っているのはHbaseみたいな列幅の広いテーブルですが、ちょっと合わないかなと思います。1 人または複数のユーザーの情報を取得すると、タイムアウトが発生することが多いため、途中でキャッシュを配置しますが、すべての情報をキャッシュに格納することはできず、タイムアウトが発生します。データが大きすぎて hbase を使用できないため、おそらく hbase は最良のチャンスではないと思います。mysql を選択した場合は?

私たちの問題を解決するには?

4

1 に答える 1

0

結論を出す前に分析する必要があることがいくつかあります。そのいくつかは次のとおりです。

  1. データのサイズは?いいえ、レコード数に関してではなく、データファイルのサイズに関してですか?
  2. 使用している HBase インストールの種類は何ですか? スタンドアロンですか、それともクラスタ化されていますか?
  3. HBase からの get/scan の呼び出しがタイムアウトになっていますか?

IMO、HBase が良好なパフォーマンス結果をもたらさない場合でも、パフォーマンスが低下することはありません。しかし、はい、NoSQL データベースの実際の使用は、データが増加しているクラスター化された環境で行われます。

mysql やその他の RDBMS を使用する場合は、データベース クラスター、テーブルのシャーディング、負荷分散、およびアプリケーション レベルでのキャッシュの実装について考える必要があります。

全体として、HBase のインストールを確認し、アプリケーションに合わせて調整する必要があると思います。

于 2013-03-28T07:37:33.467 に答える