CouchDB తో మీ ఫ్లాస్క్ యాప్‌ను ఎలా కనెక్ట్ చేయాలి: NoSQL డేటాబేస్

CouchDB తో మీ ఫ్లాస్క్ యాప్‌ను ఎలా కనెక్ట్ చేయాలి: NoSQL డేటాబేస్

పోస్ట్‌గ్రెస్‌స్క్యూఎల్ మరియు ఎస్‌క్యూలైట్ వంటి ఎస్‌క్యూఎల్ డేటాబేస్‌లతో ఫ్లాస్క్‌ను కనెక్ట్ చేయడం ఒక చిన్చ్. కానీ ఫ్రేమ్‌వర్క్ కౌచ్‌డిబి వంటి NoSQL డేటాబేస్‌లతో ఖచ్చితంగా సమకాలీకరిస్తుంది. మరియు అదనపు ప్రయోజనంగా, మీరు CouchDB ని ఫ్లాస్క్‌తో ఉపయోగించినప్పుడు మీ డేటాను సులభంగా ప్రశ్నించవచ్చు.





మీ ఫ్లాస్క్ యాప్‌తో కౌచ్‌డిబి వంటి NoSQL ని ఉపయోగించి మార్పు చేయడానికి సిద్ధంగా ఉన్నారా? మీ స్థానిక మెషీన్‌లో కౌచ్‌డిబిని ఎలా సెట్ చేయాలో మరియు దానిని ఫ్లాస్క్‌తో ఎలా కనెక్ట్ చేయాలో ఇక్కడ ఉంది.





కౌచ్‌డిబి అంటే ఏమిటి?

CouchDB అనేది ప్రస్తుతం అపాచీ సాఫ్ట్‌వేర్ ఫౌండేషన్ యాజమాన్యంలోని NoSQL డేటాబేస్. ఎర్లాంగ్‌తో వ్రాసిన ఈ సాఫ్ట్‌వేర్ 2005 లో మొదటిసారిగా విడుదలైంది.





మీరు ఎక్కువగా ఉపయోగించే సాధారణ టేబుల్-లింక్డ్ డేటాబేస్‌ల మాదిరిగా కాకుండా, కౌచ్‌డిబి అనేది ముడి JSON గా డేటాను నిల్వ చేసే సంబంధం లేని డేటాబేస్ నిర్వహణ వ్యవస్థ.

కౌచ్‌డిబి నిరోధించబడదు, కాబట్టి ఇది డేటా ఇన్‌పుట్ సమయంలో డేటాబేస్‌ను లాక్ చేయదు. కౌచ్‌డిబి యొక్క బలమైన పాయింట్‌లలో ఒకటి, డేటాను చదవడానికి మరియు వ్రాయడానికి ఇది బహుళ-వెర్షన్ సమన్వయ నియంత్రణ విధానాన్ని ఉపయోగిస్తుంది. కనుక ఇది డేటాబేస్‌లోని డేటా యొక్క ప్రస్తుత నిర్మాణం నుండి జోక్యం చేసుకోకుండా బహుళ వినియోగదారుల నుండి ఏకకాలంలో ఇన్‌పుట్‌లను అనుమతిస్తుంది.



అందువలన, కౌచ్‌డిబి ప్రశ్నల సమయంలో వేగంగా ఉంటుంది మరియు అసమకాలిక పద్ధతులను ఉపయోగిస్తున్నప్పుడు పని చేయడం సులభం. ఇది దాని SQL కౌంటర్ కంటే మెరుగైనది కాదు. ప్రతి టెక్నాలజీకి దాని లాభాలు మరియు నష్టాలు ఉన్నాయి.

CouchDB సెటప్

కౌచ్‌డిబిని ఉపయోగించడం ప్రారంభించడానికి, నుండి అనుకూల వెర్షన్‌ను డౌన్‌లోడ్ చేసి, ఇన్‌స్టాల్ చేయండి కౌచ్‌డిబి యొక్క అధికారిక వెబ్‌సైట్ .





