Senin, 14 Desember 2015

Parallel Computation | Architectural Parallel Computer

DISUSUN OLEH :
Nama : Rama Wicaksana
NIM  : 11510030
Kampus : STTC (Sekolah Tinggi Teknik Cendekia)


Arsitektur paralel komputer menurut Klasifikasi Flynn’s:
*        SISD (Single Instruction – Single Data)
       
Komputer ini adalah tipe komputer konvensional, komputer ini memiliki hanya satu prosesor dan satu instruksi yang dieksekusi secara serial. Menurut mereka tipe komputer ini tidak ada dalam praktik komputer paralel karena bahkan mainframe pun tidak lagi menggunakan satu prosesor. Klasifikasi ini sekedar untuk melengkapi definisi komputer paralel.
Beberapa contoh komputer yang menggunakan model SISD yaitu seperti : UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP 1.



*        SIMD (Single Instruction – Multiple Data)
        Komputer ini memiliki lebih dari satu prosesor, tetapi hanya mengeksekusi satu instruksi secara paralel pada data yang berbeda pada level lock-step. Komputer vektor adalah salah satu komputer paralel yang menggunakan arsitektur ini.
Beberapa contoh komputer yang menggunakan model SIMD yaitu seperti : ILLIAC IV, MasPar, Cray X-MP, Cray Y-MP, Thingking Machine CM-2 dan Cell Processor (GPU).


*        MISD (Multiple Instructions – Single Data)
        Teorinya komputer ini memiliki satu prosesor dan mengeksekusi beberapa instruksi secara paralel tetapi praktiknya tidak ada komputer yang dibangun dengan arsitektur ini karena sistemnya tidak mudah dipahami. Sampai saat ini belum ada komputer yang menggunakan model MISD.


*        MIMD (Multiple Instructions – Multiple Data)
       
Komputer ini memiliki lebih dari satu prosesor dan mengeksekusi lebih dari satu instruksi secara paralel. Tipe komputer ini yang paling banyak digunakan untuk membangun komputer paralel, bahkan banyak supercomputer yang menerapkan arsitektur ini. Beberapa komputer yang menggunakan model MIMD yaitu seperti : IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM BG/L.


        Sistem komputer paralel dibedakan dari cara kerja memorinya menjadi shared memory dan distributed memory. Shared memory berarti memori tunggal diakses oleh satu atau lebih prosesor untuk menjalankan instruksi sedangkan distributed memory berarti setiap prosesor memiliki memori sendiri untuk menjalankan instruksi. Adapun komponen-komponen utama dari arsitektur komputer paralel cluster PC antara lain:
·         Prosesor (CPU). Bagian paling penting dalam sistem, untuk multicore terdapat lebih dari satu core yang mengakses sebuah memori (shared memory).
·         Memori. Bagian ini dapat diperinci lagi menjadi beberapa bagian penyusunnya seperti RAM, cache memory dan memori eksternal.
·         Sistem Operasi. Software dasar untuk menjalankan sistem komputer.
·         Cluster Middleware. Antarmuka antara hardware dan software.
·         Programming Environment dan Software Tools. Software yang digunakan untuk pemrograman paralel termasuk software pendukungnya.
·         User Interface. Software yang menjadi perantara hardware dengan user.
·         Aplikasi. Software berisi program permasalahan yang akan diselesaikan.
·         Jaringan. Penghubung satu PC (prosesor) dengan PC yang lain sehingga memungkinkan pemanfaatan sumberdaya secara simultan.

Sumber :
http://seto.citravision.com/berita-48-parallel-computation%E2%80%93architectural-parallel-computer.html

Parallel Computation | Distrubuted Processing

