Kamis, 11 Mei 2017

API (Application Programming Interface) adalah sekumpulan perintah, fungsi, dan protokol yang dapat digunakan oleh programmer saat membangun perangkat lunak untuk sistem operasi tertentu. API memungkinkan programmer untuk menggunakan fungsi standar untuk berinteraksi dengan sistem operasi lain. -Wikipedia
Web Service
Dalam contoh sederhana, dibutuhkan setidaknya ribuan system calls per detik. Oleh karena itu Kebanyakan programmer membuat aplikasi dengan menggunakan Application Programming Interface(API). Dalam API itu terdapat fungsi-fungsi/perintah-perintah untuk menggantikan bahasa yang digunakan dalam system calls dengan bahasa yang lebih terstruktur dan mudah dimengerti oleh programmer. Fungsi yang dibuat dengan menggunakan API tersebut kemudian akan memanggil system calls sesuai dengan sistem operasinya. Tidak tertutup kemungkinan nama dari system calls sama dengan nama di API.

Gambaran cara kerja API
Gambaran cara kerja API
Keuntungan memprogram dengan menggunakan API adalah:
  • Portabilitas. Programmer yang menggunakan API dapat menjalankan programnya dalam sistem operasi mana saja asalkan sudah ter- install API tersebut. Sedangkan system callberbeda antar sistem operasi, dengan catatan dalam implementasinya mungkin saja berbeda.
  • Lebih Mudah Dimengerti. API menggunakan bahasa yang lebih terstruktur dan mudah dimengerti daripada bahasa system call. Hal ini sangat penting dalam hal editing dan pengembangan.


API2
API Network
System call interface ini berfungsi sebagai penghubung antara API dan system call yang dimengerti oleh sistem operasi. System call interface ini akan menerjemahkan perintah dalam API dan kemudian akan memanggil system calls yang diperlukan.
Untuk membuka suatu file tersebut user menggunakan program yang telah dibuat dengan menggunakan bantuan API, maka perintah dari user tersebut diterjemahkan dulu oleh program menjadi perintah open().
 

ezgif.com-resize
Perintah open() ini merupakan perintah dari API dan bukan perintah yang langsung dimengerti oleh kernel sistem operasi. Oleh karena itu, agar keinginan userdapat dimengerti oleh sistem operasi, maka perintah open() tadi diterjemahkan ke dalam bentuk system call oleh system call interface. Implementasi perintah open() tadi bisa bermacam-macam tergantung dari sistem operasi yang kita gunakan.
Ada banyak penyedia layanan API, seperti contohnya Info Cuaca, kita bisa membuat aplikasi tentang cuaca yang selalu update, dan data yang di ambil dari API penyedia layanan. Berikut 5 penyedia layanan API info cuaca yang bisa digunakan untuk membuat wheater apps API.
Video berikut mungkin membantu untuk memperjelas lagi :


Rabu, 14 Juli 2010

Printer, 15 juli 2010
saya membeli printer Canon IP-1980 (beberapa menyebutnya IP 1900), tinta asli yang dari pabrikan sudah mau habis (pada kompi sudah muncul tanda seru) Hal ini membuat saya bingung, terlebih ketika saya harus menge-print lembar tugas saya yang panjangnya bisa sampai beberapa halaman. Niat saya untuk mengganti cartridge printer tersebut urung ketika saya mengetahui bahwa harga cartridge hitam yang baru Rp. 180.000 dan yang warna Rp. 220.000 (harga tersebut adalah harga pada Januari 2009 di kawasan Mangga Dua Jakarta). Kalau ditotal sekitar Rp. 400.000 (harga tersebut terlalu mahal bagi mahasiswa berkantong pas-pasan seperti saya). Jika ditambah sedikit lagi, harga tersebut sudah sama dengan harga printer yang baru (Rp. 550.000). Akhirnya saya mengambil jalan pintas, yaitu me-refill cartridge yang lama. Namun setelah di­-refill tampilan indikator tinta di monitor tidak mau naik, yang muncul malahan tulisan ­ink-out (tinta habis, harus diganti dengan cartridge yang baru) dan lampu orange pada printer berkedip-kedip. Akhirnya lewat sebuah eksperimen (dan saran dari beberapa teman), saya menemukan cara bagaimana agar printer tersebut mau tetap nge-print kendati tintanya sudah mau habis (atau sudah habis, tapi setelah di-refill tetap tidak terbaca). Ini dia caranya:

1. Matikan printer, cabut kabelnya dari stop kontak.

2. Tunggu sekira lima detik

3. Dengan kabel dalam keadaan tidak terpasang (tidak tercolok ke listrik) dan kabel USB tidak tersambung ke komputer/laptop , tekan dan tahan tombol power sekira tiga detik dengan jari tengah

4. Tetap tahan jari tengah anda di tombol power, tangan yang satunya mencolokkan kabel printer ke stop kontak. Lampu power akan menyala warna hijau (tidak kedap-kedip)

