उन उपयोगकर्ताओं के लिए एक मंच के लिए अपने मूल्यों को संग्रहीत करना जिन्होंने अभी तक विषय नहीं पढ़ा है (जो एक बुरा विचार है) स्केलेबल नहीं होगा। इसे दूसरे तरीके से करें यदि आपको वास्तव में करना है, क्योंकि आपके पास अपने डेटाबेस के प्रत्येक विषय में प्रविष्टियां जोड़ने से संबंधित समस्याएं भी होंगी एक नए उपयोगकर्ता साइनअप पर।
एक संबंधपरक तालिका को छोड़ने के बजाय, इसे निम्नानुसार करने का प्रयास करें:
Table: topics
+----+-------+------+-----
| id | title | body | ...
+----+-------+------+-----
| 1 | xyz | .... | ...
Table: replies
+----+-------+------+-----
| id | title | body | ...
+----+-------+------+-----
| 3 | xyz | .... | ...
Table: read_topics
+---------+----------+
| user_id | topic_id |
+---------+----------+
| 2 | 1 |
आपका दृष्टिकोण, जबकि संभव है (और कल्पना करना आसान है) जब आपके पास भारी मात्रा में उपयोगकर्ता होते हैं, और स्केलेबिलिटी वह होती है जिसे आपने टिप्पणियों में बताया था। यहां एक और समस्या यह है कि आपके दृष्टिकोण के साथ, आपके पास विशाल . है प्रदर्शन दंड क्योंकि आपको डेटाबेस से डेटा खींचना है, इसे विभाजित करना है, और फिर एक और लेनदेन करने से पहले हेरफेर और पुन:संयोजन करना है। आपको तालिका को एक ही समय में दो CGI थ्रेड द्वारा लिखे जाने के साथ भी समस्याएं हैं . इसके साथ मज़े करो...
आप डेटा हेरफेर, सॉर्टिंग, डेटा संबंधों और भंडारण के लिए एक उपकरण का उपयोग कर रहे हैं, इसलिए इसका उपयोग उन सभी के लिए करें, न कि केवल जानकारी के लिए डंपिंग ग्राउंड के रूप में।