Basis Data

Neo4j

Jalur lengkap basis data graf Neo4j: model property graph, Cypher, impor data, performa, algoritma GDS, sampai proyek mesin rekomendasi.

Neo4j adalah basis data graf yang menyimpan relasi sebagai koneksi kelas satu, bukan join yang dihitung saat kueri dijalankan. Jalur ini membangun pemahaman dari model property graph dan bahasa Cypher, lalu melatih keputusan pemodelan, pipeline impor, penyetelan performa, dan algoritma graf dengan GDS. Jalur ditutup dengan proyek terpandu membangun mesin rekomendasi. Lingkungan belajarnya adalah Neo4j Community 2026.x beserta cypher-shell dan terminal.

Mengenal Neo4j 3 pelajaran

Modul pembuka: mengapa basis data graf ada, model property graph, dan penyiapan lingkungan Neo4j pertama.

  1. Mengapa grafRelasi sebagai data kelas satu dan titik di mana SQL serta dokumen mulai kesulitan menjawab pertanyaan keberhubungan.
  2. Gagasan property graphNode, label, relasi, dan properti sebagai satu model utuh yang disimpan langsung oleh Neo4j.
  3. Penyiapan lingkunganMemasang Neo4j Desktop, Aura, atau Docker, mengenal Neo4j Browser, dan memuat dataset Movies.
Model property graph 4 pelajaran

Anatomi model property graph: node, label, relasi, properti, serta disiplin struktur tanpa skema.

  1. Node dan labelEntitas, label ganda, dan konvensi penamaan node di Neo4j.
  2. RelasiArah dan tipe relasi sebagai koneksi tersimpan yang membuat penelusuran graf murah.
  3. PropertiProperti pada node dan relasi, tipe nilai yang didukung, dan penempatan fakta.
  4. Struktur tanpa skemaConstraint, disiplin kunci, dan alasan model tanpa skema tetap menuntut desain.
Fundamental Cypher 4 pelajaran

Bahasa kerja Cypher dari sisi terkecil: pola MATCH, penyaringan hasil, perubahan data, dan MERGE.

  1. Pola dalam MATCHSintaksis pola ala ASCII-art untuk membaca isi graf dengan MATCH.
  2. Menyaring dan membentuk hasilWHERE, DISTINCT, ORDER BY, LIMIT, dan proyeksi RETURN pada kueri Cypher.
  3. Membuat dan mengubah dataCREATE, SET, REMOVE, DELETE, dan DETACH DELETE untuk mengelola isi graf.
  4. MERGEGet-or-create idempoten dengan ON CREATE dan ON MATCH, serta posisi constraint sebelum MERGE.
Pola kueri 5 pelajaran

Pola kueri Cypher tingkat lanjut: jalur panjang variabel, OPTIONAL MATCH, agregasi, dan pengolahan list.

  1. Jalur dan lompatan panjang variabelPola -[:KENAL*2..3]-, penelusuran tanpa batas, dan biayanya.
  2. Jalur terpendek dengan shortestPathFungsi shortestPath bawaan dan kondisi kapan waktunya beralih ke GDS.
  3. OPTIONAL MATCHPadanan LEFT JOIN pada graf dan penanganan null yang menyertainya.
  4. Agregasi dan WITHPengelompokan otomatis, collect, dan cara berpikir pipeline dengan WITH.
  5. List yang dikerjakan dengan benarcollect, UNWIND, predikat list, dan koleksi jalur dalam Cypher.
Keputusan pemodelan 4 pelajaran

Keterampilan pemodelan yang menentukan mutu graf: penempatan fakta, node antara, fakta pada relasi, dan anti-polanya.

  1. Node, relasi, atau propertiMenempatkan setiap fakta pada tempat yang tepat sebagai keterampilan kelas satu.
  2. Node antaraMengubah relasi yang memerlukan fakta sendiri menjadi node tersendiri.
  3. Fakta pada relasiBobot, peran, dan penanda waktu sebagai kekuatan utama graf.
  4. Anti-pola pemodelanHub raksasa, segala-sesuatu-adalah-node, dan penjejalan properti.
Pipeline impor 4 pelajaran

Membawa data nyata ke dalam graf: LOAD CSV, resep konversi relasional, higienitas impor, dan muatan besar.

  1. LOAD CSVHeader, pemisah, dan subquery ter-batch pada LOAD CSV.
  2. Dari tabel ke grafForeign key menjadi relasi: resep impor dari basis data relasional.
  3. Higienitas imporDeduplikasi dengan MERGE, constraint pendukung, dan nilai default defensif.
  4. Data lebih besarPerkakas bulk import neo4j-admin dan pengenalan APOC untuk muatan besar.
Performa 4 pelajaran

Membuat kueri tetap cepat: indeks, pencarian full-text dan vektor, rencana kueri, serta cara berpikir planner.

  1. IndeksIndeks rentang, constraint keunikan, dan menghentikan pemindaian seluruh graf.
  2. Pencarian di Luar Kecocokan PersisIndeks full-text dan pengenalan indeks vektor untuk pencarian yang tidak persis.
  3. Rencana kueriMembaca EXPLAIN dan PROFILE beserta satuan db hits.
  4. Cara berpikir plannerMenjangkar pola selektif terlebih dahulu dan menghindari produk Kartesius.

Analitik graf dengan Neo4j Graph Data Science: proyeksi, pencarian jalur, deteksi komunitas, dan sentralitas.

  1. Pustaka GDSApa yang ditambahkan Graph Data Science: proyeksi graf dan analitik dalam memori.
  2. Pencarian JalurDijkstra pada graf berbobot untuk persoalan jangkauan, dengan rujukan silang ke teori DSA.
  3. Deteksi KomunitasLouvain dan propagasi label untuk menemukan klaster pada graf sosial.
  4. SentralitasPageRank dan betweenness untuk menjawab node mana yang penting dalam graf.

Proyek terpandu: memposisikan graf secara jujur, merancang dan membangun mesin rekomendasi, lalu mengokohkannya.

  1. Di Mana Graf Menang dan KalahPerbandingan jujur terhadap CTE rekursif PostgreSQL dan $lookup MongoDB pada pertanyaan keberhubungan.
  2. Merancang Mesin RekomendasiPola konsumsi bersama, kemiripan, dan sinyal konten sebagai pola graf.
  3. MembangunnyaKueri rekomendasi yang dihubungkan ke aplikasi melalui driver Python.
  4. MengokohkannyaIndeks, rencana terverifikasi PROFILE, dan alur penyegaran data untuk proyek yang siap digunakan.