2016-05-10 2 views
1

現在、私はSolrの中でIPマッピングデータを格納していますし、それは多少このようなものだ:(文書)HBaseで範囲データを保存およびクエリする方法は?

IP-から IPと国

これは、単一のレコードを形成して、私のようにIPを取得すると入力、それが属している地域(国)を見つけるためにSolrに問い合わせる。クエリはまっすぐ進む - ip> = ipFromとip < = ipToです。応答時間はかなり低い(良い)が、依然として我々の要求を満たしていない。このデータは非常に膨大なメモリにキャッシュできません。

したがって、私はこのタイプのデータに他のストレージを使用することを考えていました。 HBaseは適していますか?そうであれば、そのようなタイプのデータを保存してクエリする理想的な方法は何でしょうか?

任意のポインタ/ヘルプは高く評価されます。ありがとう。

+0

データのサイズは? – Whitefret

+0

約200万件のエントリ。 –

+1

は私にとって巨大ではないようですが、Ip-fromとIp-Toは最大64ビット(IPv6)で、国は約15文字と想像してください。これは、エントリーごとに約143バイトを意味します。これは、286 MBのデータを意味します。 – Whitefret

答えて

3

私の理解:あなたはIp(fromかtoのどちらか)を渡したいと思うので、それに特有の国や地域を検索したいと思っています。

はい。 Hbaseをデータストアとして使用する場合は、Hbaseにストアデータを格納し、filtersを使用してクエリを実行します。

私の経験では、Solrの検索はHbaseよりも高速で、NRTやバッチインデクサー(CDHを使用している場合)や他のツールを使用してHbaseデータを索引付けすることができます。

さらに詳しくは、Whitefretは懸念を引き起こしました(これは私にとっては論理的です)。 ipfromiptoおよびと一緒に、あなたがsolrに何かを保存すると、hbaseはあなたのために働くことができます。さもなければ、Hbaseのような中間記憶装置の必要はなく、あなたのsolr構成を再訪する必要があります。

+0

はい、別のソルを試してみたり、ロードすることがあります(もちろん、保存後それはファイル内にあります)そのデータをHDFSからメモリに直接送ります。結果とともに更新されます。 –

+0

あなたが大丈夫なら、「オーナーが受け入れました」という投票をお願いします。そのため、他のユーザーへのポインタ。 –

+0

最後にSolrに保存されました。ありがとうございます。 –

関連する問題