Jumat, 27 November 2015

Parallelism Concept

Pada dasarnya, konsep parallel system merupakan suatu bentuk penawaran solusi dari proses computing yang terlalu berat, sehingga dapat dipecah sedemikian hingga tidak memberatkan system kerja komputer itu sendiri. Konsep program parallel :
 

-  Memerintahkan set instruksi (pandangan programmer).

-  File executable (pandangan sistem operasi)

Komputasi paralel didefinisikan sebagai penggunaan sekumpulan sumberdaya komputer secara simultan untuk menyelesaikan permasalahan komputasi. Secara prinsip komputer paralel membagi permasalahan sehingga menjadi lebih kecil untuk dikerjakan oleh setiap prosesor / CPU dalam waktu yang bersamaan/simultan / concurrent dan prinsip ini disebut paralelisme.

Sebenarnya prinsip paralelisme juga sudah diterapkan dalam komputer serial misal dengan pipelining dan superscalar-nya namun demikian tidak memberikan solusi terbaik dalam hal meningkatkan performansi dikarenakan terbatasnya kemampuan untuk menambah kecepatan prosesor dan fenomena memory bottleneck.  Tingkat paralelisme dalam komputasi khususnya pada prosesor di antaranya :

-  Paralelisme bit-level. Contoh : prosesor 32 bit dan prosesor 64 bit.

-  Paralelisme instruction set-level. Contoh : CISC dan RISC.

-  Paralelisme thread-level. Contoh : Intel hyperthreading.


Paralelisme lain yang juga berkembang dalam komputasi paralel adalah paralelisme data dan paralelisme fungsi. Perkembangan teknologi prosesor : prosesor singlecore superscalar, chip multiprocessor, prosesor multicore, hingga prosesor cell memberikan kontribusi terhadap peningkatan performansi komputer parallel.

 Sumber :

http://seto.citravision.com/berita-46-parallel-computation--parallelism-concept.html

Kamis, 26 November 2015

Algoritma Shor


Algoritma Shor, dinamai matematikawan Peter Shor , adalah algoritma kuantum (suatu algoritma yang berjalan pada komputer kuantum ) untuk faktorisasi bilangan bulat dirumuskan pada tahun 1994.

Sebagai contoh  Algoritma Shor yang paling sederhana adalah menemukan faktor-faktor untuk  bilangan  15,  di mana membutuhkan sebuah komputer kuantum dengan tujuh qubit.  Para  ahli  kimia mendesain dan menciptakan sebuah molekul yang memiliki tujuh putaran nukleus. Nukleus dari lima atom fluorin dan dua atom karbon yang dapat berinteraksi satu dengan yang lain sebagai qubit, dapat diprogram dengan menggunakan denyut-denyut  frekuensi radio dan dapat dideteksi melalui peralatan resonansi  magnetis nuklir (nuclear magnetic resonance, atau NMR) yang mirip dengan yang banyak digunakan di rumah-rumah sakit dan laboratorium-laboratorium kimia.

Sumber :

http://mynewsworthy99.blogspot.co.id/2013/05/pengantar-quantum-computation.html



Rabu, 25 November 2015

Quantum Gates







Dalam komputasi kuantum dan khususnya sirkuit kuantum model perhitungan, sebuah gerbang kuantum (quantum atau gerbang logika) adalah dasar kuantum sirkuit operasi pada sejumlah kecil qubit. Mereka adalah analog untuk komputer kuantum untuk gerbang logika klasik untuk komputer digital konvensional. Quantum gerbang logika yang reversibel, tidak seperti banyak gerbang logika klasik. Beberapa yang universal gerbang logika klasik, seperti Toffoli gerbang, memberikan reversibilitas dan dapat langsung dipetakan ke logika kuantum gerbang. Quantum gerbang logika yang diwakili oleh matriks kesatuan. Gerbang kuantum yang paling umum beroperasi pada ruang satu atau dua qubit. Ini berarti bahwa sebagai matriks, gerbang kuantum dapat dijelaskan oleh 2 x 2 atau 4 x 4 matriks dengan baris ortonormal. Penyelidikan logika kuantum gerbang tidak berhubungan dengan logika kuantum, yang merupakan formalisme dasar untuk mekanika kuantum didasarkan pada modifikasi beberapa aturan logika proposisional. 