DISUSUN OLEH :
Nama : Rama Wicaksana
NIM  : 11510030
Kampus : STTC (Sekolah Tinggi Teknik Cendekia)


      Pemrosesan paralel adalah pendekatan komputasi untuk meningkatkan tingkat di mana satu set data diolah dengan pengolahan bagian yang berbeda dari data pada waktu yang sama secara simultan atau bersamaan pada sebuah komputer dan berfungsi memecah beban besar menjadi beberapa beban kecil untuk mempercepat proses penyelesaian masalah. 

      Didistribusikan pengolahan paralel menggunakan pemrosesan paralel pada beberapa mesin. Salah satu contoh dari hal ini adalah bagaimana beberapa komunitas memungkinkan pengguna untuk mendaftar dan mendedikasikan komputer mereka sendiri untuk memproses beberapa data set yang diberikan kepada mereka oleh server. Ketika ribuan pengguna mendaftar untuk ini, banyak data dapat diproses dalam jumlah yang sangat singkat.

      Tipe lain dari komputasi paralel yang kadang-kadang disebut "didistribusikan" adalah gagasan dari sebuah komputer paralel cluster. Sebuah cluster akan banyak CPU terhubung melalui kecepatan tinggi koneksi ethernet ke hub sentral (Server) yang memberi masing-masing beberapa pekerjaan yang harus dilakukan. Metode cluster mirip dengan metode yang dijelaskan dalam paragraf di atas, kecuali bahwa semua CPU secara langsung terhubung ke server, dan satu-satunya tujuan mereka adalah untuk melakukan perhitungan yang diberikan kepada mereka.

Parallel distributed computing dapat dibentuk dari :
  • Konsep pertemuan yang menggabungkan fitur RPC dan monitor.
  • PVM (Parallel Virtual Machine) untuk mendukung workstation clusters.
  • MPI (Message-Passing Interface) programming GUI untuk parallel computers.

Sumber : 


Parallel Computation | Parallelism Concept

DISUSUN OLEH :
Nama : Rama Wicaksana
NIM  : 11510030
Kampus : STTC (Sekolah Tinggi Teknik Cendekia)

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 :

Pengantar Quantum Computation | Algoritma Shor

DISUSUN OLEH :
Nama : Rama Wicaksana
NIM  : 11510030
Kampus : STTC (Sekolah Tinggi Teknik Cendekia)


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 terhadap bilanga interger atau bulat yang besar.
Efisiensi Algoritma Shor adalah karena efisiensi kuantum “Transformasi Fourier, dan modular eksponensial”. Jika sebuah omputer kuantum dengan jumlah yang memadai qubit dapat beroperasi tanpa mengalah kebisingan dan fenomena interferensi kuantum lainnya, algoritma Shor dapat digunakan untuk memecahkan kriptografi kunci omput skema seperti banyak digunakan skema RSA.

Algoritma Shor terdiri dari 2 bagian:
  1.  Penurunan yang omp dilakukan pada omputer klasik, dari masalah anjak untuk masalah ketertiban-temuan.
  2. 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- atau post-processing klasik. Ada beberapa pendekatan untuk membangun dan mengoptimalkan sirkuit untuk eksponensial modular. Yang paling sederhana saat ini yaitu pendekatan paling praktis dengan menggunakan dan meniru sirkuit aritmatika konvensional dengan gerbang reversibel, dimulai dengan penambah ripple-carry.
Sirkuit Reversible biasanya menggunakan nilai pada urutan n ^ 3, gerbang untuk qubit. Teknik Alternatif Asimtotik meningkatkan jumlah gerbang dengan menggunakan kuantum transformasi Fourier, tetapi tidak kompetitif dengan kurang dari 600 qubit karena konstanta tinggi.

Pengantar Quantum Computation | Quantum gates(gerbang kuantum)

DISUSUN OLEH :
Nama : Rama Wicaksana
NIM  : 11510030
Kampus : STTC (Sekolah Tinggi Teknik Cendekia)

Sebuah gerbang kuantum atau kuantum gerbang logika adalah sirkuit kuantum dasar 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.

Contoh :
   
     Hadamard gate, gerbang ini beroperasi pada qubit tunggal. Hal ini diwakili oleh matriks Hadamard representasi grafis dari Hadamard gate :
