সাধারণত, ডেভেলপাররা শেল স্ক্রিপ্ট ব্যবহার করে ডাটাবেস টাস্ক অটোমেট করেন যেমন ডেটা এক্সপোর্ট এবং ইম্পোর্ট, ডাটাবেস (DB) পরিসংখ্যান সংগ্রহ, টেবিলস্পেস মনিটরিং, ব্লকিং সেশন, DB লক, এবং সকল।
অভIEW
Python® গত সাত বা তার বেশি বছরে সবচেয়ে জনপ্রিয় প্রোগ্রামিং ভাষাগুলোর একটি হয়ে উঠেছে। এই পোস্টটি বিভিন্ন ডাটাবেস ইঞ্জিনের জন্য Python-এ ব্যবহৃত বিভিন্ন DB মডিউল কভার করে এবং PyMongo মডিউল কীভাবে একটি MongoDB® কালেকশনে ডেটা কোয়েরি এবং ইন্সার্ট করতে ব্যবহার করতে হয় সেটা দেখায়।
Python মডিউল পরিচিতি
Python একটি অবজেক্ট-ওরিয়েন্টেড এবং হাই-লেভেল প্রোগ্রামিং ভাষা। এর বিভিন্ন বাস্তবায়নের জন্য যেমন ওয়েব ডেভেলপমেন্ট, ডেটা সায়েন্স, Linux® অ্যাডমিনিস্ট্রেশন, এবং সকল-এর জন্য মডিউলের ব্যাপক রেঞ্জ রয়েছে। নিচের টেবিলটি ডাটাবেস ইঞ্জিন এবং প্রাসঙ্গিক Python মডিউল সম্পর্কে বিবরণ দেখায়:
| ডাটাবেস ইঞ্জিন | Python মডিউল |
|---|---|
| Oracle | cx_oracle |
| PostgreSQL | psycopg2 |
| MongoDB | pymongo |
| MySQL | mysql.connector and pymysql |
| Cassandra | cassandra-driver |
CX_ORACLE
cx_oracle একটি Python মডিউল যা আপনাকে Oracle ডাটাবেস অ্যাক্সেস করতে দেয় এবং Python ডাটাবেস API স্পেসিফিকেশনের সাথে 준수 করে। এই মডিউল Oracle Database 11.2, 12c, 18c, 19c, এবং 21c-সঙ্গে কম্প্যাটিবল।
PSYCOPG2
psycopg2 একটি Python মডিউল যা আপনাকে PostgreSQL ডাটাবেস অ্যাক্সেস করতে দেয় এবং Python ডাটাবেস API স্পেসিফিকেশনের সাথে 준수 করে। এর একটি কী বৈশিষ্ট্য হলো এটি মাল্টি-থ্রেডেড অ্যাপ্লিকেশন সক্ষম করে যেগুলো একাধিক কার্সর খুলে কনকারেন্ট ইনসার্ট এবং আপডেট পারফর্ম করে।
PYMONGO
pymongo একটি মডিউল যা আপনাকে Mongo ডাটাবেস অ্যাক্সেস করতে দেয় এবং MongoDB ডাটাবেস অবজেক্ট যেমন কালেকশন, ডকুমেন্ট, এবং সকল-এ ডাটাবেস কোয়ারি পারফর্ম করতে দেয়।
MYSQL.CONNECTOR
mysql.connector একটি মডিউল যা আপনাকে MySQL ডাটাবেস অ্যাক্সেস করতে দেয় এবং Python ডাটাবেস API স্পেসিফিকেশনের সাথে 준수 করে। এটি ডাটাবেস কোয়ারি সক্ষম করে।
CASSANDRA-DRIVER
cassandra-driver Apache® Cassandra® ডাটাবেসের জন্য একটি Python ড্রাইভার এবং Cassandra কোয়ারি ল্যাঙ্গুয়েজ (CQL)-সঙ্গে কম্প্যাটিবল। এই মডিউল ব্যবহার করে আপনি Cassandra ডাটাবেসে কানেক্ট এবং কোয়ারি করতে পারেন।
PyMongo প্রদর্শনী
Python প্রোগ্রামিং MongoDB-এ বিভিন্ন CRUD (Create, Read, Update, and Delete) অপারেশন পারফর্ম করে। নিচের ধাপগুলো আপনাকে দেখাবে কীভাবে pip ডাউনলোড করুন, pymongo মডিউল ইনস্টল করুন, এবং PyMongo-এ একটি Python স্ক্রিপ্ট লিখুন এবং এক্সিকিউট করুন:
-
আপনার Linux সার্ভারে Python-এর ভার্সন চেক করতে নিচের কমান্ড রান করুন:
# python --version Python 2.7.18 -
pip এবং PyMongo ইনস্টল করতে নিচের কমান্ডগুলো ব্যবহার করুন:
# yum install python-pip # pip install pymongo -
আপনার পছন্দের টেক্সট এডিটর খুলুন এবং MongoDB-এ একটি কালেকশনে CRUD অপারেশন পারফর্ম করার জন্য নিচের Python স্ক্রিপ্ট (mongo-crud.py) লিখুন:
#!/usr/bin/python from pymongo import MongoClient client = MongoClient(host = 'localhost:27017', username="dba", password="user123") mongodbinfo = client.server_info() print ("Printing MongoDB Server Information") print (mongodbinfo) print ("##################################################") print ("Mongo DB version") print ("db version:", mongodbinfo["version"]) print ("##################################################") db = client.empdb empdetails = db.employeedetails print ("Existing collection information") printcollection = empdetails.find() for i in printcollection: print (i) print ("##################################################") print ("Adding one document to the collection") details = {"name": "Andy", "designation": "Clerk"} newentry = empdetails.insert_one(details) print (" newentry:", newentry) printcollection1 = empdetails.find() for i in printcollection1: print (i) print ("##################################################") print ("Performing a search on the collection") search = empdetails.find_one({ 'name' : 'Jack'}) print (search) print ("##################################################") print ("Adding multiple documents to the collection") entry1 = {"name": "Cathy", "designation": "Data Operator"} entry2 = {"name": "Susan", "designation": "Operations Manager"} newentries = empdetails.insert_many([entry1, entry2]) printcollection2 = empdetails.find() for i in printcollection2: print (i) -
নিচের কমান্ড রান করে Python স্ক্রিপ্ট এক্সিকিউট করুন। আউটপুট নিচের ছবির মত দেখাবে:
# python mongo-crud.py
উপসংহার
Python ২০২০-এ সবচেয়ে ট্রেন্ডিং প্রোগ্রামিং ভাষাগুলোর একটি ছিল ব্যাপক বাস্তবায়নের রেঞ্জ সহ। Python ডাটাবেস ইঞ্জিনিয়ারদের ডাটাবেস টাস্ক অটোমেশনের জন্য শেল স্ক্রিপ্টিং-এর বিকল্প প্রদান করে।
আমাদের ডাটাবেস সার্ভিস সম্পর্কে আরও জানুন।
ফিডব্যাক ট্যাব ব্যবহার করে যেকোনো মন্তব্য করুন বা প্রশ্ন জিজ্ঞাসা করুন। আপনি আমাদের সাথে কথোপকথনও শুরু করতে পারেন।