پایگاه داده گراف (Graph Database) چیست؟

بهسا راهکار نوین > همه  > بهینه سازی  > پایگاه داده گراف (Graph Database) چیست؟

پایگاه داده گراف (Graph Database) چیست؟

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

یک مثال ساده را در نظر بگیرید. فرض کنید، ۳موجودیت (Entity) داریم: نویسنده، کتاب، خریدار

حتماً در ذهن خود، میتوانید این سه موجودیت را به یکدیگر ارتباط دهید. نویسنده یک یا چند کتاب مینویسد، و خریدار یک یا چند کتاب را میخرد. در چنین پایگاه داده ای، ارتباط نقش اساسی و مهمی را دارد. در واقع اطلاعات (در اینجا) کاملاً به ارتباط بین آن ها بستگی دارد. حال فرض کنید، میخواهید از بین میلیون ها کتاب، هزاران نویسنده و چند ۱۰هزار خریدار، پرس و جو (Query)های مختلفی بزنید. مثلاً میخواهید، تمامی خریدارانی که از یک نویسنده خاص، خرید انجام داده اند، را مشاهده کنید. این قبیل پرس و جو ها، در پایگاه داده های رابطه ای، اگر چه سریع است، ولی همیشه به اندازه کافی سرعت لازم را ندارد. مثلا فرض کنید، پایگاه داده شما، بسیار بزرگ شده است و میخواهید پرس و جو های بسیار زیاد، در لحظه (بدون هیچ دیرکردی) پاسخ داده شوند. اینجاست که میتوانید، به جای استفاده از پایگاه داده های رابطه و معمولی، از پایگاه داده های گراف (Graph Databases) استفاده کنید.