Sumber :

http://mynewsworthy99.blogspot.co.id/2013/05/pengantar-quantum-computation.html

Selasa, 24 November 2015

Pengoperasian Data Qubit




Bit digambarkan oleh statusnya, 0 atau 1. Begitu pula, qubit digambarkan oleh status quantumnya. Dua status quantum potensial untuk qubit ekuivalen dengan 0 dan 1 bit klasik. Namun dalam mekanika quantum, objek apapun yang memiliki dua status berbeda pasti memiliki rangkaian status potensial lain, disebut superposisi, yang menjerat kedua status hingga derajat bermacam-macam.

Sumber :


http://mynewsworthy99.blogspot.co.id/2013/05/pengantar-quantum-computation.html 


Sabtu, 03 Oktober 2015

No SQL Database

Wikipedia menyatakan NoSQL adalah sistem menejemen database yang berbeda dari sistem menejemen database relasional yang klasik dalam beberapa hal. NoSQL mungkin tidak membutuhkan skema table dan umumnya menghindari operasi join dan berkembang secara horisontal. Akademisi menyebut database seperti ini sebagai structured storage, istilah yang didalamnya mencakup sistem menejemen database relasional.

No SQL adalah sebuah konsep mengenai penyimpanan data non-relasional. Berbeda dengan model basis data relasional yang selama ini digunakan, No SQL menggunakan beberapa metode yang berbeda-beda. Metode-metode tersebut menurut Dwight Merriman, salah satu kontributor MongoDB, di antaranya adalah :

- Key-value stores.

- Table-oriented.

- Document-oriented.

- Graph-oriented.

Walaupun SQL dalam arti sesungguhnya adalah simple atau sederhana, dan developer selama bertahun tahun menggunakannya, tetapi mereka merasa kurang puas bahkan cenderung tidak menyukainya. Alasan lainnya, RDBMS atau Relational Database Management System tidak dapat berkembang horisontal secara baik. Seringnya kita mendapatkan database yang berkembang tetapi secara read-only melalui kemampuan replikasi database dan untuk mendapatkan database yang berkembang horisontal secara read-write itu sangat sulit. Oracle saja sampai perlu membangun ORACLE RAC atau Real Application Cluster, yang menemui banyak tantangan untuk melakukan sinkronisasi data di internal cache melalui inter-koneksi khusus. Faktanya, perubahan data yang terjadi itu memerlukan waktu untuk mengirimkannya ke berbagai sistem. Selama data tersebut belum terkirimkan, kita memakai data yang tidak valid atau stale data/delta data.
 
Metode-metode dalam No SQL menyederhanakan proses yang terjadi dalam sistem basis data relasional. Penyederhanaan proses ini memungkinkan data direplikasi di banyak server secara mudah dan menjamin ketersediaan data. Namun di sisi lain, penyederhanaan proses ini memiliki beberapa efek samping. Beberapa metode tersebut mengurangi integritas data, satu hal yang dijamin oleh basis data relasional. Namun demikian, ada beberapa implementasi No SQL yang juga telah menyediakan integritas data seperti basis data relasional. No SQL ditegaskan tidak untuk menggantikan basis data relasional. Tujuan pengembangan No SQL adalah untuk menyelesaikan berbagai masalah yang tidak bisa ditangani oleh basis data relasional, yaitu masalah skalabilitas untuk pemrosesan data berukuran besar. Jika data yang digunakan dalam aplikasi nanti akan berkembang menjadi berukuran besar, maka No SQL dapat menjadi pertimbangan alternatif sebagai penyimpanan data.

