Monday, 6 November 2017

ओरेकल xmltype की दुकान के रूप में द्विआधारी विकल्प


मैं अपने कुछ डेटाबेस डेटाबेस तालिका में XMLType स्तंभ का उपयोग कर रहा हूँ इससे पहले (11.2.0.2 में) माना जाता है कि डिफ़ॉल्ट भंडारण प्रकार CLOB है। इसलिए यदि आप XMLType कॉलम के लिए एक क्वेरी जारी करते हैं, तो मैं XML स्ट्रिंग के रूप में कॉलम की सामग्री देख सकता हूँ। लेकिन जब मैं सभी तालिकाओं को ड्रॉप और पुन: बनाएँ और कुछ डेटा डाला, तो मैं XMLType कॉलम की सामग्री प्राप्त नहीं कर सका। यह cloumn मूल्य में XMLType को सरल रूप से प्रदर्शित करता है मुझे संदेह है कि क्या भंडारण प्रकार को BINARY XML में चिपकाया जाता है, तो मैं निम्नलिखित परिवर्तन कथन जारी करता हूं: कृपया ध्यान दें कि तालिका में मौजूद कुछ डेटा मौजूद हैं। जब मैं एक पंक्ति को हटा देता हूं और सम्मिलित करता हूं, तो सामग्री XMLType के रूप में दिख रही है मैं SQL डेवलपर UI उपकरण का उपयोग कर रहा हूँ क्या कोई भी इस मुद्दे को ठीक करने का एक तरीका सुझा सकता है ठीक है, अब हमने तय किया है कि हम XMLType स्तंभ सामग्री को सुरक्षित रूप से FILE BINARY XML के रूप में संग्रहीत करेंगे। तो हमारे पास तालिका है: XMLType colum को SYS. XMLType के रूप में SQL डेवलपर में प्रदर्शित किया गया है। तो बाइनरी एक्सएमएल का चयन कैसे करें x. ID, x. vid, x. details. getCLOBVal () से XMYTYPETESTx जहां x. ID100000 ऊपर दिए प्रश्न मेरे लिए आखिरकार काम करता है। ओरेकल दस्तावेज़ीकरण का दावा है कि यह XMLType को और अधिक भंडारित करता है सीओएलएबी की तुलना में मूलभूत XML के रूप में कॉम्पैक्ट लेकिन मुझे कैसे पता चलेगा कि बाइनरी एक्सएमएल द्वारा कितना स्थान लिया जाता है, तो बनाम किसी प्रकार के संकेतक या LOB लोकेटर का आकार लगता है, और getclobval पाठ में द्विआधारी XML को अनपैक करता है। लेकिन बाइनरी एक्सएमएल के भंडारण के आकार के बारे में ही कृपया मदद करें, टेबल आकार 340 जीबी है, इसलिए भंडारण विकल्पों की तलाश में इसके लायक है। जुलाई 15 14 से 17:41 पूछा अच्छा, एक सेगमेंट को एक पंक्ति के साथ कुछ भी नहीं करना है जैसे कि एक खंड या तो एक टेबल, टेबल विभाजन, सूचकांक, LOB है। महत्वपूर्ण बात यह है कि इसके भीतर 4K से अधिक स्टोर करना है, ताकि आपके लॉब को जवाहरण ​​के लिए संग्रहित किया जा सके, जिसका अर्थ है कि पंक्ति के वास्तविक डाटाबेस ब्लॉक के भीतर ही है, लेकिन एक कोट लाइन लाइन लॉब सेगमेंट में जमा है। ndash gvenzl जुलाई 22 14 13:00 प्रतिनिधि मुद्दे, जिनकी टिप्पणियों को आप टिप्पणी के रूप में समझना चाहते थे, उनको पोस्ट करने की अनुमति नहीं दी गई। एकमात्र समानता भंडारण अंतरिक्ष मुद्दा है, यह अनुमान अनुमान के लिए सहायक हो सकता है। आपने यह नहीं बताया कि किस प्रकार के डेटा को आप बीएक्सएमएल के रूप में स्टोर करने जा रहे हैं। बाइनरी XML को पाठ में खोलता है यदि शुद्ध एक्सएमएल तो यह आपके द्वारा उपयोग किए जाने वाले कंप्रेसर पर निर्भर करता है। आमतौर पर lzmagzip द्विआधारी संपीड़न के लिए प्रयोग किया जाता है। शायद मैं बहुत स्पष्ट चीजों के बारे में लिख रहा हूं, लेकिन मुझे सब कुछ पता है कि धीमी कार्यक्षमता के लिए विकल्प बड़े XML - भाग 3 इस अध्याय का अंतिम भाग। मेरी पिछली पोस्ट में धीमी कार्यक्षमता के लिए विकल्प बड़े एक्सएमएल - भाग 2. मैंने दिखाया कि कैसे एक स्कीमा को पंजीकृत किया गया है और इस प्रक्रिया को एक तालिका बनाने के लिए XML की पार्सिंग गति को बढ़ाने के लिए इस्तेमाल किया जा सकता है, जो कि XML को PLSQL के माध्यम से पार्स करता है अब मैं यह देख रहा हूं कि एक संबद्ध स्कीमा के बिना तालिका का उपयोग करना पर्सिंग से संबंधित गति पर कोई फर्क पड़ेगा या नहीं। मैं अपने परीक्षणों को चलाने के लिए फिर से कोड के निम्नलिखित ब्लॉक का इस्तेमाल किया था I केवल अंतर मैंने बदल दिया था LOADTEMPRESULT के लिए CREATE TABLE स्टेटमेंट निम्नलिखित सारणी में मैंने विभिन्न प्रयोगों का प्रयोग किया है और परिणामस्वरूप समय, जहां टेम्पे टाइम सेकेंड में टाइम्स के समय में INSERT के लिए आउटपुट है: और टाइम सेकेंड में INSERT के लिए आउटपुट है: XML तालिका का बनाएँ टैब लोड लोड करेंमप्रेस्टल्ट टेबल लोड लोड करें एक्सएमएलटीईई एक्सएमएलटीपीई स्टोअर के रूप में बेसिक फिज़ल क्लॉबल का टेम्बल लोडटेमप्रेस्टल ऑफ एक्सएमएलटीईपी एक्सएमटीएमईटीपीई स्टोअर एसईसीईआरईईईएलईएलएलएल के रूप में एक्सएमएलटीईपीई एक्सएमएलटीपीईआरटी एक्सएमएलटीपीई एक्सएमटीएमटीपीईआरटीएक्स एक्सएमएलटीपीई एक्सपीएलएलएल एक्सएमएलटीईपीईएमटीटीईपीआरआईटीएम एक्सएमएलटीपीई एक्सएमएलटीईपीआरयूआरटी एक्सरीएमएक्सटीई एक्सएमएलटीईपीआरटीई एसईसीईआरईईईईईईईएलई एक्सपीएमएलएक्सएमएमएमएक्सएमएमएक्स जैसा मैं 11.1.0.6 का इस्तेमाल कर रहा हूं, डिफॉल्ट वर्तन ओरेकल के इस संस्करण के लिए XMLTypes को एक CLOB के रूप में स्टोर करना है इस तथ्य से यह पुष्टि की जाती है कि पहली पंक्ति (डिफ़ॉल्ट संग्रहण) दूसरी पंक्ति (स्पष्ट संग्रहण) के साथ सबसे निकटतम मिलान करती है। परिणामों के आधार पर, यह देखना आसान है कि XMLType तालिका (या XMLType कॉलम) भी बनाते हैं जहां XMLType को संग्रहीत किया जाता है, क्योंकि BINARY XML प्रदर्शन की दृष्टि से उचित है जब सत्यापन की आवश्यकता नहीं होती है। मैं BASICFILE और SECUREFILE के बीच मतभेदों पर चर्चा नहीं करने जा रहा हूं, लेकिन SECUREFILE ऑफ़र की मुख्य विशेषताएं ओरेकल डाटाबेस 11g रिलीज 1 में प्रस्तुत LOB विशेषताओं में पाया जा सकता है। ओरेकल अनुशंसा करता है कि SECUREFILE के लिए उपयोग किया जायेगा जैसा मैंने उठाया है ओटीएन पर एक्सएमएल डीबी फोरम इस विषय पर पिछले दो धागे से परिणामों का पुनर्कथन करने के लिए, एक XML कथन में XMLTable का उपयोग करने के लिए एक PLSQL XMLType चर को पार्स करने के लिए 1032 सेकंड (16 मिनट) लगे। XML में प्रत्येक नोड के माध्यम से PLSQL से लूप का उपयोग करना और जानकारी को पार्स करना और उसके बाद INSERT को एक तालिका में 4 सेकंड लेना था। एक पंजीकृत स्कीमा और संबद्ध तालिका का उपयोग करना 0.5 सेकंड ले गया। दिए गए परीक्षण केस के लिए मैं सिस्टम पर (एक्सएमएल में लगभग 2100 पंक्ति नोड्स) का उपयोग कर रहा था (मैं एक रेडहाट ओएस पर 11.1.0.6) का प्रयोग कर रहा था, एक स्कीमा पंजीकरण कर रहा है जो एक संबद्ध तालिका बनाता है जो सिर्फ एक बाइनरी एक्सएमएल XMLType 0.87 सेकंड पर आधारित तालिका यह अतिरिक्त जानकारी के कारण होनी चाहिए कि ओरेकल स्कीमा के आधार पर एक्सएमएल के बारे में जानता है। चूंकि यह पहला संस्करण था, जिसमें मूलभूत XML मौजूद था, यह उस तथ्य के कारण आंशिक रूप से भी हो सकता है। हो सकता है कि अगर मुझे ओरेकल के नए संस्करण तक पहुंच मिल जाए, तो मैं उस सिद्धांत का परीक्षण कर सकता हूं 1 टिप्पणी: यह द्विआधारी विकल्पों के बारे में बहुत उपयोगी जानकारी है, जो अनुभवहीन व्यापारियों के लिए बहुत अधिक जानकारीपूर्ण होगी। आजकल द्विआधारी विकल्प व्यापार बहुत लोकप्रिय हो गया है और अंतर्राष्ट्रीय अर्थव्यवस्था में बहुत अधिक गति प्राप्त कर रहा है 11 जी ओरेकल 11 जी में और अधिक पढ़ें द्विपदीय XML डेटा संग्रहण नई सुविधाएँ युक्तियाँ ओरेकल के पिछले संस्करणों में, दो एक्सटेंसिबल मार्कअप लैंग्वेज (एक्सएमएल) भंडारण विकल्प उपलब्ध थे: असंरचित, या CLOB, और भंडारण और संरचित, या स्कीमा-आधारित ओरेकल 11 जी में, बाइनरी एक्सएमएल को एक नया स्टोरेज विकल्प के रूप में जोड़ा गया है। असंरचित भंडारण एक XML दस्तावेज़ को बड़े ऑब्जेक्ट के रूप में मानता है और सामग्री के बारे में जानकारी के बिना डेटाबेस में फ़ाइल को संग्रहीत करता है। इस विकल्प का सबसे अच्छा प्रविष्टि और विलोपन प्रदर्शन है, लेकिन डिस्क स्थान का सबसे खराब रिलेशनल एक्सेस और खपत है। संरचित भंडारण के लिए एक्सएमएल स्कीमा के पूर्व पंजीकरण की आवश्यकता होती है और ऑब्जेक्ट-रिलेशनल स्ट्रक्चर में एक XML दस्तावेज़ को सम्मिलित करता है। इस संग्रहण विकल्प में सबसे अच्छी क्वेरी प्रदर्शन और डिस्क स्थान की खपत है, लेकिन प्रारंभिक प्रविष्टि के दौरान उच्चतम लागत। इस उच्च लागत का कारण होता है क्योंकि सम्मिलन के दौरान, दस्तावेज़ को कटा हुआ है और XML स्कीमा के पंजीकरण के दौरान बनाए गए डेटाबेस ऑब्जेक्ट में संग्रहीत किया गया है। बाइनरी एक्सएमएल, 11 जी में पेश किया गया नया स्टोरेज विकल्प, एक्सएमएल के लिए डिज़ाइन किए गए एक पोस्ट-पर्स बाइनरी प्रारूप में दस्तावेज़ को स्टोर करता है। यह विकल्प संभवत: अधिकतम XML आवश्यकताओं के लिए सबसे अच्छा विकल्प होगा अतिरिक्त बाइनरी स्टोरेज अनारकेटेड स्टोरेज के लिए तुलनीय प्रविष्टि प्रदर्शन की पेशकश करता है, फिर भी क्वेरी और डिस्क स्पेस प्रदर्शन जो संरचित भंडारण के लिए तुलनीय है। संरचित भंडारण के विपरीत, बाइनरी एक्सएमएल के लाभ स्कीमा पंजीकरण पर निर्भर नहीं हैं। यह स्कीमा आधारित बाइनरी XML तालिकाओं के लिए एक बाइनरी XML स्कीमा को दर्ज करने के विकल्प के कारण है। हालांकि, एक सीमा बनी हुई है कि एक पंजीकृत एक्सएमएल स्कीमा को बाइनरी एक्सएमएल और ऑब्जेक्ट रिलेशनल टेबल के बीच साझा नहीं किया जा सकता है सबसे अच्छी रणनीति जब XML सामग्री को प्रबंधित करने का चयन करते हैं, तो पहले बाइनरी स्टोरेज विकल्प को आज़माएं और मूल्यांकन करें कि क्या प्रदर्शन स्वीकार्य है या नहीं। यदि रिलेशनल एक्सेस प्रदर्शन स्वीकार्य नहीं है, तो संरचित भंडारण विकल्प का प्रयास करें। इसका कारण यह है कि द्विआधारी भंडारण को प्राथमिकता दी जाती है कि यह प्रयोग करना आसान है और कम से कम रखरखाव की आवश्यकता है क्योंकि स्कीमा पंजीकरण की आवश्यकता नहीं है। गैर-एक्सएमटीपी तालिकाओं में उपयोग करने के लिए बाइनरी एक्सएमएल टाइप कॉलम भी आसान हैं क्योंकि प्रदर्शन इंडेक्सस के निर्माण पर निर्भर नहीं है। द्विआधारी भंडारण, एक्सएमएल तालिका निम्न सिंटैक्स के साथ बनाया जाना चाहिए का उपयोग करें: SQLgt XMLType XMLTYPE दुकान के टेबल BINARYXMLTABLE बना लेते हैं बाइनरी XML 2 क्रम लेनदेन के लिए निम्नलिखित XML दस्तावेज़ पर विचार करें: ltxml versionquot1.0quotgt ltordergt ltcustomergt ltnamegtCustomer ABCltnamegt ltccNumgt1234123412341234ltccNumgt ltcustomergt ltorderLinesgt ltitemgt ltitemidgt108ltitemidgt ltitemnamegtORACLE 11G नई सुविधाएं बुक ED1.0ltitemnamegt ltquantitygt1ltquantitygt ltunitPricegt38.00ltunitPricegt ltitemgt ltitemgt ltitemidgt109ltitemidgt ltitemnamegtORACLE ट्यूनिंग गाइड ED1.0ltitemnamegt ltquantitygt1ltquantitygt ltunitPricegt22.00ltunitPricegt ltitemgt ltorderLinesgt ltreceiptgt ltsubtotalgt60.00ltsubtotalgt ltsalesTaxgt4.80ltsalesTaxgt lttotalgt64.80lttotalgt ltreceiptgt ltordergt निम्नलिखित का उपयोग कर बाइनरी एक्सएमएल तालिका में इस दस्तावेज़ में सम्मिलित करें वाक्यविन्यास: SQLgt BINARYXMLTABLE मानों में डालें (XMLTYPE (BFILENAME (XMLDIR, testdocument. xml), एनएलएसएर्ससेट (AL32UTF8)) सम्मिलन के बाद, दस्तावेज़ तात्कालिक पहुंच के लिए तत्काल उपलब्ध है। मूल्य का चयन करें (मूल्य (बी), ऑर्डर कस्टमाइनमेंट) कस्टम नाम, एक्सट्रैक्ट वैल्यू (वैल्यू (डी), आईटेमेटेमिड) आईटिडाइड, एक्सट्रैक्ट वैल्यू (वैल्यू (डी), मद वैल्यूटीटीटी) मात्रा, एक्सट्रैक्ट वैल्यू (वैल्यू (डी), आईट्यूनेटप्रिसेस) यूनिटप्रिस, एक्सट्रैक्ट वैल्यू (वैल्यू (बी ), ऑब्जेक्ट (एक्सचेंज (ऑब्जेक्टव्यू, ऑर्डर))), टेबल (XMLSequence (extract)), ऑब्जेक्ट (एक्सेल) (मान (बी), ऑर्डर ऑर्डर लाइन)) सी, टेबल (एक्सएमएल सिक्योरिटी (एक्सट्रैक्ट (वैल्यू (सी), ऑर्डर लाइन्सिटम))) डी कस्टममैटैमटीटीआईएमआईडीआईडीटीटीटी यूनिटपेरीस सबबॉटल सलेस्टैक्स कुल -------------- - ------ -------- ---------- -------- -------- ------ ग्राहक एबीसी 108 1 38.00 60.00 4.80 64.80 ग्राहक एबीसी 109 1 22.00 60.00 4.80 64.80 जैसा कि ऊपर दिखाया गया है, एक बायनरी XML तालिका में संबंधपरक पहुंच के लिए वाक्यविन्यास अन्य स्टोरेज विकल्पों से नहीं बदलता है। यह नई किताब ओरेकल 11 जी न्यू फीचर्स से एक अंश है जॉन गर्मनी, स्टीव कारम, लुटज हार्टमैन, वी। जे। जैन, ब्रायन कारर द्वारा महत्वपूर्ण नई विशेषताओं के लिए विशेषज्ञ गाइड। आप इसे प्रकाशक से सीधे 30 के लिए खरीद सकते हैं बर्लसन अमेरिकी टीम है नोट: यह ओरेकल दस्तावेज़ीकरण हमारे डीबीए प्रदर्शन ट्यूनिंग परामर्श पेशेवरों द्वारा उपयोग के लिए समर्थन और ओरेकल प्रशिक्षण संदर्भ के रूप में बनाया गया था। हमारे ओरेकल फ़ोरम पर सवाल पूछने में संकोच न करें । अनुभव सत्यापित करें किसी ओरेकल सहायता विशेषज्ञ की सेवाओं का उपयोग करने पर विचार करने वाले को स्वतंत्र रूप से अपने क्रेडेंशियल्स और अनुभव की जांच करनी चाहिए, और विज्ञापनों और स्वयं-घोषित विशेषज्ञता पर भरोसा नहीं करना चाहिए। सभी वैध ओरेकल विशेषज्ञ अपनी ओरेकल योग्यता प्रकाशित करते हैं । इरेटा ओरेकल प्रौद्योगिकी बदल रही है और हम अपने बीसी ओरेकल समर्थन जानकारी को अपडेट करने का प्रयास करते हैं। यदि आपको हमारी सामग्री में सुधार करने के लिए कोई त्रुटि मिलती है या कोई सुझाव मिलता है, तो हम आपके फ़ीडबैक की सराहना करेंगे। बस ई-मेल: और पृष्ठ के लिए यूआरएल शामिल करें। डाटाबेस समर्थन के ओरेकल कॉपीराइट प्रतिलिपि 1996 - 2018 बर्लसन ऑरेकल रेग द्वारा आरक्षित सभी अधिकार ओरेकल कॉर्पोरेशन के पंजीकृत ट्रेडमार्क हैं।

No comments:

Post a Comment