tekan power dengan jari tengah,tahan

tekan power dengan jari tengah,tahan

5. Tetap tahan jari tengah anda. Jari telunjuk menekan tombol resume dua kali (lampu akan berganti dari hijau-orange-hijau)

jari tengah menahan power, jari telunjuk menekan resume dua kali

6. Setelah itu, lepaskan kedua jari anda, tunggu printer hingga ready (ditunjukkan dengan lampu hijau menyala tidak putus-putus)

setelah menekan resume dua kali, lampu hijau akan menyala tidak putus-putus

setelah menekan resume dua kali, lampu hijau akan menyala tidak putus-putus

7. Jika tadinya anda sudah meng-install software printer tersebut, ­anda harus menghapusnya (uninstall)

8. Hubungkan printer ke computer

9. Komputer akan men­-detect printer anda sebagai printer baru

10. Maka install kembali software printer anda. Ini bertujuan untuk ‘menipu’ komputer anda agar tidak ‘mengingat’ bahwa tinta anda adalah tinta refill atau sudah mau habis. Sebagai bukti bahwa anda berhasil ‘menipu’ komputer anda, maka klik [Start]-[Settings]-[Printers and Faxes] dan anda akan melihat tampilan ‘Copy iP 1900 series (copy 1)’. Ini tandanya bahwa anda berhasil menginstall software anda.

img_1238

11. Gunakan printer seperti biasa

12. Apabila anda hendak mematikan printer, langsung saja cabut kabel powernya. Tidak usah tekan tombol apapun pada printer

13. Begitu seterusnya. Apabila anda ingin menggunakannya kembali, gunakan cara yang sama: cabut kabel-tahan power-colokkan kabel-tekan resume dua kali-gunakan.

Dengan cara seperti ini, printer tidak akan mempedulikan tinta anda, apakah asli-palsu, penuh-kosong, refill-bukan. Printer akan menge-print sesuai keinginan anda. Memang pada tampilan layar anda akan muncul tanda seru (layaknya tinta mau habis), tapi hal ini tidak usah dihiraukan.

tampilan-di-monitor-tinta-terkesan-mau-habis-tetapi-hal-ini-tidak-berpengaruh

Sudah tiga bulan saya menggunakan cara seperti ini, dan sampai sekarang tidak ada masalah apa-apa, kecuali orang lain yang mungkin agak heran melihat cara saya menyalakan printer tersebut. Saya juga pernah mengaplikasikan cara tersebut pada printer saya yang lama (Canon S400SP), dan lampu indikator menyala hijau tidak kedip-kedip menunjukkan printer dalam keadaan siap untuk dipakai. Namun karena kerusakan printer saya tersebut sudah terlalu parah (cartridge bocor dan menggenangi dasar printer), saya tidak pernah memakainya untuk menge-print. Mungkin cara ini bisa dicobakan ke printer-printer lain selain Canon IP 1980, namun maaf risiko anda tanggung sendiri.

Satu hal lagi, jika setelah melakukan hal tersebut ternyata anda diberi kemampuan untuk membeli cartridge baru (asli tentunya), maka cara ‘aneh ala saya’ tersebut dapat ditinggalkan. Caranya: uninstall software anda,nyalakan printer seperti biasa (sewajarnya, dengan hanya sekali menekan tombol power), pasang cartridge baru tersebut, dan install kembali softwarenya. Printer akan kembali normal.

Selamat mencoba.

sumber : http://sectiocadaveris.wordpress.com


Senin, 10 Mei 2010

Linux, 11 mei 2010

Beberapa waktu lalu saya kedatangan server baru HP Proliant ML370 G5. Dan bos saya menyuruh saya untuk menginstall Linux dalam hal ini Red Hat Enterprise Linux 5 Server (RHEL5) dan karena Server HP tipe ini punya Dual ethernet (NIC) maka lantas saja bos saya menyuruh saya untuk teaming NIC server tersebut.

Teaming/Bonding NIC?

Teaming NIC di kenal pada Windows Platform dengan menggunakan tools tapi di Linux istilah ini dikenal dengan Bonding NIC yang tujuannya adalah sama yakni methode menggabungkan multiple ethernet pada 1 (satu) IP (internet protocol) atau single interface untuk tujuan load balancing atau active backup (redundant).

Configuring

Pertama saya masuk dalam direktori /etc/sysconfig/network-scripts

[root@nameserver sysconfig]# cd /etc/sysconfig/network-scripts

Dalam direktori ini saya akan mulai konfigurasi ethernetnya menggunakan command vi, karena ethernetnya ada dua maka saya buat eth0 dan eth1.

[root@nameserver network-scripts]# vi ifcfg-eth0

Kemudian masukkan konfigurasi seperti dibawah ini setelah menekan insert;

DEVICE=eth0
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
PERDNS=no
TYPE=Ethernet
BOOTPROTO=no

