Pages

Senin, 14 Desember 2015


Distributed Processing mengerjakan semua proses pengolahan data secara bersama antara komputer pusat dengan beberapa komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi. Setiap komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian data secara terpisah, kemudian hasil pengolahan tadi digabungkan menjadi satu penyelesaian total. Jika salah satu prosesor mengalami kegagalan atau masalah yang lain akan mengambil alih tugasnya.
Pemrosesan terdistribusi adalah penggunaan lebih dari satu prosesor untuk melakukan pengolahan untuk tugas individu. Contoh pemrosesan terdistribusi dalam sistem database Oracle muncul dalam Gambar 6-1.
Dalam Bagian A dari gambar, klien dan server yang terletak di komputer yang berbeda, komputer ini terhubung melalui jaringan. Server dan klien dari sistem database Oracle berkomunikasi melalui Net8, antarmuka jaringan Oracle.
Dalam Bagian B dari gambar, satu komputer memiliki lebih dari satu prosesor, dan prosesor yang berbeda memisahkan pelaksanaan aplikasi klien dari Oracle.
Figure 6-1 The Client/Server Architecture and Distributed Processing
Oracle client / server arsitektur dalam lingkungan pemrosesan terdistribusi memberikan manfaat sebagai berikut
–          Aplikasi client tidak bertanggung jawab untuk melaksanakan setiap pengolahan data. Sebaliknya, mereka meminta masukan dari pengguna, data permintaan dari server, dan kemudian menganalisa dan menyajikan data ini menggunakan kemampuan tampilan dari workstation klien atau terminal (misalnya, dengan menggunakan grafik atau spreadsheet).
–          Aplikasi client tidak tergantung pada lokasi fisik dari data. Jika data tersebut akan dipindahkan atau didistribusikan ke server database lain, aplikasi terus berfungsi dengan modifikasi sedikit atau tidak ada.
–          Oracle memanfaatkan fasilitas multitasking dan berbagi-memori sistem operasi yang mendasarinya. Akibatnya, ini memberikan tingkat tertinggi kemungkinan konkurensi, integritas data, dan kinerja untuk aplikasi kliennya.
–          Klien workstation atau terminal dapat dioptimalkan untuk penyajian data (misalnya, dengan menyediakan grafis dan dukungan mouse) dan server dapat dioptimalkan untuk pengolahan dan penyimpanan data (misalnya, dengan memiliki sejumlah besar memori dan ruang disk) .
–          Dalam lingkungan jaringan, Anda dapat menggunakan workstation klien murah untuk mengakses data remote dari server efektif.
–          Jika perlu, Oracle dapat ditingkatkan sebagai sistem Anda tumbuh. Anda dapat menambahkan beberapa server untuk mendistribusikan beban database pengolahan seluruh jaringan (horizontal skala), atau Anda dapat memindahkan Oracle ke komputer mini atau mainframe, untuk mengambil keuntungan dari kinerja sistem yang lebih besar itu (vertikal skala). Dalam kedua kasus, semua data dan aplikasi yang dipertahankan dengan modifikasi sedikit atau tidak ada, karena Oracle adalah portabel antara sistem.
–          Dalam lingkungan jaringan, data bersama disimpan pada server, bukan pada semua komputer dalam sistem. Hal ini membuat lebih mudah dan lebih efisien untuk mengelola akses konkuren.
–          Dalam lingkungan jaringan, aplikasi client mengirimkan permintaan database ke server dengan menggunakan pernyataan SQL. Setelah diterima, pernyataan SQL diproses oleh server, dan hasilnya dikembalikan ke aplikasi klien. Jaringan lalu lintas disimpan ke minimum karena hanya permintaan dan hasilnya dikirim melalui jaringan.


Distributed data processing /  pemrosesan data terdistribusi
Merupakan sekumpulan peralatan pemrosesan yang saling terhubung melalui jaringan yang mengerjakan tugas-tugas tertentu.
Pemrosesan terdistribusi dapat dikelompokan berdasarkan beberapa kriteria yaitu :

  1. Struktur antar hubungan
  2. Kesaling tergantungan komponen-komponen.
  3. Keselarasan antar komponen.

Distributed database system / system database terdistribusi
Merupakan sekumpulan database yang saling terhubung secara logical dan secara fisik terdistribusi pada berbagai tempat melalui jaringan computer.
Sistem yang mengelola  database terdistribusi dan menyediakan mekanisme agar distribusi transparent adalahdistributed database management system (DDBMS).
Ciri-ciri untuk system yang bukan merupakan system database terdistribusi :
  1. Sistem yang berisi kumpulan file
  2. Berbagai arsitektur fisik berkait dengan system multiprocessor.

Ciri sistem database distribusi
  1. Data disimpan pada sejumlah tempat. Setiap tempat secara logic terdiri dari processor tunggal.
  2. Processor pada tempat yang berbeda tersebut dihubungkan dengan jaringan computer.
  3. Bukan sekumpulan file yang berada pada berbagai tempat tetapi merupakan database pada berbagai tempat.
  4. Setiap tempat mempunyai kemampuan untuk mandiri memproses permintaan user yang membutuhkan akses kedata ditempat tersebut, dan juga mampu untuk memproses data yang tersimpan di tempat lain

Keuntungan dan Kelemahan sistem database distribusi
–         Keuntungan :
  1. Pengelolaan secara transparan data terdistribusi dan replicated.
  2. Mengacu pada struktur organisasi
  3. Meningkatkan kemampuan untuk share dan otonomi local
  4. Meningkatkan ketersediaan data
  5. Meningkatkan kehandalan
  6. Meningkatkan unjuk kerja
  7. Memudahkan pengembangan system
–         Kelemahan :
  1. Kompleksitas manajemen
  2. Control integritas lebih sulit
  3. Biaya pengembangan
  4. Keamanan
  5. Kurang standarisasi
  6. Menambahkan kebutuhan penyimpanan
  7. Lebih sulit dalam mengatur lingkungan data
  8. Menambah biaya pelatihan.

Architectural Parallel Computer


