मुरमुर गैर-क्रिप्टोग्राफिक उपयोग के लिए उपयुक्त सामान्य प्रयोजन के हैशिंग कार्यों का एक परिवार है। जैसा कि ऑस्टिन एप्पलबी ने कहा है, मुरमुरहैश निम्नलिखित लाभ प्रदान करता है:
- सरल (सृजित असेंबली निर्देशों की संख्या के संदर्भ में)।
- अच्छा वितरण (व्यावहारिक रूप से सभी कीसेट और बकेट साइज के लिए ची-स्क्वायर टेस्ट पास करना।
- अच्छा हिमस्खलन व्यवहार (0.5% का अधिकतम पूर्वाग्रह)।
- अच्छा टक्कर प्रतिरोध (बॉब जेनकिन के मेंढक.सी यातना-परीक्षण पास करता है। 4-बाइट कुंजियों के लिए कोई टकराव संभव नहीं है, कोई छोटा (1- से 7-बिट) अंतर नहीं है)।
- इंटेल/एएमडी हार्डवेयर पर शानदार प्रदर्शन, हैश गुणवत्ता और सीपीयू खपत के बीच अच्छा ट्रेडऑफ़।
आप निश्चित रूप से इसे यूयूआईडी हैश करने के लिए उपयोग कर सकते हैं (किसी भी अन्य उन्नत हैशिंग फ़ंक्शंस की तरह:सिटीहैश, जेनकींस, पॉल हसीह, आदि ...) अब, एक रेडिस बिटसेट 4 जीबी बिट्स (512 एमबी) तक सीमित है। तो आपको 128 बिट डेटा (यूयूआईडी) को 32 बिट्स (हैशेड वैल्यू) तक कम करने की आवश्यकता है। हैशिंग फ़ंक्शन की गुणवत्ता जो भी हो, टकराव होगा।
मुरमुर जैसे इंजीनियर हैश फ़ंक्शन का उपयोग करना वितरण की गुणवत्ता को अधिकतम करेगा, और टकरावों की संख्या को कम करेगा, लेकिन यह कोई अन्य गारंटी नहीं देता है।
सामान्य प्रयोजन हैश फ़ंक्शन की गुणवत्ता की तुलना करने वाले कुछ लिंक यहां दिए गए हैं:
http://www.azillionmonkeys.com/qed/hash.html
http://www.strchr.com/hash_functions
<स्ट्राइक>http://blog.aggregateknowledge.com/2011/12/05/choosing-a-good-hash-function-part-1/
<स्ट्राइक>http://blog.aggregateknowledge.com/2011/12/29/choosing-a-good-hash-function-part-2/
<स्ट्राइक>http://blog.aggregateknowledge.com/2012/02/02/choosing-a-good-hash-function-part-3/