$$ H = \ frac {1} {\ sqrt {2}} \ begin {} bmatrix 1 & 1 \\ 1 & -1 \ end {} $$ bmatrix
Karena baris dari matriks ortogonal, H memang matriks kesatuan.

     Phase shifter gates, Gates di kelas ini beroperasi pada qubit tunggal. Mereka diwakili oleh 2 x 2 matriks dari bentuk:
$$ R (\ theta) = \ begin {} bmatrix 1 & 0 \\ 0 & e ^ {2 \ pi i \ theta} \ end {} $$ bmatrix
di mana θ adalah pergeseran fasa.

     Controlled gates, misalkan U adalah gerbang yang beroperasi pada qubit tunggal dengan representasi matriks :
$$ U = \ begin {} bmatrix x_ {} 00 & x_ {} 01 \\ x_ {} 10 & x_ {} 11 \ end {} $$ bmatrix
Dikendalikan-U gerbang adalah pintu gerbang yang beroperasi pada dua qubit sedemikian rupa bahwa qubit pertama berfungsi sebagai kontrol. Representasi grafis dari dikendalikan-U gerbang, sebagai berikut :
|00 |00
|01 |01
|10 |1U|0 = |1 (x00|0 + x01|1)
|11 |1U|1 = |1 (x10|0 + x11|1)

Jadi matriks gerbang U dikendalikan adalah sebagai berikut:
$$ \ operatorname {C} (U) = \ begin {} bmatrix 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & x_ {} 00 & x_ {} 01 \\ 0 & 0 & x_ {} 10 & x_ {} 11 \ end {} $$ bmatrix

     Uncontrolled gate, mencatat perbedaan antara gerbang dikendalikan-U dan 2 qubit gerbang representasi grafis yang tidak terkendali yang tidak terkendali gerbang U Saya U didefinisikan sebagai berikut:
|00 |0U|0
|01 |0U|1
|10 |1U|0
|11 |1U|1

represented by the unitary matrix :
$$ \ begin {} bmatrix x_ {} 00 & x_ {} 01 & 0 & 0 \\ x_ {} 10 & x_ {} 11 & 0 & 0 \\ 0 & 0 & x_ {} 00 & x_ {} 01 \\ 0 & 0 & x_ {} 10 & x_ {} 11 \ end {} bmatrix. $$
Karena gerbang ini dapat direduksi menjadi lebih gerbang SD biasanya tidak termasuk dalam repertoar dasar gerbang kuantum. Hal ini disebutkan di sini hanya untuk kontras dengan gerbang dikendalikan sebelumnya.
Universal Quantum Gates
     Satu set gerbang kuantum universal setiap set gerbang yang operasi apapun yang mungkin terjadi pada komputer kuantum dapat dikurangi. Satu set sederhana dari dua qubit gerbang kuantum universal gerbang Hadamard (H), rotasi fase gerbang $ R (\ cos ^ {- 1} \ begin {matrix} \ frac {3} {5} \ end {matrix} )) $, dan-tidak dikendalikan gerbang, kasus khusus dari terkontrol-U seperti :
$$ \ operatorname {} CNOT = \ begin {} bmatrix 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \ end { bmatrix} $$.
Sebuah single-gerbang set gerbang kuantum universal yang juga dapat dirumuskan dengan menggunakan tiga qubit Deutsch gerbang, D (θ)
$$ \ operatorname {D (\ theta)}: | i, j, k \ rangle \ Rightarrow \ begin {} kasus i \ cos (\ theta) | i, j, k \ rangle + \ sin (\ theta) | i, j, k-1 \ rangle & \ mbox {} untuk i = j = 1 \\ | i, j, k \ rangle & \ mbox {} dinyatakan \ end {} $$ kasus
Universal klasik gerbang logika, yang Toffoli gerbang, direduksi menjadi gerbang Deutsch, $ D (\ begin {matrix} \ frac {\ pi} {2} \ end {matrix}) $, sehingga menunjukkan bahwa semua operasi logika klasik bisa dilakukan pada sebuah komputer kuantum universal.

Referensi

