உங்கள் ஃப்ளாஸ்க் பயன்பாட்டை CouchDB உடன் இணைப்பது எப்படி: NoSQL தரவுத்தளம்

உங்கள் ஃப்ளாஸ்க் பயன்பாட்டை CouchDB உடன் இணைப்பது எப்படி: NoSQL தரவுத்தளம்

PostgreSQL மற்றும் SQLite போன்ற SQL தரவுத்தளங்களுடன் பிளாஸ்கை இணைப்பது ஒரு சிஞ்ச். ஆனால் கட்டமைப்பானது CouchDB போன்ற NoSQL தரவுத்தளங்களுடன் சரியாக ஒத்திசைக்கிறது. கூடுதல் நன்மையாக, நீங்கள் ஃபிளாஸ்குடன் CouchDB ஐப் பயன்படுத்தும் போது உங்கள் தரவை எளிதாகக் கேட்கலாம்.





உங்கள் ஃப்ளாஸ்க் செயலியுடன் CouchDB போன்ற NoSQL ஐப் பயன்படுத்தி மாற்றத்தைச் செய்யத் தயாரா? உங்கள் உள்ளூர் கணினியில் CouchDB ஐ எவ்வாறு அமைப்பது மற்றும் ஃப்ளாஸ்குடன் இணைப்பது எப்படி என்பது இங்கே.





CouchDB என்றால் என்ன?

CouchDB என்பது தற்போது அப்பாச்சி மென்பொருள் அறக்கட்டளைக்கு சொந்தமான NoSQL தரவுத்தளமாகும். எர்லாங்கால் எழுதப்பட்ட இந்த மென்பொருள் முதன்முதலில் 2005 இல் வெளியிடப்பட்டது.





வழக்கமான அட்டவணை இணைக்கப்பட்ட தரவுத்தளங்களைப் போலல்லாமல், CouchDB என்பது தொடர்பற்ற தரவுத்தள மேலாண்மை அமைப்பாகும், இது தரவை மூல JSON ஆக சேமிக்கிறது.

CouchDB தடுக்காதது, எனவே தரவு உள்ளீட்டின் போது அது தரவுத்தளத்தை பூட்டாது. CouchDB இன் வலுவான புள்ளிகளில் ஒன்று, தரவைப் படிக்கவும் எழுதவும் பல பதிப்பு இணக்கக் கட்டுப்பாட்டு கொள்கையைப் பயன்படுத்துகிறது. எனவே தரவுத்தளத்தில் இருக்கும் தரவின் கட்டமைப்பில் குறுக்கீடு இல்லாமல் பல பயனர்களிடமிருந்து ஒரே நேரத்தில் உள்ளீடுகளை இது அனுமதிக்கிறது.



இவ்வாறு, CouchDB வினவல்களின் போது வேகமானது மற்றும் ஒத்திசைவற்ற முறைகளைப் பயன்படுத்தும் போது வேலை செய்வது எளிது. இது அதன் SQL எண்ணை விட சிறந்தது அல்ல. ஒவ்வொரு தொழில்நுட்பத்திற்கும் அதன் நன்மை தீமைகள் உள்ளன.

CouchDB அமைக்கவும்

CouchDB ஐப் பயன்படுத்தத் தொடங்க, இதிலிருந்து இணக்கமான பதிப்பைப் பதிவிறக்கி நிறுவவும் CouchDB இன் அதிகாரப்பூர்வ வலைத்தளம் .





அந்த சமீபத்திய பதிப்பு உங்களுக்கு வேலை செய்யவில்லை என்றால், தொடரவும் CouchDB காப்பகம் மற்றும் பதிப்பு 1.6.1 ஐ பதிவிறக்கவும், இது CouchDB இன் முந்தைய பதிப்பாகும்.

நீங்கள் CouchDB ஐ நிறுவியதும், வேறு எந்த டெஸ்க்டாப் செயலியைப் போலவே உங்கள் கணினியிலும் இயக்கவும்.





உங்கள் உலாவியைத் திறக்கவும். பின்வருவதை உங்கள் முகவரி பட்டியில் ஒட்டுவதன் மூலம் CouchDB இன் சேவையகத்தை துவக்கவும்:

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

பைதான் மற்றும் பிளாஸ்கை அமைக்கவும்

எவ்வாறாயினும், இந்த பயிற்சி, உங்கள் கணினியில் ஏற்கனவே பைதான் நிறுவப்பட்டிருப்பதாகக் கருதுகிறது. இல்லையெனில், செல்லவும் python.org உங்கள் கணினியில் பைத்தானின் சமீபத்திய பதிப்பை நிறுவவும்.

