對於按主題劃分RDF三元組,我使用主題的String.hashCode()並將三元組放在相應的分區中。目標是能夠處理內存中的分區文件(處理大文件可能不可行)。如何根據主題在Java中對RDF三元組進行分區
現在爲了有有限的分區數量,我做了以下工作。假設我們希望有10個分區,走出了一條大RDF文件:
String subject;
partitionFileName = subject.hashCode/(Integer.MAX_VALUE/10)
因此所有使用相同的科目三元將在一個分區和整體,我們將有10個分區。
現在的問題是,當三元組有不同的分佈時,它可能會導致非常大或非常小的分區,這是不希望的。
有沒有人有任何建議?
預先感謝您。
'subject.hashCode()%10'? – Kenney
Esoteric的答案很好,但是這裏有一個很好的解讀:https:// github。com/gholt/ring/blob/master/BASIC_HASH_RING.md – Michael