2012-08-22 32 views
0

我們在生產中的hbase模式有5個表格。我們有N個客戶,其中只有10%的客戶在任何特定時刻都處於活動狀態。對我來說,看起來像浪費資源來保持剩餘90%的客戶端的數據處於活動狀態。我正在考慮爲每個客戶端創建5個表,以便我可以保持活動客戶端的表已啓用,並禁用其餘客戶端的表。從我讀過的內容來看,如果我們每個區域服務器超過1000個區域,那麼性能開始下降。但我肯定不會達到這個限度。我的問題對hbase表格數量的限制及其對性能的影響

  1. 如果我禁用一組表格,那麼這是否意味着我減輕了對hbase的負擔?
  2. 這是否看起來像一個完整的戰略?

回答

0

你有什麼表現預期?

你會如何確定哪些客戶端是主動/不可行的?

如何禁用不活動客戶端的未使用表?

那麼讀取的訪問模式是什麼?你的客戶只能在單個表中讀取數據嗎?

處理大量的表導致幾個問題:

  • 多個區域,如表1中包含最不-at 1區,即使沒有數據。 HBase的必須處理更積極StoreFiles等
  • 更多的memstore:定期,但只有當他們到達配置的閾值(即內存使用),因爲沒有刷新到磁盤(HFILE)。
+0

客戶我的意思是客戶。我將事先知道哪些客戶將訪問我的應用以及他們何時訪問它。這可以幫助我通過Java或簡單的情況禁用表,我可以手動執行。讀取的訪問模式是客戶端將從其各自的5個表中獲得數據。禁用表可以減少hbase的資源需求(如堆等)嗎? – user1383817

+0

我想你提到的兩個問題只有在我保持這些表格激活時纔會出現。如果我知道在接下來的兩個月內不會訪問一組表格,那麼我可以禁用這些表格並節省一些資源嗎? – user1383817