के साथ स्ट्रीम करें मैं PostgreSQL अनुकूलन के साथ काफी नौसिखिया हूं और इसके लिए जो कुछ भी उचित काम कर रहा हूं और जो कुछ भी नहीं है। इसलिए, मैं जानना चाहता हूं कि जब भी मैं अनुचित नौकरी के लिए PostgreSQL का उपयोग करने की कोशिश कर रहा हूं, या यह इसके लिए उपयुक्त है और मुझे सब कुछ ठीक से सेट करना चाहिए।कई अद्यतनों और PostgreSQL
वैसे भी, मुझे बहुत सारे डेटा वाले डेटाबेस की आवश्यकता है जो अक्सर बदलती है।
उदाहरण के लिए, एक आईएसपी की कल्पना करें, जिसमें बहुत से ग्राहक हैं, प्रत्येक में एक सत्र (पीपीपी/वीपीएन/जो भी हो) है, दो स्व-वर्णन करने वाले अक्सर अद्यतन गुण bytes_received
और bytes_sent
के साथ। जहां प्रत्येक सत्र अद्वितीय ID के साथ एक पंक्ति का प्रतिनिधित्व करती है उन लोगों के साथ एक मेज, नहीं है:
CREATE TABLE sessions(
id BIGSERIAL NOT NULL,
username CHARACTER VARYING(32) NOT NULL,
some_connection_data BYTEA NOT NULL,
bytes_received BIGINT NOT NULL,
bytes_sent BIGINT NOT NULL,
CONSTRAINT sessions_pkey PRIMARY KEY (id)
)
और के रूप में लेखांकन डेटा बहती है, इस तालिका उन जैसे बहुत-से अपडेट प्राप्त करता है:
-- There are *lots* of such queries!
UPDATE sessions SET bytes_received = bytes_received + 53554,
bytes_sent = bytes_sent + 30676
WHERE id = 42
जब हमें कई बार (जैसे हजारों) सत्रों के साथ बहुत सारे टेबल (जैसे 1-2 हजार सेकेंड) के अपडेट के साथ कभी खत्म नहीं होता है, शायद एमवीसीसी के लिए धन्यवाद, इससे पोस्टग्रेएसक्यूएल बहुत व्यस्त हो जाता है। क्या सब कुछ तेज करने के लिए कोई तरीका हैं, या पोस्टग्रेस इस कार्य के लिए बिल्कुल उपयुक्त नहीं है और मैं बेहतर ढंग से इस कार्य के लिए अनुपयुक्त मानता हूं और उन काउंटरों को मेमकैचब जैसे अन्य स्टोरेज में डालता हूं, केवल पोस्टग्रेज़ का उपयोग केवल स्थिर डेटा के लिए करता हूं? लेकिन मुझे इस डेटा पर बार-बार पूछताछ करने की क्षमता याद आती है, उदाहरण के लिए TOP10 डाउनलोडर्स ढूंढने के लिए, जो वास्तव में अच्छा नहीं है।
दुर्भाग्यवश, डेटा की मात्रा अधिक कम नहीं हो सकती है। आईएसपी लेखांकन उदाहरण सभी स्पष्टीकरण को सरल बनाने के लिए सोचा जाता है। असली समस्या किसी अन्य प्रणाली के साथ है, जो संरचना को समझाने के लिए कठिन है।
सुझावों के लिए धन्यवाद!