2013-05-24 4 views
10

HBaseのRESTとThriftに関するStackOverflowの投稿がいくつかあることは知っていますが、パフォーマンスの問題に少し集中したいと思います。いくつかの後https://github.com/apache/thrift/tree/trunk/lib/nodejs HBase:Thrift vs Restパフォーマンス

  • ノードのHBase:https://github.com/wdavidw/node-hbase
  • ノード-倹約私はHBaseのインスタンスに接続するにはNode.jsの中に次のライブラリで遊んでてきた

    私がThriftゲートウェイからの応答を得られない理由を理解することに問題があったので、最終的に両方のスクリプトを実行して、次の結果を得ました(各出力は1000 opsに相当)。

    使用の
    ┌─[[email protected]]─[~/Sources/node-hbase] 
    └──╼ node hbase.js 
    hbase-write: 99ms 
    hbase-write: 3412ms 
    hbase-write: 3854ms 
    hbase-write: 3924ms 
    hbase-write: 3808ms 
    hbase-write: 9035ms 
    hbase-read: 216ms 
    hbase-read: 4676ms 
    hbase-read: 3908ms 
    hbase-read: 3498ms 
    hbase-read: 4139ms 
    hbase-read: 3781ms 
    completed 
    ┌─[[email protected]]─[~/Sources/node-hbase] 
    └──╼ node thrift.js 
    hbase-write: 4ms 
    hbase-write: 931ms 
    hbase-write: 1061ms 
    hbase-write: 988ms 
    hbase-write: 839ms 
    hbase-write: 807ms 
    hbase-read: 2ms 
    hbase-read: 435ms 
    hbase-read: 562ms 
    hbase-read: 414ms 
    hbase-read: 427ms 
    hbase-read: 423ms 
    completed 
    ┌─[[email protected]]─[~/Sources/node-hbase] 
    └──╼ 
    

    スクリプトは、ここで見つけることができます:https://github.com/stelcheck/node-hbase-vs-thrift

    私の質問は、誰もが(任意のアプリケーション/言語のため、あるいは単に一般的に)HBaseのためのRESTと倹約の違いの同じ大きさに気づいていますか?

+0

http://stackoverflow.com/questions/11025901/is-there-any-performance-benchmark-for-thrift-on-hbaseにリンクされているベンチマークによると、Thriftは確かに非常に高速ですが、RESTはどうですか?結局のところ、それほど大きな違いはないはずです... –

答えて

5

RESTはスキーマがデータ自体に存在するようにXMLまたはJSONのいずれかとして提供します。 Thriftはこれをしません。それは、(IDL定義に基づいて)生成されたエンティティに対してのみ逆シリアル化できるバイトの負荷です。

データがどのように圧縮されているかにかかわらず、2進データを解釈するために他のオブジェクトに依存するという「コスト」で、スキーマはスキーマを持たないため高速にバインドされます。

+0

違いのいくつかを説明する必要がありますが、確かにそのすべてではありませんか?さらに、ログの頻度を1000回から100回に減らすと、それはしばらくの間、速くなることがわかります。その後、待ちます。基本的に、200〜300回のリクエストが発生します。 –

2

あなたは、このいずれかを試してみたいことがあります。https://github.com/alibaba/node-hbase-client

それは地域サーバ&飼育係に直接接続します。

+0

かなり素晴らしいですね!確かに、私は最後にスリフトまたはRESTを使用する必要はありません。 –

+0

Dnode? https://github.com/substack/dnode – xrDDDD

関連する問題