Kamis, 24 November 2016

PENGERTIAN BASESDATA

1. Pengertian data adalah things known or assumed, yang berarti bahwa data itu sesuatu yang diketahui atau dianggap. Diketahui artinya yang sudah terjadi merupakan fakta (bukti). Data dapat memberikan gambaran tentang suatu keadaan atau persoalan. Data bisa juga didefinisikan sebagai sekumpulan informasi atau nilai yang diperoleh dari pengamatan (obsevasi) suatu objek. Data yang baik adalah data yang bisa dipercaya kebenarannya (reliable), tepat waktu dan mencakup ruang lingkup yang luas atau bisa memberikan gambaran tentang suatu masalah secara menyeluruh merupakan data relevan
CONTOH:
Jenis-jenis data dapat dibagi berdasarkan sifatnya, sumbernya, cara memperolehnya, dan waktu pengumpulannya. Menurut sifatnya, jenis-jenis data yaitu:
  • Data Kualitatif: data kualitatif adalah data yang tidak berbentuk angka, misalnya: Kuesioner Pertanyaan tentang suasana kerja, kualitas pelayanan sebuah rumah sakit atau gaya kepemimpinan, dll.
  • Data Kuantitatif: data kuantitatif adalah data yang berbentuk angka, misalnya: harga saham, besarnya pendapatan, dll.
Jenis-jenis data menurut sumbernya, antara lain:
  • Data Internal: data intenal adalah data dari dalam suatu organisasi yang menggambarkan keadaan organisasi tersebut. Contohnya: suatu perusahaan, jumlah karyawannya, jumlah modalnya, atau jumlah produksinya, dll.
  • Data Eksternal: data eksternal adalah data dari luar suatu organisasi yang dapat menggambarkan faktor-faktor yang mungkin mempengaruhi hasil kerja suatu organisasi. Misalnya: daya beli masyarakat mempengaruhi hasil penjualan suatu perusahaan.
Jenis-jenis data menurut cara memperolehnya, antara lain:
  • Data Primer (primary data): data primer adalah data yang dikumpulkan sendiri oleh perorangan/suatu organisasi secara langsung dari objek yang diteliti dan untuk kepentingan studi yang bersangkutan yang dapat berupa interview, observasi.
  • Data Sekunder (secondary data): data sekunder adalah data yang diperoleh/ dikumpulkan dan disatukan oleh studi-studi sebelumnya atau yang diterbitkan oleh berbagai instansi lain. Biasanya sumber tidak langsung berupa data dokumentasi dan arsip-arsip resmi.
Jenis-jenis data menurut waktu pengumpulannya, antara lain:
  • Data cross section, yaitu data yang dikumpulkan pada suatu waktu tertentu (at a point of time) untuk menggambarkan keadaan dan kegiatan pada waktu tersebut. Misalnya; data penelitian yang menggunakan kuesioner.
  • Data berkala (time series data), yaitu data yang dikumpulkan dari waktu ke waktu untuk melihat perkembangan suatu kejadian/kegiatan selama periode tersebut. Misalnya, perkembangan uang beredar, harga 9 macam bahan pokok penduduk.
.2. Pengertian Informasi 

 Informasi adalah sebuah pesan ucapan kata dari orang lain melalui komunikasi langsung maupun tidak langsung  yang memiliki makna dan manfaat ,yang di kumpulkan melalui beberapa serangkaian proses yang tidak terlalu  panjang sehingga cepat di sebarkan dari orang yang satu ke orang yang lain atau  informasi tidak semua yang diberikan fakta.
Beberapa contoh informasi :

1.    Seorang ibu sedang membeli sayuran di pasar yang ternyata harganya naik,kemudian ibu pulang kerumahnya dan memberitahukan ke ibu-ibu yang lain.
2.    Seorang pelajar yang membawa motor ke sekolah ketika iya sedang di jalan iya terkena razia polisi kemudian ia melanjutkan sekolah dan iya memberitahukan kepada teman-temannya bahwa dijalan yang iya lewati ada razia polisi
  3. Pengertian Database
Database adalah kumpulan dari data-data yang membentuk suatu berkas (file) yang saling berhubungan (relation) dengan tatcara yang tertentu untuk membentuk data baru atau informasi. Atau basis data (database) merupakan kumpulan dari data yang saling berhubungan (relasi) antara satu dengan yang lainnya yang diorganisasikan berdasarkan skema atau struktur tertentu. Pada komputer, basis data disimpan dalam perangkat hardware penyimpan, dan dengan software tertentu dimanipulasiunruk kepentingan atau keguanaan tertentu. Hubungan atau relasi data biasanya ditunjukkan dengan kunci (key) dari tiap file yang ada. Data merupakan fakta atau nilai (value) yang tercatat atau merepresentasikan deskripsi dari suatu objek.