Setelah selesai tekan escape kemudian :wq untuk menyimpan.

Kemudian masih dalam direktori yang sama saya buat lagi untuk ethernet yang kedua (eth1) dengan menggunakan command vi juga

[root@nameserver network-scripts]# vi ifcfg-eth1

Kemudian masukkan konfigurasi seperti dibawah ini setelah menekan insert;

DEVICE=eth1
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
PERDNS=no
TYPE=Ethernet
BOOTPROTO=no

Setelah selesai tekan escape kemudian :wq untuk menyimpan.

Masih dalam direktory yang sama juga, kemudian saya buat file konfigurasi baru (bond0) dengan menggunakan command vi;

[root@nameserver network-scripts]# vi ifcfg-bond0

Kemudian masukkan konfigurasi seperti dibawah ini setelah menekan insert;

DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
NETWORK=192.168.1.0
NETMASK=255.255.255.0
IPADDR=192.168.1.2
USERCTL=no
GATEWAY=192.168.1.3
TYPE=Ethernet
IPV6INIT=no
PEERDNS=no

Setelah selesai tekan escape kemudian :wq untuk menyimpan.

Kemudian saya pindah ke direktori /etc untuk memberikan alias dari konfigurasi bonding yang saya buat; dalam hal ini saya edit configurasi file modprobe.conf;

[root@nameserver ~]#vi /etc/modprobe.conf

Kemudian masukkan konfigurasi seperti dibawah ini setelah menekan insert;

alias bond0 bonding
options bond0 miimon=100 mode=active-backup
alias eth0 bnx2
alias eth1 bnx2
alias scsi_hostadapter cciss
alias scsi_hostadapter1 ata_piix

Setelah selesai tekan escape kemudian :wq untuk menyimpan.

Finalizing

Kemudian restart service networknya atau restart OS;

[root@nameserver ~]# service network restart

Setelah itu kita bisa check hasil configurasi tadi dengan command ifconfig

[root@nameserver ~]# ifconfig

Dan terlihatlah hasilnya;

bond0 Link encap:Ethernet HWaddr 00:1E:0B:D0:51:E0
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::21e:bff:fed0:51e0/64 Scope:Link
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:866801206 errors:0 dropped:0 overruns:0 frame:0
TX packets:1277514933 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1909278714 (1.7 GiB) TX bytes:1027430962 (979.8 MiB)

eth0 Link encap:Ethernet HWaddr 00:1E:0B:D0:51:E0
inet6 addr: fe80::21e:bff:fed0:51e0/64 Scope:Link
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:860479510 errors:0 dropped:0 overruns:0 frame:0
TX packets:1277514853 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1116089563 (1.0 GiB) TX bytes:1027418498 (979.8 MiB)
Interrupt:16 Memory:f8000000-f8012100

eth1 Link encap:Ethernet HWaddr 00:1E:0B:D0:51:E0
inet6 addr: fe80::21e:bff:fed0:51e0/64 Scope:Link
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:6321696 errors:0 dropped:0 overruns:0 frame:0
TX packets:80 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:793189151 (756.4 MiB) TX bytes:12464 (12.1 KiB)
Interrupt:17 Memory:fa000000-fa012100

Langkah terakhir tinggal saya ping ke network sambil cabut salah satu cable CAT 5 yang terhubung ke RJ45 yang ada di salah satu NIC tersebut.. Dan hasilnya ping masih berjalan.. reply..



Sabtu, 08 Mei 2010




1.
Short Message Service (SMS) adalah layanan dasar telekomunikasi seluler, yang tersedia baik di jaringan GSM maupun CDMA. Sebagai layanan dasar, service sms dapat digunakan pada semua jenis hand phone (HP). Setiap SIM card dari sebuah operator yang diaktifkan hampir dipastikan dapat langsung dapat digunanakan untuk sms, karena SIM card akan otomatis menyediakan setting service center di HP tersebut.

Kemudahan penggunaan, variasi layanan, dan promosi yang cukup gencar dari operator seluler menjadikan sms sebagai layanan yang cukup populer di masyarakat sejak akhir 90 an sampai sekarang. Seiring perkembangan teknologi dan kreativitas dari operator dan service provider, layanan sms yang mulanya hanya untuk saling kirim pesan antara subscriber (point-to-point) kini berkembang berkembang dan lebih variatif, seperti layanan polling, ringtone, sms premium, mobile bangking, ticketing dll.

Artikel ini menjelaskan mengenai prinsip dasar kerja sms, dan diharapkan dapat menambah wawasan bagi anda yang baru menganal dunia telekomunikasi.

Untuk mengetahui bagaimana proses pengiriman sms berlangsung, kita perlu lebih dulu mengetahui arsitektur jaringan yang dipakai. Di Indonesia ada 2 macam teknologi jaringan seluler yang cukup populer, yaitu GSM dan CDMA. Teknologi jaringan itu kini mengalami perkembangan dan tentunya menawarkan berbagai kelebihan, diantaranya teknologi WCDMA, UMTS (3G) dan CDMA 2000. Pembahasan kali ini akan dijelaskan lebih fokus pada arsitektur jaringan GSM.