Database relasional sudah ada semenjak tahun 70-an sehingga teknologi mereka sudah sangat matang. Secara umum mereka mendukung operasi transaksi, yang mengijinkan kita merubah sebagian data, melakukan kontrol terhadap operasi database, support terhadap constraint seperti unique, primary key, foreign key dan check. Mereka juga memiliki bahasa SQL atau Simplified Query Language untuk mengakses data, merubah data seperti operasi insert, update dan delete.

Setelah sekian lama muncul, database NoSQL tidak serta merta memiliki banyak penggemar. Untuk pastinya, banyak perusahaan besar yang menggunakan NoSQL database, tetapi secara umum mereka menggunakannya untuk kebutuhan kebutuhan yang spesial. Mereka perlu melihat apakah database ini bisa berkembang dengan kapasitas data yang sangat besar dan banyak dipergunakan di berbagai applikasi, jika tidak, mereka tidak melihat alasan untuk berpindah.

Sumber :
 
http://seto.citravision.com/berita-40-pengantar-komputasi-cloud--nosql-database.html

http://nareswara.com/2011/07/06/apa-itu-nosql-database/

Jumat, 02 Oktober 2015

Map Reduce dan NoSQL (Not Only SQL)


Map Reduce merupakan model yang pemrograman untuk memproses set data yang besar, dan nama sebuah implementasi dari model oleh Google. Map Reduce biasanya digunakan untuk melakukan komputasi terdistribusi pada cluster komputer.

Menulis program paralel-eksekusi telah terbukti selama bertahun-tahun untuk menjadi tugas yang sangat menantang, membutuhkan berbagai keahlian khusus. Map Reduce menyediakan programmer biasa kemampuan untuk menghasilkan paralel program didistribusikan jauh lebih mudah, dengan mengharuskan mereka untuk menulis Peta sederhana  dan Mengurangi  fungsi, yang fokus pada logika masalah tertentu. sementara "Sistem Map Reduce" (juga disebut "infrastruktur", "kerangka") secara otomatis menangani menyusun server terdistribusi, menjalankan berbagai tugas secara paralel, mengelola semua komunikasi dan transfer data antara berbagai bagian dari sistem, menyediakan untuk redundansi dan kegagalan , dan manajemen keseluruhan dari keseluruhan proses.



Sebuah database No SQL menyediakan mekanisme untuk penyimpanan dan pengambilan data yang menggunakan model lebih konsisten daripada database relasional tradisional dalam rangka mencapai skala horisontal dan ketersediaan. Disebut  "Not SQL" untuk menekankan bahwa beberapa sistem No SQL mengizinkan bahasa query SQL-seperti yang sering digunakan. Sistem database No SQL sangat dioptimalkan untuk pengambilan dan operasi penambahan dan sering menawarkan fungsionalitas sedikit di luar penyimpanan record (misalnya key-value stores). Menurunnya fleksibilitas run-time dibandingkan dengan sistem SQL penuh dikompensasi oleh keuntungan yang nyata pada skalabilitas dan kinerja untuk data model tertentu. Singkatnya, sistem manajemen database NoSQL berguna ketika bekerja dengan sejumlah besar data (terutama data besar) ketika sifat data itu tidak memerlukan model relasional.


Data dapat terstruktur, tapi No SQL adalah kemampuan untuk menyimpan dan mengambil sejumlah besar data, bukan hubungan antara unsur-unsur. Contoh penggunaan mungkin untuk menyimpan jutaan pasangan kunci-nilai dalam satu atau array asosiatif sedikit atau untuk menyimpan jutaan catatan data. Organisasi ini sangat berguna untuk analisis statistik atau real-time daftar elemen (seperti posting Twitter atau log server internet dari kelompok besar pengguna). Penggunaan lain dari teknologi ini berkaitan dengan fleksibilitas dari model data, banyak aplikasi dapat memperoleh dari data tidak terstruktur model: alat seperti CRM, ERP, BPM, dll. Bisa menggunakan fleksibilitas ini untuk menyimpan data mereka tanpa melakukan perubahan pada tabel atau menciptakan kolom generik dalam database. Database ini juga baik untuk membuat prototipe atau aplikasi dengan cepat, karena fleksibilitas ini menyediakan alat untuk mengembangkan fitur baru yang sangat mudah.