M. Nielsen dan I. Chuang, Quantum Perhitungan dan Quantum Informasi, Cambridge University Press, 2000.

Senin, 07 Desember 2015

Pengantar Quantum Computation | Pengoperasian data qubit

DISUSUN OLEH :
Nama : Rama Wicaksana
NIM  : 11510030
Kampus : STTC (Sekolah Tinggi Teknik Cendekia)


      Qubit merupakan kuantum bit, mitra dalam komputasi kuantum dengan digit biner atau bit dari komputasi klasik sama seperti unit dasar informasi dalam komputer klasik. Qubit adalah unit dasar informasi dalam komputer kuantum .
      Dalam komputer kuantum, sejumlah partikel elemental seperti elektron atau proton 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 dimana 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 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

Pengantar Komputasi Cloud | NoSQL Database

DISUSUN OLEH :
Nama : Rama Wicaksana
NIM  : 11510030
Kampus : STTC (Sekolah Tinggi Teknik Cendekia)



DEFINISI: Next Generation Database sebagian besar menangani beberapa poin: menjadi non-relasional, didistribusikan, open-source dan horizontal scalable.
Niat asli telah database web-skala modern. Gerakan ini dimulai awal 2009 dan berkembang pesat. Seringkali karakteristik yang lebih berlaku seperti: skema-bebas, dukungan replikasi mudah, API sederhana, akhirnya konsisten / DASAR (tidak ACID), sejumlah besar data dan banyak lagi. Jadi istilah menyesatkan "NoSQL" (masyarakat sekarang menerjemahkannya sebagian besar dengan "tidak hanya sql") harus dilihat sebagai alias untuk sesuatu seperti definisi di atas. [berdasarkan 7 sumber, 15 email umpan balik yang konstruktif (terima kasih!) dan 1 tidak menyukai komentar. Setuju tidak setuju? Beritahu saya begitu! By the way: ini adalah definisi yang kuat dan itu adalah di luar sana sini sejak 2009]!

NoSQL
     "Penyimpanan Structured" beralih ke halaman ini. Untuk teknologi Microsoft juga dikenal sebagai penyimpanan terstruktur, lihat COM Storage Terstruktur.
Sebuah NoSQL (awalnya merujuk pada "non SQL" atau "non relasional") database menyediakan mekanisme untuk penyimpanan dan pengambilan data yang dimodelkan dalam cara lain selain hubungan tabel yang digunakan dalam database relasional. Database tersebut telah ada sejak akhir 1960-an, tetapi tidak mendapatkan "NoSQL" moniker sampai gelombang popularitas di awal abad kedua puluh satu, dipicu oleh kebutuhan Web 2.0 perusahaan seperti Facebook, Google dan Amazon. com. 

     Motivasi untuk pendekatan ini meliputi: kesederhanaan desain, sederhana "horisontal" skala untuk kelompok mesin, yang merupakan masalah untuk database relasional, [2] dan halus kontrol atas ketersediaan. Struktur data yang digunakan oleh database NoSQL (misalnya kunci-nilai, grafik, atau dokumen) sedikit berbeda dari yang digunakan secara default dalam database relasional, membuat beberapa operasi lebih cepat di NoSQL dan lain-lain lebih cepat dalam database relasional. Kesesuaian tertentu database NoSQL diberikan tergantung pada masalah itu harus dipecahkan. Kadang-kadang struktur data yang digunakan oleh database NoSQL juga dipandang sebagai "lebih fleksibel" dari tabel database relasional.

     Database NoSQL semakin digunakan dalam data yang besar dan aplikasi web real-time. sistem NoSQL juga kadang-kadang disebut "Bukan hanya SQL" untuk menekankan bahwa mereka dapat mendukung bahasa SQL seperti query. 