1.Arsitektur Jaringan GSM

Dalam jaringan GSM umumnya ada beberapa perangkat pokok diantaranya BTS, BSC, MSC/VLR, HLR dan SMSC. Berikut ini penjelasan masing-masing perangkat.
Arsitektur Jaringan GSM

Dalam jaringan GSM umumnya ada beberapa perangkat pokok diantaranya BTS, BSC, MSC/VLR, HLR dan SMSC. Berikut ini penjelasan masing-masing perangkat.Base Transceiver Station (BTS)
BTS berfungsi sebagai perangkat tranceiver untuk melakukan komunikasi dengan semua handset (MS) yang aktif dan berada dalam area cakupannya (cell). BTS melaksanakan proses modulasi/demodulasi sinyal, equalisasi sinyal dan pengkodean error (error coding). Beberapa BTS dapat terhubung dengan sebuah BSC (Base stasion Controller), sementara itu radius cakupan dari suatu cell berkisar antara 10 sampai 200 m untuk cell terkecil hinggal beberapa kilometer untuk cell terbesar. Sebuah BTS biasanya dapat melayani 20–40 komunikasi panggilan secara bersamaan.

1.Base Station Controller (BSC)
BSC menyediakan fungsi pengaturan pada beberapa BTS yang dikendalikannya. Dinataranya fungsi handover, konfigurasi cell site, pengaturan sumber daya radio, serta tuning power dan frekuensi pada suatu BTS.
BSC merupakan simpul (konmsentrator) untuk menghubungkan dengan core network. Dalam jaringan GSM umumnya sebuah BSc dapat mengatur 70 buah BTS.

2.Mobile Switching Center (MSC) and Visitor Location Register (VLR)
MSC berfungsi melakukan fungsi switching dan bertanggung jawab untuk melakukan pengaturan panggilan, call setup, release, dan routing. MSC juga melakukan fungsi billing (terhubung ke billing system) dan sebagai gateway ke jaringan lain. VLR berisi informasi user yang bersifat dinamis yang sedang “attach” berada pada jaringan mobile, termasuk letak geografis. Biasanya VLR terintegrasi dengan MSC.

Dari MSC sebuah jaringan seluler berkomunikasi dengan jaringan luar, misalnya : jaringan telepon rumah/Public Switched Telephone Network (PSTN), jaringan data Integrated Services Digital Network (ISDN),
Circuit Switched Public Data Network (CSPDN), dan Packet Switched Public Data Network (PSPDN).

3.Home Location Register (HLR)
HLR adalah perangkat yang berisi data detail untuk tiap subscriber. Sebuah HLR umumnya mampu berisi ribuan sampai jutaan data pelanggan. Informasi yang ada di HLR antara lain Mobile Station ISDN Number (MSISDN), International Mobile Subscriber Identity (IMSI), profile service subscriber,dll. Untuk komunikasi dengan elemen jaringan lain, HLR menggunakan protokol MAP (Mobile Application Part)

4.Short Message Service Center (SMSC)
SMSC mempunyai peran penting dalam arsitektur sms. SMSC berfungsi menyampaikan pesan sms antar Mobile Station(MS)/ HP, dan juga melakukan fungsi store-and-forwarding sms jika nomor penerima sedang tidak dapat menerima pesan. Didalam jaringanya sebuah operator dapat mempunyai lebih dari satu perangkat SMSC, sesuai besar trafik sms jaringan tersebut. SMSC dapat berkomunikasi dengan elemen lain seperti MSC, dan HLR dengan menggunakan protokol MAP. Seiring berkembangnya layanan, SMSC juga dapat berkomunikasi dengan server aplikasi menggunakan sebuah protokol yang cukup pupuler yaitu, Short Message Peer tio Peer Protocol (SMPP).

2.Diagram Alir SMS

Ada dua macam layanan dasar SMS:
- Mobile terminated (from a SMS–C to a mobile station (MS)) SMS
- Mobile originated (from a mobile station to a SMS–C) SMS

SMS Mobile Terminating (SMS MT)
SMS MT adalah pengiriman SMS dari SMSC ke MS. Untuk pegiriman SMS ini akan disediakan informasi pengiriman, baik delivery report untuk SMS yang berhasil maupun failure report untuk pengiriman yang gagal karena sebeb tertentu, sehingga memungkinkan SMSC untuk melakukan pengiriman ulang.
Diagram Alir SMS

