सीधे मुख्य सामग्री पर जाएं

Featured Post

What is Magnetic Tape in hindi

Query Optimization in hindi - computers in hindi 

 आज हम computers in hindi मे query optimization in dbms (क्वैरी ऑप्टीमाइजेशन) के बारे में जानेगे क्या होता है और क्वैरी ऑप्टीमाइजेशन (query optimization in dbms) मे query processing in dbms और query optimization in dbms in hindi और Measures of Query Cost  के बारे मे जानेगे तो चलिए शुरु करते हैं- 

Query Optimization in dbms (क्वैरी ऑप्टीमाइजेशन):-

Optimization से मतलब है क्वैरी की cost को न्यूनतम करने से है । किसी क्वैरी की cost कई factors पर निर्भर करती है । query optimization के लिए optimizer का प्रयोग किया जाता है । क्वैरी ऑप्टीमाइज़र को क्वैरी के प्रत्येक operation की cos जानना जरूरी होता है । क्वैरी की cost को ज्ञात करना कठिन है । क्वैरी की cost कई parameters जैसे कि ऑपरेशन के लिए उपलब्ध memory , disk size आदि पर निर्भर करती है । query optimization के अन्दर क्वैरी की cost का मूल्यांकन ( evaluate ) करने का वह प्रभावी तरीका चुना जाता है जिसकी cost सबसे कम हो । अतः query optimization एक ऐसी प्रक्रिया है , जिसमें क्वैरी अर्थात् प्रश्न को हल करने का सबसे उपयुक्त तरीका चुना जाता है । परन्तु यह आवश्यक नहीं है कि चुना गया तरीका ही best होगा , क्योंकि क्वैरी को हल करने के कई तरीके हो सकती हैं ।
Query Optimization in hindi - computers in hindi

query processing in dbms:-

query optimization की आवश्यकता तब होती है , जब किसी क्वैरी को execute किया जाता है । जब किसी क्वैरी को execute किया जाता है तो उसका परिणाम आने तक या क्वैरी के समाप्त होने तक की प्रक्रिया को क्वैरी प्रोसेसिंग  (query processing in dbms) कहा जाता है । query processing  में कई steps होते हैं , जिसमें ऑप्टीमाइज़ेशन एक step है ।
 query optimization एक ऐसी प्रक्रिया है जिसमें क्वैरी की प्रोसेसिंग के लिए कई सारे plans में से सबसे अधिक प्रभावी क्वैरी evaluation plan को चुना जाता है । यह सिस्टम का कार्य होता है कि उसके द्वारा ऐसा query evaluation plan चुना जाए जो क्वरी evaluation की cost न्यूनतम करे।

इसके अन्तर्गत मुख्यत : दो बिन्दुओं को ध्यान में रखकर कार्य किया जाता है तथा यह डाटाबेस मैनेजमेंट सिस्टम (DBMS) 
 पर निर्भर होता है कि वह कौनसा तरीका चुने  प्रथम यह है कि सर्वश्रेष्ठ plan चुनने में लगा समय तथा दूसरा यह कि वह plan रन होने पर कितना समय लेगा । इसके लिए क्वैरी ऑप्टीमाइज़र का प्रयोग किया जाता है ।

 कई प्रकार के क्वैरी ऑप्टीमाइज़र होते हैं तथा वे उनकी निर्धारित कार्य करते हैं । जैसे cost based query optimizer ( लागत आधारित प्रश्न अनुकूलन ) उपलब्ध संसाधनों जैसे कि processor time , disk storage , disk buffer space आदि को देखकर उपयुक्त तरीका चुनता है । 
ऑप्टीमाइज़र के द्वारा इनीशियल पार्स ट्री को स्वीकार किया जाता है । ऑप्टीमाइज़र द्वारा उपयुक्त एक्जीक्यूशन plan को चुनने के लिए ऑप्टीमाईजेशन की प्रक्रिया को प्रारम्भ किया जाता है ।

Query processing in dbms (क्वैरी प्रोसेसिंग के चरण):-

 क्वैरी के रन होने की प्रक्रिया को क्वैरी प्रोसेसिंग ( query processing) कहा जाता है । यह क्वैरी के द्वारा की जाने वाली प्रक्रिया का एक समूह होता है जिसमें प्रत्येक कार्य को एक step के रूप में किया जाता है । यह एक प्रकार की ऐसी गतिविधि है जो कि डेटाबेस से डेटा को प्राप्त करने के लिए की जाती है । आन्तरिक DML कम्पाईलर का प्रयोग क्वैरी को बाहर के लेवल से प्राप्त करने के लिए किया जाता है । DML प्रि - कम्पाईलर का प्रयोग क्वैरी को किसी भी इंटरफेस से प्राप्त करने के लिए किया जाता है । query processing में निम्नलिखित गतिविधियां सम्मिलित होती हैं 
