Qubit (Kuantum Bit) merupakan mitra dalam komputasi kuantum dengan digit biner atau bit dari komputasi klasik. Qubit adalah unit dasar informasi dalam komputer kuantum. Dalam komputer kuantum, sejumlah partikel elemental seperti elektron atau foton dapat digunakan, baik dengan biaya maupun polarisasi yang bertindak sebagai representasi dari 0 dan/atau 1. Setiap partikel-partikel ini dikenal sebagai qubit. Sifat dan perilaku partikel-partikel ini membentuk dasar dari komputasi kuantum.
Bit digambarkan oleh status 0 atau 1. Begitu pula dengan qubit yang digambarkan oleh status quantum. Dua status quantum yang 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 atau disebut dengan superposisi yang menjerat kedua status hingga derajat bermacam-macam.
Quantum Gates
Quantum gates atau gerbang quantum merupakan aturan logika atau gerbang logika yang berlaku pada quantumcomputing. Prinsip kerja dari quantum gates hampir sama dengan gerbang logika pada komputer digital. Jika pada komputer digital terdapat beberapa operasi logika seperti AND, OR, dan NOT, pada quantum computing gerbang quantum terdiri dari beberapa bilangan qubit, sehingga quantum lebih sulit untuk dihitung daripada gerbang logika pada komputer digital.
Algoritma Shor
Algoritma shor ditemukan oleh Peter Shor pada tahun 1995. Komputer kuantum yang menggunakan algoritma ini dapat memecahkan sebuah kode rahasia yang saat ini secara umum digunakan untuk mengamankan pengiriman data. Kode yang disebut RSA ini, jika disandikan, maka data yang dikirimkan akan aman, karena RSA membutuhkan kerja ribun komputer secara paralel sehingga kerja pemecahan ini tidaklah efektif.
NoSQL (Not Only SQL) Database tidaklah sama dengan RDBMS (Relational) dan ODBMS (Object Oriented), karena NoSQL Database tidak mengenal istilah retional dan konsep skema. NoSQL juga menggunakan beberapa metode yang berbeda-beda. Metode ini tegantung dari jenis database yang digunakan, karena NoSQL sendiri merupakan konsep database dan pada implementasinya memiliki banyak jenisnya. Tiap tabel berdiri sendiri tanpa tergantung dengan tabel lainnya.
Pada konsep DBMS yang sering dijumpai, ketika proses insert diharuskan untuk mendefinisikan terlebh dahulu struktur tabel seperti tipe data dan ukurannya. Namun pada NoSQL data dapat disimpan tanpa perlu mendefinisikan tipe data dan ukurannya lagi. Sehingga lebih fleksibel bila terdapat perubahan pada nantinya.
Cara Penyimanan
NoSQL Database ini berbeda dengan SQL Database lainnya, salah satu yang dapat dengan jelas terlihat adalah cara penyimpanannya. Pada NoSQL terdapat beberapa cara penyimpanan, yaitu:
Key-Value Based (disimpan dalam bentuk kunci dan isi berpasangan)
Document Based (disimpan dalam bentuk dokumen)
Column Based (disimpan dalam kolom-kolom)
Graph Based (disimpan dalam bentk graf)
Selain cara penyimpanan, cara penambahan dan pemanggilan data pada NoSQL Database juga berbeda.
Jenis NoSQL Database
MonggoDB
Dikembangkan sejak tahun 2009, MonggoDB saat ini telah mendukung hampir semua bahasa pemrograman untuk dapat berinteraksi. MonggoDB merupakan basis data NOSQL yang document based dan menyimpannya dalam suatu dokumen JSON yang disebut BSON (Binary JSON).
CouchDB
Sama seperti dengan MonggoDB, CouchDB juga menyimpan datanya dalam bentuk dokumen. Database ini merupakan proyek open source yang dikembangkan dalam bahasa pemrograman Erlang, oleh karena itu pengguna dapat berkontribusi dalam pengembangannya.
Cassandra
Database yang dikembangkan oleh Apache ini adalah jenis database terdistribusi yang digunakan untuk menangani jumlah data yang sangat besar dan terstruktur. Beberapa perusahaan besar yang menggunakan Cassandra adalah:
- Facebook
- Digg
- IBM
- Reddit
- Rackspace
- CERN
- Apple
- Twitter
Cassandra merupakan aplikasi open source yang ditulis dalam bahasa pemrograman Java dengan lisensi Apache License 2.0. Untuk meproses data, Cassandra menggunakan bahasa sendiri yang mirip dengan SQL, yaitu Cassandra Query Language (CQL).
Redis
Database open source ini berbasis key-value dan merupakan database yang paling populer menurut situs DB-Engines.com karena memiliki fitur in-memory, network, dan durasibilitas tinggi. Redis merupakan akronim dari REmote DIctionary Server. Database ini dikembangkan oleh Salvatore Sanfilippo sejak tahun 2009 lalu dan ditulis dalam bahasa C.
Riak
Riak merupakan database terdistribusi yang menyimpan datanya dalam bentuk key-value dan menawarkan fitur high availability, fault tolerance, operational simplicity, dan scalability. Riak memiliki dua versi, open source dan enterprise edition.
Neo4J
Database dengan sistem graf ini dapat menyimpan relasi antar objek dalam struktur graf, dimana setiap objek merujuk ke objek lainnya secara langsung. Dalam menambahkan maupun menampilkan data, Neo4J memiliki bahasa sendiri yang disebut dengan Cypher.
OrientDB
Database buatan Orient Technologies LTD ini pertama kali dirilis pada 2010 lalu dan diklaim sangat cepat dan mampu menyimpan sebanyak 220.000 record per detik diperangkat standar sekalipun.
Kelebihan NoSQL Database
NoSQL dapat menampung data yang terstruktur, semi terstruktur, dan tidak tidak terstrutur secara efisien dalam skala besar sekalipun.
Menggunakan OOP dalam pengaksesan atau manipulasi datanya.
NoSQL tidak mengenak skema tabel yang kaku dengan format data yang juga kaku. NoSQL sangat cocok untuk data yang tidak terstruktur, istilah untuk fitur ini adalah Dynamic Schema.
Autosharding, jika database NoSQL dijalankan di cluster server (multiple server), maka data akan tersebar secara otomatis dan merata keseluruhan server.
Jika merujuk dari kamus Oxford, virtualisasi merupakan turunan dari kata virtualize yang artinya convert (something) to a computer-generated simulation of reality. Dalam terjemahan bebas, virtualisasi diartikan mengubah sesuatu (mengkonversi) ke bentuk simulasi dari bentuk nyata yang ada.
Virtualisasi tidak menciptakan versi fisik, melainkan virtual, sistem operasi komputer, sumber daya jaringan komputer, atau perangkat penyimpanan. Contoh yang paling sering dijumpai adalah pembuatan komputer virtual yang fungsinya menyerupai komputer fisik terpisah. Dengan virtualisasi, perangkat lunak diubah dari satu komputer fisik menjadi beberapa komputer virtual yang lebih bermanfaat.
Inti dari virtualisasi adalah membuat simulasi dari perangkat lunak, sistem operasi, jaringan maupun yang lainnya. Pada bidang teknologi informasi, virtualisasi digunakan sebagai saranan untuk improvisasi skalabilitas dari perangkat keras yang ada.
Menurut Alan Murphy dalam papernya yang berjudul Virtualization Defied - Eight Different Ways, menyebutkan beberapa istilah dalam penerapan virtualisasi, yaitu:
Operating System Virtualization
Application Server Virtualization
Application Virtualization
Management Virtualization
Network Virtualization
Hardware Virtualization
Storage Virtualization
Service Virtualization
Manfaat Virtualisasi
Dalam dunia usaha, virtualisasi dapat mengurangi biaya yang harus dikeluarkan oleh perusahaan, khususnya pada bagian IT perusahaan. Jika perusahaan memiliki beberapa server, maka dapat digunakan virtualisasi server untuk mengurangi jumlah server fisik, sehingga biaya yang digunakan untuk pemeliharaan dan keamanan akan berkurang. Fitur ini juga memungkinkan untuk melakukan optimasi investasi perangkat keras yang ada dan dapat pula dengan mudah mengatur sistem redundan untuk pemulihan gangguan, tanpa harus menambah perangkat keras lainnya.
Beberapa manfaat lain yang dapat dirasakan adalah minimnya biaya operasional, contohnya adalah tagihan listrik. Karena penggunaan yang lebih sedikit, maka secara tidak langsung biaya yang digunakan untuk membayar listrik juga akan terpangkas. Selain itu virtualisasi juga dapat menghemat ruang untuk penyimpanan server yang digunakan.
Perbedaan Virtualisasi dan Teknologi Cloud
Virtualisasi sering dikaitkan dengan cloud, namun keduanya tidaklah sama. Keduanya memang dapat mengurangi biaya infrastruktur dengan melakukan optimasi penggunaan sebagian besar sumber daya komputasi.
Komputasi cloud memungkinkan seluruh layanan atau aplikasi berjalan di jaringan komputer terdistribusi. Cloud memiliki dua layanan, publik dan pribadi. Cloud publik dapat berupa layanan berlangganan seperti email berbasis web atau Office 365 pada Windows dan layanan komunikasi seperti Skype dan Lync. Sedangkan cloud prbadi menawarkan layanan yang dapat disesuaikan dengan server perusahaan atau server penyedia layanan TI.
Virtualisasi sediri merupakan komponen penting pada komputasi cloud, namun bahkan secara terpisah, virtualisasi dapat bermanfaat untuk perusahaan dalam berbagai skala.