Diagram Alir SMS Mobile Terminating.
1. A (misal: aplikasi) mengirim pesan ke SMSC
2. SMSC mengirimkan pesan ke SMS–GMSC.
3. SMS–GMSC menginterogasi HLR untuk informasi routing.
4. HLR membalas informasi routing ke SMS-GMSC.
5. SMS-GMSC meneruskan pesan ke MSC/VLR.
6. MS di-paging dan koneksi terbentuk antara MS dan network, sebagaimana dalam setup pangilan normal.
(Dengan demikian posisi MS diketahui dan apakah MS boleh berada dalam network / proses otentikasi).
7. Jika otentikasi berhasil, MSC/VLR mengirim pesan sms tersebut ke MS. SMS dikirim melalui kanal signaling SDCCH)
8. Jika pengiriman berhasil, delivery report dikirim dari MSC/VLR ke SMSC. Namun jika tidak, MSC/VLR akan menginformasikan ke HLR, dan failure report dikirim ke SMS–C.
Pada kasus pengiriman yang gagal, HLR dan VLR akan mendapat informasi “Messages waiting” yang menunjukkan ada pesan di SMSC yang menunggu untuk dikirimkan ke MS.
Informasi di HLR terdiri dari list SMSC pengirim pesan, sedangkan di VLR terdapat “flag” yang menunjukkkan apakah list pesan dalam keadaan kosong atau tidak.
Jika MS available dan siap menerima pesan, maka HLR akan memberitahu SMSC.

SMS Mobile Originating (SMS MO)
SMS MO adalah proses pengiriman SMS dari MS ke SMSC.
Jika SMS terkirim ke MS akan mendapat report “message sent”, sementara jika gagal MS report yang terlihat adalah “sending failed”.
SMS Mobile Originating (SMS MO)

Diagram alir SMS MO:
1. MS membuat koneksi ke jaringan, sebagaimana dalam setup panggilan normal.
2. Jika otentikasi berhasil, MS akan mengirim SMS ke SMSC melalui MSC/VLR. Selanjutnya SMSC akan meneruskan SMS ke tujuan.

Quote:
SMS Gateway
*Apa itu SMS Gateway?
SMS gateway adalah sebuah perangkat yang menawarkan layanan transit SMS, mentransformasikan pesan ke jaringan selular dari media lain, atau sebaliknya, sehingga memungkinkan pengiriman atau penerimaan pesan SMS dengan atau tanpa menggunakan ponsel.

Sebagaimana penjelasan diatas, SMS Gateway dapat terhubung ke media lain seperti perangkat SMSC dan server milik Content Provider melalui link IP untuk memproses suatu layanan SMS.

Sebuah sistem SMS Gateway, umumnya terdiri komponen Hardware ( Server/Komputer yang dilengkapi dengan perangkat jaringan) dan Software (Aplikasi yang digunakan untuk pengolahan pesan). Dan untuk sebuah sistem yang besar umumnya menggunakan Database untuk penyimpanan data.
[b]Daftar Pustaka:[B/]
- Le Bodic, Gwenae¨l. 2005. Mobile Messaging Technology and Services. West Sussex, England: John Wiley & Sons Ltd
- CME 20 SYSTEM SURVEY TRAINING DOCUMENT. 1996. Ericsson Radio Systems AB

Kedudukan SMS Gateway dalam Network GSM
Berikut ini adalah contoh kedudukan SMS Gateway di dalam jaringan milik operator beserta protokol komunikasi yang dipakai.

Dari gambar diatas terlihat bahwa SMS Gateway berfungsi sebagai penghubung yang melakukan relay sms antara ESME (External Short Message Entitiy) dan SMSC dan sebaliknya. Komunikasi antara ESME dan SMS Gateway dapat menggunakan protokol SMPP atau dengan HTTP, sementara ke SMSC menggunakan SMPP.

ESME adalah entitas luar yang dapat berupa server aplikasi penyedia layanan (Application Service Provider) yang dimiliki oleh Content Provider, aplikasi Perbankan, server polling, dan lain-lain yang dapat menerima pesan, memproses pesan dan mengirim respons atas pesan yang masuk , serta perangkat lain seperti email gateway, WAP proxy server , Voice mail server.

sumber : kaskus.us

Kamis, 15 April 2010

Oracle. 15 april 2010

Untuk membangun suatu gudang data (data warehouse, atau saya singkat DW), pilihan yang tepat untuk pengaturan konfigurasi parameter dalam DBMS-nya adalah OLAP (Online Analytical Processing). Berbeda dengan OLTP (Online Transaction Processing), OLAP lebih ditujukan untuk penanganan layanan yang sifatnya hanya membaca (read only). Sedangkan dalam OLTP, perubahan atau manipulasi data lebih sering terjadi. Ini perbedaan mendasar diantara OLAP dan OLTP. Mudah-mudahan di tulisan berikutnya saya bisa berbagi informasi detil tentang OLAP dan OLTP.