Dalam taksonomi arsitektur paralel ada dua keluarga arsitektur paralel yang banyak diterapkan adalah: SIMD dan MIMD, dimana untuk mesin yang murni MISD tidak ada.
Arsitektur SIMD
Mesin SIMD secara umum mempunyai karakteristik sbb:
1.       Mendistribusi proses ke sejumlah besar hardware
2.       Beroperasi terhadap berbagai elemen data yang berbeda
3.       Melaksanakan komputasi yang sama terhadap semua elemen data
Peningkatan kecepatan pada SIMD proporsional dengan jumlah hardware (elemen pemroses)
yang tersedia.
Arsitektur MISD
Prosesor pipeline adalah prosesor MISD yang bekerja berdasarkan prinsip pipelining. Pada pipeline proses dapat dibagi menjadi beberapa tahap dan beberapa proses dapat dilaksanakan secara simultan. Pada gambar dibawah dapat dilihat perbedaan proses serial dengan pipeline
Waktu eksekusi lebih cepat dibandingkan dengan proses serial.
Prinsip pipelining dapat digunakan pada dua level yang berbeda:
1. Pipeline unit aritmatika
2. Pipeline unit kontrol Waktu eksekusi lebih cepat dibandingkan dengan proses serial.

Operasi pipeline dapat dilaksanakan secara siklus yaitu cyclic pipeline, dimana dapat dibagi dalam 5 tahap:
• Operasi baca (dari shared memories)
• Operasi transfer (memori ke elemen pemroses)
• Operasi eksekusi (di elemen pemroses)
• Operasi transfer (elemen pemroses ke memori)
• Operasi simpan (di shared memories)





Sumber : http://repository.politekniktelkom.ac.id/Courseware/Semester%201/Sistem%20Komputer/Cousware%20Siskom%20(indoVERSION)/BAB%20XII.pdf


Parallelism concept


Paralelisme (parallelism) lahir dari pendekatan yang biasa dipergunakan oleh para perancang sistem untuk menerapkan konsep pemrosesan konkuren. Teknik ini meningkatkan kecepatan proses dengan cara memperbanyak jumlah modul perangkat keras yang dapat beroperasi secara simultan disertai dengan membentuk beberapa proses yang bekerja secara simultan pada modul-modul perangkat keras tersebut. Secara formal, pemrosesan paralel adalah sebuah bentuk efisien pemrosesan informasi yang menekankan pada eksploitasi dari konkurensi kejadian-kejadian dalam proses komputasi.Pemrosesan paralel dapat terjadi pada beberapa tingkatan (level) proses. Tingkatan tertinggi pemrosesan paralel terjadi pada proses di antara banyak job (pekerjaan) atau pada program yang menggunakan multiprogramming, time sharing, dan multiprocessing. Multiprogramming kemampuan eksekusi terhadap beberapa proses perangkat lunak dalam sebuah system secara serentak, jika dibandingkan dengan sebuah proses dalam satu waktu, dan timesharing berarti menyediakan pembagian selang waktu yang tetap atau berubah-ubah untuk banyak program. Multiprocessing adalah dukungan sebuah sistem untuk mendukung lebih dari satu prosesor dan mengalokasikan tugas kepada prosesor-prosesor tersebut. Multiprocessing sering diimplementasikan dalam perangkat keras (dengan menggunakan beberapa CPU sekaligus), sementara multiprogramming sering digunakan dalam perangkat lunak. Sebuah sistem mungkin dapat memiliki dua kemampuan tersebut, salah satu di antaranya, atau tidak sama sekali. Pemrosesan paralel dapat juga terjadi pada proses di antara prosedurprosedur atau perintah perintah (segmen program) pada sebuah program.Untuk meningkatkan kecepatan proses komputasi, dapat ditempuh dua cara :
Peningkatan kecepatan perangkat keras.
Komponen utama perangkat keras komputer adalah processor. Meskipun kecepatan processor dapat ditingkatkan terus, namun karena keterbatasan materi pembuatnya, tentu ada suatu batas kecepatan yang tak mungkin lagi dapat dilewati. Karena itu timbul ide pembuatan komputer multiprocessor. Dengan adanya banyak processor dalam satu komputer, pekerjaan bisa dibagi-bagi kepada masing-masing processor. Dengan demikian lebih banyak proses dapat dikerjakan dalam satu saat. Peningkatan kecepatan setiap proses bisa dicapai melalui peningkatan kecepatan perangkat lunak. Kecepatan perangkat lunak sangat ditentukan oleh algoritmanya.
Peningkatan kecepatan perangkat lunak.
Program komputer untuk komputer sekuensial harus menyediakan sederetan operasi untuk dikerjakan oleh prosesor tunggal. Program komputer untuk komputer paralel harus menyediakan sederetan operasi untuk beberapa prosesor untuk dikerjakan secara paralel, termasuk operasi untuk mengatur dan mengitegrasikan prosesor-prosesor yang terpisah tersebut mengerjakan suatu komputasi yang koheren. Kebutuhan akan pembuatan dan pengaturan berbagai aktivitas komputasi paralel menambah dimensi baru proses dari pemrograman komputer. Algoritma untuk problem yang spesifik harus diformulasikan sedemikian rupa, agar menghasilkan aliran operasi paralel yang kemudian akan dieksekusi di prosesor yang berbeda. Karena itu, meskipun arsitektur multiprosesor dan multikomputer mempunyai pontensi yang tinggi untuk meningkatkan kemampuan komputasi, potensi ini akan tercapai melalui pengertian yang baik mengenai bahasa pemrograman paralel dan perancangan algoritma paralel.
Tingkat Paralelisme
Berdasarkan tingkat paralelismenya prosesor paralel dapat dibagi menjadi beberapa tingkat sebagai berikut :
1. Komputer Array :
a. Prosesor array : beberapa prosesor yang bekerja sama untuk mengolah set instruksi yang sama dan data yang berbeda – beda atau biasa disebut SIMD (Single Instruction-stream Multiple Data)
b. Prosesor vektor : beberapa prosesor yang disusun seperti pipeline.
2. Multiprosesor, yaitu sebuah sistem yang memiliki 2 prosesor atau lebih yang saling berbagi memori.
3. Multikomputer, yaitu sebuah sistem yang memiliki 2 prosesor atau lebih yang masing-masing prosesor memiliki memori sendiri.
Jenis-Jenis Pemrosesan Paralel
Pemrosesan paralel dapat dibagi ke dalam beberapa klasifikasi, sebagai berikut :
1. Berdasarkan simetri penjadwalannya, pemrosesan parallel dapat dibagi dalam beberapa jenis:
a) Asymmetric Multiprocessing (ASMP)
b) Symmetric Multiprocessing (SMP)
c) ClusteringPoliteknik Telkom Sistem Komputer
2. Berdasarkan aliran instruksi dan datanya, pemrosesan parallel dapat dibagi dalam beberapa jenis:
a) SISD (Single Instruction on Single Data Stream)
b) SIMD (Single Instruction on Multiple Data Stream)
c) MISD (Multiple Instruction on Single Data Stream)
d) MIMD (Multiple Instruction on Multiple Data Stream)
3. Berdasarkan kedekatan antar prosesor, pemrosesan parallel dapat dibagi dalam beberapa jenis:
a) Multikomputer (Loosely Coupled/ local memory) dengan memori yang terdistribusi
b) Multiprosesor (Tightly Coupled/ global memory) dengan memori yang dapat digunakan bersama (shared memory)