Banyak toko NoSQL berkompromi konsistensi (dalam arti teorema CAP) dalam mendukung ketersediaan, toleransi partisi, dan kecepatan. Hambatan untuk adopsi yang lebih besar dari toko NoSQL termasuk penggunaan bahasa query tingkat rendah (bukan SQL, misalnya kurangnya kemampuan untuk melakukan ad-hoc BERGABUNG di seluruh tabel), kurangnya interface standar, dan investasi sebelumnya besar dalam relasional yang ada database [10] Kebanyakan NoSQL toko kekurangan. transaksi ACID benar, meskipun sistem baru beberapa, seperti Faircom c-treeACE, Google Spanner (meskipun secara teknis database NewSQL), FoundationDB, Symas LMDB dan OrientDB telah membuat mereka pusat desain mereka. (Lihat ACID dan BERGABUNG Dukungan.) Sebaliknya mereka menawarkan konsep "konsistensi akhirnya" di mana perubahan database yang disebarkan ke semua node "akhirnya" (biasanya dalam milidetik) sehingga permintaan untuk data mungkin tidak kembali data yang diperbarui segera.

     Tidak semua sistem NoSQL hidup sampai yang dijanjikan "konsistensi akhirnya" dan toleransi partisi, tapi dalam percobaan dengan jaringan partisi sering dipamerkan menulis hilang dan bentuk lain dari kehilangan data. Untungnya, beberapa sistem NoSQL menyediakan konsep-konsep seperti Write-depan penebangan untuk menghindari kehilangan data. database relasional sekarang juga "tidak mengizinkan batasan integritas referensial span database" juga.

SEJARAH
     Istilah NoSQL digunakan oleh Carlo Strozzi pada tahun 1998 untuk nama ringan, Strozzi NoSQL open-source database relasional bahwa tidak mengekspos antarmuka SQL standar, tapi masih relasional. Nya NoSQL RDBMS berbeda dari sekitar-2009 secara umum Konsep database NoSQL. Strozzi menunjukkan bahwa, sebagai gerakan NoSQL saat "berangkat dari model relasional sama sekali, melainkan harus oleh karena itu telah dipanggil lebih tepat 'NOREL'", mengacu pada 'Tidak ada Relational'.

     Johan Oskarsson dari Last.fm memperkenalkan kembali istilah NoSQL pada awal 2009 ketika ia menyelenggarakan sebuah acara untuk membahas "open source didistribusikan, database non relasional". Nama berusaha untuk label munculnya peningkatan jumlah non-relasional, didistribusikan menyimpan data, termasuk klon open source dari Google Bigtable / MapReduce dan Amazon Dynamo. Sebagian besar sistem NoSQL awal tidak berusaha untuk memberikan atomicity, konsistensi, isolasi dan daya tahan jaminan, bertentangan dengan praktik yang berlaku di antara sistem database relasional. Pada Juli 2015, database NoSQL paling populer adalah MongoDB, Apache Cassandra, Redis, Solr, ElasticSearch, HBase, Splunk, memcached, dan Neo4j. 

Jenis dan contoh database NoSQL 
     Ada berbagai pendekatan untuk mengklasifikasikan database NoSQL, masing-masing dengan kategori yang berbeda dan subkategori, beberapa di antaranya tumpang tindih. Sebuah klasifikasi dasar berdasarkan model data, dengan contoh-contoh:
  • Column: Accumulo, Cassandra, Druid, HBase, Vertica
  • Document: Clusterpoint, Apache CouchDB, Couchbase, DocumentDB, HyperDex, Lotus Notes, MarkLogic, MongoDB, OrientDB, Qizx
  • Key-value: CouchDB, Oracle NoSQL Database, Dynamo, FoundationDB, HyperDex, MemcacheDB, Redis, Riak, FairCom c-treeACE, Aerospike, OrientDB, MUMPS
  • Graph: Allegro, Neo4J, InfiniteGraph, OrientDB, Virtuoso, Stardog
  • Multi-model: OrientDB, FoundationDB, ArangoDB, Alchemy Database, CortexDB

