آموزش پایگاه داده گرافی Neo4j ​و انتقال داده از MySQL​

poster
پیش‌نمایش دوره

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

برگزارکننده:  مکتب‌خونه  مکتب‌خونه
سطح: مقدماتی
 پلاس
  
زمان مورد نیاز برای گذراندن دوره:  4 ساعت
مجموع محتوای آموزشی:  4 ساعت ویدئو
 (قابل دانلود می‌باشد)

آنچه در این دوره می‌آموزیم:

 آشنایی با مفاهیم پایه‌ای دیتابیس‌های گراف محور

 آشنایی با نحوه‌ی مدل‌سازی داده در Neo4j

 آموزش زبان Cypher

 آموزش کار با کتابخانه Graph Data Science

 نحوه‌ی مهاجرت داده از یک دیتابیس رابطه‌ای به Neo4j

پیش‌نیاز‌ها

این دوره مناسب افرادی است که تجربه قبلی با دیتابیس‌های رابطه‌ای مانند SQL Server و یا MySQL را دارند.

سرفصل‌های دوره آموزش پایگاه داده گرافی Neo4j ​و انتقال داده از MySQL​

مقدمه بر دیتابیس‌های گرافی

در فصل اول نگاهی خواهیم داشت به ویژگی‌های دیتابیس‌های گراف‌محور. به معرفی 3 دیتابیس Neo4j، OrientDB و ArangoDB خواهیم پرداخت و هر کدام را با هم مقایسه خواهیم کرد. در ادامه به مقایسه قابلیت‌های دیتابیس‌های گراف‌محور نسبت به دیتابیس‌های رابطه‌ای می‌پردازیم و در انتها به کیس‌هایی که دیتابیس گرافی مناسب آن نیست توضیحاتی ارائه خواهیم کرد.

  دیتابیس گرافی چیست؟
مشاهده
"09:15  
  مقایسه دیتابیس‌های گرافی و رابطه‌ای
"07:03  
  آشنایی با دیتابیس‌های گرافی
 100%    
"03:00  
معرفی Neo4j

محبوب‌ترین دیتابیس گراف‌محور حال حاضر در دنیا، Neo4j است. این دیتابیس با داشتن قابلیت‌های مختلف مانند زبان Cypher، کتابخانه قدرتمند GDS، پشتیبانی از Transaction و... تبدیل به پرچمدار دیتابیس‌های گرافی شده است.

در این بخش به معرفی این دیتابیس به همراه شرحی از قابلیت‌های آن می‌پردازیم.

نحوه‌ی نصب این دیتابیس در محیط‌های Windows، Linux و Docker را توضیح خواهیم داد.

در ارتباط با کانفیگ‌های مهم دیتابیس، نحوه‌ی تخصیص Heap Memory و دیگر تنظیمات مهم می‌پردازیم.

و همچنین به معرفی قابلیت‌های ابزارهای مختلف مانند Browser، Cypher Shell و Bloom می‌پردازیم.

  انواع نسخه‌ها و ابزارهای Neo4j
مشاهده
"10:11  
  نصب و راه‌اندازی Neo4j در Ubuntu و Docker
"10:25  
  تنظیمات مهم بعد از نصب Neo4j
"12:39  
  راه اندازی Neo4j
 100%    
"02:00  
مدل داده در Neo4j

قبل از شروع به کار با دیتابیس باید با مفاهیم اولیه آن آشنا شویم.

در دیتابیس‌های گرافی مهمترین مفاهیم مربوط به Node، Relationship و Property است.

در این قسمت به معرفی هریک از این مفاهیم می‌پردازیم. قوانین نام‌گذاری آنها را بررسی می‌کنیم. و در آخر مثال‌هایی از دنیای واقعی برای مدل‌سازی داده در Neo4j خواهیم پرداخت.

  آشنایی با مفاهیم اصلی Node و Relationship
مشاهده
"11:41  
  آشنایی با مفاهیم اصلی Property
"04:46  
  تمرینات مدل داده در Neo4j
 100%    
"03:00  
زبان Cypher-درج داده