Parallel Computation


 Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer secara bersamaan. Biasanya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar ataupun karena tuntutan proses komputasi yang banyak. Untuk melakukan aneka jenis komputasi paralel ini diperlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkan dengan jaringan dan mampu bekerja secara paralel untuk menyelesaikan satu masalah. Untuk itu diperlukan aneka perangkat lunak pendukung yang biasa disebut sebagai middleware yang berperan untuk mengatur distribusi pekerjaan antar node dalam satu mesin paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk merealisasikan komputasi.

Komputer dikatakan sebagai mesin komputasi paralel jika memenuhi beberapa syarat berikut ini:

-Data yang diproses dipecah menjadi bagian-bagian terpisah yang bekerja secara independen dan terus-menerus.
- Proses pengeksekusian instruksi ganda. Sehingga dalam sekali waktu, bisa dihasilkan 2 atau lebih suatu output data. Untuk lebih detilnya bisa dibaca pada sub bab taksonomi Flynn. Yang dalam hal ini sangat berbeda dengan paradigma perkembangan pengolahan data yang berkisar pelebaran jalur data, bukan penjamakan instruksi
- Dapat menyelesaikan tugas lebih cepat daripada dengan perangkat serial.
Distributed computing
Merupakan sebuah sistem komputer dengan memori terdistribusi, dimana masing-masing elemen pemrosesan dihubungkan oleh jaringan. 

Sumber : http://ahmadqusyairi.blogspot.com/2010/03/openmp-open-multi-processing.html

Pendahuluan


Quantum Computation atau komputer kuantum adalah sebuah alat untuk perhitungan, dimana perhitungan ini menggunakan langsung fenomena kuantum mekanik dan perhitungan ini seperti superposisi dan belitan untuk melakukan operasi pada data. Kuantum komputer berbeda dari komputer tradisional yang didasarkan pada transistor. Perbedaan komputer kuantum dengan komputer klasik adalah pada sebuah komputer klasik memiliki memori terdiri dari bit, dimana tiap bitmewakili salah satu atau nol. Sedangkan sebuah komputer kuantum mempertahankan urutan qubit.Sebuah qubit tunggal dapat mewakili satu, nol, atau, krusial. Prinsip dasar komputer kuantum adalah bahwa sifat kuantum dari partikel dapat digunakan untuk mewakili data dan struktur data, dan bahwa mekanika kuantum dapat digunakan untuk melakukan operasi dengan data ini. Dalam hal ini untuk mengembangkan komputer dengan sistem kuantum diperlukan suatu logika baru yang sesuai dengan prinsip kuantum.
Ide mengenai komputer kuantum ini berasal dari beberapa fisikawan antara lain Charles H. Bennett dari IBM, Paul A. Benioff dari Argonne National Laboratory, Illinois, David Deutsch dari University of Oxford, dan Richard P. Feynman dari California Institute of Technology (Caltech). Pada awalnya Feynman mengemukakan idenya mengenai sistem kuantum yang juga dapat melakukan proses penghitungan. Fenyman juga mengemukakan bahwa sistem ini bisa menjadi simulator bagi percobaan fisika kuantum. Selanjutnya para ilmuwan mulai melakukan riset mengenai sistem kuantum tersebut, mereka juga berusaha untuk menemukan logika yang sesuai dengan sistem tersebut. Sampai saat ini telah dikemukaan dua algoritma baru yang bisa digunakan dalam sistem kuantum yaitu algoritma shor dan algoritma grover.
Walaupun komputer kuantum masih dalam pengembangan, telah dilakukan eksperimen dimana operasi komputasi kuantum dilakukan atas sejumlah kecil Qubit. Riset baik secara teoretis maupun praktik terus berlanjut dalam laju yang cepat, dan banyak pemerintah nasional dan agensi pendanaan militer mendukung riset komputer kuantum untuk pengembangannya baik untuk keperluan rakyat maupun masalah keamanan nasional seperti kriptoanalisis.
Telah dipercaya dengan sangat luas, bahwa apabila komputer kuantum dalam skala besar dapat dibuat, maka komputer tersebut dapat menyelesaikan sejumlah masalah lebih cepat daripada komputer biasa. Komputer kuantum berbeda dengan komputer DNA dan komputer klasik berbasis transistor, walaupun mungkin komputer jenis tersebut menggunakan prinsip kuantum mekanik. Sejumlah arsitektur komputasi seperti komputer optik walaupun menggunakan superposisi klasik dari gelombang elektromagnetik, namun tanpa sejumlah sumber kuantum mekanik yang spesifik sepertiketerkaitan, maka tak dapat berpotensi memiliki kecepatan komputasi sebagaimana yang dimiliki oleh komputer kuantum.




Sumber : http://no21reason.blogspot.com/2013/05/pengantar-quantum-computation.html


Algoritma shor


