VIEWS: 28 PAGES: 2 CATEGORY: Internet / Online POSTED ON: 9/26/2011
NoSQL, refers to a non-relational database. With the rise of the Internet web2.0 site, the traditional relational database in dealing with web2.0 site, especially the large scale and high concurrent SNS type of web2.0 pure dynamic website has appeared to be inadequate, exposes a lot of difficult problems to overcome, rather than the relational database is characterized by its own has been very rapid development.
4/5/2011 Summary of NoSQL (1) Summary of NoSQL (2) NoSQL databases are non-relational, and tend to focus on the With data replication, we encounter the problem of consistency problem of scalability. They accomplish this by avoiding shared among the replicas. There is a trade-off between consistency resources. and availability of the database. scalability To achieve scalability, NoSQL databases use sharding (divide the databases, Joins are rarely efficient in NoSQL databases since the data data across different locations). may be split across a number of machines. NoSQL databases often use some data replication, to achieve MapReduce allows us to perform certain types of computation fault tolerance, geographic locality, and denormalization. across sharded datasets. 18 19 A NoSQL taxonomy Text search 1. Key/value stores (Kyoto Cabinet, Redis, Berkeley DB, etc.) 2. Document-based databases (MongoDB, CouchDB, etc. SELECT * b FROM WebPages 3. Column-oriented databases (Cassandra, BigTable, WHERE content LIKE ‘%cats%’; C-store, etc.) 4. Text-search databases (Apache Solr, others) 20 21 Forward indices Inverted indices 22 23 1 4/5/2011 “Full” inverted indices Other text search goals 1. Relevancy ranking 2. Result highlighting 3. Query spell correction 3 Q ll ti 4. Sub-string indexing 5. Term auto-complete … lots more! 24 25 2
"Summary of NoSQL _1_ Summary of NoSQL _2_ A NoSQL taxonomy "