4.Fungsi basis data
PERAN BASIS DATA Basis data penting dalam pengolaan data dalam menggunakan komputer, karena bebrapa alasan yaitu:

  • Sebagai komponen utama atau penting dalam sistem informasi, karena merupakan dasar dalam menyediakan informasi.
  • Menentukan kualitas informasi yang cepat, akurat, relevan, sehingga informasi yang disajikan tidak basi. Informasi dapat dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya.







5. Contoh penggunaan Aplikasi basis data dalam dunia bisnis 
§  Bank : Pengelolaan data nasabah, akunting, semua transaksi perbankan
§  Bandara : Pengelolaan data reservasi, penjadualan
§  Universitas : Pengelolaan pendaftaran, alumni
§  Penjualan : Pengelolaan data customer, produk, penjualan
§  Pabrik : Pengelolaan data produksi, persediaan barang, pemesanan, agen
§  Kepegawaian: Pengelolaan data karyawan, gaji, pajak
§  Telekomunikasi : Pengelolaan data tagihan, jumlah pulsa


Contoh basis data
contoh basis data
contoh basis data
dapat dinyatakan dalam bentuk skema


PENGERTIAN

A. Apa itu field, record, table, file, data & basis data?

Field adalah kumpulan dari karakter yang membentuk satu arti, maka jika terdapat field misalnya seperti NomerBarang atau NamaBarang, maka yang dipaparkan dalam field tersebut harus yang berkaitan dengan nomer barang dan nama barang. Atau definisi field yang lainnya yaitu tempat atau kolom yang terdapat dalam suatu tabel untuk mengisikan nama-nama (data) field yang akan di isikan.

Record adalah kumpulan field yang sangat lengkap, dan biasanya dihitung dalam satuan baris. Tabel adalah merupakan kumpulan dari beberapa record dan juga field. File adalah terdiri dari record-record yang menggambarkan dari satu kesatuan data yang sejenis. Misalnya seperti file nama barang berisikan data tentang semua nama barang yang ada. Data adalah kumpulan fakta atau kejadian yang digunakan sebagai penyelesaian masalah dalam bentuk informasi. Pengertian basis data (database) adalah basis data yang terdiri dari dua kata, yaitu kata basis dan data. Basis dapat di artikan markas ataupun gudang, maupun tempat berkumpul.







B.Basis Data dalam Aplikasi Web

 


Database Management System (DBMS)

Pada definisi yang paling murni, sebuah basis data adalah kumpulan data yang terorganisir dengan baik. Koleksi data ini kemudian dimodelkan berdasarkan berbagai aspek dalam dunia nyata, yang pada akhirnya akan mempermudah kita dalam mengambil informasi itu kembali. Misalnya, sebuah basis data perguruan tinggi dapat saja menyimpan data mahasiswa sedemikian rupa sehingga kita dapat dengan mudah mengambil informasi mata kuliah yang dipelajari mahasiswa pada setiap semesternya.
Database Management System (DBMS) merupakan sebuah perangkat lunak yang berhubungan dengan pengguna, aplikasi lainnya, dan basis data secara langsung untuk mengambil, menyimpan, dan menganalisa data yang ada. Sebuah DBMS umumnya memiliki fungsi-fungsi seperti:

  1. Definisi Data, yaitu fungsi yang memungkinkan kita untuk mendefinisikan model data dan kamus data.
  2. Manipulasi Data, yaitu fungsi yang memungkinkan kita untuk menambahkan, memperbaharui, maupun menghapus data yang telah kita simpan. Data selalu dimanipulasi berdasarkan model data yang telah ditentukan.
  3. Pengambilan Data, yaitu fungsi yang memungkinkan kita untuk mengambil data yang telah tersimpan dalam basis data.
  4. Administrasi Data, yaitu fungsi-fungsi administrasi data seperti penambahan indeks, hak akses data, back up, dan lain-lain.
Beberapa contoh DBMS populer misalnya MySQL, PostgreSQL, Microsoft SQL Server, Oracle, dan IBM DB2. DBMS berinteraksi dengan pengguna menggunakan aplikasi khusus yang biasanya dipaketkan dengan DBMS. Untuk berinteraksi dengan aplikasi, DBMS menggunakan sistem koneksi standar seperti ODBC atau JDBC. Baik aplikasi maupun pengguna biasanya berinteraksi dengan DMBS melalui sebuah bahasa khusus, misalnya SQL (Standard Query Language) atau Javascript.
DMBS dibagi berdasarkan model basis data yang didukungnya. Sampai dengan saat penulisan, model basis data yang paling populer masih model relasional (yang digunakan oleh MySQL, PostgreSQL, dll) [1].