در این فصل ابتدا با مقدمات Cypher به عنوان یه Query Language می‌پردازیم.

به خصوصیات اصلی آن اشاره می‌کنیم. 

در ادامه با Syntax مربوط به ساخت Label آشنا می‌شویم. 

نحوه‌ی درج Node و Relationship جدید در یک دیتابیس را مورد بررسی قرار خواهیم داد.

 

  روش‌های مختلف اجرای کوئری Cypher
مشاهده
"04:59  
  ساخت Node و Relationship
"15:11  
  ایجاد یک رابطه
 33.3%    
"01:00  
  کوئری‌های پیشرفته درج داده
"07:02  
  درج Property در Node و Relationship
"03:49  
  ایجاد یک نود جدید
 33.3%    
"01:00  
  بروزرسانی و حذف یک Node و Relationship
"03:49  
  حذف یک نود از شبکه
 33.3%    
"01:00  
زبان Cypher-خواندن داده

مهمترین فصل این دوره آموزشی.

در این فصل با انواع مثال‌ها از نحوه‌ی خواندن داده با استفاده از دستورات مختلف Cypher مثل Match، WHERE، WITH، RETURN، LIMIT آشنا می‌شویم.

در انتها به بررسی تابع ShortestPath به عنوان یکی از قابلیت‌های منحصر به فرد Neo4j می‌پردازیم.

  دستور Match
"08:54  
  تمرین کوئری Match
 25%    
"01:00  
  دستور WHERE
"08:16  
  تمرین کوئری WHERE
 25%    
"01:00  
  دستور OptionalMatch
"07:46  
  دستور WITH
"09:14  
  تمرین دستور WITH
 50%    
"02:00  
  دستور ShortestPath
"06:17  
کار با کتابخانه‌های Data Science

یکی از دلایل استفاده از Neo4j، امکان بهره‌مندی از کتابخانه GDS است.

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

در این فصل بعد از آشنایی با ویژگی‌های این کتابخانه و Syntax آن به استفاده از دو الگوریتم Page Rank و Node Similarity بر روی یک شبکه گراف می‌پردازیم.

 

  مقدمه از کتابخانه GDS
"08:34  
  فعال‌سازی GDS در Neo4j
"03:22  
  الگوریتم Page Rank و Node Similarity
"17:39  
  تمرینات GDS
 100%    
"02:00  
مهاجرت از MySQL به Neo4j

در این فصل قصد داریم چگونگی مهاجرت از دیتابیس MySQL به Neo4j را مورد بررسی قرار دهیم.

ما در این فصل یک پروژه‌ی تاکسی اینترنتی را از MySQL به Neo4j انتقال خواهیم داد.

با نحوه و روش‌های مهاجرت داده به Neo4j آشنا می‌شویم و با استفاده از روش Load CSV این انتقال را انجام خواهیم داد.

  مدل‌سازی داده‌ها
"09:28  
  بک‌آپ از دیتابیس MySQL
"04:32  
  انتقال داده‌ها به Neo4j - بخش اول
"17:24  
  انتقال داده‌ها به Neo4j - بخش دوم
"08:05  
  تمرینات فصل هفتم
 100%    
"04:00  
جمع‌بندی

در این فصل به جمع‌یندی مطالب می‌پردازیم.

  جمع‌بندی
"00:54  

درباره دوره

در دنیای امروزی پر از داده‌ها، انواع مختلفی از دیتابیس‌ها وجود دارند که هر یک ویژگی‌ها و قابلیت‌های خاص خود را دارند. اما یکی از این دیتابیس‌ها که به شکل چشمگیری از سایرین متمایز است، دیتابیس‌های گرافی مانند Neo4j هستند.

آیا تابه‌حال به فکر این بوده‌اید که چطور می‌توانید ارتباطات پیچیده بین داده‌ها را به شکلی کاملاً مفهومی مدل‌سازی کنید؟ Neo4j به شما این امکان را می‌دهد که داده‌ها را به‌صورت گرافی مدل‌سازی کرده و ارتباطات بین آن‌ها را به شکلی منطقی و قابل‌فهم نشان دهید. این قابلیت بسیار مهم است، زیرا در دنیای واقعی، داده‌ها اغلب ارتباطات پیچیده و چندگانه‌ای دارند که با استفاده از روش‌های سنتی دیتابیسی، مدل‌سازی و مدیریت آن‌ها بسیار دشوار است.

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

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

