1.1 ఉపన్యాసాల నిర్మాణం యొక్క సూత్రం
మీరు మరియు నేను దిగువ నుండి డేటాబేస్లతో మా పరిచయాన్ని ప్రారంభించాము . ఇది ప్రజలకు బోధించడానికి నా వ్యక్తిగత విధానం యొక్క లక్షణం. కొత్త అంశాల గురించి మాట్లాడేటప్పుడు, ఆచరణలో కొన్ని సాధనాలను ఎలా ఉపయోగించాలో నేను ఎల్లప్పుడూ మీకు చెప్తాను. మరియు వాటిని ఎలా ఉపయోగించాలో ఒక వ్యక్తికి తెలుసు అని నాకు తెలిసినప్పుడు, ప్రతిదీ ఎలా పనిచేస్తుందో నేను చెప్పడం ప్రారంభిస్తాను.
ఈ విధానానికి అనేక కారణాలు ఉన్నాయి, అయితే ప్రధానమైనది అభ్యాస ప్రక్రియలో అత్యంత విలువైన మరియు అత్యంత తప్పిపోయిన వనరు విద్యార్థి ప్రేరణ .
పాఠశాలలు మరియు విశ్వవిద్యాలయాలలో ఉపయోగించే ఈ విధానం మనకు అలవాటుపడిన దాని నుండి కొద్దిగా భిన్నంగా ఉంటుంది. కానీ ప్రతిదీ స్పష్టంగా ఉంది: మీరు పాఠశాల లేదా విశ్వవిద్యాలయంలో చదువుతున్నప్పుడు, మీరు సరైన ప్రాధాన్యతలను కలిగి ఉంటారు: ఈ సమయంలో అధ్యయనం అనేది జీవితంలో అత్యంత ముఖ్యమైన విషయం.
మీరు యుక్తవయస్సులో స్వీయ-విద్యలో నిమగ్నమై ఉంటే, తరచుగా మీరు ఇప్పటికే మీ అధ్యయనాలను పని, ఇంటి పనులు, పిల్లలు లేదా వృద్ధ తల్లిదండ్రుల సంరక్షణతో మిళితం చేయాలి. మరియు ఇక్కడ తరచుగా అధ్యయనానికి మొదటి ప్రాధాన్యత ఉండదు.
ఇదంతా ప్రాధాన్యతల గురించి. స్టార్టప్ల ప్రపంచంలో అటువంటి భావన కూడా ఉంది - ఫాస్ట్గా విఫలం, వీలైనంత త్వరగా విఫలం . ఇది వింతగా అనిపిస్తుంది, కానీ వాస్తవానికి ఇది చాలా అర్ధమే: స్టార్టప్ యొక్క పని అతని పరికల్పన సరైనదేనా అని త్వరగా తనిఖీ చేయడం. మరియు ఇది నిజం కాకపోతే, మీరు మీ జీవితంలోని సంవత్సరాలను దానిపై గడపవలసిన అవసరం లేదు, ఒక నిర్దిష్ట సేవ లేదా ఉత్పత్తికి డిమాండ్ లేదని వీలైనంత త్వరగా అర్థం చేసుకోవడం మంచిది.
జావా మరియు SQL బోధించేటప్పుడు, నేను అదే విధానాన్ని ఉపయోగిస్తాను: మీరు ప్రోగ్రామింగ్ నుండి పరుగెత్తుతున్నారా లేదా అనే విషయాన్ని వీలైనంత త్వరగా అర్థం చేసుకోవడానికి నేను మీకు అవకాశం ఇస్తాను . మీరు ప్రోగ్రామింగ్ను ఇష్టపడితే మరియు లూప్లు మరియు శ్రేణులతో ఎలా పని చేయాలో మీరే గుర్తించగలిగితే, సలహాదారుల సహాయంతో మరియు చక్కగా రూపొందించబడిన ప్రోగ్రామ్తో, మీ అధ్యయనాలను పూర్తి చేయడానికి మరియు ఉద్యోగాన్ని కనుగొనడానికి మీకు ప్రతి అవకాశం ఉంది.
కానీ మరొక వాస్తవం తక్కువ ముఖ్యమైనది కాదు: కొన్ని రోజుల సెలవులో, ప్రోగ్రామింగ్ మీ కోసం కాదని మీరు అర్థం చేసుకోవచ్చు. మీకు దానిపై ఆసక్తి ఉండకపోవచ్చు మరియు అది సరే . కాబట్టి, మీరు మీ జీవితంలోని నెలలు దాని కోసం గడపవలసిన అవసరం లేదు.
కేవలం 40% గ్రాడ్యుయేట్లు విశ్వవిద్యాలయంలో వారు పొందిన ప్రత్యేకతలో పని చేస్తారు. దాని గురించి ఆలోచించండి, ప్రజలు 5-6 సంవత్సరాలు చదువుకున్నారు, మరియు వారిలో 60% మంది తమ ప్రత్యేకతలో పని చేయకూడదని నిర్ణయించుకున్నారు. అవును, సంపాదించిన జ్ఞానంలో కొంత భాగం ఇప్పటికీ ఉపయోగించబడుతోంది, కానీ దానిలో సగం లేదు.
ఇది ఫెయిల్ ఫాస్ట్ భావన యొక్క విలువ - ఒక నిర్దిష్ట వృత్తి, నిర్దిష్ట వ్యక్తి లేదా నిర్దిష్ట అభిరుచి మీకు సరిపోదని వీలైనంత త్వరగా అర్థం చేసుకోవడం. మరియు వారి కోసం మీ సమయాన్ని మరియు శక్తిని వృధా చేయవద్దు. దీర్ఘకాలంలో, ఇది చాలా మంచి వ్యూహం.
1.2 SQL మరియు అన్నీ, అన్నీ, అన్నీ
మేము తాత్విక పరిచయంతో పూర్తి చేసాము, SQL నేర్చుకోవడానికి తిరిగి వద్దాం.
SQL భాష మరియు DBMS కొద్దిగా భిన్నమైన విషయాలు. SQL భాష అనేది డేటాబేస్కు SQL ప్రశ్నలలో ఏమి వ్రాయవచ్చో వివరించే ఒక రకమైన ప్రమాణం. DBMS ఇప్పటికే ఈ ప్రమాణాన్ని అమలు చేస్తోంది. కొన్ని DBMS ప్రమాణం యొక్క కొన్ని విధులను అమలు చేస్తుంది, రెండవది - ఇతరులు మరియు మొదలైనవి.
DBMS మరింత ఖరీదైనది, అది అమలు చేసే ప్రమాణం యొక్క మరిన్ని ఫీచర్లు. అలాగే, అనేక DBMSలు తరచుగా SQL ప్రమాణాల వెలుపల తమ స్వంత ప్రత్యేక లక్షణాలను అమలు చేస్తాయి. కొన్నిసార్లు ఇది పోర్టబిలిటీ సమస్యలకు దారితీస్తుంది: ఒక DBMS కోసం వ్రాసిన SQL ప్రశ్నలు మరొకదానికి సరిగ్గా పని చేయకపోవచ్చు.
జావాలో కూడా ఇదే పరిస్థితి ఉంది. జావా ప్రోగ్రామ్ విండోస్ కింద వ్రాసినట్లయితే, అది సాధారణంగా Linuxలో పని చేయదు. ఈ సమస్యను పరిష్కరించడానికి, జావా వివిధ ఆపరేటింగ్ సిస్టమ్ల కోసం వేర్వేరు అమలులను కలిగి ఉన్న ప్రత్యేక తరగతులను పరిచయం చేస్తుంది. ఉదాహరణ: WindowsPath, LinuxPath మొదలైన వాటి అమలులను కలిగి ఉన్న పాత్ క్లాస్.
సమస్య యొక్క రెండవ భాగం సంస్కరణ సహాయంతో పరిష్కరించబడుతుంది. వివిధ భాషలు లేదా DBMS నుండి అన్ని విజయవంతమైన ఆవిష్కరణలు కొత్త JDK లేదా SQL ప్రమాణానికి జోడించబడ్డాయి. JDK యొక్క విభిన్న సంస్కరణలు ఉన్నాయని మీకు ఇప్పటికే తెలుసు, మరియు కొత్త వెర్షన్, అది మరిన్ని లక్షణాలను కలిగి ఉంటుంది. SQLతో కూడా అదే.
SQL భాషలో, దాని ప్రమాణం యొక్క అనేక సంస్కరణలు ఉన్నాయి, అవి సంవత్సరానికి పేరు పెట్టబడ్డాయి:
- SQL:1999
- SQL:2003
- SQL:2006
- SQL:2011
- SQL:2016
- SQL:2019
శుభవార్త : మేము ఈ ప్రమాణాలను అధ్యయనం చేయము. మొదట, వీటన్నింటిని అధ్యయనం చేయడానికి మరియు నైపుణ్యం పొందడానికి సంవత్సరాలు పడుతుంది. మరియు రెండవది, ఈ ప్రమాణాలు Android యొక్క సంస్కరణల వలె ఉంటాయి: విడుదలైన 5-10 సంవత్సరాల తర్వాత మాత్రమే, ప్రమాణం భారీగా విస్తృతంగా మారింది.
పెద్ద మొత్తంలో డేటా ఉన్న డేటాబేస్లలో, వ్యక్తులకు విశ్వసనీయత మరియు స్థిరత్వం అవసరం. "ఇది పనిచేస్తుంది, దానిని తాకవద్దు" అనేది డేటాబేస్లతో పనిచేసే ప్రతి ఒక్కరి నినాదం. మరియు డేటాబేస్ల యొక్క కొత్త సంస్కరణకు పరివర్తన ప్రతి 5 సంవత్సరాలకు ఒకసారి జరుగుతుంది, అటువంటి పరిష్కారం యొక్క అన్ని ప్రయోజనాలు ఇప్పటికే స్పష్టంగా ఉన్నప్పుడు.
1.3 బ్రాకెట్లు దాటి
నేను పైన చెప్పినట్లుగా, డేటాబేస్ ప్రొఫెషనల్గా మారడానికి సంవత్సరాలు పడుతుంది. ఒక ప్రొఫెషనల్కి మనం అధ్యయనం చేయని చాలా విషయాలు తెలుసు. కానీ డేటాబేస్లలో ఇంకా ఏమి ఉందో నేను కొంచెం మాట్లాడతాను.
దాదాపు అన్ని ఆధునిక డేటాబేస్లు మద్దతిస్తాయి:
1 విధానపరమైన భాష (PL)
RDBMS SQL సర్వర్లో అమలు చేసే విధానాలు మరియు విధులను వ్రాయగల సామర్థ్యానికి మద్దతు ఇస్తుంది మరియు ప్రశ్నల సమయంలో డేటాతో చాలా పనులు చేయగలదు. ఉదాహరణకు, ఒకసారి నేను ఒరాకిల్ సర్వర్కు PL SQL ప్రశ్నలను వ్రాసాను, ఇది ఉత్పత్తి చేయబడిన ప్రశ్నకు ప్రతిస్పందనగా ... డేటాతో కూడిన HTML పేజీ. మీరు చెయ్యవచ్చు అవును.
2 ఈవెంట్లు (ట్రిగ్గర్స్)
అన్ని ఆధునిక DBMS సంఘటనల యంత్రాంగానికి మద్దతు ఇస్తుంది, వీటిని SQL భాషలో ట్రిగ్గర్లు అంటారు. కొన్ని చర్యకు ప్రతిస్పందనగా ట్రిగ్గర్ ఏర్పడుతుంది. ఉదాహరణకు, మీరు డేటాబేస్కు వ్రాయడానికి అన్ని ప్రయత్నాలను అడ్డగించవచ్చు మరియు కొత్త లైన్లకు వారి మార్పు యొక్క ఖచ్చితమైన సమయాన్ని జోడించవచ్చు.
3 లాగింగ్
ఆధునిక డేటాబేస్లు చాలా వేగంగా ఉండటానికి ప్రయత్నిస్తాయి, కాబట్టి తరచుగా అన్ని మార్పులు (కొత్త అడ్డు వరుసలు, తొలగించబడిన అడ్డు వరుసలు, మార్చబడిన అడ్డు వరుసలు) మొదట లాగ్ అని పిలువబడే ప్రత్యేక ఫైల్కు వ్రాయబడతాయి. మరియు కొంత సమయం తర్వాత మాత్రమే, SQL సర్వర్ ఈ రికార్డులను ప్రధాన డేటాబేస్తో విలీనం చేస్తుంది.
కొన్ని మార్గాల్లో, ఇది జావాలోని చెత్త కలెక్టర్ యొక్క ప్రవర్తనను పోలి ఉంటుంది: ఇది మొదట తొలగించబడిన వస్తువులను కూడా సూచిస్తుంది మరియు నిష్క్రియ సమయాల్లో మెమరీ క్లీనప్ మరియు ఆప్టిమైజేషన్ను నిర్వహిస్తుంది.
4 ప్లగిన్లు
DBMSకి, అలాగే అనేక ప్రోగ్రామ్లకు, మీరు మీ స్వంత ప్లగిన్లను వ్రాయవచ్చు. ఇటువంటి ప్లగిన్లు ప్రత్యేకమైన డేటా రకాలను, వాటితో పని చేయడానికి ఫంక్షన్లను జోడించడానికి లేదా DBMS యొక్క ప్రామాణిక ప్రవర్తనను మార్చడానికి మిమ్మల్ని అనుమతిస్తాయి. మీరు ఓపెన్ సోర్స్ డేటాబేస్తో పని చేస్తున్నప్పుడు మరియు కొన్ని బగ్లు ఉన్నప్పుడు ఇది ప్రత్యేకంగా ఉపయోగపడుతుంది.
5 పంపిణీ చేయబడిన పని (సమూహాలు)
ఆధునిక SQL సర్వర్ కోసం ఒక సాధారణ దృశ్యం అనేక సర్వర్ల క్లస్టర్. డేటాను ఒక సర్వర్కి వ్రాసి, సర్వర్ల సమూహం నుండి చదవడం సరళమైన ఎంపిక. ఈ సందర్భంలో, మీరు SQL సర్వర్ల మధ్య డేటాబేస్ సమకాలీకరణ కోసం వివిధ దృశ్యాలను కాన్ఫిగర్ చేయవచ్చు.
6 షార్డింగ్
చాలా డేటా ఉన్నప్పుడు, అవి వేర్వేరు డేటాబేస్లుగా విభజించబడటం ప్రారంభిస్తాయి. ఒక టేబుల్ వేర్వేరు డేటాబేస్లలో భాగాలలో నిల్వ చేయబడుతుందనే వాస్తవం వరకు.
షార్డింగ్ నిలువుగా మరియు క్షితిజ సమాంతరంగా ఉంటుంది. వర్టికల్ షార్డింగ్ అంటే టేబుల్, నిలువు వరుసల ద్వారా కత్తిరించబడి ఉంటుంది, అయితే క్షితిజ సమాంతర షార్డింగ్ క్షితిజ సమాంతరంగా కత్తిరించబడుతుంది.
ఉదాహరణకు, మేము పట్టికలోని మొత్తం డేటాను సంవత్సరాల వారీగా విభజించాలని నిర్ణయించుకున్నాము: 2019 కోసం - ఒక టేబుల్, 2020 డేటా కోసం - రెండవది మరియు మొదలైనవి. ఇది హారిజాంటల్ షార్డింగ్ అవుతుంది.
7 నాన్-షవ్ త్రో
డేటాబేస్ల అభివృద్ధిలో ఒక నిర్దిష్ట దశలో, వాటికి మరింత ఎక్కువ వ్యాపార తర్కం జోడించడం ప్రారంభమైంది. ఇది అన్ని విధానాలు, విధులు, సర్వర్ల ద్వారా వెబ్ పేజీలను రూపొందించడం మరియు DBMSకి దాదాపు అన్ని ప్రముఖ భాషలకు మద్దతుతో ముగుస్తుంది: పైథాన్, జావాస్క్రిప్ట్ మరియు జావా మరియు సి ++.
మీరు వివరాలను పొందడం ప్రారంభించే వరకు బాగుంది: మీరు నిజంగా జావాలో మీ వెబ్ అప్లికేషన్ బిజినెస్ లాజిక్ని వ్రాయాలనుకుంటున్నారా, ఇది SQL సర్వర్లో అమలు చేయబడుతుంది, ఇక్కడ JDK, జావా లైబ్రరీలు, ఫ్రేమ్వర్క్లు, తక్కువ మెమరీ మరియు చాలా ఎక్కువ ఇతర పరిమితులు?
GO TO FULL VERSION