Untuk basis data yang dikhususkan sebagai DW, secara struktur basis data akan berbeda dengan basis data yang diakses oleh klien melalui suatu layanan atau aplikasi. Dalam DW, struktur basis datanya jauh lebih sederhana dibandingkan basis data yang akan menangani traksaksi DML (operasi data tambah, update, dan hapus). Dalam DW, Anda akan mengenal struktur basis data skema bintang (Star Schema) maupun Snowflake Schema. Jadi hampir tidak ada normalisasi basis data dalam DW. — Hmm.. bakalan jadi “peer” buat tema tulisan berikutnya nih :)

Dua paragraf sebelumnya hanya pengantar, untuk menjustifikasi kenapa saya tertarik berbagi tentang penggunaan Column-Oriented DBMS khususnya pada DW. Dikarenakan karakteristik DBMS dengan column-oriented lebih pas diterapkan dibandingkan dengan DBMS populer yang masih menganut row-oriented.

Deskripsi

Layanan atau aplikasi yang menggunakan basis data, senantiasa menyimpan datanya dalam bentuk tabel dimensi dua yang terdiri atas kolom dan baris. Namun proses penyimpanan datanya ke media penyimpan dalam bentuk string dimensi satu. Misalkan, suatu basis data yang memiliki tabel berikut:

NIM NAMA PROGRAM SPP
1001 Ali ILKOM 300000
1002 Maya BIOLOGI 450000
1003 Budi FISIKA 500000

Untuk basis data row-oriented, data dalam tabel tersebut akan disimpan secara serial dengan pembeda antar kolom (delimited string). Semua nilai dalam baris data pertama disusun serial dari kolom paling kiri ke kanan, dilanjutkan baris kedua, ketiga, dan seterusnya.

1001,Ali,ILKOM,300000;1002,Maya,BIOLOGI,450000;1003,Budi,FISIKA,500000;

Sedangkan untuk basis data column-oriented, data disimpan serial dari atas ke bawah menurut kolom dari baris pertama ke baris terakhir, dilanjutkan kolom kedua, ketiga, dan seterusnya.

1001,1002,1003;Ali,Maya,Budi;ILKOM,BILOGI,FISIKA;350000,450000,500000;

Dengan mekanisme penyimpanan data seperti ini, berdampak pada akses ke harddisk maupun memori akan lebih efisien pada saat beban data diberikan. Kalo dirunut, ada hubungannya dengan seek time pada komponen harddisk dalam suatu komputer. Secara manfaat, dapat dijelaskan sebagai berikut:

  1. Sistem column-oriented adalah lebih efisien jika suatu perhitungan perlu dilakukan terhadap banyak baris data namun hanya untuk sekumpulan kecil data dari seluruh kolom data. Karena pembacaan data pada sekelompok data yang lebih kecil akan jauh lebih cepat daripada membaca seluruh data.
  2. Sistem column-oriented adalah lebih efisien jika nilai yang baru dari suatu kolom disediakan untuk semua baris pada satu waktu, karena data kolom ditulis secara efisien dan menggantikan data kolom lama tanpa melibatkan kolom lainnya untuk semua baris.
  3. Sistem row-oriented akan lebih efisien jika beberapa kolom dalam sebuah baris data diminta pada waktu yang sama, dan jika ukuran baris datanya relatif kecil, dan semua baris dapat diakses dengan sebuah single disk seek.
  4. Sistem row-oriented akan lebih efisien saat menuliskan sebuah baris data baru. Jika semua data kolom disediakan pada saat yang sama, dan semua baris dapat diakses dengan sebuah single disk seek.

(sumber: Column-oriented DBMS – Wikipedia.org)

Dengan karakteristik ini, sistem column-oriented lebih sesuai dengan struktur basis data star schema dalam DW. Transaksi dalam DW lebih banyak berupa transaksi baca dan sangat sedikit transaksi tulis. Umumnya basis data OLAP berupa hasil statistik data, dengan sumber data yang diperoleh dengan mengintegrasikannya dengan basis data OLTP yang melayani banyak transaksi tulis dari aplikasi atau layanan yang terhubung.

Data warehouse, OLTP dan BI

Jika Anda berminat membangun suatu data warehouse untuk melayani kebutuhan statistik atau analisa data, maka pilihan jenis basis data yang cocok adalah basis data column-oriented. Bagaimana menurut Anda?


Oracle, 15 april 2010
Peristiwa ini terjadi saat saya hendak mengakses database ORACLE yang saya tempatkan di Qosmio dengan OS Windows XP. Pada hari-hari sebelumnya tidak ada masalah (menurut staf sih), tapi begitu saya coba akses lagi dua hari yang lalu muncul kesalahan dengan informasi sbb:
ORA-01033 oracle in initialization or shutdown in progress

