بانکهای اطلاعاتی گراف محور

استفاده از بانکهای اطلاعاتی مبتنی بر گراف در سیستم های توصیه گر

۰

میانگین امتیاز

امتیاز کاربران : امتیاز دهید !

امتیاز کاربران: ۴٫۶ ( ۲ رای)

یکی از چهار گروه اصلی بانکهای اطلاعاتی NoSQL بانکهای اطلاعاتی مبتنی بر گراف هستند . ساختاری که اطلاعات در آن به صورت گره و یال ذخیره می شوند . معمولاً مثالی که برای کاربردهای این نوع از پایگاه های اطلاعاتی بیان میشود شبکه های اجتماعی مانند فیس بوک و توئیتر است که در آن هر فرد یک گره در نظر گرفته می شود و رابطه دوستی بین افراد یالهای این گراف را تشکیل می دهند. پرس و جو های این بانک اطلاعاتی هم حول مباحثی مانند یافتن نزدیک ترین دوستان، نزدیک ترین فاصله بین دو شخص، دوستان مشترک و مسایلی از این دست است .

برای سایت خبری Republishan دنبال سیستمی برای برچسب زنی اخبار و یافتن اخبار مشابه براساس برچسب های یک خبر بودیم که به ذهنم رسید از این نوع بانک های اطلاعاتی استفاده کنیم . در این کاربرد، هر خبر و هر برچسب یک گره در نظرگرفته می شود و یالها رابطه ایست که بین خبر و برچسب وجود دارد .

ایده این کار را از کتاب NoSQL Distilled آقای مارتین فاولر گرفتم که اصطلاحی را به کار برده است به عنوان Polyglot Persistence یا سیستم های ذخیره سازی چندزبانه و منظور از آن هم استفاده از بانکهای اطلاعاتی مختلف در یک سازمان یا وب سایت برای مدیریت جنبه های مختلف و نیازمندیهای متفاوتیست که امروزه با آن مواجهیم . در آن کتاب در توضیح این عبارت، مثالی زده شده است که برای هر قسمت آن از یک پایگاه داده استفاده شده و برای بخش سیستم های پیشنهاد دهنده ، بانکهای مبتنی بر گراف توصیه شده است . ما هم در اینجا قرار است به ازای هر خبری که کاربر می خواند، پیشنهاد اخبار جدید را به او بدهیم …

از بانک اطلاعاتی Neo4j در کنار کاساندرا که بانک اطلاعاتی اصلی ماست برای این منظور استفاده کردیم و البته هنوز آنرا تست نهایی نکرده ایم اما بررسیهای بنده در زمینه بانکهای اطلاعاتی مبتنی بر گراف که یکی از کاربردهای اصلی آنها سیستم های پیشنهادیار است مرا به نتیجه کار دلگرم کرده است …

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

(این مطلب برگرفته از سایت شخصی بنده است )

برای انتخاب دیتابیس مناسب در حوزه پردازش گراف ، می توانید از این نمودار هم استفاده کنید (هر چند منبع این شکل به سال ۲۰۱۳ بر می گردد و ممکن است تغییرات زیادی در این حوزه رخ داده باشد .)

 انتخاب بانک اطلاعاتی مناسب برای پردازش گراف

 

مجتبی بنائی

دانشجوی دکترای نرم‌افزار دانشگاه تهران، مدرس دانشگاه و فعال در حوزه توسعه نرم‌افزار و مهندسی داده که تمرکز کاری خود را در چند سال اخیر بر روی مطالعه و تحقیق در حوزه کلان‌داده و زیرساخت‌های پردازش داده و تولید محتوای تخصصی و کاربردی به زبان فارسی و انتشار آنها در سایت مهندسی داده گذاشته است. مدیریت پروژه‌های نرم‌افزاری و طراحی سامانه‌های مقیاس‌پذیر اطلاعاتی از دیگر فعالیتهای صورت گرفته ایشان در چند سال گذشته است.
0 0 رای ها
Article Rating
اشتراک در
اطلاع از
guest

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

4 Comments
قدیمی ترین
تازه‌ترین بیشترین واکنش نشان داده شده(آرا)
بازخورد (Feedback) های اینلاین
View all comments
دکمه بازگشت به بالا
4
0
افکار شما را دوست دارم، لطفا نظر دهیدx
()
x