Can any one suggest me strategies while splitting HBASE table. I have data range starts from [a-z].
我把它分成了{“e”,“j”,“o”,“u”}。这会是有效的方式。
答案 0 :(得分:0)
您如何分割数据?
拆分表时,需要避免热点。例如,可以通过腌制来防止这种情况。如果您的行均匀分布,那么您的拆分就可以了。
但如果您不控制数据,最好将salting应用于行键。
给您举例如果你有这样的行:
foo001
foo002
foo003
foo004
然后你的所有行将进入相同的分割,这将导致热点。
如果您在行的开头添加一个随机字符串,例如“e”,“j”,“o”或“u”,那么正在进行腌制非常重要,那么您将均匀地分发数据
e-foo002
u-foo003
您的数据将更均匀地分布。你可以应用随机或决定论腌制,这取决于你,但一个决定论者更好,因为随机可能会导致腌制的棘手问题。
作为(非常)快速的结论:如果你有均匀分布的数据,你的分裂很好,否则最好应用salting
编辑:在SO的文档中解释这个可能是个好主意。