MongDB

作者: 建国同学 | 来源:发表于2020-06-08 20:03 被阅读0次

一、简介

  • 非关系型数据库(nosql数据库)中的文档型关系数据库
    以bson(升级版json格式)结构存储数据

  • 非关系型数据库特点
    1.数据模型比较简单.(主要)
    2.需要灵活性更强的应用系统
    3.对数据库性能要求较高(主要)
    4.不需要高度的数据一致性(主要)
    5.对于给定key,比较容易映射复杂值的环境.

  • mongodb特点
    1:JSON结构和对象模型接近,开发代码量少
    2:JSON动态模型意味着更容易响应新的业务需求
    3:复制集提供了 99.999%高可用
    4:分片架构支持海量数据无缝扩容

  • 每个文档大小不能超过16MB

二、 MongoDB范式化与反范式化

  • 范式化:将数据分散到多个不同的集合,不同集合之间可以相互引用数据。如果要修改数据,只需修改保存这块数据的文档就行。但是MongoDB没有连接(join)工具,所以在不同集合之间执行连接查询需要进行多次查询。

  • 反范式化:将每个文档所需的数据都嵌入在文档内部。每个文档都有自己的数据副本,而不是所有文档共同引用一个数据副本。但是如果数据发生变化,那么所有相关文档都需要进行更新。

  • 范式化能够提高数据写入速度,反范式化能够提高数据读取速度。

三、Spring Data

Spring Data方法命名规范

关键字 例子 JPQL
And findByNameAndAge(String name, Integer age) where name = ? and age = ?
Or findByNameOrAge(String name, Integer age) where name = ? or age = ?
Is findByName(String name) where name = ?
Between findByAgeBetween(Integer min, Integer max) where age between ? and ?
LessThan findByAgeLessThan(Integer age) where age < ?
LessThanEqual findByAgeLessThanEqual(Integer age) where age <= ?
GreaterThan findByAgeGreaterThan(Integer age) where age > ?
GreaterThanEqual findByAgeGreaterThanEqual(Integer age) where age >= ?
After 等同于GreaterThan
Before 等同于LessThan
IsNull findByNameIsNull() where name is null
IsNotNull findByNameIsNotNull() where name is not null
Like findByNameLike(String name) where name like ?
NotLike findByNameNotLike(String name) where name not like ?
StartingWith findByNameStartingWith(String name) where name like '?%'
EndingWith findByNameEndingWith(String name) where name like '%?'
Containing findByNameContaining(String name) where name like '%?%'
OrderByXx[desc] findByIdOrderByXx[Desc] (Long id) where id = ? order by Xx [desc]
Not findByNameNot(String name) where name != ?
In findByIdIn(List<Long> ids) where id in ( ... )
NotIn findByIdNotIn(List<Long> ids) where id not in ( ... )
True findByXxTrue() where Xx = true
False findByXxFalse() where Xx = false
IgnoreCase findByNameIgnoreCase(String name) where name = ? (忽略大小写)

四、spring data jpa

https://www.cnblogs.com/chenglc/p/11226693.html

相关文章

  • PHP7之Mongodb的开发详解

    1.mongdb的连接 2.mongdb的添加 3.mongdb的删除 4.mongdb的修改 5.mongdb的...

  • 2019-04-15 mongdb和mysql的区别 mongd

    mongdb 和 mysql的应用场景,为什么mongdb有哪些优势mongb优点:mongdb 适合于热数据的读...

  • 数据库资源

    oracle mysql mongdb

  • MongoDB

    mongodb和python交互 1.mongdb和python交互的模块: pymongo提供了mongdb和p...

  • 【mongDB】mongDB高手课

    OLTP与OLAP的关系是什么? https://www.zhihu.com/question/24110442/...

  • mongodb——1

    1.Mongdb (1)MAC 启动 $ mongdb(2)Linux 启动 (2)使用 1.查看数据库$ sho...

  • MongDB

    MongoDB 是一款开源的文档数据库,并且是业内领先的 NoSQL 数据库,用 C++ 编写而成。MongoDB...

  • MongDB

    一、简介 非关系型数据库(nosql数据库)中的文档型关系数据库以bson(升级版json格式)结构存储数据 非关...

  • 【mongDB】mongDB的复制集

  • The First Use Mongodb

    习惯使用rails + mysql 后突然想要换成mongdb突然发现新建一个mongdb项目无从下手。看完Mon...

网友评论

      本文标题:MongDB

      本文链接:https://www.haomeiwen.com/subject/dlnozhtx.html