Kursus
Di dunia yang digerakkan oleh data saat ini, kita menghadapi tantangan besar: bagaimana kita menyimpan, mengelola, dan mengekstrak wawasan bermakna dari data secara efisien? Basis data menawarkan solusi, menyediakan repositori terstruktur untuk mengorganisasi dan mengakses informasi.
Namun, untuk memenuhi kebutuhan unik dari berbagai struktur data dan use case, berbagai jenis basis data pun muncul.
Pada artikel ini, kita akan membahas empat jenis utama yang akan Anda temui di dunia data science: basis data relasional, basis data NoSQL, basis data cloud, dan basis data vektor.
Jika Anda ingin mempelajari desain basis data, lihat kursus ini tentang Database Design.
Pentingnya Basis Data
Basis data adalah alat penting di dunia digital. Ini adalah kumpulan data yang terorganisasi yang mempermudah penyimpanan, pengambilan, pengelolaan, dan manipulasi informasi.
Pada intinya, basis data dirancang untuk menyimpan data dalam format terstruktur, sehingga pengguna dan aplikasi dapat mengakses serta memperbarui informasi dengan efisien sesuai kebutuhan.
Pentingnya basis data menjangkau hampir semua bidang, namun sangat krusial dalam data science. Proyek data science sering kali melibatkan analisis data berukuran besar untuk mendapatkan wawasan, membuat prediksi, atau mendukung pengambilan keputusan.
Tanpa basis data, mengelola data ini—terutama saat ukurannya bertambah dan kompleksitasnya meningkat—akan merepotkan dan rentan kesalahan. Basis data menyediakan cara sistematis untuk menyimpan data serta memastikan integritas, keamanan, dan aksesibilitasnya.
Pertimbangkan, misalnya, sebuah perusahaan ritel yang melacak penjualan, interaksi pelanggan, inventaris, dan informasi pemasok. Basis data berfungsi sebagai tulang punggung operasi perusahaan, memungkinkan mereka menganalisis tren, memproyeksikan permintaan, mengoptimalkan tingkat inventaris, dan meningkatkan pengalaman pelanggan.
Tanpa basis data, perusahaan akan kesulitan menangani jumlah data besar yang dihasilkan setiap hari, apalagi memanfaatkan data tersebut untuk membuat keputusan bisnis yang tepat.
Jenis Basis Data: Tinjauan Singkat
Beragam jenis basis data mencerminkan kebutuhan use case yang bervariasi dan kompleksitas data yang ditangani. Jenis basis data yang berbeda dikembangkan untuk mengoptimalkan kinerja, meningkatkan fungsionalitas, dan memenuhi use case tertentu.
Ragam ini bukan sekadar kelimpahan teknologi, tetapi juga kebutuhan untuk menjawab tantangan dan persyaratan unik yang muncul pada berbagai use case. Kebutuhan akan jenis basis data yang berbeda berasal dari perbedaan struktur data, pola akses, tuntutan skalabilitas, dan persyaratan konsistensi.
Sebagai contoh, aplikasi bisnis tradisional sering mengandalkan data terstruktur yang cocok disimpan dalam tabel dengan skema terdefinisi, sehingga basis data relasional menjadi pilihan ideal.
Namun, dengan munculnya big data, jejaring sosial, dan analitik real-time, keterbatasan basis data relasional dalam menangani data tidak terstruktur, melakukan penskalaan horizontal, atau mengelola data yang sangat saling terhubung menjadi jelas.
Hal ini memunculkan basis data NoSQL, yang dirancang untuk menawarkan fleksibilitas, skalabilitas, dan keunggulan kinerja bagi jenis data tertentu yang tidak sesuai dengan struktur kaku basis data tradisional. Jika Anda ingin mempelajari lebih lanjut bagaimana perbandingan basis data SQL dan NoSQL, baca tutorial ini: SQL vs NoSQL Databases.
Demikian pula, kemunculan IoT dan aplikasi yang peka waktu menuntut pengembangan basis data deret waktu yang dioptimalkan untuk menangani data temporal secara efisien. Pelajari lebih lanjut dalam blog komprehensif ini tentang time series databases.
Basis data cloud juga semakin menonjol, menawarkan skalabilitas dan aksesibilitas dengan menempatkan data pada server jarak jauh.
Selain itu, basis data vektor muncul untuk memenuhi kebutuhan spesifik aplikasi pembelajaran mesin, menyimpan dan melakukan kueri vektor berdimensi tinggi secara efisien.
Sistem Manajemen Basis Data Populer
Peringkat DB-Engines untuk Mei 2024 mencantumkan sistem manajemen basis data (DBMS) teratas berdasarkan popularitas. Peringkat ini diperbarui setiap bulan dan mencakup 420 sistem. Per Mei 2024, empat basis data teratas semuanya bersifat relasional: Oracle, MySQL, Microsoft SQL, dan PostgreSQL.