நீங்கள் CouchDB ஐ அமைத்தவுடன், ஒரு ப்ராஜெக்ட் ரூட் கோப்புறையை உருவாக்கவும். பின்னர் உங்கள் கட்டளை வரியை அந்த கோப்பகத்தில் திறந்து a ஐ உருவாக்கவும் பைதான் மெய்நிகர் சூழல் .

பயன்படுத்தி மெய்நிகர் இடத்தில் ஃப்ளாஸ்கின் சமீபத்திய பதிப்பை நிறுவவும் குழாய் :

தொலைபேசியிலிருந்து எஸ்டி கார்டுக்கு ஆப் மூவர்
pip install flask

ஃப்ளாஸ்கை CouchDB உடன் இணைக்கவும்

உங்கள் ஃப்ளாஸ்க் பயன்பாட்டின் மூலம் 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 வழியாக. நீங்கள் முன்பு செய்தது போல் உங்கள் உலாவி வழியாக CouchDB இன் உள்ளூர் சேவையகத்தைத் திறக்கவும் அல்லது புதுப்பிக்கவும். நீங்கள் இப்போது தரவுத்தளத்தைப் பார்க்க வேண்டும் ( muocouch இந்த வழக்கில்) CouchDB இல் பட்டியலிடப்பட்டுள்ளது.

தொடர்புடையது: பைதான் ஸ்கிரிப்டை இயக்குவது எப்படி

குறிப்பு: மேல் அல்லது கலப்பு வழக்குகளை CouchDB ஏற்காததால், தரவுத்தளங்களுக்காக ஒரு சிறிய வழக்கு பெயரிடும் மாநாட்டை நீங்கள் பயன்படுத்துகிறீர்கள் என்பதை உறுதிப்படுத்தவும்.

ஃபிளாஸ்கைப் பயன்படுத்தி உங்கள் முதல் CouchDB தரவைச் சேமிக்கவும்

இறுதியில், எந்த தரவுத்தளத்தின் நோக்கமும் தரவு சேமிப்பு ஆகும். நீங்கள் CouchDB இல் ஒரு தரவுத்தளத்தை வைத்தவுடன், உங்கள் ஃப்ளாஸ்க் பயன்பாட்டிலிருந்து தரவை உடனடியாக சேமிக்கத் தொடங்கலாம்.

தொடங்க, திறக்கவும் app.py மற்றும் பின்வரும் தொகுப்புகளை இறக்குமதி செய்யவும்:

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

அடுத்து, ஒரு ஃப்ளாஸ்க் ஆப் மற்றும் CouchDB சர்வர் நிகழ்வை உருவாக்கவும்:

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

சேவையக பயன்முறையை அமைப்பது விருப்பமானது என்பதை நினைவில் கொள்க. இது உங்கள் குறியீட்டை பிழைதிருத்தம் செய்வது தொந்தரவில்லாமல் செய்கிறது.

ஆனால் சேவையக பயன்முறை அமைப்பைப் பொருட்படுத்தாமல், சிஎம்டி வழியாக பிளாஸ்க் சேவையகத்தை எவ்வாறு தொடங்குவது என்பது இங்கே:

flask run

இருப்பினும், ஃப்ளாஸ்க் உங்கள் துறைமுகத்தை இயல்புநிலையாக மாற்றுகிறது உள்ளூர் ஹோஸ்ட்: 5000 . நீங்கள் இப்போது செய்தியை பார்க்க வேண்டும் எச் 2 உங்கள் உலாவி வழியாக இந்த முகவரியை ஏற்றியவுடன் டேக் செய்யவும்.

CouchDB வினவல்களைப் பயன்படுத்தி தரவைச் சரிபார்த்து நகல்களைச் சரிபார்க்கவும்

இதை மேலும் தரப்படுத்த, உள்ளீடுகளை சரிபார்க்க மற்றும் உங்கள் தரவுத்தளத்தில் நகல்களைத் தடுக்க வினவல்களைப் பயன்படுத்தலாம். CouchDB வினவல் SQL தரவுத்தளங்களுடன் இதை எப்படி செய்வது என்பதில் இருந்து சற்று வித்தியாசமானது.

CouchDB தரவுத்தளத்திலிருந்து தரவை விசாரிக்க 'ஜாவாஸ்கிரிப்ட் காட்சிகள்' என்று அழைப்பதை பயன்படுத்துகிறது. அதிர்ஷ்டவசமாக, இது ஒப்பீட்டளவில் எளிது.

நீங்கள் மேலும் முன்னேறுவதற்கு முன், ஒரு அடிப்படை 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

'

