MongoDB可以应用于各种规模的企业、各个行业以及各类应用程序的开源数据库。作为一个适用于敏捷开发的数据库,MongoDB的数据模式可以随着应用程序的发展而灵活地更新。与此同时,它也为开发人员 提供了传统数据库的功能:二级索引,完整的查询系统以及严格一致性等等。 MongoDB能够使企业更加具有敏捷性和可扩展性,各种规模的企业都可以通过使用MongoDB来创建新的应用,提高与客户之间的工作效率,加快产品上市时间,以及降低企业成本。(摘自MongoDB官网)
为了帮助大家更加系统全面地学习MongoDB知识,特创建MongoDB知识库,集中挑选优质内容(文章、图书、视频)呈现给大家。
引用
唐建法,MongoDB官方大中华区首席架构师,中文社区创始人,曾在美国惠普及联邦快递担任技术负责人和首席架构师等职。
你关注的MongoDB知识库发布了,抢先关注,请戳这里=>>http://lib.csdn.net/base/mongodb
唐建法
CSDN知识库:能否分享一下你的技术成长之路。
唐建法:多年Java开发经验,热衷于开源,从开源软件的受惠者到开源软件的提供者到现在的布道者,开源软件伴随了技术领域的发展之路。
CSDN知识库:Mongodb与传统的关系型数据库有什么区别?最大优势是什么?
唐建法:相比于RDBMS的关系数据模型,MongoDB采用JSON作为其数据模型,非常接近于程序员熟悉的对象模型。MongoDB可以让开发者省掉繁琐的数据库设计过程,显著缩短产品开发周期。对数据库的操作不再需要一个专门的语言,而是通过API调用的方式,为开发者喜闻乐见。
MongoDB从一开始就是一个分布式数据库。其成熟的分片技术允许用户非常容易的扩展到数十亿的数据量并可以支持亿万级的用户。相对来说,RDBMS的扩展性非常受限,即使是有一些分库分表技术也是需要繁琐的运维手段和应用程序支持,并且性能往往不能得到保证。
CSDN知识库:Mongodb是否可以进行复杂的查询操作,在性能上有哪些突出的表现?
唐建法:MongoDB是在功能上最接近传统RDBMS的一个NoSQL数据库。支持绝大部分的复杂查询操作,如使用二级索引进行多个字段匹配,数组内查询,聚合分析,甚至支持强大的MapReduce。在性能上,MongoDB由于使用异步落盘,在并发写入和查询上有非常优越的表现。测试表明在一台20core的服务器上MongoDB可以达到27万的混合读写操作,并且95 percentile的操作都在10毫秒之内返回。
CSDN知识库:Mongodb的分片策略有哪些,不同的分片策略会产生怎样的影响?
唐建法:MongoDB分片策略有3种: 哈希,范围和标签。哈希对数据分布支持较好,适合写入压力大,读压力小的场景。范围分片比较适合range query,一次性查询一个连续区段数据的场景。而标签则在理解数据分布的基础上,自己来定制数据的分布规则。MongoDB的片键一旦设定不能修改。修改片键则需要把数据全量导出再导入到新的集群内。
CSDN知识库:Mongodb是如何存储文件(图片,视频和音频),如何提高读写文件的性能?
唐建法:对于小型二进制文件(如头像或者几个MB的PDF之类),可以直接按二进制字段存入JSON(BSON)文档内。MongoDB另外提供GridFS API,可以用来管理较大的二进制文件。GridFS API会自动对大文件进行切块存储,并在读回时自动封装为源文件,减少程序的代码量。如果需要快速的文件读写性能,MongoDB一般建议:
为数据盘和Journal日志盘使用单独的物理卷
有可能的情况下使用SSD
使用本机直挂的存储(DAS)
使用RAID来提高存储系统的IOPS
CSDN知识库:Mongodb是如何做到应对高并发高可用和数据负载均衡的呢?
唐建法:MongoDB使用分片集群来应对高并发,使用复制集技术来提供高可用,并提供路由节点mongos来对数据和请求进行负载均衡。在MongoDB架构里面没有单点故障的存在。所有的数据节点或者配置节点均为3节点以上高可用部署。MongoDB的复制技术支持各种拓扑,甚至多中心的容灾部署也可以简单搭建。路由节点为无状态节点,可以根据系统压力随时增加或者减少路由节点的数量(一般至少要2个)。
CSDN知识库:可以分享一两个国内在使用Mongodb的公司企业吗?他们的使用场景及访问量数量级?
唐建法:在百度云项目, MongoDB用来存储文件的元数据信息(文件名,大小,访问时间,路径等等)。百度云项目有3亿多用户,MongoDB文档条目数量超过2000亿,数据总量超过2PB。百度有100多个MongoDB项目,运行在上千个节点的MongoDB集群上。
东方航空正在他们最关键的新一代机票搜索项目中使用MongoDB。根据东航的公开分享,他们MongoDB数据库总条数有数十亿,每天写入2600万次,查询4500万次,80%的查询低于50ms,CPU利用率小于30%,这些仅仅只是由一套3节点的复制集来提供。
CSDN知识库:Mongodb未来的趋势是怎样的,目前还面临着那些挑战?
唐建法: MongoDB官方最近增大了对中国市场的投入。在国际上,顶级的跨国金融机构如花旗,巴克莱,高盛,CapitalOne等都在纷纷大规模采用MongoDB作为他们新一代数据库平台的标准。他们共同的目的就是降低IT成本的同时,提高团队的开发效率,缩短产品从概念到市场的时间,快速展现业务价值,通过改善客户的体验来提高竞争力。
目前面临的主要挑战就是国内对MongoDB的认知程度不够,以至于大部分时候都是使用在非关键型应用场景。
CSDN知识库:关于技术学习您有什么心得?我们上线了知识库系统化学习的方法,您会怎样用?
唐建法:如果想使用好MongoDB,首要的关键是要抛弃固有的关系型数据库的思维模式。忘掉关系型,从业务的角度出发来考虑对数据库能力的需求。在知识库方面,希望能够多提供些结合MongoDB做应用开发的文章和经验,相比于分享运维知识可能更加有学习价值。
摘自:http://www.iteye.com/news/31925
分享到:
相关推荐
NoSQLBooster for MongoDB是一款强大的管理工具,专为优化MongoDB操作而设计,其前身为Mongobooster,是开发人员和数据库管理员进行高效数据库管理和维护的理想选择。 NoSQLBooster提供了一系列功能,旨在提升...
2. **分布式架构**:MongoDB支持横向扩展,通过分片和复制集实现高可用性和水平扩展,可以轻松应对大数据量的挑战。 3. **高性能**:MongoDB采用内存映射技术,将数据存储在内存中,读写速度非常快,尤其适合实时...
* 不支持JOIN操作:MongoDB 不支持JOIN操作,需要使用多个查询来实现JOIN操作。 * 数据一致性问题:MongoDB 的分布式架构可能会导致数据不一致的问题。 MongoDB 是一个功能强大且高性能的 NoSQL数据库,广泛应用于...
内容概要:本文档介绍了MongoDB这款流行的非关系型数据库的基本操作,涵盖了启动和连接MongoDB、数据库操作(创建、查看、删除)、集合操作(创建、查看、删除)、文档操作(插入、查询、更新、删除)等内容。...
MongoDB 安装与基本操作 MongoDB 是一款流行的 NoSQL 数据库,广泛应用于大数据和实时 Web 应用程序。在本实验中,我们将学习如何在 Windows 和 Linux 环境下安装 MongoDB,并了解 MongoDB 的基本操作。 一、...
MongoDB 是一种流行的开源、分布式、面向文档的数据库系统,属于 NoSQL 数据库类型。NoSQL(Not Only SQL)指的是非关系型数据库,它不采用传统的关系型数据库模型,而是提供了一种更灵活的方式来存储和处理数据。在...
教程名称:NoSQL数据库之MongoDB视频讲解(17集附源码)课程目录:【】MongoDB - 1【视频讲解】【】NoSQL数据库之MongoDB - 11【】NoSQL数据库之MongoDB - 16【】NoSQL数据库之MongoDB - 5【】NoSQL数据库之MongoDB-...
2. 分布式架构:MongoDB支持横向扩展,通过在多台服务器上复制数据并分散负载,可以轻松处理高并发访问和大数据量。 3. 弹性存储:MongoDB采用自动分片(sharding)技术,可以根据数据量动态分配资源,实现数据的...
NoSQL Manager for MongoDB Pro免费版加注册机 MongoDB 可视化工具压缩包内附注册机
7. 高效读写:MongoDB提供了原子操作和高性能的读写能力,适合实时数据处理。 8. MapReduce:MongoDB内置MapReduce功能,用于执行复杂的聚合操作,进行大数据分析。 9. GridFS:MongoDB的GridFS接口可以用来存储和...
3. 大数据处理:MongoDB 可以用于处理大规模的数据,包括数据存储、处理和分析等。 MongoDB 是一种功能强大且灵活的数据库系统,广泛应用于互联网应用和移动应用领域。掌握 MongoDB 的安装、配置、命令基础和性能...
Big Data, MongoDB not only enables the user in understanding the buzz words “Big Data” and “NoSQL”, it also delves in understanding one of the popular document-based NoSQL databases “MongoDB”....
NoSQLBooster for MongoDB v4.7.5可用注册码,注意:一定要设置host
标题中的"Mac OS版 NosqlBooster MongoDB可视化工具"指的是适用于苹果操作系统Mac OS的NosqlBooster 4 MongoDB工具,它为MongoDB提供了一个直观的图形用户界面(GUI),使数据库的日常管理和开发工作更加便捷。...
MongoDB是一种流行的开源、分布式NoSQL数据库系统,以其灵活性、高性能和易用性而闻名。在本主题中,我们将深入探讨MongoDB的安装过程以及如何使用NoSQL Manager工具进行管理。 首先,让我们了解一下NoSQL数据库的...
MongoDB 4.0 客户端工具NosqlBooster是一款专为MongoDB数据库设计的强大图形用户界面(GUI)工具,适用于管理和操作MongoDB数据库。NosqlBooster提供了直观的界面,使得对MongoDB的数据查询、编辑、管理变得更加便捷...
NoSQL Manager for MongoDB是一款专为MongoDB设计的高效管理工具,它为数据库管理员和开发人员提供了一种直观且功能丰富的界面,以进行数据管理、查询优化、备份恢复等操作。 在MongoDB中,数据是以JSON格式的文档...
3. **高性能**:MongoDB优化了读写操作,提供了高性能的数据访问,特别是在处理大量的读写操作时。 4. **高可用性**:通过副本集(Replica Sets)实现,副本集是一组维护相同数据集的MongoDB服务器,可以提供数据的...
3. **高性能**:MongoDB优化了读写操作,提供了高性能的数据访问,特别是在处理大量的读写操作时。 4. **高可用性**:通过副本集(Replica Sets)实现,副本集是一组维护相同数据集的MongoDB服务器,可以提供数据的...