1. किसी भी client मशीन से user लेवल पर जब select स्टेटमेन्ट एक्जीक्यूट होता है तो इस क्वैरी को physical लेवल पर translate किया जाता है । इसके अन्तर्गत क्वैरी को रिलेश्नल एलजेब्रा में बदला जाता है ।
2. इसके पश्चात् query optimizaer के द्वारा क्वैरी के लिए सर्वश्रेष्ठ एक्जीक्यूशन प्लान चुना जाता है । 
3. इसके पश्चात् निम्नलिखित Steps की पालना की जाती है 
a . Parsing 
b . Optimization 
c . Evaluation

(A) Parsing :-

 query processing के इस step में दी गई क्वैरी को डेटाबेस के आन्तरिक प्रारूप में बदला जाता है । यह कार्य parsing के द्वारा किया जाता है , यह कम्पाईलर की भांति ही कार्य करता है । इसके लिए parsing सर्वप्रथम क्वैरी के सिन्टैक्स की जांच करता है कि सिन्टैक्स में कोई गलती तो नहीं हैं । सिन्टैक्स जांचने के   बाद टेबल में रिलेशन प्रयोग किए जा रहे हैं तो उन रिलेशन्स की जांच की जाती है कि वे सही हैं या नहीं , बाद  क्वैरी में प्रयोग किए जाने वाले समस्त एट्रीब्यूट्स के नामों की जांच की जाती है । इसके बाद जिस जिस ऑब्जेक्ट के साथ कार्य करना है , की permmission की जांच की जाती है । इसके पश्चात क्वैरी को रिलेश्नल एलजेब्रा में बदला जाता है।

(B) Optimization:-

ऑप्टीमाइज़र के द्वारा इनीशियल पार्स ट्री को स्वीकार किया जाता है । ऑप्टीमाइज़र द्वारा उपयुक्त एक्जीक्यूशन प्लान को चुनने के लिए ऑप्टीमाईजेशन की प्रक्रिया को प्रारम्भ किया जाता है । ऑप्टीमाइज़ेशन दो भागों में पूर्ण किया जाता है-

Types of optimization :-

1. Implictly 
2. Explicitly 
Implicitly के अन्तर्गत ऑप्टीमाइजेशन स्वयं डेटाबेस इंजन के द्वारा नियंत्रित किया जाता है , जबकि explicitly में क्वैरी के अन्तर्गत ऑप्टीमाइज़ेशन को संकेत के रूप में दिया जाता है । 

उदाहरण के तौर पर मान लीजिए कि किसी बैंक में कार्यरत कर्मचारियों की जानकारी बैंक के द्वारा bankemp नामक डेटाबेस में संग्रहित की जाती है रिलेश्नल एल्जेब्रा । यदि ऐसे कर्मचारियों को लिस्ट की आवश्यकता हो जिनकी salary 25,000 से अधिक हो तो ऐसे में दो स्थितियां उत्पन्न होंगी । प्रथम स्थिति यह होगी कि डेटाबेस में सचिंग का कार्य फाईल के प्रारम्भ में किया जाए ऐसे में यह आवश्यक नहीं है कि 25.000 की salary वाले समस्त रिकॉई एक साथ ही हों । अत : सर्चिग का कार्य फाईल के प्रारम्भ से अन्त तक किया जाएगा । इसके अतिरिक्त दूसरी स्थिति में सर्वप्रथम डेटाबेस को salary के आधार पर sort कर लिया जाए तथा उसके पश्चात् 25.000 की salary वाले सभी रिकॉइंस एक के बाद होंगे ऐसे में सर्चिग को फाईल के प्रारम्भ से रिकॉर्ड मिलने तक ही किया जाएगा फाईल के अन्त तक नहीं । ऐसी स्थिति में दूसरी विधि का प्रयोग किया जाएगा क्योंकि इसमें सचिंग में समय कम लगेगा तथा इसकी क्वैरी कॉस्ट भी न्यून होगी ।

(C) Evaluation :-

