我需要在Hbase中設計一個索引表。例如,我的主表是這樣的:如何設計hbase索引表?
Person
row key: uuid --> name and address columns
我需要創建一個索引Person_Name_Index表,地圖名稱與人的關鍵。我的索引表的樣子:
Person_Name_Index
row key: name --> person row key
什麼是插入多個人行鍵在Person_Name_Index行密鑰名稱的有效途徑?我可以將所有人行鍵設爲單個值,但是如果我需要將另一個人行鍵添加到名稱。我必須閱讀所有這些,然後添加一個新的項目。如果我將每個人行鍵都放在單獨的列中,我需要確保名稱是唯一的。我不知道如何做到這一點,而不使用uuid類型的字符串,這使得我的表格也很大。任何想法或建議?
感謝,
的所有人您可能是在做錯事,我不明白Person_Name_Index表的目標。你爲什麼想要用人行鍵映射名字?在Hbase中,你應該對數據進行非規範化處理。如果您沒有對數據進行非規範化處理,則基本上最終會得到與RDBMS相同的實現。我不知道你的用例,但它可能有一個解決方案,所有這些數據將在同一個表中 –
我想找到給定名稱的所有用戶。我可以掃描我的人員表,但是通過索引表掃描會更高效,不是嗎? –
你的人桌用例是什麼?您應該將名稱作爲人員表的行鍵,並將所有地址放在單個列家族中 –