PENJELASANNYA :
  1. Key-value stores, Kunci-nilai/Key-value (KV) toko menggunakan array asosiatif (juga dikenal sebagai peta atau kamus) sebagai model data fundamental mereka. Dalam model ini, data direpresentasikan sebagai kumpulan pasangan kunci-nilai, sehingga setiap tombol mungkin muncul paling banyak sekali dalam koleksi. Model kunci-nilai adalah salah satu model data non-sepele sederhana, dan model data yang lebih kaya sering diimplementasikan di atas itu. Model kunci-nilai dapat diperluas untuk model memerintahkan yang mempertahankan kunci agar leksikografis. Ekstensi ini sangat kuat, dalam hal ini secara efisien dapat memproses rentang kunci. Toko kunci-nilai dapat menggunakan model konsistensi mulai dari konsistensi akhirnya ke serializability. Beberapa dukungan memesan kunci. Beberapa mempertahankan data dalam memori (RAM), sementara yang lain menggunakan solid-state drive atau disk berputar. Contohnya termasuk: Oracle NoSQL Database, Redis, dan dbm.
  2. Document store, Konsep sentral dari toko dokumen adalah gagasan dari "dokumen". Meskipun setiap implementasi database berorientasi dokumen berbeda pada rincian definisi ini, pada umumnya, mereka semua menganggap bahwa dokumen merangkum dan data encode (atau informasi) dalam beberapa format standar atau encoding. Pengkodean digunakan termasuk XML, YAML, dan JSON serta bentuk biner seperti BSON. Dokumen dibahas dalam database melalui kunci unik yang mewakili dokumen itu. Salah satu karakteristik mendefinisikan lain dari database berorientasi dokumen adalah bahwa di samping kunci pencarian yang dilakukan oleh sebuah toko kunci-nilai, database menawarkan API atau query bahasa yang mengambil dokumen berdasarkan isinya, Implementasi yang berbeda menawarkan cara yang berbeda mengatur dan / atau pengelompokan dokumen: - CollectionsTagsNon-visible metadataDirectory hierarchies.
    Dibandingkan dengan database relasional, misalnya, koleksi dapat dianggap analog dengan tabel dan dokumen analog dengan catatan. Tetapi mereka berbeda: setiap record dalam sebuah tabel memiliki urutan yang sama bidang, sementara dokumen dalam koleksi mungkin memiliki bidang yang sama sekali berbeda.

  3. Graph, Jenis database dirancang untuk data yang hubungan baik diwakili sebagai grafik (unsur saling berhubungan dengan jumlah yang belum ditentukan hubungan antara mereka). Jenis data bisa hubungan sosial, jaringan transportasi umum, peta jalan atau topologi jaringan.
  4. Object database, db4oGemStone/S- InterSystems Caché- JADE- NeoDatis ODB- ObjectDatabase++- ObjectDB- Objectivity/DB- ObjectStore- ODABA- Perst- OpenLink Virtuoso- Versant Object Database- ZODB.
  5. Tabular, - Apache Accumulo- BigTable- Apache Hbase- Hypertable- Mnesia- OpenLink Virtuoso.
  6. Tuple store, - Apache River- GigaSpaces- Tarantool- TIBCO ActiveSpaces- OpenLink Virtuoso.
  7. Triple/quad store (RDF) database, - AllegroGraph- Apache JENA (It's a framework, not a database)- MarkLogic- Ontotext-OWLIM- Oracle NoSQL database- SparkleDB- Virtuoso Universal Server- Stardog.
  8. Hosted, - Amazon DynamoDB- Amazon SimpleDB- Datastore on Google Appengine- Clusterpoint database- Cloudant Data Layer (CouchDB)- Freebase- Microsoft Azure Tables - Microsoft Azure DocumentDB - OpenLink Virtuoso.
  9. Multivalue databases, - D3 Pick database- Extensible Storage Engine (ESE/NT)- InfinityDB- InterSystems Caché- Northgate Information Solutions Reality, the original Pick/MV Database- OpenQM- Revelation Software's OpenInsight- Rocket U2.
  10. Multimodel database, - OrientDB- FoundationDB- ArangoDB.

SUMBER :
http://nosql-database.org/
https://en.wikipedia.org/wiki/NoSQL