Algoritma Shor, dinamai matematikawan Peter Shor , adalah algoritma kuantum yaitu merupakan suatu algoritma yang berjalan pada komputer kuantum yang berguna untuk faktorisasi bilangan bulat. Algoritma Shor dirumuskan pada tahun 1994.  Inti dari algoritma ini merupakan bagaimana cara menyelesaikan faktorisasi terhaadap bilanga interger atau bulat yang besar.
Efisiensi algoritma Shor adalah karena efisiensi kuantum Transformasi Fourier , dan modular eksponensial. Jika sebuah komputer kuantum dengan jumlah yang memadai qubit dapat beroperasi tanpa mengalah kebisingan dan fenomena interferensi kuantum lainnya, algoritma Shor dapat digunakan untuk memecahkan kriptografi kunci publik skema seperti banyak digunakan skema RSA. Algoritma Shor terdiri dari dua bagian:
- Penurunan yang bisa dilakukan pada komputer klasik, dari masalah anjak untuk masalah ketertiban -temuan.
- Sebuah algoritma kuantum untuk memecahkan masalah order-temuan.
Hambatan runtime dari algoritma Shor adalah kuantum eksponensial modular yang jauh lebih lambat dibandingkan dengan kuantum Transformasi Fourier dan pre-/post-processing klasik. Ada beberapa pendekatan untuk membangun dan mengoptimalkan sirkuit untuk eksponensial modular. Yang paling sederhana dan saat ini yaitu pendekatan paling praktis adalah dengan menggunakan meniru sirkuit aritmatika konvensional dengan gerbang reversibel , dimulai dengan penambah ripple-carry. Sirkuit Reversible biasanya menggunakan nilai pada urutan n ^ 3, gerbang untuk n qubit. Teknik alternatif asimtotik meningkatkan jumlah gerbang dengan menggunakan kuantum transformasi Fourier , tetapi tidak kompetitif dengan kurang dari 600 qubit karena konstanta tinggi.




Sumber : http://seto.citravision.com/berita-45-pengantar-quantum-computation--algoritma-shor.htm

Qantum Gates



Pada saat ini, model sirkuit komputer adalah abstraksi paling berguna dari proses komputasi dan secara luas digunakan dalam industri komputer desain dan konstruksi hardware komputasi praktis. Dalam model sirkuit, ilmuwan komputer menganggap perhitungan apapun setara dengan aksi dari sirkuit yang dibangun dari beberapa jenis gerbang logika Boolean bekerja pada beberapa biner (yaitu, bit string) masukan. Setiap gerbang logika mengubah bit masukan ke dalam satu atau lebih bit keluaran dalam beberapa mode deterministik menurut definisi dari gerbang. dengan menyusun gerbang dalam grafik sedemikian rupa sehingga output dari gerbang awal akan menjadi input gerbang kemudian, ilmuwan komputer dapat membuktikan bahwa setiap perhitungan layak dapat dilakukan.
Quantum Logic Gates, Prosedur berikut menunjukkan bagaimana cara untuk membuat sirkuit reversibel yang mensimulasikan dan sirkuit ireversibel sementara untuk membuat penghematan yang besar dalam jumlah ancillae yang digunakan.
-  Pertama mensimulasikan gerbang di babak pertama tingkat.
-  Jauhkan hasil gerbang di tingkat d / 2 secara terpisah.
-  Bersihkan bit ancillae.
-  Gunakan mereka untuk mensimulasikan gerbang di babak kedua tingkat.
-  Setelah menghitung output, membersihkan bit ancillae.
-  Bersihkan hasil tingkat d / 2.
Sekarang kita telah melihat gerbang reversibel ireversibel klasik dan klasik, memiliki konteks yang lebih baik untuk menghargai fungsi dari gerbang kuantum. Sama seperti setiap perhitungan klasik dapat dipecah menjadi urutan klasik gerbang logika yang bertindak hanya pada bit klasik pada satu waktu, sehingga juga bisa setiap kuantum perhitungan dapat dipecah menjadi urutan gerbang logika kuantum yang bekerja pada hanya beberapa qubit pada suatu waktu. Perbedaan utama adalah bahwa gerbang logika klasik memanipulasi nilai bit klasik, 0 atau 1, gerbang kuantum dapat sewenang-wenang memanipulasi nilai kuantum multi-partite termasuk superposisi dari komputasi dasar yang juga dilibatkan. Jadi gerbang logika kuantum perhitungannya jauh lebih bervariasi daripada gerbang logika perhitungan klasik.




Sumber : http://djuneardy.blogspot.co.id/2015/04/quantum-computing-entanglement.html

Pengoperasian data qubit



Qubit merupakan kuantum bit , mitra dalam komputasi kuantum dengan digit biner atau bit dari komputasi klasik. Sama seperti sedikit adalah unit dasar informasi dalam komputer klasik, qubit adalah unit dasar informasi dalam komputer kuantum . Dalam komputer kuantum, sejumlah partikel elemental seperti elektron atau foton dapat digunakan (dalam praktek, keberhasilan juga telah dicapai dengan ion), baik dengan biaya mereka atau polarisasi bertindak sebagai representasi dari 0 dan / atau 1. Setiap partikel-partikel ini dikenal sebagai qubit, sifat dan perilaku partikel-partikel ini (seperti yang diungkapkan dalam teori kuantum ) membentuk dasar dari komputasi kuantum. Dua aspek yang paling relevan fisika kuantum adalah prinsip superposisi dan Entanglement
Superposisi, pikirkan qubit sebagai elektron dalam medan magnet. Spin elektron mungkin baik sejalan dengan bidang, yang dikenal sebagai spin-up, atau sebaliknya ke lapangan, yang dikenal sebagai keadaan spin-down. Mengubah spin elektron dari satu keadaan ke keadaan lain dicapai dengan menggunakan pulsa energi, seperti dari Laser - katakanlah kita menggunakan 1 unit energi laser. Tapi bagaimana kalau kita hanya menggunakan setengah unit energi laser dan benar-benar mengisolasi partikel dari segala pengaruh eksternal? Menurut hukum kuantum, partikel kemudian memasuki superposisi negara, di mana ia berperilaku seolah-olah itu di kedua negara secara bersamaan. Setiap qubit dimanfaatkan bisa mengambil superposisi dari kedua 0 dan 1. Dengan demikian, jumlah perhitungan bahwa komputer kuantum dapat melakukan adalah 2 ^ n, dimana n adalah jumlah qubit yang digunakan. Sebuah komputer kuantum terdiri dari 500 qubit akan memiliki potensi untuk melakukan 2 ^ 500 perhitungan dalam satu langkah. Ini adalah jumlah yang mengagumkan - 2 ^ 500 adalah atom jauh lebih dari yang ada di alam semesta (ini pemrosesan paralel benar - komputer klasik saat ini, bahkan disebut prosesor paralel, masih hanya benar-benar melakukan satu hal pada suatu waktu: hanya ada dua atau lebih dari mereka melakukannya). Tapi bagaimana partikel-partikel ini akan berinteraksi satu sama lain? Mereka akan melakukannya melalui belitan kuantum.




