Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> डेटाबेस

Oracle 11g डिस्क I/O अनुकूलन: एक व्यावहारिक अंशांकन गाइड

हर बार जब Oracle® डेटाबेस डिस्क से डेटा पढ़ता या लिखता है, तो डेटाबेस डिस्क इनपुट और आउटपुट (I/O) ऑपरेशन उत्पन्न करता है। कई सॉफ्टवेयर एप्लिकेशन का प्रदर्शन डिस्क I/O द्वारा सीमित होता है, और जो एप्लिकेशन अधिकांश सेंट्रल प्रोसेसिंग यूनिट (CPU) समय I/O गतिविधि के पूरा होने की प्रतीक्षा में बिताते हैं, वे I/O बाउंड होते हैं। I/O अंशांकन इस मुद्दे को संबोधित करने में मदद करता है।

परिचय

एक ठोस I/O सबसिस्टम स्थापित करना एप्लिकेशन के लिए बुनियादी ढांचे के निर्माण का एक अनिवार्य हिस्सा है। यदि I/O स्टैक में किसी भी घटक का थ्रूपुट सीमित है, तो यह I/O प्रवाह में सबसे कमजोर कड़ी बन जाता है। क्योंकि वास्तविक दुनिया के वर्कलोड को आसानी से पुन: प्रस्तुत नहीं किया जा सकता, I/O सबसिस्टम का सत्यापन हमेशा एक कठिन कार्य रहा है।

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

अंशांकन I/O सुविधा DBMS_RESOURCE_MANAGER.CALIBRATE_IO() नामक एक PL/SQL फ़ंक्शन पर आधारित है। जब अंशांकन I/O को लागू किया जाता है, तो यह निम्न विशेषताओं के साथ वर्कलोड उत्पन्न करता है:

  • I/O गहन, रीड-ओनली, रैंडम I/O (db_block_size)
  • बड़े-ब्लॉक (1 MB) अनुक्रमिक I/O वर्कलोड

अंशांकन I/O के परिणामों की निगरानी की जानी चाहिए और अपेक्षित थ्रूपुट दर (I/O सबसिस्टम के अधिकतम समग्र थ्रूपुट) से तुलना की जानी चाहिए। I/O अंशांकन का उपयोग स्टोरेज सबसिस्टम के प्रदर्शन का मूल्यांकन करने और यह निर्धारित करने के लिए किया जा सकता है कि I/O प्रदर्शन समस्याएं डेटाबेस होस्ट या स्टोरेज सबसिस्टम के परिणामस्वरूप होती हैं।

यह ब्लॉग निम्न विषयों को कवर करता है:

  • I/O अंशांकन के लिए पूर्वापेक्षाएँ
  • I/O अंशांकन चलाना
  • अंशांकन विचार

I/O अंशांकन के लिए पूर्वापेक्षाएँ

I/O अंशांकन चलाने से पहले, सुनिश्चित करें कि निम्न आवश्यकताएं पूरी होती हैं:

  • उपयोगकर्ता को SYSDBA विशेषाधिकार दिया जाना चाहिए।
  • TIMED_STATISTICS को TRUE पर सेट किया जाना चाहिए।
  • असिंक्रोनस I/O सक्षम होना चाहिए।

फाइल सिस्टम का उपयोग करते समय, FILESYSTEMIO_OPTIONS इनिशियलाइज़ेशन पैरामीटर को SETALL पर सेट करके असिंक्रोनस I/O सक्षम किया जा सकता है।

सिंक्रोनस I/O के साथ, जब एक I/O अनुरोध ऑपरेटिंग सिस्टम को सबमिट किया जाता है, तो राइट प्रोसेस तब तक अवरुद्ध रहता है जब तक ऑपरेशन पूरा नहीं हो जाता। असिंक्रोनस I/O के साथ, कॉलिंग प्रोसेस अन्य अनुरोधों को अवरुद्ध किए बिना अपना काम जारी रखता है जो अभी भी निष्पादित हो रहे हैं।

निम्न SQL क्वेरी चलाकर सुनिश्चित करें कि डेटा फाइलों के लिए असिंक्रोनस I/O सक्षम है:

COL NAME FORMAT A50
SELECT NAME,ASYNCH_IO FROM V$DATAFILE F,V$IOSTAT_FILE I WHERE F.FILE#=I.FILE_NO AND FILETYPE_NAME='Data File';

निम्न छवि क्वेरी और परिणाम दिखाती है:

Oracle 11g डिस्क I/O अनुकूलन: एक व्यावहारिक अंशांकन गाइड लिस्ट सेल कमांड परिणाम

नोट: एक समय में डेटाबेस इंस्टेंस पर केवल एक अंशांकन किया जा सकता है।

I/O अंशांकन चलाना

Oracle डेटाबेस की I/O अंशांकन सुविधा DBMS_RESOURCE_MANAGER.CALIBRATE_IO प्रक्रिया का उपयोग करके एक्सेस की जाती है। यह प्रक्रिया डेटाबेस फाइलों को एक I/O गहन रीड-ओनली वर्कलोड (1 MB के रैंडम I/O ऑपरेशन से बना) जारी करती है ताकि अधिकतम IOPS (प्रति सेकंड I/O अनुरोध) और MBPS (प्रति सेकंड I/O के मेगाबाइट) निर्धारित किया जा सके जो स्टोरेज सबसिस्टम द्वारा बनाए रखा जा सकता है।

DBMS_RESOURCE_MANAGER.CALIBRATE_IO प्रक्रिया के साथ I/O अंशांकन में निम्न चरण शामिल हैं:

  1. प्रक्रिया सभी डेटाबेस इंस्टेंस से सभी डेटा फाइलों को रैंडम डेटाबेस-ब्लॉक-आकार के रीड (डिफ़ॉल्ट रूप से, 8 KB) जारी करती है। यह चरण आउटपुट पैरामीटर (max_iops) में अधिकतम I/O ऑपरेशन प्रति सेकंड (IOPS) प्रदान करता है जिसे डेटाबेस बनाए रख सकता है। max_iops का मूल्य ऑनलाइन लेनदेन प्रसंस्करण (OLTP) डेटाबेस के लिए एक महत्वपूर्ण मीट्रिक है। आउटपुट पैरामीटर actual_latency इस वर्कलोड के लिए औसत विलंबता प्रदान करता है। आप इनपुट पैरामीटर max_latency के साथ आवश्यक विशिष्ट लक्ष्य विलंबता निर्दिष्ट कर सकते हैं, जो डेटाबेस-ब्लॉक-आकार के I/O अनुरोधों के लिए मिलीसेकंड में अधिकतम सहनशील विलंबता निर्दिष्ट करता है।

  2. प्रक्रिया सभी डेटाबेस इंस्टेंस से सभी डेटा फाइलों को रैंडम 1 MB रीड जारी करती है। यह चरण आउटपुट पैरामीटर max_mbps देता है, जो प्रति सेकंड I/O के अधिकतम मेगाबाइट (MBPS) को निर्दिष्ट करता है जिसे डेटाबेस बनाए रख सकता है। यह डेटा वेयरहाउस के लिए एक महत्वपूर्ण मीट्रिक है।

यदि उपयोगकर्ता num_physical_disks इनपुट पैरामीटर प्रदान करता है, जो डेटाबेस स्टोरेज सिस्टम में भौतिक डिस्क की अनुमानित संख्या निर्दिष्ट करता है, तो अंशांकन अधिक कुशलता से चलता है।

I/O वर्कलोड चलाने के ओवरहेड के कारण, I/O अंशांकन केवल तब किया जाना चाहिए जब डेटाबेस निष्क्रिय हो, या ऑफ-पीक घंटों के दौरान, ताकि सामान्य डेटाबेस वर्कलोड पर I/O अंशांकन वर्कलोड के प्रभाव को कम किया जा सके।

निम्न छवि DBMS_RESOURCE_MANAGER.CALIBRATE_IO प्रक्रिया से आउटपुट दिखाती है:

Oracle 11g डिस्क I/O अनुकूलन: एक व्यावहारिक अंशांकन गाइड लिस्ट सेल कमांड परिणाम

अंशांकन विचार

