مقایسه OrientDB با Neo4j
عناوين مطالب: '
مقدمه ای بر گراف دیتابیس
یک نوع از این پایگاه داده های NOSQL، پایگاه داده های گراف محور یا Graph Based هستند. در مطالب گذشته انواع پایگاه داده های NOSQL را بررسی کردیم. در این مبحث به مقایسه OrientDB با Neo4j می پردازیم. از معروف ترین این دیتابیس ها میشه به NEO4j و OrientDB اشاره کرد. البته OrientDB که هم از حالت گراف پشتیبانی میکند و هم از سند-گرا که یکی دیگر از ساختار های NoSQL است. سایت رسمی آن هم به آدرس Orientdb.org است. برای مقایسه OrientDB با Neo4j در دو عکس زیر عملکرد و کارایی این دو پایگاه داده ها را بررسی کنید:
در پست های قبل، بانک اطلاعاتی Neo4j را بررسی نمودیم در اینجا بررسی OrientDB میپردازیم و خصوصیات آن را بررس میکنیم. در صورت علاقه به مقایسه OrientDB با Titan به این مبحث مراجعه کنید.
مزایای مهم OrientDB:
- از ویژگی ACID به طور کامل پشتیبانی می کند. به طوری که در مواقع کراش سیستم سند های در حال تراکنش بازیابی می شوند.
- امکان GraphDB که می توان مدیریت گراف ها رو انجام داد.
- پشتیبانی کامل از زبان پرس و جوی SQL
- امکان استفاده از HTTP و RESTful بدون واسطه.
OrientDB می شود گفت که پایگاه داده ای همه فن حریف در بین خانواده NoSQL است. OrientDB که در سال 2010 توسط Luca Garulli تحت لیسانس آپاچی 2 منتشر شد، با استفاده از زبان برنامه نویسی جاوا پیاده سازی شده است. با اینکه این پایگاه داده سندگرا هست ولی ارتباطات با استفاده از گراف مدیریت می شود. OrientDB را هم می توان بدون اسکیما به کار برد و هم با اسکیما و حتی نیمه اسکیما و ترکیبی از این ها. شاید از این تکته تعجب کنید که حتی در این پایگاه داده از زبان پرس و جو SQL هم می توانید استفاده کنید. OrientDB از الگوریتم جدید شاخص گذاری به اسم MVRB-Tree استفاده میکند که ترکیبی از Red-Black Tree و B+Tree است. با این پایگاه داده می توان داده های گرافی را ذخیره کرد و کاملا از گراف پشتیبانی شده است.
مولفه های مورد استفاده برای مقایسه:
- در کدام یک از 4 دسته NoSQL هستند
- متن باز بودن
- بر روی چه سرور هایی قابل اجرا می باشند
- Transactional بودن
- با چه زبانی نوشته شده اند
- آیا از زبان برنامه نویسی C و C++ پشتیبانی می کنند؟
- پشتیبانی از اسکریپت های سمت سرور از قبیل جاوا اسکریپت، php و …
- پشتیبانی از تریگر
تریگر چیست؟
تریگر رویه ای ذخیر شده است که به هنگام درج یا بروز رسانی جدولی، آن نیز انجام میشود و مقدار برگشتی ندارد.
به عنوان مثال شما فاکتور فروشی را در نظر بگیرید برای اینکه بعد از فروخته شدن یک کالا می خواهید تعداد کالای فروخته شده از جدول کالا از مقدار موجودی کالا کسر شود.
- Replication (یکی از کارهای Replication این است که به عنوان مثال پایگاه داده شما بر روی یک سرور دیگر نیز وجود دارد و هر اطلاعاتی که داخل سرور اصلی دارید بر روی سرورهای دیگر نیز موجود می باشد)
- MapReduce ( به معنای نوشتن کدی است، با دو تابع. اولین تابع اصطلاحاً Map step یا مرحله نگاشت نام دارد. در این مرحله کوئری به قسمتهای کوچکتری خرد شده و بر روی سیستمهای توزیع شده به صورت موازی اجرا میشود. مرحله بعد Reduce step نام دارد که در آن، نتیجه دریافتی حاصل از کوئریهای اجرا شده بر روی سیستمهای مختلف، با هم یکی خواهند شد.)
- Foreign key یا کلید خارجی
- In – Memory (اینکه داده ها را می توانند در حافظه رم به صورت کش داشته باشند تا سرعت خواندن اطلاعات افزایش یابد و موارد دیگر)
- Embed (قابلیت سفارشی سازی و کنترل پایگاه داده توسط برنامه نویس و اضافه کردن به عنوان جزئی از نرم افزار)
- Query (زبان تغییرات و خواندن اطلاعات پایگاه داده)
- Partitioning (یعنی بتوان بر روی سرورهای دیگر پایگاه داده را داشته باشیم و و از نظر جغرافیایی هیچ محدودیتی نداشته باشیم و بار کاری بر روی همه سرورها پخش شود)
- Configuration (پیاده سازی و تنظیمات برای نصب و استفاده از پایگاه داده)
- Dependency (برای استفاده از پایگاه داده با توجه به زبان برنامه نویسی و یا پیاده سازی آن وابسته به چه پیش نیازهایی می باشد؟)
- Performance (سرعت و قدرت نوشتن و خواندن، پایائی، بازدهی )
- Online Backup (توانایی گرفتن پشتیبان به صورت خودکار در حین فعال بودن و ارائه سرویس به کاربران)
آدرس کانال تلگرام سایت بیگ دیتا:
آدرس کانال سروش ما:
https://sapp.ir/bigdata_channel
جهت دیدن سرفصل های دوره های آموزشی بر روی اینجا کلیک کنید.
بازدیدها: 1959
برچسبneo4j OrientDB OrientDB VS Neo4j آپاچی اورینت دب بی اورینت دی بی پایگاه داده Neo4j پایگاه داده OrientDB سازگاری داده مبتنی بر گراف مقایسه مقایسه OrientDB با Neo4j مقایسه پایگاه داده OrientDB با Neo4j نئو4جی نئوفرجی
همچنین ببینید
پايگاه داده کاساندرا، روش نصب و بررسی نقاط ضعف و قوت
پايگاه داده کاساندرا یک سیستم انباره داده ی توزیعشده و کاملاً متن باز و رایگان …
خصوصیات بیگ دیتا یا کلان داده چیست؟ و جایگاه هدوپ کجاست
کلانداده (Big Data) اصطلاحی است که برای تعریف دادهها در حجم انبوه استفاده میشود: حجم …