1 / 17

NoSQL - MongoDB

NoSQL - MongoDB. By 乐志炜 陈润泽 曹 璟 毅 何 竺珈 庞涤. What is NoSQL. NoSQL V.S. 关系型数据库 随着 互联网 web2.0 网站的兴起,传统的关系数据库在应付 web2.0 网站,特别是超大规模和高并发的 SNS 类型的 web2.0 纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。. What is NoSQL. Not Only SQL. Why NoSQL. 数据库并发负载高 海量数据存储和访问 数据库数据越来越大 事务管理的负担

Download Presentation

NoSQL - MongoDB

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. NoSQL - MongoDB By 乐志炜 陈润泽 曹璟毅 何竺珈 庞涤

  2. What is NoSQL • NoSQL V.S. 关系型数据库 • 随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。

  3. What is NoSQL • Not Only SQL

  4. Why NoSQL • 数据库并发负载高 • 海量数据存储和访问 • 数据库数据越来越大 • 事务管理的负担 • 关系型数据库读/写实时性的忽略 • 多表关联查询被弱化

  5. Why NoSQL • 去掉关系型特性 • 非常好的读/写性能 • 不需要提前为要存储的数据建立字段 • 高可用性

  6. NoSQL 缺陷 • 但是一些人承认,没有正式的官方支持,万一出了差错会是可怕的,至少很多管理人员是这样看。 • “我们确实需要做一些说服工作,但基本在他们看到我们的第一个原型运行良好之后,我们就能够说服他们,这是条正确的道路。” • 此外,NoSQL并未形成一定标准,各种产品层出不穷,内部混乱,各种项目还需时间来检验。

  7. What is MongoDB • 是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 • 最热门的NoSQL产品,之一 • BSON (Binary Serialized dOcument Notation) {"hello“ : "world"}

  8. What is MongoDB • MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似JSON的BJSON格式,因此可以存储比较复杂的数据类型。 • MongoDB最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。它的特点是高性能、易部署、易使用,存储数据非常方便。

  9. What is MongoDB • 文档(类似于“行”) {“age” : 8} {“age” : “8”} {“age” : 8} {“Age” : 8} {“name” : “zhangsan”, “name” : “lisi”} • 集合(类似“表”) 一组文档。 无模式——文档可以是各种各样的

  10. MongoDB Database • 多个文档组成集合,多个集合组成数据库 • JavaScript shell > x = 200 200 > x / 5; 40

  11. MongoDB Database • JavaScript shell > function factorial (n) { if (n <= 1) return 1; return n * factorial(n - 1); } > factorial (5) 120

  12. MongoDB Database • JavaScript shell > use mydb switched to mydb > db mydb

  13. MongoDB Database • 创建 > post = {“title” : “My Blog Post”, “content” : “Here’s my blog post. ”, “date” : new Date() } { “title” : “My Blog Post”, “content” : “Here’s my blog post. ”, “date” : “Sat Dec 12 2009 11:23:21 GMT-0500 (EST)” } > db.blog.insert(post)

  14. MongoDB Database • 读取 > db.blog.findOne() { “_id” : ObjectId(“4b23c3ca7525f35f94b60a2d”) “title” : “My Blog Post”, “content” : “Here’s my blog post. ”, “date” : “Sat Dec 12 2009 11:23:21 GMT-0500 (EST)” }

  15. MongoDB Database • 更新 > post.comments = [] [ ] >db.blog.update({title : “My Blog Post”}, post) > db.blog.find() { “_id” : ObjectId(“4b23c3ca7525f35f94b60a2d”) “title” : “My Blog Post”, “content” : “Here’s my blog post. ”, “date” : “Sat Dec 12 2009 11:23:21 GMT-0500 (EST)” “comments” : [ ] }

  16. MongoDB Database • 删除 > db.blog.remove({title : “My Blog Post”}) 集合现在又是空的了

  17. Thank You!

More Related