Sumber : http://seto.citravision.com/berita-43-pengantar-quantum-computation--pengoperasian-data-qubit.html

Senin, 12 Oktober 2015

NoSQL Database



Penjelasan NoSQL Database

Generasi terbaru dari perangkat lunak internet sangat tergantung pada penggunaan sistem basis data. Kenyataanya untuk meningkatkan kemampuan dan kecepatan operasi, pengembang dapat merelaksasikan beberapa aturan ketat yang ada pada RDBMS seperti consistency dan atomicity. Sebagai realisasinya jenis basis data baru telah diperkenalkan beberapa tahun lalu yang dikenal dengan NoSQL (singkatan dari Not-Only-SQL). Beberapa aplikasi berbasis web yang telah menerapkan penggunaan NoSQL diantaranya adalah Google dengan BigTable, Amazon dengan Dynamo, dan Facebook dengan Cassandra dan Hadoop.
Konsep Non-Relational dalam basis data NoSQL meliputi hirarki, graf, dan basis data berorientasi obyek yang sudah terlebih dahulu ada sejak tahun 1960 sebelum akhirnya basis data relasional muncul pada tahun 1970.
NoSQL sendiri adalah tipe database yang sangat jauh berbeda dengan konsep RDBMS ataupun ODBMS. Perbedaan utamanya sendiri yaitu karena tidak mengenal istilah dan tidak menggunakan konsep schema. Selain itu kalau di dalam konsep DBMS biasanya sebelum insert data kita harus mendefinisikan terlebih dahulu struktur tabel seperti data dan ukurannya, pada NoSQL kita dapat menyimpan data tanpa perlu mendefinisikan tipe data dan ukurannya lagi. Adapun beberapa database NoSQL yang ada saat ini yaitu Cassandra, Big Table, CouchDB, Redis, Riak, Dynamo dan lainnya.


Sumber : http://flashintata.blogspot.co.id/2013/04/komputasi-awan-cloud-computing.html

DISTRIBUTED COMPUTATION DALAM CLOUD COMPUTING


Pengertian Distributed Computation dalam Cloud Computing

    Komputasi terdistribusi merupakan bidang ilmu komputer yang mempelajari sistem terdistribusi. Sebuah sistem terdistribusi terdiri dari beberapa komputer otonom yang berkomunikasi melalui jaringan komputer. Komputer yang saling berinteraksi untuk mencapai tujuan bersama. Suatu program komputer yang berjalan dalam sistem terdistribusi disebut program didistribusikan, dan didistribusikan pemrograman adalah proses menulis program tersebut. Distributed computing juga mengacu pada penggunaan sistem terdistribusi untuk memecahkan masalah komputasi. Dalam distributed computing, masalah dibagi menjadi banyak tugas, masing-masing yang diselesaikan oleh satu komputer.

Kegiatan ini merupakan kumpulan beberapa computer yang terhubung untuk melakukan pendistribusian, seperti mengirim dan menerima data serta melakukan interaksi lain antar computer yang dimana membutuhkan sebuah jaringan agar computer satu dan lainnya bisa saling berhubung dan melakukan interaksi. Hal ini semua dilakukan dengan cloud computing yang seperti kita ketahui memberikan layanan dimana informasinya disimpan di server secara permanen dan disimpan di computer client secara temporary.

KESIMPULAN
Cloud computing sangat berguna pada saat ini yang berfungsi untuk menyimpan data pada internet. Di dalam cloud computing terdapat distributed computation, dimana interaksi yang dilakukan antar computer seperti mengirim dan menerima data menggunakan jaringan computer hingga pengaksesan sumberdaya bisa dilakukan secara paralel dan bisa dimanfaatkan dalam waktu yang bersamaan.


Sumber :
http://bloggerbukancafe.blogspot.co.id/2015/05/cloud-computing.html
https://azizazkink.wordpress.com/2014/05/09/distributed-computation-dalam-cloud-computing/

Map Reduce dan NoSQL


Pengertian Map Reduce dan NoSQL

Map Reduce merupakan sebuah konsep dimana data yang kontinue dipecah menjadi bagian data / komponen data kecil dan didistribusikan melalui mesin-mesin yang terhubung secaracluster. Bisa dibilang map reduce merupakan sebuah framework yang digunakan untuk mempercepat proses pengolahan data pada konsep cloud computing.
NoSQL adalah istilah yang dikenal dalam teknologi komputasi untuk merujuk kepada kelas yang luas dari sistem manajemen basis data yang di identifikasikan dengan tidak mematuhi aturan pada model sistem manajemen basis data relasional yang banyak digunakan. Implementasi Map Reduce dan NoSQL dalam Cloud Computing
Map Reduce dan NoSQL (Not Only SQL) adalah sebuah pemogramaan framework guna untuk membantu user mengembangankan sebuah data yang ukuran besar dapat terdistribusi satu sama lain. Map-Reduce adalah salah satu konsep teknis yang sangat penting di dalam teknologi cloud terutama karena dapat diterapkannya dalam lingkungan distributed computing. Dengan demikian akan menjamin skalabilitas aplikasi kita. Salah satu contoh penerapan nyata map-reduce ini dalam suatu produk adalah yang dilakukan Google. Dengan inspirasi dari functional programming map dan reduce Google bisa menghasilkan filesystem distributed yang sangat scalable, Google Big Table. Dan juga terinspirasi dari Google, pada ranah open source terlihat percepatan pengembangan framework lainnya yang juga bersifat terdistribusi dan menggunakan konsep yang sama, project open source tersebut bernama Apache Hadoop.