మరియు ఆ తాజా వెర్షన్ మీకు పని చేయకపోతే, దానికి వెళ్లండి CouchDB ఆర్కైవ్ మరియు డౌన్‌లోడ్ వెర్షన్ 1.6.1, ఇది కౌచ్‌డిబి యొక్క మునుపటి వెర్షన్.

మీరు కౌచ్‌డిబిని ఇన్‌స్టాల్ చేసిన తర్వాత, మీ PC లో ఇతర డెస్క్‌టాప్ యాప్‌ల వలె దీన్ని అమలు చేయండి.





మీ బ్రౌజర్‌ని తెరవండి. మీ చిరునామా పట్టీలో కింది వాటిని అతికించడం ద్వారా కౌచ్‌డిబి సర్వర్‌ను ప్రారంభించండి:

http://localhost:5984/_utils/index.html

పైథాన్ మరియు ఫ్లాస్క్‌ను సెటప్ చేయండి

అయితే, ఈ ట్యుటోరియల్, మీరు ఇప్పటికే మీ PC లో పైథాన్‌ను ఇన్‌స్టాల్ చేశారని ఊహిస్తుంది. లేకపోతే, వెళ్ళండి python.org మరియు మీ PC లో పైథాన్ యొక్క తాజా వెర్షన్‌ని ఇన్‌స్టాల్ చేయండి.

మీరు కౌచ్‌డిబిని సెటప్ చేసిన తర్వాత, ప్రాజెక్ట్ రూట్ ఫోల్డర్‌ను సృష్టించండి. ఆ డైరెక్టరీకి మీ కమాండ్ లైన్‌ని తెరిచి a ని సృష్టించండి పైథాన్ వర్చువల్ ఎన్విరాన్మెంట్ .

ఉపయోగించి వర్చువల్ స్పేస్‌లో ఫ్లాస్క్ యొక్క తాజా వెర్షన్‌ని ఇన్‌స్టాల్ చేయండి గొట్టం :

విండోస్ 10 ఫైల్ ఫైల్ ఐకాన్ మార్చండి
pip install flask

CouchDB తో ఫ్లాస్క్‌ను కనెక్ట్ చేయండి

మీ ఫ్లాస్క్ యాప్‌తో కౌచ్‌డిబిని ఉపయోగించడం ప్రారంభించడానికి, ఇన్‌స్టాల్ చేయండి ఫ్లాస్క్-కౌచ్‌డిబి , డేటాబేస్‌ను ఫ్లాస్క్‌తో కనెక్ట్ చేయడానికి రన్‌టైమ్ ప్యాకేజీ.

ఇది చేయుటకు:

pip install Flask-CouchDB

మీరు ఇన్‌స్టాల్ చేసిన తర్వాత ఫ్లాస్క్-కౌచ్‌డిబి విజయవంతంగా, ఒక సృష్టించు app.py ఆ రూట్ ఫోల్డర్‌లో ఫైల్. అదేవిధంగా, a ని సృష్టించండి database.py ఫైల్ - ఇది మీ డేటాబేస్ సృష్టిని నిర్వహిస్తుంది.

తెరవండి database.py మరియు క్రింది ప్యాకేజీలను దిగుమతి చేయండి:

from couchdb import Server

తరువాత, కింది బ్లాక్‌ని ఉపయోగించి అదే ఫైల్‌లో మీ డేటాబేస్‌ను సృష్టించండి:

from couchdb import Server
server = Server()
db = server.create('muocouch')

అమలు database.py CLI ద్వారా. మీరు ఇంతకు ముందు చేసినట్లుగా మీ బ్రౌజర్ ద్వారా కౌచ్‌డిబి యొక్క స్థానిక సర్వర్‌ను తెరవండి లేదా రిఫ్రెష్ చేయండి. మీరు ఇప్పుడు డేటాబేస్ చూడాలి ( muocouch ఈ సందర్భంలో) కౌచ్‌డిబిలో జాబితా చేయబడింది.