Nah lho, koq? Saya coba lakukan restart service database ORACLE mulai listener ama instance-nya. Begitu coba diakses secara lokal dengan sqlplus, kesalahan yang sama masih muncul. Waduh ada apa lagi nih. Terpaksa diselesaikan sendiri, karena staf yang biasa nangani ternyata dah resign. Ada banyak referensi, namun bila yang kalian alami adalah kesalahan dengan kode ORA-16038,ORA-19809, ORA-00312 saat menjalankan perintah startup maka kasus kita sama dan saya temukan cara mengatasinya. Pastinya setelah bertanya sana sini ama om Google, saya menemukan situs ini:

Database Startup fails with error ORA-16038,ORA-19809, ORA-00312

Kalo saya sarikan dari situs diatas dan digabung ama referensi lainnya, bisa seperti ini:

Mulai dengan melakukan start database ORACLE secara manual. Kita gak perlu mematikannya lewat service yang ada di Windows. Semuanya bisa dilakukan lewat konsol command prompt dengan perintah sqlplus. Berikut langkah-langkahnya:

> sqlplus /nolog
SQL> connect / as sysdba
Connected
SQL> shutdown abort
Instance ORACLE stopped.
SQL> startup nomount
Instance ORACLE started.
SQL> alter database mount;
SQL> alter database open;

Ketika kita gunakan perintah alter database open, bila pada layar monitor muncul kesalahan kayak gini:

ORA-16038: log 3 sequence# 572 cannot be archived
ORA-19809: limit exceeded for recovery files
ORA-00312: online log 3 thread 1: ‘/oradata2/data1/dbase/redo03.log’

Bisa juga muncul kesalahan dengan kode ORA-16014, ORA-00312.