Sumber : http://bloggerbukancafe.blogspot.co.id/2015/05/cloud-computing.html

VIRTUALISASI


Pengertian Virtualisasi

Dalam ilmu komputer, virtualisasi (bahasa Inggris: virtualization) adalah istilah umum yang mengacu kepada abstraksi dari sumber daya komputer. Definisi lainnya adalah "sebuah teknik untuk menyembunyikan karakteristik fisik dari sumber daya komputer dari bagaimana cara sistem lain, aplikasi atau pengguna berinteraksi dengan sumber daya tersebut. Hal ini termasuk membuat sebuah sumber daya tunggal (seperti server, sebuah sistem operasi, sebuah aplikasi, atau peralatan penyimpanan terlihat berfungsi sebagai beberapa sumber daya logikal; atau dapat juga termasuk definisi untuk membuat beberapa sumber daya fisik (seperti beberapa peralatan penyimpanan atau server) terlihat sebagai satu sumber daya logikal."
Istilah virtualisasi sudah digunakan secara luas sejak 1960-an, dan telah diaplikasikan kepada beberapa aspek komputer—dari keseluruhan sistem komputer sampai sebuah kemampuan atau komponen individu. Secara umum semua teknologi virtualisasi mengacu kepada "menyembunyikan detail teknis" melalui enkapsulasi

Inti dari virtualisasi adalah membuat sebuah simulasi dari perangkat keras, sistem operasi, jaringan maupun yang lainnya. Di bidang teknologi informasi, virtualisasi digunakan sebagai sarana untuk improvisasi skalabilitas dari perangkat keras yang ada.
Dengan virtualisasi, beberapa sistem operasi dapat berjalan secara bersamaan pada satu buah komputer. Hal ini tentunya dapat mengurangi biaya yang harus dikeluarkan oleh sebuah perusahaan. Di masa akan datang, teknologi virtualisasi akan banyak digunakan baik oleh perusahaan yang bergerak dibidang teknologi informasi maupun yang tidak murni bergerak di bidang teknologi informasi namun menggunakan teknologi informasi sebagai sarana untuk memajukan usahanya.
Menurut Alan Murphy dalam papernya Virtualization Defined – Eight Different Ways, menyebutkan setidaknya terdapat delapan istilah dalam penerapan virtualisasi. Diantaranya adalah operating system virtualization, application server virtualization, application virtualization, management virtualization, network virtualization, hardware virtualization, storage virtualization dan service virtualization.
Dalam hardware virtualization, perangkat lunak bekerja membentuk sebuah virtual machine yang bertindak seolah-olah seperti sebuah komputer asli dengan sebuah sistem operasi terinstall di dalamnya. Salah contoh yang mudah misalkan terdapat satu buah komputer yang telah terinstall GNU/Linux Linux Mint. Kemudian dengan menggunakan perangkat lunak virtualisasi misalnya Virtualbox, kita dapat menginstall sistem operasi lain sebagai contoh Windows XP atau FreeBSD.
Sistem operasi yang terinstall di komputer secara fisik dalam hal ini Linux Mint disebut sebagai host machinesedangkan sistem operasi yang diinstall diatasnya dinamakan guest machine. Istilah host dan guest dikenalkan untuk memudahkan dalam membedakan antara sistem operasi fisik yang terinstall di komputer dengan sistem operasi yang diinstall diatasnya atau virtualnya.
Perangkat lunak yang digunakan untuk menciptakan virtual machine pada host machine biasa disebut sebagaihypervisor atau Virtual Machine Monitor (VMM). Menurut Robert P. Goldberg dalam tesisnya yang berjudulArchitectural Principles For Virtual Computer Systems pada hal 23 menyebutkan bahwa tipe-tipe dari VMM ada 2 yaitu:
·         Type 1 berjalan pada fisik komputer yang ada secara langsung. Pada jenis ini hypervisor/VMM benar-benar mengontrol perangkat keras dari komputer host-nya. Termasuk mengontrol sistem operasi-sistem operasiguest-nya. Contoh implementasi yang ada adalah KVM dan OpenVZ. Adapun contoh yang lain seperti VMWare ESXi, Microsoft Hyper-V
Gambar 1. Virtualisasi type 1
·         Type 2 berjalan pada sistem operasi diatasnya. Pada tipe ini sistem operasi guest berada diatas sistem operasi host. Contoh tipe ini adalah VirtualBox.
Gambar 2. Virtualisasi type 2

Sumber : 
http://wikipedia.com
http://dosen.gufron.com/artikel/pengertian-virtualisasi/8/





KOMPUTASI GRID


PENGERTIAN

Komputasi Grid adalah penggunaan sumber daya yang melibatkan banyak komputer yang terdistribusi dan terpisah secara geografis untuk memecahkan persoalan komputasi dalam skala besar.

Grid computing merupakan cabang dari distributed computing.Grid komputer memiliki perbedaan yang lebih menonjol dan di terapakan pada sisi infrastruktur dari penyelesaian suatu proses. Grid computing adalah suatu bentuk cluster (gabungan) komputer-komputer yang cenderung tak terikat batasan geografi. Di sisi lain, cluster selalu diimplementasikan dalam satu tempat dengan menggabungkan banyak komputer lewat jaringan.

Ide awal komputasi grid dimulai dengan adanya distributed computing, yaitu mempelajari penggunaan komputer terkoordinasi yang secara fisik terpisah atau terdistribusi. Sistem terdistribusi membutuhkan aplikasi yang berbeda dengan sistem terpusat. Kemudian berkembang lagi menjadi parallel computing yang merupakan teknik komputasi secara bersamaan dengan memanfaatkan beberapa komputer secara bersamaan.