సంబంధిత: పైథాన్ స్క్రిప్ట్‌ను ఎలా అమలు చేయాలి

గమనిక: కౌచ్‌డిబి ఎగువ లేదా మిశ్రమ కేసులను ఆమోదించకపోవచ్చు కాబట్టి, డేటాబేస్‌ల కోసం మీరు లోయర్-కేస్ నామకరణ కన్వెన్షన్‌ను ఉపయోగిస్తున్నారని నిర్ధారించుకోండి.

ఫ్లాస్క్ ఉపయోగించి మీ మొదటి కౌచ్‌డిబి డేటాను నిల్వ చేయండి

అంతిమంగా, ఏదైనా డేటాబేస్ యొక్క ప్రయోజనం డేటా నిల్వ. మీరు కౌచ్‌డిబిలో డేటాబేస్ కలిగి ఉన్న తర్వాత, మీరు మీ ఫ్లాస్క్ యాప్ నుండి డేటాను నిల్వ చేయడం ప్రారంభించవచ్చు.

ప్రారంభించడానికి, తెరవండి app.py మరియు క్రింది ప్యాకేజీలను దిగుమతి చేయండి:

from flask import Flask
from couchdb import Server
from flaskext.couchdb import Document

తరువాత, ఫ్లాస్క్ యాప్ మరియు కౌచ్‌డిబి సర్వర్ ఉదాహరణను సృష్టించండి:

app = Flask(__name__, static_url_path='/static')
app.debug=True
server = Server()

ఇప్పుడు CouchDB లో కొన్ని యూజర్ ఇన్‌పుట్‌లను స్టోర్ చేద్దాం:

@app.route('/', methods=['GET', 'POST'])
def register():
user = {
'username':'media site',
'email':'justmail@gmail.com',
'password':'encrypteddata'
}
db = server['muocouch'] #select the database
doc_id, doc_rev = db.save(user) #store your data in th database
return '

Your data should now be in the database

'

మీకు కావాలంటే, మీ ఫ్లాస్క్ సర్వర్‌ని అమలు చేయడానికి ముందు డెవలప్‌మెంట్ మోడ్‌కు సెట్ చేయవచ్చు.

దీన్ని చేయడానికి, మీ CLI ద్వారా కింది ఆదేశాన్ని అమలు చేయండి:

set FLASK_ENV=development

సర్వర్ మోడ్ సెట్ చేయడం ఐచ్ఛికం అని గమనించండి. ఇది మీ కోడ్‌ని డీబగ్గింగ్ మాత్రమే ఇబ్బంది లేకుండా చేస్తుంది.

సర్వర్ మోడ్ సెట్టింగ్‌తో సంబంధం లేకుండా, CMD ద్వారా ఫ్లాస్క్ సర్వర్‌ను ఎలా ప్రారంభించాలో ఇక్కడ ఉంది:

flask run

అయితే, ఫ్లాస్క్ మీ పోర్టును డిఫాల్ట్ చేస్తుంది స్థానిక హోస్ట్: 5000 . మీరు ఇప్పుడు సందేశాన్ని చూడాలి H2 మీరు మీ బ్రౌజర్ ద్వారా ఈ చిరునామాను లోడ్ చేసిన తర్వాత ట్యాగ్ చేయండి.

కౌచ్‌డిబి ప్రశ్నలను ఉపయోగించి డేటాను ధృవీకరించండి మరియు నకిలీలను తనిఖీ చేయండి

దీన్ని మరింత ప్రామాణీకరించడానికి, మీరు ఇన్‌పుట్‌లను ధృవీకరించడానికి మరియు మీ డేటాబేస్‌లో నకిలీలను నిరోధించడానికి ప్రశ్నలను ఉపయోగించవచ్చు. కౌచ్‌డిబిని ప్రశ్నించడం మీరు ఎస్‌క్యూఎల్ డేటాబేస్‌లతో దీన్ని ఎలా చేస్తారు అనే దాని నుండి కొంచెం భిన్నంగా ఉంటుంది.