درباره استاد

maktabkhooneh-teacher هامون محمدیان پور

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

مشاهده پروفایل و دوره‌‌های استاد

نظرات کاربران

تا کنون نظری برای این دوره ثبت نشده است. برای ثبت نظر باید ابتدا در دوره ثبت نام کرده و دانشجوی دوره باشید.

سوالات پرتکرار

پس از سپری شدن زمان دوره، به محتوای دوره دسترسی خواهم داشت؟
بله؛ پس از سپری شدن مدت زمان دوره شما به محتوای دوره دسترسی خواهید داشت و می توانید از ویدئوها، تمارین، پروژه و دیگر محتوای دوره در صورت وجود استفاده کنید ولی امکان تصحیح تمارین توسط پشتیبان و دریافت گواهی نامه برای شما وجود نخواهد داشت.

دیتابیس‌های رابطه‌ای برای بهره‌مندی از مزایای گراف دارای نقاط ضعفی مانند:

1. پیچیدگی جوین‌ها: در دیتابیس‌های رابطه‌ای، جوین‌های متعدد و پیچیده ممکن است باعث کاهش کارایی و افزایش زمان اجرا شوند. این پیچیدگی می‌تواند در کوئری‌های پیچیده و با حجم داده بالا به چالش کشیده شود.

۲. مدیریت ارتباطات پیچیده: در دیتابیس‌های رابطه‌ای، ارتباطات پیچیده ممکن است به‌صورت سلسله‌مراتبی مدیریت شوند که باعث کاهش کارایی در جستجوها و نمایش ارتباطات می‌شود. 

۳. عدم انعطاف‌پذیری در تغییرات: ساختارهای داده‌ای در دیتابیس‌های رابطه‌ای کم انعطاف بوده و تغییرات در نیازها ممکن است با مشکلاتی روبرو شود. این موضوع ممکن است پروژه‌ها را در تطابق با تغییرات متوقف کند.

به همین جهت، Neo4j با ارائه یک مدل انعطاف‌پذیرتر و قابل‌فهم‌تر برای داده‌ها، به‌عنوان یک جایگزین مؤثر در مقابل این محدودیت‌ها مطرح می‌شود. این مدل به نحوی طراحی شده است که بهترین پاسخ‌ها را در مواجهه با چالش‌های پیچیده مدیریت داده فراهم می‌کند و امکان حفظ کارایی و انعطاف‌پذیری در تغییرات نیز فراهم می‌سازد.

اهمیت یادگیری Neo4j در دنیای امروز از دو جهت حائز اهمیت است:

۱. نمایش بهتر اطلاعات: Neo4j به شما امکان می‌دهد تا ارتباطات پیچیده در داده‌ها را به شیوه‌ای بصری و قابل‌فهم نمایش دهید. این نمایش به تصمیم‌گیری‌های بهتر و درک عمیق‌تر از داده‌ها کمک می‌کند.

۲. حل مسائل پیچیده: در دنیای امروز، مواجه با مسائل پیچیده و پیوسته افزایش‌یافته است. Neo4j به شما این امکان را می‌دهد که با بهره‌مندی از الگوریتم‌های گرافی، مسائل پیچیده را با بهینه‌ترین راهکارها حل کنید؛ بنابراین، یادگیری اصول و مفاهیم گرافی به شما کمک خواهد کرد تا در دنیای پیچیده داده‌ها، بهترین تصمیمات را بگیرید و به مسائل با دقت بیشتری نگریسته و آن‌ها را حل کنید.

poster
پیش‌نمایش دوره
  
برگزار کننده:  مکتب‌خونه
  
زمان مورد نیاز برای گذراندن دوره:  4 ساعت
مجموع محتوای آموزشی:  4 ساعت ویدئو
 (قابل دانلود می‌باشد)