Grid computing menawarkan solusi komputasi yang murah, yaitu dengan memanfaatkan sumber daya yang tersebar dan heterogen serta pengaksesan yang mudah dari mana saja. Globus Toolkit adalah sekumpulan perangkat lunak dan pustaka pembuatan lingkungan komputasi grid yang bersifat open-source. Dengan adanya lingkungan komputasi grid ini diharapkan mempermudah dan mengoptimalkan eksekusi program-program yang menggunakan pustaka paralel. Dan Indonesia sudah menggunakan sistem Grid dan diberi nama InGrid (Inherent Grid). Sistem komputasi grid mulai beroperasi pada bulam Maret 2007 dan terus dikembangkan sampai saat ini. InGrid ini menghubungkan beberapa perguruan tinggi negeri dan swasta yang tersebar di seluruh Indonesia dan beberapa instansi pemerintahan seperti Badan Meteorologi dan Geofisika.

KONSEP GRID COMPUTING

Beberapa konsep dasar dari grid computing :
1.    Sumber daya dikelola dan dikendalikan secara lokal.
2.    Sumber daya berbeda dapat mempunyai kebijakan dan mekanisme berbeda, mencakup Sumber daya komputasi dikelola oleh sistem batch berbeda, Sistem storage berbeda pada node berbeda, Kebijakan berbeda dipercayakan kepada user yang sama pada sumber daya berbeda pada Grid.
3.    Sifat alami dinamis: Sumber daya dan pengguna dapat sering berubah
4.    Lingkungan kolaboratif bagi e-community (komunitas elektronik, di internet)
5.    Tiga hal yang di-,sharing dalam sebuah sistem grid, antara lain : Resource, Network dan Proses. Kegunaan / layanan dari sistem grid sendiri adalah untuk melakukan high throughput computing dibidang penelitian, ataupun proses komputasi lain yang memerlukan banyak resource komputer. 


 CARA KERJA GRID COMPUTING


Menurut tulisan singkat oleh Ian Foster ada check-list yang dapat digunakan untuk mengidentifikasi bahwa suatu sistem melakukan komputasi grid yaitu :
  1. Sistem tersebut melakukan koordinasi terhadap sumberdaya komputasi yang tidak berada dibawah suatu kendali terpusat. Seandainya sumber daya yang digunakan berada dalam satu cakupan domain administratif, maka komputasi tersebut belum dapat dikatakan komputasi grid.
  2. Sistem tersebut menggunakan standard dan protokol yang bersifat terbuka (tidak terpaut pada suatu implementasi atau produk tertentu). Komputasi grid disusun dari kesepakatan-kesepakatan terhadap masalah yang fundamental, dibutuhkan untuk mewujudkan komputasi bersama dalam skala besar. Kesepakatan dan standar yang dibutuhkan adalah dalam bidang autentikasi, otorisasi, pencarian sumberdaya, dan akses terhadap sumber daya.
  3. Sistem tersebut berusaha untuk mencapai kualitas layanan yang canggih, (nontrivial quality of service) yang jauh diatas kualitas layanan komponen individu dari komputasi grid tersebut.
Kemudian hal yang tidak boleh dilupakan adalah mengenai keberadaan dari elemen-elemen dari grid computing, elemen ini tidak bisa dilepaskan dari grid computing. Elemen grid computing adalah berikut :
  1. Hardware
  2. Software
  3. Brainware
Dibalik kemudahan setiap komputasi yang sudah ada selama ini, maka ada kekurangan/kelemahan yang dimilikinya. Dibawah ini saya akan memberikan info mengenai kelebihan dan kekurangan apa saja yang dimiliki oleh grid computing ini :
  1. Hardware dalam komputasi grid mencakup perangkat penyimpanan, prosesor, memori, jaringan, dan software yang di desain untuk mengelola hardware ini, misalnya database, manajemen penyimpan, manajemen sistem, server aplikasi, dan sistem operasi. Hardware pada grid komputing di atur secara lokal, dan hardware yang berbeda memiliki kebijakan dan cara kerja yang berbeda. Hardware dan user grid komputing sering bersifat dinamis tergantung penerapan grid tersebut.
  2. Software merupakan suatu perangkat yang menghubungkan semua middleware-nya. Middleware itu sendiri adalah bagian dari software, yaitu lapisan sofware yang terletak antara sistem operasi dan aplikasi yang berfungsi sebagai penghubung komunikasi antar-objek dari sistem yang berbeda. Unsur-unsur dasar suatu middleware adalah keamanan (security), pengaturan sumber daya (resource management), pengaturan data (data management), dan layanan informasi (information services). Contoh beberapa middleware adalah Globus Toolkit, Gridbus, Microsoft’s COM/DCOM, Unicore, dan masih banyak contoh-contoh middleware lainnya.
  3. Brainware dalam komputasi grid hanya meliputi pemelihara dan pemakai grid. Dahulu grid computing cenderung hanya di pakai oleh para ilmuan untuk kepentingan ilmiah. Pada saat itu memang ekspose terbesar lebih banyak pada proyek-proyek sains, seperti riset genetika, fisika dan yang paling terkenal adalah proyek SETI ( Search for Extra Terrestrial Intelligence ) atau riset pencari kehidupan di luar bumi. Hal ini memunculkan persepsi bahwa teknologi komputasi grid ini sulit di terima di kalangan non-ilmuan, terutama di kalangan bisnis. Namun, sekarang penerapan komputasi grid telah merambah penggunaanya bukan hanya pada proyek sains saja. Bahkan baru-baru ini, teknologi grid computing telah di kenalkan pada dunia enterpreneur dan mendapat banyak respon positif. Orang yang memelihara dan menggunakan teknologi grid computing ini, berdasarkan penelitian penggunaannya akan meluas pada:
  • jaringan penelitian publik bagi para peneliti dan ilmuan;
  • layanan (service), artinya grid computing tidak lagi hanya bersifat komputasional;
  • berbagai institusi keuangan, seperti perbankan;
  • Service Oriented Architecture (SOA), yaitu enkapsulasi sekumpulan aplikasi sebagai interface tunggal yang dapat di rekonfigurasi.
