Java 中MongoDB的使用

基础概念

是一个基于分布式文件存储的开源数据库系统 。 再高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoDB 旨在给 WEB 应用提供可扩展的高性能数据存储解决方案

MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。 MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。

支持的数据库非常松散,类似于json的格式叫BSON,所以它即可以存储比较复杂的数据类型,又相当的灵活。最小存储的单位就是文档,文档对象对于关系型数据库的行,数据在MongDB中以(Binary-JSON)文档的格式存储在磁盘上。是一种二进制形式的存储格式,支持内嵌的文档对象和数组对象,但是BSON有JSON没有的一些数据类型,如Date和BinData类型。

除了JSON类型,string,integer,bollean,double,array和object。

优点

  • 面向文档存储 类JSON数据模式简单而强大
  • 动态查询
  • 全索引支持,扩展到内部对象和内嵌数组
  • 查询记录分析
  • 快速地更新
  • 高效存储二进制大对象
  • 复制和故障切换支持

缺点

  • 不支持事务
  • MongoDB占用空间过大
相关推荐
Hacker_LaoYi28 分钟前
【渗透技术总结】SQL手工注入总结
数据库·sql
岁月变迁呀30 分钟前
Redis梳理
数据库·redis·缓存
独行soc30 分钟前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
你的微笑,乱了夏天1 小时前
linux centos 7 安装 mongodb7
数据库·mongodb
工业甲酰苯胺1 小时前
分布式系统架构:服务容错
数据库·架构
独行soc2 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍08-基于时间延迟的SQL注入(Time-Based SQL Injection)
数据库·sql·安全·渗透测试·漏洞挖掘
White_Mountain3 小时前
在Ubuntu中配置mysql,并允许外部访问数据库
数据库·mysql·ubuntu
Code apprenticeship3 小时前
怎么利用Redis实现延时队列?
数据库·redis·缓存
百度智能云技术站3 小时前
广告投放系统成本降低 70%+,基于 Redis 容量型数据库 PegaDB 的方案设计和业务实践
数据库·redis·oracle
装不满的克莱因瓶3 小时前
【Redis经典面试题六】Redis的持久化机制是怎样的?
java·数据库·redis·持久化·aof·rdb