Ovaj puta Dobrica Pavlinušić i Ivan Voras razgovaraju o raznim NoSQL bazama i lamentiraju o tome da li je došao kraj relacijskim bazama.
download mp3
- 0:32-0:35 D: Dobrica Pavlinušić
- 0:48-0:49 I: Ivan Voras
- 0:50-1:07 D: kako je NoSQL različit od RDBMS-ova?
- 1:37-1:41 I: jednostavnija struktura
- 1:55-2:08 D: RDBMS-ove razumijemo
- 2:35-2:40 NoSQL nije magic bullet
- 2:52-2:57 I: SQL
- 3:13-3:17 transakcije
- 3:19-3:20 tipovi podataka
- 3:40-3:42 tablice podataka
- 4:05-4:09 NoSQL je mlad
- 4:37-4:46 D: transakcije u NoSQL bazama
- 5:52-5:57 kako strukturirati podatke?
- 6:25-6:28 ipak trebamo strukturirane podatke
- 6:48-6:54 I: NoSQL = RDBMS - SQL?
- 7:02-7:07 D: two phase commit?
- 7:11-7:14 D: kako objasniti RDBMS?
- 7:29-7:34 document oriented baze je jendostavnije objasniti
- 8:11-8:19 razlika na primjeru bankovnog računa?
- 8:20-8:22 I: RDBMS
- 8:28-8:29 tablica
- 8:30-8:31 stupci
- 8:53-8:57 dva korisnika, dva zapisa u tablici
- 9:25-9:30 transakcija: BEGIN COMMIT
- 9:55-9:57 D: NoSQL
- 10:20-10:23 +100 -100
- 10:41-10:43 računamo trenutno stanje
- 10:44-10:50 I: proći kroz sve transakcije?
- 10:50-10:53 D: zavisno od implementacije
- 10:53-10:54 MongoDB
- 10:55-10:56 CouchDB
- 11:15-11:17 I: razlika u pristupima
- 11:52-11:56 D: u NoSQL bazama nema provjere tipova
- 12:16-12:19 mnogo toga ostavljeno aplikacijama
- 13:59-14:08 D: povijesni pregled
- 14:27-14:29 key-value stores
- 14:51-14:53 I: BerkeleyDB
- 16:43-16:46 gdbm
- 16:47-16:49 ndb
- 16:49-16:50 db
- 16:55-16:55 cdb
- 17:19-17:21 D: on-disk key-value store
- 17:37-17:38 u memoriji
- 17:44-17:50 key-value storovi podloga NoSQL i RDBMS-ovima
- 18:18-18:25 zašto ne staviti sve u memoriju?
- 18:26-18:28 memcached
- 19:22-19:29 cache za SQL upite
- 19:44-19:48 D: izgubili smo konzistentnost podataka
- 20:03-20:09 invalidacija cache-a je težak problem
- 20:45-20:47 I: vidljivo na forumima
- 21:15-21:17 TokyoCabinet
- 21:37-21:44 indeksiranje, n-gram search
- 22:00-22:05 storage engine za MySQL
- 22:21-22:30 svi podaci stanu u memoriju
- 22:30-22:32 redis
- 24:15-24:16 D: document databases
- 24:22-24:23 CouchDB
- 24:27-24:28 MongoDB
- 25:09-25:13 CouchDB baziran na replikaciji
- 25:35-25:39 http, JSON
- 26:40-26:48 CouchDB data corruption bug, ispravljen u 1.0.1
- 26:55-26:57 I: MongoDB
- 26:59-27:00 što brži!
- 29:09-29:14 D: podrška za tipove
- 29:39-29:41 vlastiti client librariji
- 30:19-30:20 map/reduce
- 31:10-31:18 zadnje dijeljene za AVG u aplikaciji!
- 31:34-31:40 I: dio funkcionalnosti iz baze u aplikaciju
- 31:48-31:51 SELECT polje FROM tablica
- 31:54-31:58 SELECT AVG(polje) FROM tablica
- 32:33-32:37 D: dokumenti jedan za drugim na disku
- 33:20-33:24 I: NoSQL se danas koristi
- 34:19-34:25 D: spremanje na disk
- 35:28-35:32 I: primjer računa
- 37:05-37:14 sporiji update
- 37:15-37:21 D: column store kao RDBMS optimizacija
- 37:23-37:26 2005: C-Store
- 37:39-37:42 Google BigTable
- 37:50-37:53 Amazon Dynamo
- 38:03-38:04 Open Source
- 38:07-38:08 Cassandra <- Dynamo
- 38:12-38:16 hBase <- BigTable
- 38:32-38:34 I: BigTable@Google
- 39:52-40:00 D: Amazon shopping cart: Dynamo
- 40:27-40:29 I: eventually consistent
- 40:49-40:53 D: Java?!
- 41:09-41:14 za sve koji nisu Facebook i Google
- 41:16-41:17 groonga
- 41:55-41:56 Sphinx search engine
- 42:38-42:42 full-text search engine sa SQL-om!
- 42:46-42:47 Blackray
- 42:56-42:57 in-memory
- 43:07-43:09 PostgreSQL protokol
- 43:41-43:53 I: tolika skalabilnost ne treba svakome
- 45:03-45:08 document store
- 45:21-45:25 hibridni modeli
- 45:30-45:35 RDBMS + XML
- 45:48-45:52 SQL + XPATH
- 45:55-45:57 PostgreSQL
- 45:58-46:01 D: YEAH!
- 46:04-46:10 I: PostgreSQL - najbolje za 0 kn
- 46:26-46:29 hstore, xml
- 46:29-46:34 hstore: key/value polje
- 47:33-47:39 D: spremanje key/value parova u RDBMS
- 47:47-47:49 PostgreSQL
- 47:51-47:54 MySQL: Friendfeed
- 48:11-48:22 SQL je standardan DSL za upite na podacima
- 48:35-48:37 I: savjet
- 50:02-50:11 D: SQL dobar za ad-hoc upite na bazu
- 51:15-51:20 I: pravi alat za problem
- 52:20-52:24 D: drizzle
- 53:31-53:34 I: odjava
- 53:47-53:48 THE END
- 55:05-55:09 slijedeće teme
- 55:09-55:15 zfs
- 55:59-56:02 usporedba web poslužitelja
- 56:27-56:32 podcast folder
Vrhunska tema!
eto, jutros poslusao vas razgovor a onda mi skroz nevezano frend posalje sljedeci link :)
http://highscalability.com/blog/2010/9/5/hilarious-video-relational-database-vs-nosql-fanbois.html
Odlično! Za CouchDB i Erlang - postoji Erlang nativna baza Mnesia, kompromis između SQL i noSQL pristupa - užasno lagano postavljanje na Erlang sustavu, podržava ram i disk spremanje i raspodijeljivanje. Čini mi se kao bolja opcija za (ne 'cloud scale' ili za prototip) Erlang sustav jer je već ugrađena i upitni jezik je sam Erlang; CouchDB ipak prirodnije leži browseru sa svojim REST/JSON sučeljem + imate dodatnu kompomentu za postavljanje i održavanje.
na žalost sam tek sada uspeo lagano preslušati podkast, sva podrška i nadam se da će uskoro još neka epizoda.
elem... od toliko zanimljivih stvari koje možemo sebi rešiti nosql pristupom, vi ste se uhvatili za transakcije. i to je ok, svi trebaju znati sta ne moze, ali je net pun toga.
na primer moguće ga je koristiti kao self replicating fajl sistem (http://www.abcphp.com/out/using-couchdb-as-filesystem-with-php-gonzalo-ayuso-|-web-architect/)
zatim kao aplication engine gde je couch jedini dependency (http://wiki.github.com/couchapp/couchapp/apps)
ja ga koristim kao bazu za web analytics.
i slika koja je meni puno pomogla da razumem ko je ko u db svetu:
http://blog.nahurst.com/visual-guide-to-nosql-systems