Cara menggunakan relation in mongodb

The massive volumes data generated by modern interconnected systems and devices has spawned a new kind of database known as NoSQL. Perhaps the best known of this new breed of non-relational database is MongoDB. Unlike traditional relational databases (RDBMSes), MongoDB does not contain tables. Instead, it stores data as collections of documents.

In the blog, we learned how to create a new database and collection using the Navicat for MongoDB database management & design tool. In today's follow-up, we'll learn about MongoDB documents and add some to our collection.

While MongoDB shares some of the same terms as those of traditional RDBMSes, others are unique to NoSQL databases. To help clarify, here's a table that compares RDBMS terminology to that of MongoDB:

RDBMSMongoDBDatabaseDatabaseTableCollectionTuple/RowDocumentcolumnFieldTable JoinEmbedded DocumentsPrimary KeyPrimary Key (Default key _id is provided by mongodb)

MongoDB stores data as documents. BSON is a binary representation of JSON documents, though it contains additional data types, in addition to JSON. MongoDB documents are composed of field:value pairs and have the following structure:

{
   field1: value1,
   field2: value2,
   field3: value3,
   ...
   fieldN: valueN
}

The value of a field can be any valid BSON data type, including other documents, arrays, and arrays of documents. Here's and example of a document that contains information about an American city. Notice the different data types:

// 1
{
    "_id": "01005",
    "city": "BARRE",
    "loc": [
        -72.108354,
        42.409698
    ],
    "pop": NumberInt("4546"),
    "state": "MA"
}

// 2
{
    "_id": "01012",
    "city": "CHESTERFIELD",
    "loc": [
        -72.833309,
        42.38167
    ],
    "pop": NumberInt("177"),
    "state": "MA"
}

// 3
//etc...

In the last blog, we created a database named "my_mongo_db" and collection named "my_first_collection". Now, we'll add some data to the collection in the form of documents.

  • The first step is to open the collection that we wish to add the document to. Select the "my_first_collection" object in the Object pane and click the Open Collection button on the Objects toolbar:
    Cara menggunakan relation in mongodb

    That will open the collection in a new tab.

  • You'll find the Document operations at the bottom of the tab. Click the Plus sign to add a document:
    Cara menggunakan relation in mongodb

  • In the Add Document dialog, enter the following fields, which are similar to those of the document samples above:
    {
        "_id": "01005",
        "city": "BARRE",
        "loc": [
            -72.108354,
            42.409698
        ],
        "pop": 4546,
        "state": "MA"
    }
    

    Cara menggunakan relation in mongodb

  • It's a good idea to validate the document before saving it. You can do that via the Validate button. The above data should produce a success message. Should errors be encountered, an error message will be presented with the first error in the document. The error will also include the line and column number in order to easily identify the error in the document:
    Cara menggunakan relation in mongodb

  • Click the Add button to close the dialog and save the new document. You should now see it in the Collection tab:
    Cara menggunakan relation in mongodb

You can add more documents by following the same process as above:

Cara menggunakan relation in mongodb

Now that we've learned how to add documents to our collection, in the next blog, we'll cover how to view, delete, and edit documents in Navicat for MongoDB.

Dalam mengembangkan aplikasi berbasis web maupun mobile, tentu membutuhkan sistem integrasi dengan basis data (database). Sehingga setiap informasi dan kebutuhan data penting milik perusahaan atau organisasi dapat dikelola dan dimonitoring dengan baik. Pada umumnya, bagi para programmer lebih banyak menggunakan sistem database secara relasional. Namun, saat ini juga tersedia basis data non-relasional seperti MongoDB, Redis, Cassandra, dll.

Lantas apa perbedaannya? Dalam artikel kali ini, kami akan membahas seputar bahasa database MongoDB yang termasuk ke dalam konsep NoSQL. Serta, akan menjelaskan bagaimana proses menginstall -nya pada sistem operasi berbasis Windows.

Pada dasarnya sistem basis data terdiri dari dua macam, yang pertama adalah RDBMS (Relational Database Management System) atau sering disebut dengan SQL (Structured Query Language) . Dan yang kedua adalah NoSQL (Not Only SQL) atau disebut juga dengan Non Relational Database.

Pengertian MongoDB

Jadi, apa itu sebenarnya MongoDB? MongoDB adalah salah satu jenis database NoSQL berbasis dokumen dengan menggunakan format file berupa JSON (JavaScript Object Notation). Jika dikomparasikan dengan penggunaan database SQL, dimana setiap data tersimpan dalam bentuk tabel. Sedangkan pada MongoDB, data akan disimpan ke dalam sebuah dokumen berformat JSON.

Pada umumnya, penggunaan dari NoSQL sendiri lebih dikhususkan untuk menangani jumlah data yang sangat besar (big data). Sehingga, arsitektur dari kedua jenis basis data tentu sangat berbeda. Oleh sebab itu, anda perlu memikirkan dengan matang untuk menentukan teknologi database yang yang nantinya akan digunakan dalam sebuah project atau bisnis.

Kelebihan dari MongoDB

Setiap jenis database, baik yang bersifat relasional maupun non-relasional memiliki kelebihan dan kekurangan masing – masing. Berikut ini, terdapat beberapa manfaat yang dapat diperoleh apabila anda mengembangkan sistem basis data menggunakan MongoDB.

1. Sistem Penyimpanan tidak Membutuhkan Tabel