Contoh NoSQL adalah: MongoDB.


Sumber :

 http://wind0809.blogspot.com/2013/04/seputar-tentang-cloud-computing-map.html

Kamis, 01 Oktober 2015

Distribusi Computation dalam Cloud Computing



Distributed Computing adalah ilmu yang memecahkan masalah besar dengan memberikan bagian kecil dari masalah untuk banyak komputer untuk memecahkan dan kemudian menggabungkan solusi untuk bagian-bagian menjadi solusi untuk masalah tersebut. Distributed computing terkait dengan system perangkat keras dan perangkat lunak yang memiliki lebih dari satu elemen pemrosesan atau storage element.

Pada cloud computing, penyimpanan data hanya dilakukan pada server utama, sehingga pengguna hanya dapat mengaksesnya tanpa harus mengetahui infrastruktur pembuatan aplikasinya. Hanya perlu interface software saja untuk mengakses server. Interface ini pada umumnya merupakan web browser yang tersedia dengan banyak pilihan dan tidak berbayar.

Cloud computing dipecah ke dalam beberapa kategori yang berbeda berdasarkan jenis layanan yang disediakan. SaaS (Software as a Service) adalah kategori komputasi awan di mana sumber daya utama yang tersedia sebagai layanan perangkat lunak aplikasi. PaaS (Platform as a Service) adalah kategori / penerapan komputasi awan di mana penyedia layanan memberikan platform komputasi atau solusi tumpukan untuk pelanggan mereka melalui internet. IaaS (Infrastructure as a Service) adalah kategori komputasi awan di mana sumber daya utama yang tersedia sebagai layanan yang infrastruktur perangkat keras. DaaS (Desktop sebagai Layanan), yang merupakan layanan muncul-Aas berkaitan dengan memberikan pengalaman seluruh desktop melalui internet. Ini kadang-kadang disebut sebagai virtualisasi desktop / virtual desktop atau desktop host.

Bidang ilmu komputer yang berkaitan dengan sistem terdistribusi disebut komputasi terdistribusi. Sebuah sistem terdistribusi terdiri dari lebih dari satu komputer self-directed berkomunikasi melalui jaringan. Komputer-komputer ini menggunakan memori lokal mereka sendiri. Semua komputer dalam sistem terdistribusi berbicara satu sama lain untuk mencapai tujuan bersama tertentu. Atau, pengguna yang berbeda pada setiap komputer mungkin memiliki kebutuhan individu yang berbeda dan sistem terdistribusi akan melakukan koordinasi sumber daya bersama (atau bantuan berkomunikasi dengan node lain) untuk mencapai tugas-tugas masing-masing. Node berkomunikasi menggunakan message passing. Komputasi terdistribusi juga dapat diidentifikasi sebagai menggunakan sistem terdistribusi untuk memecahkan masalah besar tunggal dengan melanggar itu dengan tugas, masing-masing yang dihitung masing-masing komputer dari sistem terdistribusi. Biasanya, mekanisme toleransi berada di tempat untuk mengatasi kegagalan komputer individu. Struktur (topologi, delay dan kardinalitas) dari sistem ini tidak dikenal di muka dan itu bersifat dinamis. Komputer individu tidak harus tahu segala sesuatu tentang seluruh sistem atau masukan lengkap (untuk masalah yang akan dipecahkan).

Sumber :

 https://rizki08.wordpress.com/2014/05/09/distributed-computation-dalam-cloud-computing/