KELEBIHAN DAN KEKURANGAN CLOUD COMPUTING
  1. Penggunaan Grid Computing System untuk perusahaan-perusahaan akan banyak memberikan manfaat, baik manfaat secara langsung maupun tidak langsung. Beberapa manfaat tersebut antara lain :
  2. Grid computing menjanjikan peningkatan utilitas, dan fleksibilitas yang lebih besar untuk sumberdaya infrastruktur, aplikasi dan informasi. Dan juga menjanjikan peningkatan produktivitas kerja perusahaan.
  3. Grid computing bisa memberi penghematan uang, baik dari sisi investasi modal maupun operating cost–nya.
  4. Dan beberapa hambatan yang dialami oleh masyarakat Indonesia dalam mengaplikasikan teknologi grid computing adalah sebagai berikut :
  5. Manajemen institusi yang terlalu birokratis menyebabkan mereka enggan untuk merelakan fasilitas yang dimiliki untuk digunakan secara bersama agar mendapatkan manfaat yan lebih besar bagi masyarakat luas.
  6. Masih sedikitnya Sumber Daya Manusia yang kompeten dalam mengelola grid computing. Contonhya kurangnya pengetahuan yang mencukupi bagi teknisi IT maupun user non teknisi mengenai manfaat dari grid computing itu sendiri.
 PERBEDAAN GRID & CLOUD COMPUTING

Komputasi grid di mana lebih dari satu komputer koordinat untuk memecahkan masalah bersama. Sering digunakan untuk masalah yang melibatkan banyak nomor berderak, yang dapat dengan mudah parallelisable.

Cloud computing adalah di mana aplikasi tidak mengakses sumber daya memerlukan langsung, melainkan mengakses mereka melalui sesuatu seperti layanan. Jadi, bukannya berbicara dengan hard drive khusus untuk penyimpanan, dan CPU khusus untuk perhitungan, dll itu berbicara untuk beberapa layanan yang menyediakan sumber daya tersebut. Layanan ini kemudian memetakan setiap permintaan untuk sumber daya untuk sumber daya fisik, dalam rangka untuk menyediakan aplikasi. Biasanya layanan memiliki akses ke sejumlah besar sumber daya fisik, dan dinamis dapat mengalokasikan mereka seperti yang diperlukan.

Dengan cara ini, jika aplikasi membutuhkan hanya sejumlah kecil dari beberapa sumber, mengatakan perhitungan, maka layanan hanya mengalokasikan sedikit, mengatakan pada CPU fisik tunggal (yang dapat dibagi dengan beberapa aplikasi lain yang menggunakan layanan). Jika aplikasi membutuhkan sejumlah besar beberapa sumber daya, maka layanan mengalokasikan bahwa jumlah besar, mengatakan grid CPU. Aplikasi ini relatif tidak menyadari ini, dan semua penanganan yang kompleks dan koordinasi dilakukan oleh layanan, tidak aplikasi. Dengan cara ini aplikasi dapat skala dengan baik.

Misalnya sebuah situs web yang ditulis "di awan" mungkin berbagi server dengan banyak situs web lain sementara ia memiliki jumlah rendah lalu lintas, tetapi dapat pindah ke dedicated server sendiri, atau grid server, jika pernah memiliki sejumlah besar lalu lintas. Ini semua ditangani oleh layanan cloud, sehingga aplikasi tidak harus dimodifikasi secara drastis untuk mengatasi.

Sumber :
 https://www.wordpress.com
 https://madluke.wordpress.com/2011/04/15/grid-computing/
http://stackoverflow.com/questions/1067987/what-is-the-difference-between-cloud-computing-and-grid-computing



Implementasi Komputasi dalam berbagai bidang


IMPLEMENTASI KOMPUTASI
Komputasi banyak digunakan pada semua bidang salah satunya adalah komputasi sains. Komputasi sains merupakan salah satu cabang ilmu komputasi. Secara umum komputasi sains mengkaji aspek-aspek komputasi untuk aplikasi / memecahkan masalah di bidang sains lain, seperti fisika, kimia, biologi, dll

FISIKA
Komputasi dalam bidang ilmu fisika digunakan umtuk memecahkan masalah-masalah penelitian yang sangat kompleks dan numerikal, salah satunya adalah pengolahan data, pemodelan dan simulasi sistem fisis. Komputasi pada ilmu fisika sangat membantu mencari solusi persamaan, differensial, dan analisis untuk memecahkan permasalahan teori kuantitatif fisika yang sudah ada.
KIMIA
Pada ilmu kimia, komputasi digunakan untuk mengetahui dan menghitung sifat-sifat molekul yang di simulasikan terhadap suatu sistem yang dihasilkan melalui program komputer dan diterapkan pada sistem kimia nyata, untuk menghitung besaran reaksi katalis pada senyawa kimia yang direaksikan.
MATEMATIKA
Sama halnya dengan ilmu fisika dan kimia, komputasi pada ilmu matematika digunakan untuk mencari suatu solusi dari suatu sistem yang ingin di teliti contohnya adalah model sistem rotasi bumi. Dengan model matematika yang didapatkan dari komputasi maka para peneliti dengan mudah dapat mensimulasikan sistem tersebut kedalam model. 
EKONOMI
Mempelajari titik pertemuan antara ekonomi dan komputasi. Area yang tercakup antara lain agent-based computational modelingcomputational econometrics dan statistika, komputasi keuangancomputational modeling of dynamic macroeconomic systems, pemrograman yang didesain khusus untuk komputasi ekonomi, dan pengembangan alat bantu dalam pendidikan komputasi ekonomi.  
GEOLOGI
Cabang ilmu geologi merupakan ilmu yang mempelajari bumi secara menyeluruh. Komputasi pada ilmu ini adalah menganalisa dan mengukur struktur bumi pada waktu yang ditentukan.
GEOGRAFI
Ilmu yang mempelajari kondisi bumi seperti atmosfer dan lain lain. Komputasi pada ilmu ini digunakan untuk mengukur tingkat curah hujan dan kelembapan di suatu daerah.  
BIOLOGI
Salah satu Implementasinya merupakan sebuah aplikasi dari teknologi informasi dan ilmukomputer terhadap bidang biologi molekuler. contohnya adalah n-system yang mampumendeteksi retina maupun struktur wajah orang yang terekam kamera cctv.

Sumber : https://id.wikipedia.org/wiki/Teori_komputasi
 

Blogger news

Blogroll

About