I/O अंशांकन चलाने से पहले, निम्नलिखित विचारों के बारे में सोचें:

  • उन डेटाबेस पर एक समय में केवल एक अंशांकन चलाएं जो समान स्टोरेज सबसिस्टम का उपयोग करते हैं। यदि आप एक ही स्टोरेज सबसिस्टम का उपयोग करने वाले अलग-अलग डेटाबेस पर अंशांकन को एक साथ चलाते हैं, तो अंशांकन विफल हो जाता है।
  • इंस्टेंस पर I/O को कम करने के लिए डेटाबेस को शांत करें।
  • Oracle Real Application Clusters (RAC) कॉन्फ़िगरेशन के लिए, सुनिश्चित करें कि सभी इंस्टेंस नोड्स में स्टोरेज सबसिस्टम को अंशांकित करने के लिए खुले हैं।
  • Oracle RAC डेटाबेस के लिए, वर्कलोड सभी इंस्टेंस से एक साथ उत्पन्न होता है।
  • num_physical_disks इनपुट पैरामीटर वैकल्पिक है। इस पैरामीटर को डेटाबेस के स्टोरेज सिस्टम में भौतिक डिस्क की अनुमानित संख्या पर सेट करके, अंशांकन दोनों तेज और अधिक सटीक होता है।

I/O अंशांकन प्रक्रिया के दौरान किसी भी समय, आप V$IO_CALIBRATION_STATUS व्यू में अंशांकन स्थिति को क्वेरी कर सकते हैं। I/O अंशांकन सफलतापूर्वक पूरा होने के बाद, DBA_RSRC_IO_CALIBRATE टेबल में परिणाम देखें, निम्न उदाहरण के समान:

कॉलम मान
START_TIME 31-AUG-17 04.40.09.920679 AM
END_TIME 31-AUG-17 04.47.41.210939 AM
MAX_IOPS 39
MAX_MBPS 60
MAX_PMBPS 69
LATENCY 24
NUM_PHYSICAL_DISKS 1

निष्कर्ष

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


  1. Google I/O 2019 हाइलाइट्स: प्रमुख घोषणाएं और अंतर्दृष्टि Google I/O 2019 हाइलाइट्स: प्रमुख घोषणाएं और अंतर्दृष्टि

    Google I/O (इनोवेशन इन द ओपन) दुनिया के लिए बहुत सी अद्भुत चीजें और खबरें लेकर आया। यह कार्यक्रम 7 मई को शुरू हुआ और 9 मई, 2019 को कैलिफोर्निया के माउंटेन व्यू में शोरलाइन एम्फीथिएटर में समाप्त हुआ। Google पर हमेशा उपयोगकर्ताओं के डेटा का उपयोग विज्ञापनों को सुव्यवस्थित करने और अपने ऐप्स की बेहतर का

  1. विंडोज 10 पर एक्सटर्नल हार्ड ड्राइव I/O त्रुटियों को मिनटों में हल करें विंडोज 10 पर एक्सटर्नल हार्ड ड्राइव I/O त्रुटियों को मिनटों में हल करें

    विंडोज 10 पर एक्सटर्नल हार्ड डिस्क त्रुटि में फंसे हैं? क्या आप डिस्क ड्राइव और उसके संग्रहीत डेटा तक पहुंचने में असमर्थ हैं? आप एक्सटर्नल हार्ड ड्राइव पर संग्रहीत सभी फ़ाइलों और डेटा को खोने का जोखिम नहीं उठा सकते, है ना? चिंता न करें! कुछ समाधानों का पालन करके, आप सरल समस्या निवारण चरणों के माध्यम

  1. Google I/O 2018: माउंटेन व्यू में AI नवाचारों का अनावरण Google I/O 2018: माउंटेन व्यू में AI नवाचारों का अनावरण

    Google I/O सबसे प्रतीक्षित डेवलपर सम्मेलनों में से एक है जो हर साल आयोजित किया जाता है। इस वर्ष, सम्मेलन 8 मई से 11 मई तक माउंटेन व्यू, कैलिफोर्निया में आयोजित किया गया था। हर कोई AI को अपना रहा है, इसलिए Google का इसमें आत्मसात होना स्वाभाविक है। ऐसा लगता है कि Google AI केंद्रित उत्पादों और ऐप्स क