Sumber: db-engines
Perlu dicatat bahwa basis data NoSQL seperti MongoDB dan Redis juga menempati posisi kuat dalam peringkat, mencerminkan meningkatnya permintaan akan solusi yang fleksibel dan dapat diskalakan untuk menangani data tidak terstruktur dan aplikasi dengan lalu lintas tinggi. Sistem NoSQL ini mengalami pertumbuhan signifikan dari tahun ke tahun, menunjukkan pergeseran menuju arsitektur basis data yang lebih beragam.
Peringkat tersebut juga mengungkap meningkatnya popularitas basis data berbasis cloud seperti Snowflake, yang menawarkan solusi gudang data terkelola penuh dan dapat diskalakan. Elasticsearch, mesin pencari dan platform analitik yang andal, juga naik peringkat, menegaskan pentingnya kemampuan pencarian dan analitik dalam manajemen data modern.
Tren Popularitas Basis Data
Sekarang mari lihat grafik garis di bawah ini, yang menggambarkan lanskap dinamis popularitas basis data dari 2014 hingga 2024.

Sumber: db-engines
Satu hal penting adalah dominasi yang berkelanjutan dari sistem manajemen basis data relasional (RDBMS) seperti Oracle, MySQL, Microsoft SQL Server, dan PostgreSQL. Sistem-sistem ini secara konsisten mempertahankan posisi puncak sepanjang dekade, menyoroti pentingnya dalam menangani data terstruktur dan mendukung kueri kompleks di berbagai aplikasi.
Namun, grafik tersebut juga menunjukkan pergeseran yang mencolok dalam beberapa tahun terakhir. Sementara sistem RDBMS mengalami penurunan popularitas secara bertahap, basis data NoSQL seperti MongoDB dan Redis mengalami pertumbuhan signifikan. Kenaikan ini mencerminkan meningkatnya adopsi solusi yang fleksibel dan dapat diskalakan untuk mengelola data tidak terstruktur dan mengakomodasi aplikasi dengan lalu lintas tinggi.
Tren menarik lainnya adalah bangkitnya basis data berbasis cloud. Databricks, platform rekayasa data dan pembelajaran mesin berbasis cloud, melejit popularitasnya, menunjukkan meningkatnya permintaan solusi berbasis cloud yang menawarkan skalabilitas, kemudahan penggunaan, dan kemampuan analitik yang kuat.
Demikian pula, Snowflake, sebuah gudang data cloud terkelola penuh, mengalami pertumbuhan signifikan, menyoroti daya tarik arsitekturnya yang dapat diskalakan dan mudah digunakan.
Basis Data Relasional
Basis data relasional menyimpan data dalam tabel yang disusun menjadi baris dan kolom. Setiap baris mewakili satu catatan unik, dan setiap kolom mewakili atribut spesifik dari catatan tersebut.
Bayangkan seperti spreadsheet yang tertata rapi, tempat data disimpan dalam tabel yang terdiri dari baris (rekaman) dan kolom (atribut). Setiap baris mewakili entitas yang berbeda, seperti pelanggan atau produk, sementara setiap kolom menangkap karakteristik spesifik, seperti nama, alamat, atau harga.
Kekuatan sesungguhnya dari basis data relasional terletak pada kemampuannya mengaitkan tabel-tabel ini melalui relasi. Relasi ini, yang dibentuk melalui foreign key, memungkinkan kita menghubungkan data dari tabel yang berbeda, menciptakan pandangan informasi yang terpadu.
Sebagai contoh, dalam sistem customer relationship management (CRM), tabel pelanggan dapat dihubungkan dengan tabel pesanan, sehingga kita dapat melacak riwayat pembelian pelanggan.
Structured Query Language (SQL)
Untuk berinteraksi dengan basis data relasional, kita menggunakan Structured Query Language (SQL). Bahasa yang kuat ini memungkinkan kita melakukan kueri, menyisipkan, memperbarui, dan menghapus data, serta menjalankan operasi kompleks seperti menggabungkan data dari beberapa tabel. Sifat terstruktur SQL memastikan integritas dan konsistensi data melalui properti ACID:
- Atomicity: Semua operasi dalam sebuah transaksi diperlakukan sebagai satu kesatuan, memastikan bahwa semua perubahan dikomit atau tidak ada sama sekali.
- Consistency: Data tetap dalam keadaan valid sepanjang transaksi, mematuhi batasan dan aturan yang telah ditentukan.
- Isolation: Transaksi dieksekusi secara independen seolah-olah hanya ada satu operasi yang terjadi pada basis data.
- Durability: Setelah transaksi dikomit, perubahannya bersifat permanen, bahkan jika terjadi kegagalan sistem.
Jika Anda ingin mempelajari lebih lanjut tentang SQL, lihat jalur keterampilan tujuh kursus ini: SQL Fundamentals.
Kapan menggunakan basis data relasional
Basis data relasional sangat baik digunakan ketika kita memerlukan:
- Konsistensi yang kuat: Memastikan semua pengguna melihat data yang sama secara bersamaan.
- Kueri kompleks: Menggabungkan data dari beberapa tabel untuk mendapatkan wawasan.
- Kepatuhan ACID: Menjamin pemrosesan transaksi yang andal untuk aplikasi kritis.
Namun, ini mungkin bukan pilihan terbaik untuk:
- Data tidak terstruktur: Menangani data yang tidak pas dalam format tabular (misalnya, posting media sosial, data sensor).
- Skalabilitas masif: Saat aplikasi Anda perlu diskalakan secara horizontal di banyak server.
Basis data relasional populer
Beberapa opsi RDBMS populer meliputi:
- MySQL: Sumber terbuka dan dikenal mudah digunakan, cepat, dan andal, sering digunakan dalam aplikasi web.
- PostgreSQL: Sumber terbuka dan sangat dapat diperluas, menawarkan fitur lanjutan dan kepatuhan kuat terhadap standar SQL.
- Oracle Database: Solusi komprehensif kelas enterprise yang dikenal karena kinerja, skalabilitas, dan keamanannya.
- Microsoft SQL Server: Terintegrasi erat dengan ekosistem Microsoft, menawarkan beragam alat untuk business intelligence dan analitik.
Jika Anda ingin belajar cara menggunakan basis data relasional di Python, lihat kursus gratis ini: Introduction to Databases in Python.
Basis Data NoSQL
Basis data NoSQL, singkatan dari "not only SQL," muncul sebagai alternatif kuat terhadap basis data relasional, terutama pada skenario yang memprioritaskan fleksibilitas, skalabilitas, dan kinerja tinggi.
Berbeda dengan relasional, basis data NoSQL dapat menangani data tidak terstruktur atau semi-terstruktur tanpa batasan skema tetap. Artinya, kita dapat menyimpan data dalam berbagai format, seperti dokumen JSON, pasangan key-value, atau struktur graf, tanpa harus menentukan struktur kaku di awal.
Basis data ini sering menyediakan fitur untuk penskalaan ke luar di banyak server dan klaster, sehingga cocok untuk lingkungan data terdistribusi.
Melakukan kueri pada basis data NoSQL
Tidak seperti basis data relasional yang menggunakan Structured Query Language (SQL), basis data NoSQL tidak memiliki bahasa kueri universal. Sebaliknya, setiap jenis basis data NoSQL biasanya memiliki bahasa kueri atau API unik yang disesuaikan dengan model dan struktur datanya.
Sementara basis data NoSQL memprioritaskan fleksibilitas dan skalabilitas, mereka sering melonggarkan beberapa properti ACID yang terdapat pada basis data relasional. Misalnya, beberapa basis data NoSQL memprioritaskan konsistensi eventual dibandingkan konsistensi segera, yang berarti perubahan mungkin tidak langsung tercermin di semua node. Trade-off ini memungkinkan kinerja dan skalabilitas yang lebih baik, tetapi memerlukan pertimbangan cermat saat merancang aplikasi yang bergantung pada konsistensi data yang ketat.
Jika Anda ingin belajar cara melakukan kueri pada basis data NoSQL, lihat kursus Introduction to NoSQL ini.
Kapan menggunakan basis data NoSQL
Basis data NoSQL sangat cocok untuk skenario di mana:
- Agilitas menjadi kunci: Siklus pengembangan cepat dan model data yang terus berkembang.
- Skala menjadi prioritas: Aplikasi dengan pertumbuhan data eksponensial atau lalu lintas tinggi.
- Kinerja itu penting: Aplikasi real-time yang memerlukan operasi baca/tulis cepat.
- Keberagaman adalah hal lumrah: Jenis data beragam (misalnya, posting media sosial, data sensor).
Use case umum meliputi:
- Analitik big data: Memproses set data berukuran masif.
- Aplikasi real-time: Menyajikan informasi terkini.
- Sistem manajemen konten: Menyimpan dan mengelola konten beragam.
- Internet of Things (IoT): Menangani aliran data yang berkelanjutan.
- Mesin personalisasi: Menyesuaikan pengalaman pengguna.
Walau menawarkan banyak keunggulan, basis data NoSQL mungkin tidak ideal untuk aplikasi yang memerlukan jaminan transaksi yang kuat atau kueri relasional yang kompleks. Banyak organisasi mengadopsi pendekatan hibrida, menggunakan baik basis data relasional maupun NoSQL untuk memanfaatkan kekuatan masing-masing.
Basis data NoSQL populer
Beberapa basis data NoSQL paling populer meliputi:
- MongoDB: Basis data berorientasi dokumen yang unggul untuk menyimpan dokumen mirip JSON dengan skema dinamis.
- Redis: Penyimpanan key-value yang sering digunakan untuk caching dan sebagai datastore dalam memori yang cepat.
- Cassandra: Penyimpanan keluarga kolom yang dikenal karena skalabilitas dan toleransi gangguannya.
- Neo4j: Basis data graf yang unggul dalam mengelola dan melakukan kueri pada data yang sangat saling terhubung.
Jika Anda ingin mempelajari lebih lanjut tentang empat basis data NoSQL utama, lihat kursus NoSQL Concepts ini.
Basis Data Cloud
Basis data cloud merevolusi manajemen data dengan memanfaatkan sumber daya dan skalabilitas besar dari platform komputasi awan. Basis data ini berada di server jarak jauh dan diakses melalui internet, menghilangkan kebutuhan organisasi untuk berinvestasi dan memelihara perangkat keras serta infrastruktur sendiri.
Basis data cloud beroperasi dengan model pay-as-you-go, di mana kita hanya membayar sumber daya yang benar-benar digunakan. Ini menghilangkan biaya di muka dan biaya pemeliharaan berkelanjutan yang terkait dengan basis data lokal tradisional. Penyedia cloud menangani infrastruktur dasar, termasuk server, penyimpanan, dan jaringan, sementara Anda fokus membangun dan mengelola aplikasi.
Jika Anda ingin mempelajari tentang komputasi awan, lihat kursus Understanding Cloud Computing ini.
Melakukan kueri pada basis data cloud
Melakukan kueri pada basis data cloud umumnya melibatkan penggunaan alat dan bahasa yang sama seperti pada basis data lokal. Untuk basis data relasional di cloud, kita akan menggunakan SQL untuk berinteraksi dengan data. Basis data NoSQL di cloud biasanya memiliki bahasa kueri atau API sendiri, serupa dengan padanan lokalnya.
Penyedia cloud sering menawarkan alat dan layanan tambahan untuk menyederhanakan manajemen dan kueri basis data. Ini mungkin mencakup konsol berbasis web, antarmuka baris perintah, dan SDK untuk berbagai bahasa pemrograman.
Kapan menggunakan basis data cloud
Basis data cloud merupakan pilihan yang sangat baik ketika:
- Skalabilitas itu krusial: Mudah beradaptasi dengan permintaan yang berubah.
- Fleksibilitas menjadi prioritas: Tersedia beragam opsi basis data.
- Akses global itu penting: Akses latensi rendah untuk pengguna di seluruh dunia.
- Efektivitas biaya menjadi perhatian: Model pay-as-you-go dan sumber daya yang dapat diskalakan.
Basis data cloud populer
Penyedia cloud terkemuka menawarkan berbagai layanan basis data, masing-masing dengan kekuatan dan spesialisasinya:
- Amazon RDS: Mendukung beberapa mesin basis data seperti MySQL, PostgreSQL, dan Oracle, menawarkan layanan basis data relasional terkelola.
- Google Cloud SQL: Layanan terkelola penuh yang memungkinkan menjalankan basis data MySQL, PostgreSQL, dan SQL Server di cloud.
- Azure SQL Database: Menyediakan layanan basis data yang dapat diskalakan, cerdas, dan terkelola penuh di Microsoft Azure.
Anda dapat mempelajari lebih lanjut tentang basis data cloud dalam kursus AWS Cloud Technology and Services ini.
Basis Data Vektor
Basis data vektor muncul sebagai alat khusus untuk menangani kebutuhan unik aplikasi kecerdasan buatan dan pembelajaran mesin.
Basis data vektor dirancang untuk menyimpan, mengindeks, dan mengelola embedding vektor, yaitu representasi data berdimensi tinggi yang sering digunakan dalam model pembelajaran mesin. Ini memungkinkan pencarian kemiripan secara efisien, di mana basis data dapat dengan cepat mengidentifikasi vektor yang "dekat" dengan vektor kueri tertentu berdasarkan metrik jarak seperti cosine similarity atau jarak Euclidean.
Fitur-fitur ini membuatnya cocok untuk aplikasi seperti pengenalan gambar, sistem rekomendasi, dan pemrosesan bahasa alami. Basis data vektor memanfaatkan struktur pengindeksan yang mengoptimalkan pengambilan vektor serupa berdasarkan metrik jarak.
Jika Anda ingin mempelajari lebih lanjut tentang basis data vektor, Anda dapat membaca artikel ini: An Introduction to Vector Databases for Machine Learning.
Melakukan kueri pada basis data vektor
Melakukan kueri pada basis data vektor umumnya melibatkan langkah-langkah berikut:
- Mengubah kueri menjadi embedding: Kueri masukan (misalnya, sebuah gambar, potongan teks) dikonversi menjadi embedding vektor menggunakan model embedding yang sesuai.
- Pencarian kemiripan: Basis data vektor melakukan pencarian kemiripan untuk menemukan tetangga terdekat dari embedding kueri di ruang vektor. Ini sering dilakukan menggunakan algoritma approximate nearest neighbor (ANN) agar efisien dalam skala besar.
- Mengembalikan hasil: Basis data mengembalikan tetangga terdekat yang diidentifikasi beserta metadata atau objek data asli yang terkait.
Berbagai basis data vektor dapat menawarkan opsi dan parameter kueri yang beragam, seperti menentukan jumlah tetangga terdekat yang akan dikembalikan atau menetapkan ambang jarak. Beberapa basis data juga mendukung penyaringan berdasarkan metadata atau menggabungkan pencarian vektor dengan penyaringan skalar tradisional.
Kapan menggunakan basis data vektor
Basis data vektor sangat cocok untuk skenario di mana:
- Pencarian kemiripan itu krusial: Aplikasi seperti pengenalan gambar atau sistem rekomendasi.
- Data berdimensi tinggi terlibat: Tidak efisien untuk basis data tradisional.
- Kinerja real-time diperlukan: Aplikasi AI seperti sistem rekomendasi.
Basis data vektor populer
- Faiss: Dikembangkan oleh Facebook AI Research, menyediakan pencarian kemiripan dan pengelompokan vektor padat yang efisien.
- Milvus: Basis data vektor sumber terbuka yang mendukung pencarian kemiripan berskala dan aplikasi AI.
- Pinecone: Layanan basis data vektor yang menyederhanakan penerapan dan penskalaan pencarian kemiripan di lingkungan produksi.
Jika Anda ingin mengetahui lebih lanjut tentang basis data populer, baca artikel ini: Top 5 Best Vector Databases.
Jenis Basis Data Lainnya
Walau basis data relasional, NoSQL, cloud, dan vektor mencakup berbagai use case, ada beberapa jenis basis data lain, masing-masing disesuaikan dengan model data dan pola akses tertentu. Mari kita bahas secara singkat beberapa solusi khusus ini.
Basis data deret waktu
Basis data deret waktu dioptimalkan untuk menyimpan dan menganalisis data bertanda waktu, seperti pembacaan sensor, harga saham, atau log server. Mereka unggul dalam menangani pemasukan data ber-volume tinggi dan kueri data berdasarkan rentang waktu secara efisien. Opsi populer termasuk InfluxDB, TimescaleDB, dan Prometheus.
Basis data berorientasi objek
Basis data berorientasi objek (OODB) menyimpan data sebagai objek, serupa dengan pemrograman berorientasi objek. Ini dapat menyederhanakan pemodelan struktur data dan relasi yang kompleks. Namun, OODB belum diadopsi secara luas karena tantangan standarisasi dan optimasi kueri. Opsi populer termasuk ObjectDB dan Versant Object Database.
Basis data graf
Basis data graf unggul dalam merepresentasikan dan melakukan kueri terhadap hubungan antar entitas. Mereka menyimpan data sebagai node (entitas) dan edge (relasi), sehingga sangat cocok untuk jejaring sosial, mesin rekomendasi, sistem deteksi penipuan, dan knowledge graph. Opsi populer termasuk Neo4j, Amazon Neptune, dan JanusGraph.
Basis data hierarkis
Basis data hierarkis mengorganisasi data dalam struktur menyerupai pohon, dengan relasi induk-anak antar rekaman. Struktur ini cocok untuk beberapa aplikasi khusus tetapi dapat kurang fleksibel untuk model data yang kompleks. Walau bersejarah penting, basis data hierarkis kini lebih jarang digunakan dalam aplikasi modern.
Basis data jaringan
Basis data jaringan mirip dengan basis data hierarkis tetapi memungkinkan relasi antar rekaman yang lebih kompleks. Meskipun menawarkan fleksibilitas, basis data ini juga bisa lebih menantang untuk dikelola dan dilakukan kueri. Dalam banyak aplikasi, basis data jaringan sebagian besar telah digantikan oleh basis data relasional dan graf.
Kesimpulan
Dalam tinjauan ini, kita telah membahas lanskap basis data yang beragam, masing-masing jenis disesuaikan untuk mengatasi tantangan data tertentu. Dari data terstruktur pada basis data relasional hingga fleksibilitas NoSQL, skalabilitas solusi cloud, dan kemampuan khusus basis data vektor, kita melihat bagaimana alat-alat ini menopang manajemen data modern.
Memilih basis data yang tepat adalah keputusan krusial, yang bergantung pada pemahaman akan kekuatan dan trade-off masing-masing jenis. Dengan mengevaluasi kebutuhan dan batasan spesifik Anda secara cermat, Anda dapat memilih basis data yang paling memberdayakan aplikasi dan inisiatif berbasis data Anda.
Jika Anda ingin mendalami lebih jauh tentang basis data, Anda dapat mencoba jalur keterampilan empat kursus ini: SQL for Database Administrators.
FAQ Basis Data
Apa empat jenis utama DBMS?
Empat kategori utama adalah basis data relasional, NoSQL, cloud, dan vektor.
Apakah Excel merupakan basis data?
Excel dapat berfungsi sebagai basis data sederhana untuk dataset kecil, tetapi tidak memiliki fitur kuat dan skalabilitas seperti sistem manajemen basis data khusus.
Bagaimana cara memilih basis data yang tepat untuk proyek saya?
Pertimbangkan faktor seperti struktur data (terstruktur vs. tidak terstruktur), kebutuhan skalabilitas, persyaratan kinerja, anggaran, dan fitur spesifik yang ditawarkan oleh berbagai jenis basis data.
Apakah basis data NoSQL lebih baik daripada basis data relasional?
Tidak ada satu jenis yang "lebih baik". Pilihan terbaik bergantung pada kebutuhan dan use case spesifik Anda. Basis data relasional unggul untuk data terstruktur dan kueri kompleks, sementara basis data NoSQL menawarkan fleksibilitas dan skalabilitas untuk data tidak terstruktur.
Apa perbedaan utama antara SQL dan NoSQL?
Basis data SQL menggunakan bahasa kueri terstruktur (SQL) dan memiliki skema yang telah ditentukan, sedangkan basis data NoSQL memiliki skema dinamis untuk data tidak terstruktur. Basis data SQL umumnya diskalakan secara vertikal, sementara basis data NoSQL diskalakan secara horizontal.