CouchDB డేటాబేస్ నుండి డేటాను ప్రశ్నించడానికి 'జావాస్క్రిప్ట్ వీక్షణలు' అని పిలుస్తుంది. అదృష్టవశాత్తూ, ఇది సాపేక్షంగా సులభం.

మీరు మరింత ముందుకు వెళ్లే ముందు, ప్రాథమిక కౌచ్‌డిబి ప్రశ్న వీక్షణ ఎలా ఉంటుందో ఇక్కడ ఉంది:

map_func = '''function(doc)
{ emit(doc.doc_rev, doc); }'''
myQuery = [docType].query(db, map_func, reduce_fun=None)

ఇప్పుడు పై కోడ్‌ని ఆచరణాత్మకంగా ఉపయోగిద్దాం:

#Create a document object model called ' Users :'
class User(Document):
doc_type = 'User'
@app.route('/', methods=['GET', 'POST'])
def register():
user = {
'username':'media site',
'email':'justmail@gmail.com',
'password':'encrypteddata'
}
db = server['muocouch'] #select the database
# Use the view function to fetch your data from CouchDB
map_func = '''function(doc)
{ emit(doc.doc_rev, doc); }'''
# Get all the data by running a query set
myQuery = User.query(db, map_func, reduce_fun=None, reverse=True)
q = [i['username'] for i in myQuery] # Loop out all the usernames from the database
q2 = [i['email'] for i in myQuery] # Loop out all the email addresses from the database
q3 = q+q2 # Merge both queries into a single list
print(q3)
return '

Your data is now in the database

'

పై కోడ్ దీనిని ఉపయోగిస్తుంది వినియోగదారు వీక్షణ ఫంక్షన్ ద్వారా పొందిన డేటాను ప్రశ్నించడానికి తరగతి. ప్రశ్న సెట్‌లోని పారామీటర్‌లపై చాలా శ్రద్ధ వహించండి ( myQuery ).

ప్రింటింగ్ q3 , మీరు పైన చేసినట్లుగా, ఇప్పుడు కమాండ్ లైన్‌లోని డేటాబేస్‌లోని అన్ని యూజర్ పేర్లు మరియు ఇమెయిల్ చిరునామాలను అవుట్‌పుట్ చేయాలి.

వినియోగదారుల ఇన్‌పుట్‌లను ధృవీకరించడానికి మీరు ఈ ప్రశ్నను ఎలా ఉపయోగించవచ్చో ఇక్కడ ఉంది:

if not (user['username'] in q3 or user['email'] in q3):
#store your data into the database if itdoesn't exist
doc_id, doc_rev = db.save(user)
return '

Registered successfully

'
else:
return '

Username or email exists

'

మీ బ్రౌజర్‌ని రిఫ్రెష్ చేయడం ద్వారా తిరిగి వస్తుంది లేకపోతే స్టేట్‌మెంట్ ప్రతిసారీ మీరు డేటాబేస్‌లో ఇప్పటికే ఒక యూజర్ పేరు లేదా ఇమెయిల్‌ను ఇన్‌పుట్ చేయడానికి ప్రయత్నిస్తారు. మరియు మీరు కొత్తదాన్ని నమోదు చేస్తున్నట్లయితే, అది అమలు చేయడం ద్వారా మీ డేటాను విజయవంతంగా నిల్వ చేస్తుంది ఉంటే పరిస్థితి.

సంబంధిత: స్టేట్‌మెంట్ ఉంటే పైథాన్‌ను ఎలా ఉపయోగించాలి

అంతే! మీరు మీ మొదటి NoSQL డేటాబేస్‌ను ఫ్లాస్క్-కౌచ్‌డిబి ఉపయోగించి సృష్టించారు.