MongoDB menggunakan dokumen yang terstruktur dan terintegrasi dengan JSON, sehingga performa yang dihasilkan akan lebih cepat, serta didukung oleh Memcached. Jadi, setiap membuat tabel di dalam MongoDB, pada suatu kolom baris akan mempunyai embedded document atau baris yang tertanam. 

2. Tidak perlu untuk Menggunakan Tabel Terstruktur

MongoDB bekerja secara otomatis untuk membuat struktur tabel saat proses insert dilakukan. Suatu tabel (collections) pada MongoDB mampu membuat dokumen yang di dalamnya telah include kolom yang sama. 

3. Telah Terintegrasi dengan JavaScript

Kueri pada MongoDB tidaklah sama dengan bahasa SQL yang lain, akan tetapi, lebih memanfaatkan pada penggunaan bahasa pemrograman JavaScript. Yang mana, pengguna (user) dapat membuat stored procedure menggunakan bantuan JavaScript secara langsung. Sehingga, ketika pengguna membuat halaman baru, maka secara default akan membuat ID pada dokumen.

Baca juga: 

  • Awas! Ini Dampak dan Sanksi Jika Tidak Melakukan Pelaporan PDDikti

Cara Install MongoDB di Windows OS

Berikut ini merupakan beberapa langkah untuk melakukan proses penginstalan MongoDB pada Windows OS.

  • Pertama, anda dapat mendownload MongoDB pada situs resmi -nya.
  • Selanjutnya, melakukan proses instalasi dengan mengikuti panduan dalam installer yang tersedia. Setelah berhasil terpasang, anda perlu melakukan konfigurasi terkait MongoDB Environment dengan cara membuat folder data untuk menyimpan database. Jangan lupa untuk mendaftarkan dalam “path” juga.
  • Untuk dapat menjalankan MongoDB, anda perlu masuk pada fitur CMD (Command Prompt) Windows dengan mengetikkan “C:\mongodb\bin\mongod.exe”. Perintah tersebut bertujuan untuk menjalankan server milik MongoDB.
  • Dan langkah selanjutnya, untuk menghubungkan dengan MongoDB, anda dapat menjalankan file “mongo.exe” dan menekan perintah “connecting to: test”. Apabila telah muncul tampilan shell -nya, maka anda telah berhasil terhubung dengan server MongoDB.

Cara Kerja MongoDB

Setelah mengetahui bagaimana cara menginstall MongoDB pada perangkat Windows, selanjutnya masuk pada pembahasan mengenai cara kerja dari bahasa database tersebut.

1. Mengkoneksikan dengan MongoDB

Untuk dapat terhubung dengan MongoDB, anda dapat masuk menu direktori bin yang merupakan tempat penyimpanan (storage). Berikutnya, masuk pada perintah mongod untuk memulai operasi. Ketika berada pada direktori bin, akan muncul REPL (Read Eval Print Loop) untuk membantu jalannya proses MongoDB.

2. Membuat Database Baru

Kedua, membuat database baru pada MongoDB, anda hanya membuat dokumen baru untuk merealisasikannya. Untuk membuatnya, anda perlu memastikan bahwa data collections anda telah sesuai dan sudah dibuat. 

3. Membuat Dokumen Baru

Untuk membuat dokumen baru, pengguna dapat membuat dokumen dengan kolom berupa array. Hal tersebut memungkinkan user tidak perlu membuat sebuah relasi seperti halnya pada DBMS. 

4. Melakukan Query Find

Query Find merupakan salah satu perintah yang berfungsi untuk menampilkan dokumen yang tersimpan dalam collection dengan perintah “db.(nama database).find(); atau menggunakan perintah yang lebih spesifik seperti “db.(nama database).find({category:’kantor’});

5. Menggunakan Query Update dan Remove

Untuk Query Update, digunakan untuk memperbarui sebuah kolom dalam suatu dokumen. Cara yang pertama, menggunakan dokumen ID, kemudian menggunakan operator $set untuk merubah sebuah field. Cara kedua, untuk menambahkan atau mengurangi item pada field array document, anda dapat menggunakan operator $push untuk menambahkan. Serta $pull untuk mengurangi sebuah item.

Fungsi dari Query Remove digunakan untuk menghapus dokumen menggunakan ID Document, atau juga menggunakan regular expression. Untuk menghapus collection, anda dapat menggunakan method drop(). Sedangkan, untuk menghapus database pengguna perlu menggunakan perintah dropDatabase().

Mengapa MongoDB disebut basis data non relasional?

MongoDB merupakan sebuah database yang memiliki konsep NoSQL. Istilah ini dapat diartikan secara awam dengan non relasional karena berbeda dengan MySQL yang merupakan RDBMS (relational database management system).

MongoDB menggunakan bahasa apa?

MongoDB sendiri ditulis dengan bahasa C++ dan telah tersedia untuk berbagai jenis bahasa pemrograman. Fitur utama dari mongoDB antara lain: model document-oriented storage.

MongoDB digunakan untuk apa?

3. Cocok Untuk Menampung Data yang Bervariasi Dynamic schema membuat MongoDB cocok untuk menampung data yang bervariasi baik digunakan untuk menyimpan data yang terstruktur ataupun yang tidak terstruktur.

Apakah MongoDB NoSQL?

Mongo DB adalah salah satu jenis database yang menggunakan konsep NoSQL berbasis dokumen. MongoDB ini merupakan basis data NoSQL yang gak menyimpan data dalam tabel, akan tetapi menggunakan dokumen terstruktur layaknya JSON (JavaScript Object Notation).