مدل سازی داده در MongoDB چگونه متفاوت است؟

مدل سازی داده ها فرآیند توسعه نمایش بصری یا یک برنامه کامل نرم افزاری یا اجزای آن برای برقراری ارتباط بین نقاط داده و ساختار است. این شامل یک بررسی کامل از برنامه و الزامات پایگاه داده و به عنوان یک پیوند بین این دو از نظر عملکرد داده های اساسی است – خواندن ، نوشتن و به روز رسانی.

با ارزیابی مدل استفاده از برنامه و همسو سازی طرح پایگاه داده با آن ، یک مدل داده پایدار ایجاد می شود. بنابراین ، طرحواره مدل داده شما را شکل می دهد. وقتی نوبت به یک پایگاه داده رابطه ای می رسد ، نمی توانید جداول خود را بدون ایجاد طرحواره جدول پر کنید.

اصطلاحات اساسی که باید بدانید

قبل از شروع ، در اینجا برخی از تعاریف اساسی وجود دارد که باید بدانید:

  • مجموعه – این مجموعه مجموعه ای از اسناد در MongoDB است. این معادل یک جدول در RDBMS است.
  • سند – سند ساختاری است که از جفت پرونده و مقدار تشکیل شده است. این معادل یک ردیف در RDBMS است.
  • طرح پایگاه داده – طرحواره یک معماری پایگاه داده منطقی و بصری است که برای سیستم مدیریت پایگاه داده (DBMS) طراحی شده است.

مدل سازی داده در MongoDB چگونه متفاوت است؟

به لطف انعطاف پذیری NoSQL ، نیازی به ایجاد طرحواره قبل از درج داده ها ندارید. این به این دلیل است که MongoDB از شکل پویایی از طرح پایگاه داده پشتیبانی می کند. با این کار دیگر نیازی به طراحی اولیه مدار نیست. در عوض ، اکنون می توانید داده های خود را ذخیره کرده و مجموعه خود را تنظیم کنید.

شما می توانید انواع مختلف داده ها را در یک قسمت جمع آوری ذخیره کنید و حتی زمینه های جدید اضافه کنید ، مقادیر زمینه را به روز کنید و زمینه های موجود را حذف کنید. هنگامی که اسنادی را به یک شی یا شی اختصاص می دهید ، منافع واقعی این انعطاف پذیری را خواهید یافت.

به طور کلی ، مجموعه و سند آن از ساختار مشابهی پیروی می کند. همچنین می توانید با استفاده از اعتبارسنجی طرح ، قوانینی را برای تأیید اعتبار اسناد در مجموعه خود “اجرا” کنید.

مرتبط: موتورهای پایگاه داده برای جستجوی پروژه بعدی شما

هنگام ایجاد یک مدل داده ، نحوه تعامل برنامه شما با پایگاه داده را در نظر بگیرید. به عنوان مثال ، اگر می خواهید اسنادی را که اخیراً درج شده اند پردازش کنید ، بهتر است از مجموعه های محدودی استفاده کنید – مجموعه هایی با اندازه ثابت که از عملکردهایی با عملکرد بالا پشتیبانی می کنند.

به همین ترتیب ، اگر برنامه شما بیشتر اوقات عملیات خواندن را اجرا می کند ، می توانید شاخص ها را برای پشتیبانی از سeriesالات متداول و بهبود عملکرد تنظیم کنید.

به طور سنتی ، یکی از مواردی که هنگام ایجاد یک مدل داده مورد توجه قرار می گیرد ، نحوه ذخیره سازی داده های مرتبط است. پایگاه های داده رابطه ای از جدول برای ذخیره داده استفاده می کنند ، جایی که از کلیدهای اصلی و خارجی برای تنظیم اتصالات داده استفاده می شود.

به همین ترتیب ، از join برای دسترسی و انجام عملیات روی چندین جدول استفاده می شود. به عنوان کسی که از یک پایگاه داده رابطه ای مانند SQL Server به MongoDB مهاجرت کرده است ، در MongoDB عضویت پیدا نخواهید کرد. زیرا MongoDB با مراجعه به داده ها یا تعبیه داده ها در یک مجموعه ، داده های مجموعه را ذخیره می کند.

بنابراین ، اگر مدل داده شما ده جدول در یک پایگاه داده رابطه ای را اشغال کند ، MongoDB ممکن است به شما اجازه دهد آن را در یک مجموعه ادغام کنید.

انواع مدل های داده

حال که از نحوه کارکرد مدل سازی داده در MongoDB مطلع شدید ، بیایید انواع مدل های داده پشتیبانی شده توسط MongoDB را بررسی کنیم. این معمولاً به ساختار سند شما و اتصالات داده ای برنامه شما بستگی دارد.

مدل های داده داخلی

