در تپش این هفته، ماجرای فریب و تعرض در پوشش عرفانهای دروغین و رمالی را بررسی کردیم
این پایگاهداده به نام Mongodb (مونگو دیبی) شناخته میشود، از این لحاظ معروف و پرکاربرد است که درایورهای آن برای بیشتر زبانهای برنامهنویسی نوشته شده است و پروژههای بزرگی با آن توسعه داده شدهاند. این پایگاهداده توسط 10gen پشتیبانی میشود و با زبان C نوشته شده است. اولین نسخه رسمی آن سال ۲۰۰۹ منتشر شده و آخرین نسخه پایدار آن 3/4/2 است که بیستوسوم آوریل ۲۰۱۳ انتشار یافت.
مونگو دیبی برخلاف مدلهای رابطهای، دادهها را در یک سند به فرمت JSON ذخیره میکند و همین باعث میشود شما یک اسکیمای پویا از دادههای خود داشته باشید. این پایگاه داده بهصورت متن باز و رایگان قابل استفاده است و شما میتوانید آخرین نسخه آن را از سایت http://www.mongodb.org دانلود کنید. از شرکتهای بزرگی که از این پایگاهداده استفاده میکنند میتوان به شبکه MTV و Foursquare اشاره کرد.
اما بعضی از ویژگیهای این دیتابیس عبارت است از:
1ـAd-Hoc Query: شما میتوانید در مونگو دیبی براساس فیلدها، یک محدوده خاص و عبارات باقاعده را جستجو کنید و نتیجه جستجو خود را در فیلدهای مشخص برگردانید و برای جستجو از توابعی که خود تعریف کردهاید استفاده کنید.
2ـ Indexing : شما میتوانید دادههای خود را اندیسگذاری کنید مانند همان چیزی که در دیگر پایگاهدادههای رایج استفاده میکنید.
3ـ Replication: در مونگو دیبی میتوانید master-slave replication ایجاد کنید، در حالت master قابلیت خواندن نوشتن وجود دارد، اما در slave فقط قابلیت خواندن وجود دارد و هر slave میتواند در شرایطی که نسخه master جاری خود با مشکل مواجه شد، از یک نسخه master دیگر استفاده کند.
4ـ Load balancing: در مونگو دیبی با استفاده از sharding شما میتوانید دادههای خود را بین چند سرور تقسیم کنید و به آنها دسترسی داشته باشید. این کار باعث میشود شما بتوانید درخواست خود را به سرورهای دیگر بفرستید تا بهتر به آنها دسترسی پیدا کنید. دسترسی به دادهها ازطریق Shard keyهایی است که برنامهنویسان تعریف کردهاند انجام میپذیرد، هر shard یک master و یک یا چند slave (master و slave نسخههایی از دادههاست.
5 ـ File storage: مونگو دیبی میتواند از سیستم فایل (File system) برای ذخیرهسازی دادهها استفاده کند، در این حالت میتواند از قابلیتهای Replication و Load balancing بهرهمند شود.
6 ـ Aggregation : با استفاده از خاصیت Map/Reduce شما میتوانید توابع تجمعی که پیش از این در مدلهای RDBMS استفاده میکردید (مانند count، avg، grouping و...) داشته باشید.
7ـ Server-side Javascript Execution: اجرای کدهای جاوا اسکریپت در سمت سرور، این کدها در عبارت پرسوجو و توابع تجمعی مورد استفاده قرار میگیرند.
بررسی کوتاهی بر ویژگیهای این پایگاهداده انجام دادیم، اما ببینیم با این پایگاه داده چگونه میتوان کار کرد. برای شروع کار ابتدا آخرین نسخه آن را از سایت mongodb.org که در بالا معرفی شد، دانلود کنید.
مونگو دیبی یک سرور دارد که اجازه دسترسی به دادهها را میدهد، برای این کار باید mongod را اجرا کنید. برای آشنایی با چگونگی اجرا و پارامترهایی که برای این کار میپذیرد، میتوانید به لینک زیر مراجعه کنید.
http://docs.mongodb.org/manual/reference/program/mongod/#bin.mongod
بعد از اینکه سرور اجرا شد، برای تشخیص صحت این موضوع که سرور آماده به کار است یا خیر، کافی است در مرورگر خود http://localhost:27017 را بزنید. البته عدد ۲۷۰۱۷ پورت پیشفرض است، امکان دارد شما از پورت دیگری استفاده کرده باشید.
بعد از تمام این مراحل شما میتوانید با اجرا کردن mongo به کنسول مونگو دیبی وصل شوید و از طریق آن دستورات را اجرا کنید. در لینک زیر اطلاعات کاملی در این باره موجود است که میتوانید از آنها استفاده کنید:
http://docs.mongodb.org/manual/ tutorial/getting-started/
شاید این پرسش برای شما ایجاد شود که آیا همه کارها را باید از طریق یک محیط خط فرمان انجام دهیم؟ پاسخ منفی است، اما رابطهای گرافیکی که برای مونگو دیبی توسعه داده شده است قابلیتهای اصلی مونگو دیبی را در خود ندارد و صرفا یک محیط ساده برای نمایش و خواندن اطلاعات و تنظیمات ساده است برای کارهای پیچیدهتر از همان کنسول استفاده کنید.
یکی از رابطهای کاربری خوبی که برای مونگو دیبی توسعه داده شده Genghis است که میتوانید آن را از سایت زیر دانلود کنید:
http://genghisapp.com/
در شماره بعدی در مورد دستوراتی که در کنسول مونگو دیبی استفاده میشود، توضیح میدهیم.
سبط الشیخ
در تپش این هفته، ماجرای فریب و تعرض در پوشش عرفانهای دروغین و رمالی را بررسی کردیم
گزارش «جامجم» درباره دستاوردهای زبان فارسی در گفتوگو با برخی از چهرههای ادب معاصر
معاون وزیر بهداشت: