2013-03-04 8 views
14

क्या डेटाप्रकार फेसबुक दुकान userid करने के लिए उपयोग करता है, क्या इस तरह के क्षेत्र के प्रदर्शन और scalability परिप्रेक्ष्य के लिए है कि सबसे अच्छा डेटा प्रकार होना चाहिए।क्या फेसबुक उपयोगकर्ता आईडी की डेटाप्रकार है

एक तो पूर्णांक 4 बाइट का उपयोग करता है मैं इसे, काफी बड़ा नहीं है अगर 8 बाइट्स int प्रत्येक उपयोगकर्ता या स्ट्रिंग के लिए एक ही करने के लिए यादृच्छिक संख्या आवंटित करने के लिए तो कैसे लगता है।

तो सबसे अच्छा तरीका है उपयोगकर्ता ठीक लंबाई के एक यादृच्छिक आईडी, मन में scalability और प्रदर्शन रखने देने के लिए क्या है?

उत्तर

11

अच्छा सवाल। फेसबुक आईडी समस्याएं और ट्वीट आईडी के कारण हो सकती है। दोनों 32 बिट पूर्णांक सीमा से अधिक है। प्रोग्रामिंग भाषा विनिर्देशों और उद्देश्य (जैसे डेटाबेस, कोड इत्यादि) के आधार पर आप फ्लोट या डबल का उपयोग करना चाहेंगे लेकिन मेरे अनुभव में उन्हें स्ट्रिंग में कास्टिंग करना संतोषजनक है।

MySQL में, के रूप में चिह्नित है, बशर्ते BIGINT डेटा प्रकार है, जो काफी बड़ी संख्या के रूप में इन आईडी स्टोर करने के लिए है। मुश्किल हिस्सा तब होता है जब आप इन मानों को पढ़ते हैं और उन्हें अपने प्रोग्राम कोड में संसाधित करते हैं। जो सिस्टम आर्किटेक्चर/प्रोग्रामिंग भाषा द्वारा अधिकतम अधिकतम से अधिक हैं, वे त्रुटियों या छंटनी का कारण बनेंगे जिससे असंगतता हो सकती है।

आप MySQL में निश्चित लंबाई बड़ी आईडी का उपयोग करना चाहते हैं, एक अच्छा अभ्यास उदा के लिए CHAR प्रकार और हेक्स प्रारूप का उपयोग करने के लिए है या आप UUID प्रारूप का उपयोग कर सकते हैं।

8

MySQL डेटाबेस तालिका में फेसबुक उपयोगकर्ता आईडी स्टोर करने के लिए बिगिनट (64) का उपयोग करें।
ये रहा: https://developers.facebook.com/blog/post/45/

संबंधित मुद्दे