Theory
ખરેખર data ને કોણ અડે છે?
Meera પોતાની દુકાનને એક સાચા database પર લઈ જવાનો નિર્ણય કરે છે. એનો ભત્રીજો MySQL નામની કોઈ વસ્તુ install કરે છે અને એક નાનું billing app બનાવે છે. Meera 'Today's sales' click કરે છે અને એક number આવે છે.
પણ શૃંખલા વિશે વિચારો: Meera એ એક button click કર્યું, તોય ક્યાંક data disk માંથી લવાયો, સલામત રીતે, કંઈ corrupt કર્યા વગર, ભલે એનો ભાઈ બરાબર એ જ સેકન્ડે એક sale enter કરી રહ્યો હોય.
ચાર અલગ components એ આ કરાવ્યું, દરેકનું એક કામ. એમાંના બે, database અને DBMS, ને ભેળવવા એ સૌથી સામાન્ય exam ભૂલ છે, તો ચાલો એમને સાફ-સાફ અલગ કરીએ.
Theory
બેંકની તિજોરી અને teller
તમે (user) cash ઇચ્છો છો. તમે counter પર એક slip ભરો છો (application). તમે ખુદ ક્યારેય તિજોરીમાં ઘૂસતા નથી, એક teller (DBMS) તમારી slip લે છે, તપાસે છે કે તમને પરવાનગી છે, તિજોરી (database) સુધી જાય છે, અને બરાબર એ જ લાવે છે જે તમે માંગ્યું, દરમિયાન બાકી બધાના પૈસા સલામત રાખતાં. Teller સિવાય કોઈ તિજોરીને અડતું નથી. એ એક નિયમ એક database system નું હૃદય છે.
At a glance
ચાર components
| Component | ભૂમિકા | ઉદાહરણ |
|---|---|---|
| User | data જોઈએ | Meera, એક programmer, એક DBA |
| Application | interface જે requests મોકલે છે | Billing app, website |
| DBMS | બધા access ને સલામત રીતે manage કરે છે | MySQL, Oracle, SQL Server |
| Database | ખુદ store કરેલો data | દુકાનની tables |
Theory
DBMS: વચ્ચે manager
સિતારો છે DBMS (Database Management System). એ applications અને data ના વચ્ચે બેસે છે, અને દરેક request એમાંથી પસાર થાય છે. એના કામ:
- Storage અને retrieval: સાચો data વાંચવો/લખવો.
- Security: કોને શું જોવાની કે બદલવાની પરવાનગી છે.
- Integrity: data ને valid રાખવો (કોઈ negative stock નહીં).
- Concurrency: એકસાથે ઘણા users ટકરાવ વગર.
- Backup અને recovery: crashes થી બચવું.
કારણ કે બધો access DBMS માંથી પસાર થાય છે, એ આ બધી guarantees ને લાગુ કરી શકે છે, જે એક વહેંચાયેલી spreadsheet બસ કરી શકતી નથી.
Quiz
એક 'database' અને એક 'DBMS' માં શું ફરક છે?
- Database એ store કરેલો data છે; DBMS એ software છે જે એને manage કરે છે
- એ એક જ વસ્તુના બે નામ છે
- Database એ software છે; DBMS એ data છે
- DBMS એ એક પ્રકારની spreadsheet છે
Show the answer
Database એ store કરેલો data છે; DBMS એ software છે જે એને manage કરે છે
Database એ store કરેલા data નો સાચો સંગ્રહ છે (tables); DBMS એ software છે (MySQL, Oracle) જે એ data ને બનાવે, manage કરે અને એના સુધી access control કરે છે. Option C એમને ઉલટાવે છે, બરાબર એ trap. Analogy: database એ ચોપડીઓ છે; DBMS એ librarian છે. આ બંનેને અલગ કરવા એ પાક્કો exam mark છે.
Think first
આખરે DBMS માંથી કેમ જવું?
Meera ના billing app ને data files સીધા વાંચવા-લખવા કેમ ન દઈએ, DBMS વચેટિયાને છોડીને? વિચારો એનો ભાઈ બરાબર એ જ ક્ષણે એક sale enter કરી રહ્યો છે જ્યારે Meera એક report ચલાવે છે.
Show the answer
કારણ કે બે programs એકસાથે કાચા data ને અડતાં એને corrupt કરી નાખશે, કે અધૂરા ફેરફાર વાંચશે. DBMS access ને serialise અને protect કરે છે: એ concurrency manage કરે છે (બંને સલામત રીતે કામ કરી શકે), security અને integrity લાગુ કરે છે, અને crashes થી recover કરી શકે છે. સીધો file access, બરાબર જેમ એક વહેંચાયેલી spreadsheet કામ કરે છે, માં આમાંની કોઈ guarantee નથી, એટલે જ multi-user spreadsheets overwrite થઈને ખોવાઈ જાય છે. વચેટિયો જ સુરક્ષા છે.
Watch out
Marks ક્યાં કપાય છે
મોટી વાળી: database સામે DBMS, data સામે એને manage કરતું software. DBMS ની કામ-યાદી (security, integrity, concurrency, backup) ભૂલવી, આ જ એક વાપરવાના કારણો છે. અને શૃંખલાનો ક્રમ ખોટો કરવો: એ user > application > DBMS > database છે, requests નીચે વહે છે, data પાછો ઉપર. સાચા DBMS software (MySQL, Oracle, SQL Server) નું નામ લેવું એ એક સહેલો વધારાનો mark અપાવે છે.
Theory
તમે પહેલેથી એક DBMS ને મળી ચૂક્યા છો
જે Gri-Learn app પર તમે આ વાંચો છો એ પોતાના lessons એક DBMS દ્વારા manage થતી database માં store કરે છે, બરાબર આ જ architecture. login, cart, કે history વાળું દરેક app આ ચાર-સ્તર શૃંખલા વાપરે છે. Unit 4 માં તમે સીધા એક DBMS ને commands type કરશો (SQL). આગળ: આ components machines ના આરપાર કેવી રીતે ગોઠવાય છે, 1-tier, 2-tier અને 3-tier architectures.
Summary
Key takeaways
- ચાર components: User (data જોઈએ), Application (interface), DBMS (manager), Database (store કરેલો data).
- DBMS applications અને data ના વચ્ચે બેસે છે; બધો access એમાંથી પસાર થાય છે.
- DBMS ના કામ: storage, security, integrity, concurrency, backup અને recovery.
- Database = data (tables); DBMS = એને manage કરતું software (MySQL, Oracle).
- DBMS માંથી જવું જ multi-user સુરક્ષા આપે છે જે એક spreadsheet માં નથી.
- યાદ રાખવાની યુક્તિ: user, slip, teller, તિજોરી, ફક્ત teller તિજોરીને અડે છે.