می توانید داده ها را در یک سند یا ساختار واحد در MongoDB جاسازی کنید. این مدل همچنین به عنوان مدل داده غیرمتعارف شناخته می شود ، از پتانسیل کامل اسناد غنی MongoDB استفاده می کند. به عنوان مثال ، مثال زیر را در نظر بگیرید: ما یک مجموعه داریم ، دانش آموزان، حاوی یک سند مت ما دو سند در این سند تعبیه کرده ایم ، اطلاعات تماس و درجه.

{
"_id": "4aad66a4c13bb24f12gh199e",
name: “Matt”,
contact details: {
phone:”555-555-1234”
email address: “abc123@gmail.com”
},
grade: {
subject: “CS101”
score: “B”
}}

تعبیه شده جزئیات مربوطه را در همان سند یا پرونده در پایگاه داده ذخیره می کند. به این ترتیب می توانید درخواست ها و به روزرسانی های مورد نیاز برای انجام عملیات مشترک DB را به حداقل برسانید.

چه زمانی باید از مدل های داده جاسازی شده استفاده کنید؟ آنها برای بهبود کارایی عملیات خواندن مفید هستند. علاوه بر این ، آنها برای پردازش بازیابی داده ها از یک رکورد کارآمد هستند. با استفاده از این مدل ، می توانید از یک عملیات نوشتن برای به روزرسانی داده های مربوطه استفاده کنید.

با این وجود ، نکته ای وجود دارد که باید به خاطر بسپارید: تعبیه بعد از ایجاد اندازه سند را افزایش می دهد. در بعضی موارد ، این می تواند بر عملکرد ضبط تأثیر بگذارد و همچنین احتمال تقسیم اطلاعات به دلیل گسترش اندازه سند وجود دارد.

سرانجام ، می توانید با استفاده از علامت گذاری نقطه با اسناد تعبیه شده تعامل داشته باشید و آنها را به راحتی خزید. این نحو است:

field.nestedField:value

برای مثال فوق ، می توانید با تایپ درخواست زیر به اسناد پیوست شده خود دسترسی پیدا کنید:

db.students.find({contact details: { phone:”555-555-1234” ,email address: “abc123@gmail.com”}}).pretty()

مدلهای داده عادی (منابع)

از مدل های داده نرمال شده برای ساخت مدل های رابطه یک به چند و بسیاری به بسیاری استفاده می شود. هنگام کار با مدل های داخلی سند ، مواقعی پیش می آید که باید داده ها را تکرار کنید. منابع در اینجا مفید هستند – آنها با مازاد سرو کار دارند. در اینجا نحوه استفاده از ارجاعات به مثال بالا آورده شده است.

از آن زمان ما یک سند خود را به سه سند تقسیم کرده ایم اطلاعات تماس و درجه من شناسنامه دارم مت سند ، می توانید در صورت لزوم با آنها تماس بگیرید.

student
{
_id:<ObjectId1>
username: “Matt”
}
contact details
{
_id:<ObjectID2>
user_id: <ObjectId1>
email:“abc123@gmail.com”
phone:”555-555-1234”
}
grade
id:<ObjectId3>
user_id: <ObjectId1>,
subject: “CS101”,
score: “B”
}

همانطور که مشاهده می کنید ، مدل های داده نرمال شده با استفاده از ارجاعات بین مجموعه های جدید ، داده ها را به چندین مجموعه تقسیم می کنند. می توانید یک سند را به روز کنید که مجموعه های دیگر را به روز کند. این یک روش م toثر برای به روزرسانی داده ها است و بیشتر وقتی مورد استفاده قرار می گیرد که داده های شما مرتباً تغییر می کنند.

در اینجا زمانهایی وجود دارد که یک مدل داده نرمال شده انتخاب عاقلانه تری است:

  • شما باید مجموعه داده های بزرگی را که از یک سلسله مراتب خاص پیروی می کنند ، مدل کنید.

  • شما باید اتصالات بسیاری را به بسیاری ارائه دهید.

  • جاسازی منجر به کپی کردن داده ها می شود بدون اینکه از بازده خواندن حداکثر استفاده را ببرید.

اکنون می توانید به راحتی داده ها را در MongoDB مدل سازی کنید

در حال حاضر شما می دانید که چگونه مدل سازی داده ها در MongoDB با DBM رابطه ای متفاوت است ، به ویژه هنگامی که این به طرح واره می رسد. شما همچنین با انواع مدل های داده در MongoDB – لغو شده و عادی – آشنا شدید و زمان استفاده از آنها را یاد گرفتید.

و این تازه اولشه؛ چیزهای بیشتری برای یادگیری در مورد چگونگی سازماندهی داده های MongoDB وجود دارد.


Snapchat در تلفن های هوشمند
اسنپ ​​چت در حال کار بر روی ویژگی ریمیکس برای دو نفره رقیب خود TikTok است

این ریمیکس ها به کاربران امکان می دهد لحظاتی از دوستانشان شبیه به دوبیتی های TikTok بسازند.

بعدی را بخوانید


درباره نویسنده

.

دیدگاهتان را بنویسید