MongoDB - Create Collection: A Beginner's Guide

Hai there, bakalah pengurus pangkalan data! Hari ini, kita akan memulakan sebuah perjalanan menarik ke dalam dunia MongoDB dan belajar bagaimana untuk mencipta koleksi. Jangan bimbang jika anda baru dalam bidang pengaturcaraan - saya akan menjadi pemandu yang ramah, menjelaskan segala-galanya secara langkah demi langkah. Jadi, ambil secangkir kopi (atau teh, jika itu lebih menarik bagi anda), dan mari kita masuk ke dalamnya!

MongoDB - Create Collection

Apa Itu MongoDB?

Sebelum kita mula mencipta koleksi, mari kitaambil sedikit masa untuk memahami apa itu MongoDB. Bayangkan anda ada sebuah kotak besar di mana anda dapat menyimpan pelbagai jenis benda - itu adalah apa yang MongoDB lakukan, tetapi untuk data. Ia adalah jenis pangkalan data yang membolehkan anda menyimpan dan menguruskan maklumat dalam format yang fleksibel, berdasarkan dokumen.

Apa Itu Koleksi?

Dalam MongoDB, koleksi adalah seperti folder di mana anda menyimpan dokumen yang berkaitan. Jika anda familiar dengan pangkalan data tradisional, anda boleh fikirkan koleksi di MongoDB adalah seperti tabel. Walau bagaimanapun, koleksi dalam MongoDB adalah lebih fleksibel - mereka tidak memerlukan struktur tetap, yang bermakna anda dapat menyimpan jenis dokumen yang berbeza dalam koleksi yang sama.

Metode createCollection()

Sekarang, mari kita ke bahagian menarik - mencipta koleksi! MongoDB menyediakan method yang berguna bagi kita bagi membuat koleksi ini. Ia seperti memiliki tongkat ajaib yang dapat mencipta folder baru bagi data kita dengan perintah yang mudah.

Sintaksis Asas

Ini adalah apa yang sintaksis asas untuk mencipta koleksi seperti:

db.createCollection(name, options)

Mari kita pecahkan ini:

  • db merujuk kepada pangkalan data semasa anda bekerja.
  • createCollection adalah method yang kita gunakan.
  • name adalah string yang menentukan apa yang anda mahu panggil koleksi baru anda.
  • options adalah parameter yang boleh dipilih di mana anda dapat menetapkan konfigurasi berbeza bagi koleksi anda.

Mencipta Koleksi Ringkas

Mari kita mulakan dengan contoh ringkas. Bayangkan kita sedang membina pangkalan data perpustakaan dan mahu mencipta koleksi untuk buku:

db.createCollection("books")

Perintah ini mencipta koleksi baru bernama "books" dalam pangkalan data semasa anda. Mudah, kan? Ia seperti mengatakan kepada MongoDB, "Hey, saya perlu folder baru untuk bukunya!"

Mencipta Koleksi Dengan Pilihan

Sekarang, mari kita jadi lebih keren. MongoDB membolehkan kita menetapkan pelbagai pilihan saat mencipta koleksi. Ini adalah contoh:

db.createCollection("readers", {
capped: true,
size: 5242880,
max: 5000
})

Dalam contoh ini, kita mencipta koleksi bernama "readers" dengan beberapa pilihan khusus:

  • capped: true bermakna koleksi ini mempunyai saiz tetap.
  • size: 5242880 menetapkan saiz maksimum koleksi kepada 5 megabait.
  • max: 5000 membatasi koleksi kepada maksimum 5000 dokumen.

Buat fikirkan ini seperti mencipta rak buku khas yang hanya boleh menyimpan bilangan tertentu buku atau mempunyai batas berat.

Pilihan Yang Kerap Digunakan

Mari kita lihat beberapa pilihan yang kerap digunakan saat mencipta koleksi:

Pilihan Keterangan
capped Boolean. Jika benar, mencipta koleksi yang terbatas.
size Number. Menentukan saiz maksimum dalam bait bagi koleksi yang terbatas.
max Number. Menentukan bilangan maksimum dokumen yang dibenarkan dalam koleksi yang terbatas.
validator Document. Menentukan aturan validasi bagi koleksi.
validationLevel String. Menentukan betapa ketat MongoDB menerapkan aturan validasi.
validationAction String. Menentukan sama ada MongoDB harus membuat kesalahan bagi dokumen yang tidak sah atau hanya memberi amaran.

Contoh Praktis

Contoh 1: Mencipta Koleksi Yang Terbatas Bagi Log

Bayangkan anda membina sistem yang perlu mencatat log terbaru, tetapi anda tidak mahu ia bertambah secara tak terbatas:

db.createCollection("systemLogs", {
capped: true,
size: 10485760,  // 10 MB
max: 10000
})

Ini mencipta koleksi yang akan menyimpan log sistem, tetapi hanya akan menyimpan entri terbaru, sehingga 10 MB atau 10,000 dokumen, mana yang tercapai dahulu. Ia seperti memiliki buku catatan yang secara automatik menghapus catatan lama untuk memberi ruang bagi catatan baru!

Contoh 2: Mencipta Koleksi Yang Divalidasi Bagi Profil Pengguna

Sekarang, mari katakan kita mahu memastikan semua profil pengguna dalam pangkalan data kita mempunyai nama dan alamat email yang sah:

db.createCollection("userProfiles", {
validator: {
$jsonSchema: {
bsonType: "object",
required: ["name", "email"],
properties: {
name: {
bsonType: "string",
description: "mesti adalah string dan diperlukan"
},
email: {
bsonType: "string",
pattern: "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$",
description: "mesti adalah alamat email sah dan diperlukan"
}
}
}
}
})

Contoh ini mencipta koleksi dengan validator yang memastikan setiap dokumen mempunyai nama (yang mesti adalah string) dan alamat email sah. Ia seperti memiliki petugas perpustakaan yang ketat yang tidak akan membolehkan anda meminjam buku kecuali anda mengisi kad peminjaman dengan betul!

Memeriksa Jika Koleksi Sudah Wujud

Sebelum mencipta koleksi baru, seringkali adalah baik untuk memeriksa jika ia sudah wujud. Ini adalah bagaimana anda boleh melakukannya:

if (!db.getCollectionNames().includes("myNewCollection")) {
db.createCollection("myNewCollection")
print("Koleksi berjaya dicipta!")
} else {
print("Koleksi sudah wujud!")
}

Skrip ini memeriksa jika "myNewCollection" wujud. Jika tidak, ia mencipta koleksi dan mencetak mesej kesuksesan. Jika ia sudah wujud, ia hanya memberitahu anda. Ia seperti memeriksa jika anda sudah memiliki folder untuk subjek tertentu sebelum mencipta yang baru!

Kesimpulan

Tahniah! Anda telah belajar dasar mencipta koleksi dalam MongoDB. Ingat, koleksi adalah wadah fleksibel bagi data anda, dan method createCollection() adalah alat anda untuk mengatur mereka seperti yang anda perlukan.

Sekiranya anda teruskan perjalanan anda dalam MongoDB, anda akan temui banyak cara untuk menyesuaikan dan optimalkan koleksi anda. Tetapi untuk sekarang, rapatkan diri anda - anda sudah dalam jalur untuk menjadi ahli MongoDB!

Terus berlatih, tetap cergas, dan kod yang gembira! Ingat, dalam dunia pangkalan data, anda adalah arsitek rumah data anda. Buatnya nyaman, efisien, dan tepat apa yang data anda perlukan!

Credits: Image by storyset