Kursus / Tutorial Crash NoSql [ditutup]


100

Saya telah melihat NoSQL muncul cukup banyak di SO dan saya memiliki pemahaman yang kuat tentang mengapa Anda akan menggunakannya (dari sini, Wikipedia, dll). Ini bisa jadi karena kurangnya definisi konkret dan seragam tentang apa itu (lebih merupakan paradigma daripada implementasi konkret), tetapi saya berjuang untuk memahami bagaimana saya akan merancang sistem yang akan menggunakannya atau bagaimana cara menggunakannya. Saya akan menerapkannya di sistem saya. Saya benar-benar terjebak dalam pola pikir relasional-db yang memikirkan hal-hal dalam hal tabel dan gabungan ...

Bagaimanapun, apakah ada yang tahu kursus / tutorial kilat pada sistem yang akan menggunakannya (semacam "hello world" untuk sistem berbasis NoSQL) atau tutorial yang menggunakan aplikasi "Hello World" berbasis SQL dan mengubahnya menjadi NoSQL (tidak harus dalam kode, tetapi hanya penjelasan tingkat tinggi).


Saya sangat menyukai video ini . Apakah webinar oleh 10Gen. Ini menjelaskan cara mempublikasikan konten dasar dan menambahkan interaksi sosial (tag, komentar, agregasi data) menggunakan MongoDB.
Onema

Jawaban:



53

Pada bentuk paling dasarnya, NoSQL sebenarnya tidak lebih dari cara menyimpan objek menggunakan semacam sistem pasangan kunci / nilai. Saya berasumsi bahwa Anda menggunakan ini sepanjang waktu. Misalnya. di javascript Anda dapat membuat objek bernama foo dan kemudian lakukanfoo['myobj'] = myobj; untuk menyimpan barang di objek.

Semua server NoSQL benar-benar memberi Anda cara untuk menambah / menghapus / query array besar dan masih memungkinkan ketekunan dan toleransi kesalahan. Anda dapat membuat NoSQL di server memori di sekitar 100 baris kode.

Jadi mari kita lakukan dengan cara ini ... di CouchDB Anda menggunakan map / reduce ... jadi mari kita membuat fungsi peta yang sama seperti sedikit kode SQL:

SELECT * FROM users WHERE age > 10

Di CouchDB Anda menyediakan server dengan fungsi JavaScript yang dijalankan terhadap setiap item dalam database ...

function (doc)
{
    if (doc.objType == "users") {
       if (doc.age > 10) {
           emit(doc._id, null)
       }
    }
}

Hanya itu yang benar-benar ada untuk itu ..... itu menjadi jauh lebih kompleks dari sana di ujung server, karena server harus menangani crash, dan beberapa revisi dari objek yang sama, tetapi ini hanya sebuah contoh.


10
Contoh Anda sepertinya tidak efisien dalam DB yang besar. Dapatkah server mengindeks tipe doc atau pintar tentang kunci yang digunakannya dan mengindeks pada kunci? Seperti kunci bisa jadi pengguna1, pengguna2, dll.
Jess

3

Lihat video ini dari DNR TV, melakukan beberapa hal dengan MongoDB . Mungkin bagus untuk perkenalan pertama.



1

y_serial ditulis sebagai modul Python tunggal yang dibaca seperti tutorial kerja dan mencakup banyak tip dan referensi: http://yserial.sourceforge.net/

Ini mengambil perspektif tentang bagaimana mempertahankan objek Python yang berubah-ubah (misalnya struktur data kamus) dengan cara "NoSQL" (Tidak hanya SQL).





Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.