Model Basis Data

Model Basis Data merupakan salah satu sistem pemodelan data yang menentukan struktur logis dari sebuah basis data, dan pada dasarnya mendefinisikan bagaimana sebuah data pada basis data disimpan, disusun, dan dimanipulasi.
Terdapat sangat banyak sekali model basis data yang ada, tetapi kita hanya akan membahas dua model yang paling populer pada masa penulisan, yaitu model relasional dan NoSQL (key-value dan document-oriented).

Basis Data Relasional

Model relasional pada basis data dibangun berdasarkan first order logic. Pada model relasional, berbagai data yang ada direpresentasikan oleh tuple, dan dikelompokkan ke dalam relasi antar data. Dalam implemenatsi tipikal dari model relasional, seluruh data tuple disimpan di dalam tabel-tabel yang merepresentasikan model data. Tabel-tabel ini kemudian dihubungkan sebagai penanda relasi antar tabel.
Setiap tabel yang ada di dalam implementasi model relasional biasanya memiliki kunci penanda yang bersifat unik untuk setiap tuple yang ada. Kunci ini dikenal dengan istilah primary key, yang memiliki kegunaan utama sebagai penanda identitas data. Identitas data dapat sangat berguna ketika kita ingin mengambil data spesifik (misal: nama dari karyawan dengan nomor karyawan X).
Tujuan utama dari model relasional adalah untuk memberikan cara deklaratif dalam menspesifikasikan dan mengambil data. Pengguna cukup memberitahukan informasi apa yang ingin diambil dari basis data, dan DBMS akan bekerja secara otomatis untuk mengambil data tersebut sesuai dengan prosedur dan model data yang ada. Pada model relasional, pemanggilan data secara deklaratif umumnya dilakukan dengan menggunakan bahasa SQL.

NoSQL (Not Only SQL)

NoSQL merupakan sebuah model basis data yang relatif modern, pertama kali dicetuskan pada tahun 1998. Sebuah basis data NoSQL menyediakan mekanisme penyimpanan ataupun pengambilan data yang dimodelkan berbeda dengan model relasi antar tabel yang ada pada model relasional.
Terdapat banyak jenis dari model yang diadopsi oleh NoSQL, misalnya:

  1. Column-based,
  2. Document-based,
  3. Key-value,
  4. Graph, dan
  5. Multi-model.
Motivasi utama dari pendekatan model data yang berbeda pada NoSQL yaitu kesederhanaan perancangan, kemudahan pengembangan, dan kemudahan kontrol ketersediaan basis data. Pada kebanyakan kasus, model basis data yang diadopsi oleh NoSQL memberikan performa yang lebih baik dengan mengorbankan konsistensi data yang disimpan.

Transaksi Basis Data

Dalam konteks basis data, sebuah transaksi adalah sekumpulan perintah yang dieksekusi terhadap basis data. Sebuah transaksi biasanya dijalankan di dalam DBMS, dan dianggap sebagai bagian terpisah dari transaksi lainnya. Hal ini berarti setiap transaksi dapat berjalan dan dibatalkan tanpa mempengaruhi transaksi lainnya. Sebuah transasksi juga harus bersifat logis, konsisten, dan dapat diandalkan karena transaksi merepresentasikan perubahan dalam basis data.
Sebuah transaksi merupakan unit eksekusi yang harus dijalankan secara penuh atau tidk sama sekali. Hal ini dilakukan untuk menjaga integritas dan kompleksitas data. Contoh dari sebuah transaksi adalah pengiriman dana dari satu rekening bank ke rekening lainnya. Operasi ini harus berjalan secara penuh, dan jika terdapat masalah operasi harus dibatalkan sepenuhnya juga karena:

  1. Jika operasi pengiriman berjalan sampai setengah dan dibatalkan, kita tidak dapat memastikan apakah dana sudah terkirim atau tidak, identitas pengirim dan penerima benar, serta berapa jumlah dana yang bergerak. Semua detil data yang disebutkan sebelumnya dapat saja hilang atau bahkan berubah karena transaksi yang belum diselesaikan.
  2. Jika sebagian operasi pengiriman selesai, tetapi operasi yang lain gagal (misal: dana masuk, tetapi data pengirim tidak masuk) maka proses verifikasi dan otorisasi transfer akan menjadi lebih kompleks dari yang seharusnya.