உங்கள் உலாவியைப் புதுப்பிப்பது திரும்பக் கொடுக்கும் வேறு ஒவ்வொரு முறையும் நீங்கள் தரவுத்தளத்தில் ஏற்கனவே ஒரு பயனர்பெயர் அல்லது மின்னஞ்சலை உள்ளிட முயற்சிக்கும்போது அறிக்கை. நீங்கள் புதிய ஒன்றை உள்ளிடுகிறீர்கள் என்றால், அதை செயல்படுத்துவதன் மூலம் உங்கள் தரவை வெற்றிகரமாக சேமிக்கிறது என்றால் நிலை.

தொடர்புடையது: அறிக்கை என்றால் பைத்தானை எப்படி பயன்படுத்துவது

அவ்வளவுதான்! Flask-CouchDB ஐப் பயன்படுத்தி உங்கள் முதல் NoSQL தரவுத்தளத்தை உருவாக்கியுள்ளீர்கள்.

CouchDB இல் தரவுத்தளங்களை உருவாக்குதல் மற்றும் வினவுவது நாம் இங்கு முன்னிலைப்படுத்திய உதாரணங்களைச் சுற்றி இருந்தாலும், நீங்கள் ஃபிளாஸ்கின் செயல்பாடுகளை மேலும் அறியலாம். உதாரணமாக, நீங்கள் உள்ளீட்டு புலங்களைப் பயன்படுத்தி சுழற்றலாம் wtforms மற்றும் ஃபிளாஸ்கின் செய்தியைப் பயன்படுத்தி நகல் கொடி ஃப்ளாஷ் .

உள்ளீடுகளைச் சரிபார்க்கவும் மற்றும் நகல்களை ஒத்திசைவற்ற முறையில் சரிபார்க்கவும் உங்கள் வினவலை ஜாவாஸ்கிரிப்டின் jQuery க்கு அனுப்பலாம்.

SQL தரவுத்தளங்களை விட CouchDB சிறந்ததா?

ஃபிளாஸ்க் அல்லது வேறு ஏதேனும் நிரலாக்க தொழில்நுட்பத்துடன் CouchDB அல்லது வேறு எந்த NoSQL தரவுத்தளத்தையும் பயன்படுத்துவது உங்கள் விருப்பத்தைப் பொறுத்தது. ஆனால் கட்டமைப்பு இல்லாத தரவு மற்றும் மூல ஊடகங்களைக் கையாளும் போது இது பயனுள்ளதாக இருக்கும்.

நீங்கள் முடிவு செய்வதற்கு முன், NoSQL மற்றும் SQL தரவுத்தளங்களுக்கிடையிலான வேறுபாடுகளை நீங்கள் பார்க்க விரும்பலாம், அவற்றில் எது உங்கள் திட்டத்திற்கு ஏற்றது என்பதைத் தீர்மானிக்க உதவும்.

பகிர் பகிர் ட்வீட் மின்னஞ்சல் SQL Vs. NoSQL: உங்கள் அடுத்த திட்டத்திற்கான சிறந்த தரவுத்தளம் எது?

ஒரு தரவுத்தள வகையைத் தேர்ந்தெடுப்பது தந்திரமானதாக இருக்கலாம். நீங்கள் SQL அல்லது NoSQL ஐ தேர்வு செய்ய வேண்டுமா?

அடுத்து படிக்கவும்
தொடர்புடைய தலைப்புகள்
  • நிரலாக்க
  • தரவுத்தளம்
  • நிரலாக்க
  • குறியீட்டு பயிற்சிகள்
எழுத்தாளர் பற்றி இடிசோ ஒமிசோலா(94 கட்டுரைகள் வெளியிடப்பட்டன)

இடோவு ஸ்மார்ட் தொழில்நுட்பம் மற்றும் உற்பத்தித்திறன் ஆகியவற்றில் ஆர்வம் கொண்டவர். அவரது ஓய்வு நேரத்தில், அவர் சலிப்படையும்போது குறியீட்டுடன் விளையாடுகிறார் மற்றும் சதுரங்கப் பலகைக்கு மாறுகிறார், ஆனால் அவர் எப்போதாவது வழக்கத்திலிருந்து விலகிச் செல்ல விரும்புகிறார். நவீன தொழில்நுட்பத்தை மக்களுக்கு காட்டும் ஆர்வம் அவரை மேலும் எழுத தூண்டுகிறது.

இடோவு ஒமிசோலாவில் இருந்து மேலும்

எங்கள் செய்திமடலுக்கு குழுசேரவும்

தொழில்நுட்ப குறிப்புகள், மதிப்புரைகள், இலவச மின் புத்தகங்கள் மற்றும் பிரத்யேக ஒப்பந்தங்களுக்கு எங்கள் செய்திமடலில் சேரவும்!

குழுசேர இங்கே சொடுக்கவும்