Yang kita lakukan cukup berusaha menaikkan ukuran media recovery database karena pada umumnya kesalahan ini terjadi karena ukuran parameter archive log tidak cukup (alias wadahnya ndak moat). Saya cuma pake solusi pertama dari situs referensi diatas dimana kita butuh kapasitas HD yang cukup besar (di Qosmio saya set 10GB. Ini langkah-langkah yang saya lakukan:

SQL> show parameter background_dump_dest

SQL> archive log list

ini buat ngecek lokasi archive-nya

Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 572
Next log sequence to archive 572
Current log sequence 580

Maka lokasinya ada di DB_RECOVERY_FILE_DEST. Kalo mau tahu lokasi pastinya di komputer kita, gunakan aja perintah:

SQL> show parameter db_recover

NAME TYPE VALUE
——————————————————————
db_recovery_file_dest string /oradata2/flash_recovery_area
db_recovery_file_dest_size big integer 2G

Maka kita naikkan ukuran file recovery-nya jadi misal 10GB.

SQL> alter system set db_recovery_file_dest_size=20G;
System altered.
Dilanjutkan dengan mencoba membuka database-nya dengan perintah:
SQL> alter database open;
Database altered.
Nah, mustinya jika dah kayak gini database ORACLE kita dah normal. Kita coba cek pakai perintah sqlplus.
———————————————————–
C:\oracle\product\10.2.0\client_2\BIN>sqlplus xxxxx@orclb
SQL*Plus: Release 10.2.0.1.0 – Production on Thu Aug 28 21:11:42 2008

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Enter password:

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 – Production
With the Partitioning, OLAP and Data Mining options

SQL>

———————————————————–
Wow, masalah terpecahkan. Saya jadi bisa akses databasenya lagi.

Tips, 5 maret 2010
Koleksi bukumu sudah terlalu banyak? Disimpan dimana sekarang? Di dalam kotak kardus? Aduh, jangan deh. Hindari menyimpan buku-buku terlalu lama di dalam kotak kardus.

Banyak kotak kardus mengandung asam (acid). Asam dari kotak kardus itu bisa pindah ke buku. Akibatnya, buku kita bisa berubah warna jadi kekuning-kuningan. Sayang kan? Lebih baik, siapkan rak buku yang ukurannya cukup untuk menyimpan koleksi buku-buku kita.

Agar terbebas dari debu, kotoran, dan musuh-musuh buku lainnya, banyak yang menyarankan agar rak buku tertutup. Supaya tetap gampang dilihat, sebaiknya pintu penutupnya terbuat dari kaca. Cuma, buku-buku itu jangan sampai terkurung rapat tanpa sirkulasi udara. Buku-buku kita akan mudah lumutan jika disimpan tertutup tanpa sirkulasi udara.

Kalau rak buku itu terbuat dari kayu, pastikan bahwa rak itu cukup kokoh agar cukup tahan menanggung bobot buku-buku yang berat untuk jangka waktu yang lama. Dan pastikan juga bahwa kayunya diberi lapisan. Kayu yang tidak berlapis bisa mengeluarkan uap asam yang membahayakan.

Kita bisa memilih desain rak buku model apapun. Tapi perhatikan satu hal: level paling bawah rak buku juga harus berjarak beberapa senti meter di atas lantai agar terhindar dari genangan air kalau terjadi banjir kecil.

Rak buku sebaiknya tidak langsung menempel ke dinding yang bersebelahan dengan bagian luar rumah. Kasih jarak beberapa senti meter antara rak dengan dinding agar tidak terganggu oleh suhu dan kelembaban ruangan luar yang bisa berubah-ubah dengan cepat.

Letakkan rak buku di tempat yang terhindar dari sorotan langsung sinar matahari, atau cahaya lampu lainnya. Terutama cahaya yang mengandung ultra violet (UV). Buku akan cepat rusak kalau terlalu sering terkena UV: warna buku bisa jadi pudar. Buku lebih menyukai cahaya yang redup, dan bahkan gelap.

Ruang tempat menyimpan buku juga sebaiknya tidak terlalu lembab dan tidak terlalu panas. Suhu dan kelembaban yang terlalu tinggi bisa memunculkan reaksi asam yang akan membuat kertas menjadi busuk. Kelembaban di bawah 40% bisa membuat kertas menjadi kering dan rapuh. Sedangkan kelembaban di atas 60% bisa membuat kertas menjadi lembek dan menimbulkan pembusukan asam.

Suhu sekitar 68 derajat F dan kelembaban sekitar 50% sering dianggap lingkungan yang ideal buat buku. Yang tak kalah penting, hindari suhu dan kelembaban yang naik turun cukup tinggi (fluktuatif), yang juga bisa menjadi penyebab kerusakan buku. Itu sebabnya, seringkali disarankan agar buku disimpan dalam ruangan ber-AC agar bisa mengendalikan suhu dan kelembabannya.

Rawatlah ruang tempat penyimpanan buku dengan baik. Sebaiknya jauhkan buku dari makanan. Pertimbangkanlah juga untuk menjauhkan tanaman dari rak buku. Ingat, buku mengandung zat organik yang menarik serangga dan binatang pengerat. Akan repot urusannya kalau -selain mampir ke makanan atau tanaman- serangga-serangga itu juga ikut menyantap kerta-kertas buku kita.

Letakan buku di rak dalam posisi berdiri. Buku memang dirancang untuk diletakan
dalam posisi berdiri. Jangan pernah meletakan buku dengan posisi punggungnya menghadap atas. Dengan posisi begitu, tekanan gravitasi akan membuat kerapatan jilid buku menjadi kendor; ujung-ujungnya, kertas-kertas buku bisa lepas dari jilidnya.

Salah satu kebiasaan buruk yang sering kita lakukan adalah menumpuk buku di atas buku-buku lain. Kelihatannya praktis dan baik-baik saja. Tapi, sebetulnya, kebiasaan itu bisa merusak buku kita. Beban buku yang berada di atas akan menekan buku di bawahnya sehingga jilid buku mudah lepas.

Selain ditata berdasarkan topiknya, koleksi buku kita juga sebaiknya ditata berdasarkan ukurannya. Kelompokan buku-buku kita berdasarkan tingginya. Jika ada buku pendek diapit oleh buku yang lebih tinggi, maka buku-buku yang lebih tinggi itu akan cepat rusak. Terlebih kalau deretan buku itu cukup padat dan ketat, buku yang lebih tinggi akan bengkok-bengkok punggungnya.

Kalau jumlah koleksi buku kita belum bisa memadati rak buku, gunakan pengapit buku (bookend). Buku yang dijejer terlalu longgar di rak buku, akan mudah roboh dan rusak. Pilihlah bookend yang tipis supaya bisa menyelip dengan mudah di bawah buku.

Sering-seringlah membersihkan buku dan rak buku. Kemoceng dan penyedot debu bisa dipakai. Pakailah kain yang bersih, kering dan halus ketika buku dibersihkan. Hati-hati, cermati konstruksi buku kita. Jangan sampai niat kita untuk membersih buku malah membuatnya menjadi rusak.

Koleksi buku kita adalah harta karun kita. Jadi, memang, harus dirawat supaya tahan lama.

Sumber: KutuBuku.com

BTemplates.com

Diberdayakan oleh Blogger.

Pages

Profil

Foto saya
Jakarta, jakarta selatan, Indonesia
Remaja. Tinggal di Jakarta. Sedang berusaha menemukan jawaban dari "Siapa saya?". Mencintai binar mata kanak-kanak, langit senja, aroma tanah basah, gelembung sabun, cokelat panas, tertawa keras-keras, dan berpelukan. Tergila-gila pada blog, humor, dan segala jenis buku. Teman yang menyenangkan dan menyebalkan, tergantung suasana hati. Baginya, menulis adalah terapi sekaligus sarana pencarian jati diri. Jadi, jangan tertipu oleh tulisan. Sapa dia jika bertemu di jalan, karena dia akan menyapa balik. Tapi jangan coba-coba menginjak kakinya di dalam angkot, atau menghembuskan asap rokok tepat di mukanya.

Apa itu API ?

API ( Application Programming Interface) adalah sekumpulan perintah , fungsi , dan protokol yang dapat digunakan oleh  programmer saat m...

Followers

Total Tayangan Halaman

Popular Posts