query processing में ऑप्टीमाइजेशन के बाद इवैल्यूएशन का कार्य किया जाता है । इसके अतर्गत रिलेश्नल एल्जेब्रा एक्सप्रेशन को मूल्यांकित करने के लिए इसे निर्देशों के साथ समझाया जाता है । इसे relation primitive कहा जाता है । वास्तव में यह क्वैरी के प्रत्येक step विस्तार से व्याख्या करता है । प्रिमिटिव ऑपरेशन्स की श्रेणियां जो कि क्वैरी का मूल्यांकन करने के लिए प्रयोग की जाती हैं , को क्वैरी प्लान या क्वैरी मूल्यांकन प्लान कहा जाता है । अलग - अलग क्वैरी प्लान की कॉस्ट भी अलग - अलग होती है । यह सिस्टम का दायित्व होता है कि वह क्वैरी के लिए सबसे उत्तम प्लान का निर्माण व प्रयोग करे , क्योंकि क्वैरी ऑप्टीमाइज़ेशन क्वैरी के लिए सर्वश्रेष्ठ प्लान चुनने की प्रक्रिया है । ऑप्टीमाइज़र के द्वारा क्वैरी के लिए उपलब्ध समस्त प्लान की कॉस्ट ज्ञात करके उनमें तुल्ना की जाती है । जिस प्लान की कॉस्ट सबसे कम होती है वह ऑप्टीमाइज़र के द्वारा चुना जाता है जो कि डेटा को प्राप्त करने के लिए एक्जीक्यूट किया जाता है ।
query processing in dbms - computers in hindi


Measures of Query Cost(क्वैरी कॉस्ट के मापक) :-

जब user  के द्वारा किसी क्वैरी को रन किया जाता है तो सर्वप्रथम उनले सिन्टैक्स व रिलेशन्स आदि की जांच होती है , जिसे parsing and checking कहा जात है । उसके पश्चात् क्वैरी को execute करने के लिए अलग - अला execution plans निकाले जाते हैं तथा best execution plan को अपनाकर क्वैरी को execute किया जाता है । किसी ववैरी को execute करने से पहले क्वैरी का मूल्यांकन किया जाता है । क्वैरी मूल्यांकन के लिए कई plans हो सकते हैं । प्रत्येक plan को cont निकालकर यह जांचा जाता है किस plan की cost सबसे कम है । कई तरीकों ( plans ) को उनकी cost के अनुसार उत्तम या मध्यम माना जाता है । जो तरीका ( plan ) सबसे अधिक उत्तम होता है उसी तरीके ( plan ) से क्वैरी को execute किया जाता है ताकि कम से कम समय व कम नेटवर्क cost में user के result अथवा आउटपुट मिल जाए । इन विभिन्न प्रकार के plans की cost ज्ञात करने को measure of query cost कहा जाता है ।
किसी क्वैरी के मूल्यांकन के लिए अर्थात् उसे क्रियान्वित होने के अलग - अलग plans की cost ज्ञात करने के लिए उपलब्ध कई resources जैस कि disk accesses , CPU time for execution , cost of communication आदि को भी ध्यान में रखा जाता है , संसाधनों की उपलब्धि की भी cost घटाने या बढ़ाने में अहम भूमिका होती है । संसाधनों की कमी होने पर क्वैरी की cost अधिक हो सकती है । क्वैरी की cost से तात्पर्य उस क्वैरी के अनुसार डेटा या परिणाम देने में लगने वाले समय से होता है ।
क्वैरी मूल्यांकन के तरीकों में क्वैरी की estimate cost ज्ञात करने के लिए number of block transfer from disk तथा number of disk seeks का प्रयोग किया जाता है । यदि डिस्क का sub - system डेटा के एक ब्लॉक को स्थानान्तरित ( transfer ) करने के लिए 1 , सैकण्ड्स का औसतन समय लेता है , तथा यदि उसका औसतन block access time 1 सैकण्ड्स है तो यह operation b*tT+S*ts सैकण्ड्स का समय लेगा । इसे निम्नलिखित तरीके से भी समझा जा सकता है 
tT - time to transfer one block 
Ts - time for one seek ( block Access )
 Cost for b block transfers plus S seeks
 b * tT + S*ts
उपरोक्तं तरीके से क्वैरी की cost ज्ञात की जाती है । सभी plans से ज्ञात की जाने वाली cost मुख्य मैमोरी के buffer size पर निर्भर करती है क्योंकि मुख्य मैमोरी के buffer से ही डेटा को लिया जाता है । यदि उसमें खाली जगह कम है तो कुछ मात्रा में डेटा buffer में होता है तथा बाकी के डेटा को डिस्क से  access किया जाता है जिसमें प्राय : अधिक समय लगता है । क्वैरी cost में सबसे अच्छी स्थिति वह मानी जाती है जब सम्पूर्ण डेटा buffer मैमोरी में हो तथा सबसे बुरी स्थिति वह मानी जाती है जिसमें buffer में कम डेटा हो । किसी क्वैरी की cost को हमेशा बुरी स्थिति के अनुसार ही ज्ञात किया जाता है ।




टिप्पणियाँ

