MongoDB یک پایگاه داده غیر رابطهای (NoSQL) است که به طور خاص برای مدیریت دادههای بزرگ و پیچیده طراحی شده است. در زیر به برخی از ویژگیها و اصول کلیدی MongoDB اشاره میکنم:
ویژگیهای کلیدی MongoDB
مدل دادههای مبتنی بر سند:
MongoDB از اسناد (Documents) به جای جداول (Tables) استفاده میکند. هر سند یک ساختار دادهی BSON (Binary JSON) است که شامل جفتهای کلید-مقدار است.
مقیاسپذیری افقی:
MongoDB به راحتی میتواند به مقیاسهای بزرگتر ارتقا پیدا کند. شما میتوانید دادهها را به راحتی بر روی چندین سرور تقسیم (Sharding) کنید.
انعطافپذیری در طراحی:
به دلیل عدم نیاز به تعریف اسکیما (Schema) ثابت، شما میتوانید دادهها را به صورت پویا و منعطف ذخیره کنید.
عملیات قدرتمند کوئری:
MongoDB از یک زبان کوئری غنی و قدرتمند پشتیبانی میکند که شامل فیلترها، پروجکشنها، گروهبندیها و موارد دیگر است.
پشتیبانی از شاخصها:
MongoDB امکان ایجاد شاخصهای مختلف را برای بهبود عملکرد کوئریها فراهم میکند.
پشتیبانی از ذخیرهسازی چندگانه:
MongoDB میتواند انواع مختلف دادهها را مانند متن، تصاویر، ویدئو و اسناد باینری را ذخیره و مدیریت کند.
نصب و راهاندازی MongoDB
برای نصب MongoDB میتوانید به وبسایت رسمی آن مراجعه کنید و نسخهی مناسب برای سیستم عامل خود را دانلود و نصب کنید. همچنین میتوانید از دستوراتی مانند brew
برای مک و apt-get
برای اوبونتو استفاده کنید.
مثالهایی از عملیات اساسی در MongoDB
- اتصال به MongoDB:
from pymongo import MongoClient
client = MongoClient('mongodb://localhost:27017/')
db = client.my_database
- درج یک سند:
db.my_collection.insert_one({"name": "Ali", "age": 25})
- یافتن سندها:
for doc in db.my_collection.find({"age": {"$gt": 20}}):
print(doc)
- بروزرسانی سند:
db.my_collection.update_one({"name": "Ali"}, {"$set": {"age": 26}})
- حذف سند:
db.my_collection.delete_one({"name": "Ali"})
MongoDB یک ابزار قدرتمند برای مدیریت دادههای بزرگ و متنوع است و میتواند در بسیاری از کاربردها مفید باشد، از جمله برنامههای وب، تجزیه و تحلیل دادهها، و مدیریت دادههای پیچیده.