కౌచ్‌డిబిలో డేటాబేస్‌లను సృష్టించడం మరియు ప్రశ్నించడం మేము ఇక్కడ హైలైట్ చేసిన ఉదాహరణల చుట్టూ తిరుగుతున్నప్పటికీ, మీరు ఫ్లాస్క్ యొక్క కార్యాచరణలను మరింతగా తెలుసుకోవచ్చు. ఉదాహరణకు, మీరు ఉపయోగించి ఇన్‌పుట్ ఫీల్డ్‌లను స్పిన్ చేయవచ్చు wtforms మరియు ఫ్లాస్క్ సందేశాన్ని ఉపయోగించి నకిలీలను ఫ్లాగ్ చేయండి ఫ్లాష్ .

ఇన్‌పుట్‌లను ధృవీకరించడానికి మరియు నకిలీలను అసమకాలికంగా తనిఖీ చేయడానికి మీరు మీ ప్రశ్నను జావాస్క్రిప్ట్ యొక్క j క్వెరీకి కూడా పంపవచ్చు.

SQL డేటాబేస్‌ల కంటే CouchDB మెరుగైనదా?

CouchDB లేదా ఫ్లాస్క్ లేదా ఇతర ప్రోగ్రామింగ్ టెక్నాలజీతో ఏ ఇతర NoSQL డేటాబేస్ ఉపయోగించి మీ ప్రాధాన్యతపై ఆధారపడి ఉంటుంది. స్ట్రక్చర్‌లెస్ డేటా మరియు ముడి మీడియాతో వ్యవహరించేటప్పుడు ఇది ఉపయోగపడుతుంది.

మీరు నిర్ణయించుకునే ముందు, మీ ప్రాజెక్ట్‌కు ఏది సరిపోతుందో నిర్ణయించడంలో మీకు సహాయపడటానికి మీరు NoSQL మరియు SQL డేటాబేస్‌ల మధ్య తేడాలను చూడాలనుకోవచ్చు.

షేర్ చేయండి షేర్ చేయండి ట్వీట్ ఇమెయిల్ SQL వర్సెస్ NoSQL: మీ తదుపరి ప్రాజెక్ట్ కోసం ఉత్తమ డేటాబేస్ ఏమిటి?

డేటాబేస్ రకాన్ని ఎంచుకోవడం గమ్మత్తైనది. మీరు SQL లేదా NoSQL ని ఎంచుకోవాలా?

తదుపరి చదవండి
సంబంధిత అంశాలు
  • ప్రోగ్రామింగ్
  • డేటాబేస్
  • ప్రోగ్రామింగ్
  • కోడింగ్ ట్యుటోరియల్స్
రచయిత గురుంచి ఇదిసౌ ఒమిసోలా(94 కథనాలు ప్రచురించబడ్డాయి)

ఇడోవు ఏదైనా స్మార్ట్ టెక్ మరియు ఉత్పాదకతపై మక్కువ చూపుతుంది. తన ఖాళీ సమయంలో, అతను కోడింగ్‌తో ఆడుతాడు మరియు అతను విసుగు చెందినప్పుడు చెస్‌బోర్డ్‌కు మారతాడు, కానీ అతను ఒక్కోసారి రొటీన్ నుండి దూరంగా ఉండడాన్ని కూడా ఇష్టపడతాడు. ఆధునిక సాంకేతిక పరిజ్ఞానం చుట్టూ ప్రజలకు మార్గం చూపించాలనే అతని అభిరుచి అతన్ని మరింత రాయడానికి ప్రేరేపిస్తుంది.

ఇడోవు ఒమిసోలా నుండి మరిన్ని

మా వార్తాలేఖకు సభ్యత్వాన్ని పొందండి

టెక్ చిట్కాలు, సమీక్షలు, ఉచిత ఈబుక్‌లు మరియు ప్రత్యేకమైన డీల్స్ కోసం మా వార్తాలేఖలో చేరండి!

సభ్యత్వం పొందడానికి ఇక్కడ క్లిక్ చేయండి