Pada basis data modern, DMBS akan memastikan sebuah transaksi berjalan dengan benar, dan jika tidak transaksi dibatalkan. Misalnya, pengguna lain tidak akan dapat mengakses data yang sedang diproses oleh sebuah transaksi. Berbagai hal lain juga dilakukan, dengan satu tujuan utama: apapun yang terjadi, data pengguna selalu konsisten dan benar. Pada contoh transaksi pengiriman dana perbankan, DBMS akan memastikan tidak ada kejadian di mana dana terpotong dari satu rekening tetapi tidak masuk ke rekening lainnya.
Transaksi dalam basis data umumnya memiliki empat sifat utama, yang dikenal dengan istilah ACID:

  • Atomic, yaitu sebuah transaksi dijalankan dalam satu unit. Jika sebuah perubahan dieksekusi, perubahan tersebut akan dijalankan dengan hanya satu kali proses. Tidak ada “setengah perubahan”. Jika transaksi gagal atau dibatalkan, data akan dikembalikan ke status valid terakhir.
  • Consistent, perubahan dan transaksi hanya dapat berjalan jika hasil dari perubahan tersebut merupakan data yang valid. Seluruh data yang masuk ke dalam basis data harus telah valid sesuai dengan seluruh aturan (CONSTRAINT, CASCADE, TRIGGER, dst) yang ada. Jika perubahan yang akan dilakukan tidak dapat menghasilkan data valid, transaksi akan dibatalkan, dan data dikembalikan ke status valid terakhir.
  • Isolated, yaitu sifat di mana sebuah transaksi terpisah dengan transaksi lainnya dan tidak ada orang atau sistem yang dapat melihat apa yang dilakukan oleh transaksi sampai proses transaksi selesai dijalankan.
  • Durable, begitu sebuah transaksi selesai dieksekusi, data hasil transaksi akan dijamin telah tersimpan dengan benar, apapun yang terjadi setelah transaksi tersebut dieksekusi. Hal ini berarti terdapat jaminan ketahanan terhadap hal-hal seperti mati listrik, error, dan crash.
Satu hal yang perlu diingat dari transaksi dan ACID adalah bahwa pada perangkat lunak yang mewajibkan adanya integritas data, dukungan sebuah DBMS terhadap ACID merupakan hal yang sangat penting dan tidak dapat dikompromikan. Tidak peduli apakah sebuah basis data tersebut adalah basis data relasional atau NoSQL, selama data dapat dipastikan aman dan mendukung ACID maka kita dapat menggunakan basis data tersebut.
Dukungan ACID pada sebuah basis data juga memastikan bahwa basis data tersebut dapat mendukung paralelisme dan konkurensi dengan baik, karena sifat isolasi dan atomik dari transaksi. Sifat atomik dan isolasi sangat penting untuk paralelisme, yang pada akhirnya akan memudahkan kita mengembangkan sebuah aplikasi web yang dapat menangani banyak proses dan pengguna sekaligus.

CouchDB

CouchDB merupakan salah satu basis data NoSQL yang dirancang untuk bekerja sangat baik dengan dunia web. CouchDB:

  • merupakan basis data document-oriented,
  • menggunakan format JSON untuk menyimpan data,
  • menggunakan JavaScript sebagai bahasa untuk mengakses data, dan
  • menggunakan HTTP sebagai API penghubung.
Keempat hal di atas menyebabkan CouchDB sangat cocok dan mudah diadopsi untuk pengembangan web. HTTP merupakan bahasa universal dalam web, dan JSON merupakan format pertukaran data yang dapat dimengerti oleh mayoritas bahasa dan sistem yang digunakan untuk mengembangkan web.
Pada bahasan kali ini, kita akan mempelajari CouchDB sebagai sistem basis data untuk sebuah web. Jika anda belum pernah menggunakan CouchDB, silahkan unduh dan pasang CouchDB melalui website resminya.

Dasar CouchDB

Selesai diinstalasi, CouchDB dapat diakses dengan dua cara:

  1. Melalui HTTP pada alamat http://localhost:5985, dan
  2. melalui aplikasi Futon yang dapat diakses melalui http://127.0.0.1:5984/_utils/ pada browser.
Mengakses dengan browser merupakan cara yang paling mudah untuk dilakukan oleh pengguna. Akses melalui HTTP biasanya digunakan untuk aplikasi, tetapi pengguna juga dapat menakses dengan menggunakan perangkat lunak seperti curl atau Postman.
Akses dengan perintah curl dapat dijalankan dengan perintah curl http://localhost:5984, seperti berikut:

Mengakses CouchDB Melalui curl

Mengakses CouchDB Melalui curl
Sementara akses Futon melalui browser akan langsung membawa anda pada halaman utama Futon:

Futon pada CouchDB

Futon pada CouchDB
Sebagai langkah awal setelah instalasi, sangat disarankan untuk menjalankan verifikasi instalasi melalui link “Verify Installation” yang ada di menu sebelah kanan Futon. Klik pada link tersebut akan membawa anda ke halaman khusus dengan 1 link untuk proses verifikasi. Klik link proses verifikasi untuk menjalankan proses verifikasi instalasi CouchDB dan memberitahukan kepada anda jika terjadi kesalahan. Verifikasi ini akan membuat dua basis data baru pada CocuhDB, yaitu test_suite_db dan test_suite_db2. Kedua basis data ini dapat dihapus dengan aman.
Setelah memastikan CouchDB dapat berjalan dengan benar pada sistem anda, mari kita coba untuk membuat sebuah basis data baru pada CouchDB.

Membuat Basis Data pada CouchDB

Membuat sebuah basis data pada CouchDB sangat mudah, apalagi jika anda menggunakan Futon. Klik tombol “Create Database...” pada laman “Overview” (utama) Futon, dan isikan nama basis data yang diinginkan pada form yang muncul.

Pembuatan Basis Data pada Futon (CouchDB)

Pembuatan Basis Data pada Futon (CouchDB)
Setelah membuat basis data baru, kita akan dibawa pada laman yang menampilkan daftar dari semua dokumen yang ada pada basis data tersebut. Daftar ini sekarang masih kosong, karena memang belum diisi.

Basis Data Kosong pada Futon (CouchDB)

Basis Data Kosong pada Futon (CouchDB)
Sebuah basis data di dalam CouchDB terdiri dari banyak dokumen. Seluruh dokumen yang ada pada CouchDB direpresentasikan dalam format JSON, misalnya:

1
2
3
4
5
{
    "judul": "Filosofi Kopi",
    "pengarang": "Dee",
    "tag": ["koleksi", "cerpen", "ringan"]
}
pada dokumen di atas, kita dapat melihat bagaimana “judul” merupakan sebuah field data berisi string “Filosofi Kopi”. Field “tag” berisi sekumpulan data, yaitu “koleksi”, “cerpen”, dan “ringan”.
Sebuah basis data pada CouchDB merupakan kumpulan dari dokumen-dokumen seperti yang terlihat di atas. Setiap dokumen dalam CouchDB diidentifikasi dengan sebuah nilai ID yang unik, sama seperti primary key pada basis data relasional umumnya.

Pembuatan Dokumen Baru pada CouchDB

Pembuatan dokumen baru pada Futon cukup gamblang: klik tombol “New Document”, dan anda akan dibawa ke laman pembuatan dokumen baru. Pada laman ini awalnya anda akan diberi sebuah field standar, ID yang isinya telah dibuat oleh CouchDB secara otomatis.
Untuk percobaan, nilai ID standar dapat digunakan. Untuk pengembangan aplikasi penggunaan ID seperti ini sangat tidak disarankan, karena CouchDB tidak dapat benar-benar mengetahui apa maksud dari setiap request dan perintah yang dikirimkan oleh aplikasi. Misalkan, jika aplikasi mengirimkan permintaan pembuatan dokumen sebanyak dua kali, pertama kali untuk pembuatan dan kedua kali karena dokumen pertama gagal, CouchDB tidak akan mengetahui bahwa sebenarnya hanya 1 dokumen yang diminta dan menghasilkan dua dokumen dengan dua ID berbeda. Pembuatan ID oleh klien akan menanggulangi hal ini karena perintah kedua akan mengirimkan dokumen dengan ID yang sama, sehingga isi dokumen pertama tertimpa.
Setelah dokumen dibuat, Futon akan menapilkan dokumen baru dalam daftar dokumen pada laman basis data.

Basis Data dengan Dokumen pada Futon (CouchDB)

Basis Data dengan Dokumen pada Futon (CouchDB)
Perhatikan juga bagaimana dokumen baru yang dibuat oleh Futon memiliki properti _rev yang tidak tampak ketika kita membuat dokumen. _rev merupakan properti yang menyimpan nomor revisi dari sebuah dokumen, dan secara otomatis akan selalu diperbaharui ketika kita mengubah atau membuat sebuah dokumen.