इस ब्लॉग से लोकप्रिय पोस्ट

ms excel functions in hindi

  आज हम  computer in hindi  मे ms excel functions in hindi(एमएस एक्सेल में फंक्शन क्या है)   -   Ms-excel tutorial in hindi   के बारे में जानकारी देगे क्या होती है तो चलिए शुरु करते हैं- ms excel functions in hindi (एमएस एक्सेल में फंक्शन क्या है):- वर्कशीट में लिखी हुई संख्याओं पर फॉर्मूलों की सहायता से विभिन्न प्रकार की गणनाएँ की जा सकती हैं , जैसे — जोड़ना , घटाना , गुणा करना , भाग देना आदि । Function Excel में पहले से तैयार ऐसे फॉर्मूले हैं जिनकी सहायता से हम जटिल व लम्बी गणनाएँ आसानी से कर सकते हैं । Cell Reference में हमने यह समझा था कि फॉर्मूलों में हम जिन cells को काम में लेना चाहते हैं उनमें लिखी वास्तविक संख्या की जगह सरलता के लिए हम उन सैलों के Address की रेन्ज का उपयोग करते हैं । अत : सैल एड्रेस की रेन्ज के बारे में भी जानकारी होना आवश्यक होता है । सैल एड्रेस से आशय सैल के एक समूह या श्रृंखला से है । यदि हम किसी गणना के लिए B1 से लेकर  F1  सैल को काम में लेना चाहते हैं तो इसके लिए हम सैल B1 , C1 , D1 , E1 व FI को टाइप करें या इसे सैल Address की श्रेणी के रूप में B1:F1 टाइ

window accessories kya hai

  आज हम  computer in hindi  मे window accessories kya hai (एसेसरीज क्या है)   -   Ms-windows tutorial in hindi   के बारे में जानकारी देगे क्या होती है तो चलिए शुरु करते हैं- window accessories kya hai (एसेसरीज क्या है)  :- Microsoft Windows  कुछ विशेष कार्यों के लिए छोटे - छोटे प्रोग्राम प्रदान करता है इन्हें विण्डो एप्लेट्स ( Window Applets ) कहा जाता है । उनमें से कुछ प्रोग्राम उन ( Gadgets ) गेजेट्स की तरह के हो सकते हैं जिन्हें हम अपनी टेबल पर रखे हुए रहते हैं । कुछ प्रोग्राम पूर्ण अनुप्रयोग प्रोग्रामों का सीमित संस्करण होते हैं । Windows में ये प्रोग्राम Accessories Group में से प्राप्त किये जा सकते हैं । Accessories में उपलब्ध मुख्य प्रोग्रामों को काम में लेकर हम अत्यन्त महत्त्वपूर्ण कार्यों को सम्पन्न कर सकते हैं ।  structure of window accessories:- Start → Program Accessories पर click Types of accessories in hindi:- ( 1 ) Entertainment :-   Windows Accessories  के Entertainment Group Media Player , Sound Recorder , CD Player a Windows Media Player आदि प्रोग्राम्स उपलब्ध होते है

report in ms access in hindi - रिपोर्ट क्या है

  आज हम  computers in hindi  मे  report in ms access in hindi (रिपोर्ट क्या है)  - ms access in hindi  के बारे में जानकारी देगे क्या होती है तो चलिए शुरु करते हैं-  report in ms access in hindi (रिपोर्ट क्या है):- Create Reportin MS - Access - MS - Access database Table के आँकड़ों को प्रिन्ट कराने के लिए उत्तम तरीका होता है , जिसे Report कहते हैं । प्रिन्ट निकालने से पहले हम उसका प्रिव्यू भी देख सकते हैं ।  MS - Access में बनने वाली रिपोर्ट की मुख्य विशेषताएँ :- 1. रिपोर्ट के लिए कई प्रकार के डिजाइन प्रयुक्त किए जाते हैं ।  2. हैडर - फुटर प्रत्येक Page के लिए बनते हैं ।  3. User स्वयं रिपोर्ट को Design करना चाहे तो डिजाइन रिपोर्ट नामक विकल्प है ।  4. पेपर साइज और Page Setting की अच्छी सुविधा मिलती है ।  5. रिपोर्ट को प्रिन्ट करने से पहले उसका प्रिन्ट प्रिव्यू देख सकते हैं ।  6. रिपोर्ट को तैयार करने में एक से अधिक टेबलों का प्रयोग किया जा सकता है ।  7. रिपोर्ट को सेव भी किया जा सकता है अत : बनाई गई रिपोर्ट को बाद में भी काम में ले सकते हैं ।  8. रिपोर्ट बन जाने के बाद उसका डिजाइन बदल