zoukankan      html  css  js  c++  java
  • mongodb快速入门

    1.NoSql:
    定义:Not Only SQL ,本质也是一种数据库的技术,相对于传统数据库技术,它不会遵循一些约束,比如:sql标准、ACID属性,表结构等
    优点:满足对数据库的高并发读写,对海量数据的高效存储和访问,对数据库高扩展性和高可用性,灵活的数据结构,满足数据结构不固定的场景
    缺点:一般不支持事务,实现复杂sql查询比较复杂
    分类: 1.key-value存储:redis/memcache,应用场景:缓存,处理高并发数据访问
    2.列式数据库:Hbase/Cassandra,应用场景:分布式文件系统
    3.文档型数据库:mongbDB,应用场景:web应用,并发能力较强,表结构可变
    4.图结构数据库:infoGrid/Neo4J,应用场景:社交网络,推荐系统,关注构建图谱

    2.MongoDB
    1.定义:是一个开源的基于c++开发的高性能,文档型,无模式的数据库,是nosql数据库中功能最丰富,最像关系型数据库
    2.特性:1.面向集合文档的存储:适合存储Bson(json的扩展)形式的数据库
    2.数据格式不固定,生成环境下修改数据结构可以不影响程序运行
    3.强大的查询语句,面向对象的查询语言,基本覆盖sql语言所有能力
    4.完整的索引支持,支持查询计划
    5.支持复制和自动故障转移
    6.支持二进制数据及大对象(文件)的高效存储
    7.使用分片集群提升系统扩展性
    8.使用内存映射存储引擎,把磁盘IO操作转换成为内存的操作
    3.MongoDB与关系型数据库RDMS对别:
    DB(库) 对应 Database(数据库),Collection(集合)对应Table(表),Document(文档)对应Row/Record(行记录),Field(字段)对应Col(列),Index(索引)对应Index(索引),Embedding & Linkding 对应Join ,Shard对应Partition,Sharding Key 对应 Partition Key
    4.MongoDB使用场景
    MongoDB 的应用已经渗透到各个领域,比如游戏、物流、电商、内容管理、社交、物联网、视频直播等,以下是几个实际的应用案例
    游戏场景,使用 MongoDB 存储游戏用户信息,用户的装备、积分等直接以内嵌文档的形式存储,方便查询、更新
    物流场景,使用 MongoDB 存储订单信息,订单状态在运送过程中会不断更新,以 MongoDB 内嵌数组的形式来存储,一次查询就能将订单所有的变更读取出来。
    社交场景,使用 MongoDB 存储存储用户信息,以及用户发表的朋友圈信息,通过地理位置索引实现附近的人、地点等功能
    物联网场景,使用 MongoDB 存储所有接入的智能设备信息,以及设备汇报的日志信息,并对这些信息进行多维度的分析
    视频直播,使用 MongoDB 存储用户信息、礼物信息等

    不适用场景(事务,数据结构固定):
    对事务有要求:如银行,财务等系统,MongoDB对事务支持较弱,4.0版本才支持事务
    传统的商业智能应用:特定问题的数据分析,多数据实体关联,涉及到复杂的,高度优化的查询方式
    使用sql方便的时候:数据结构相对固定,使用sql进行查询统计更加便利的时候 ,因为mongodb使用Bson形式存储数据,这是他的优点

    3.MongoDB安装
    下载地址https://www.mongodb.com/download-center/community?jmp=docs

    windows:
    1.下载window版本,如mongodb-win32-x86_64-2008plus-ssl-3.4.18-signed.msi
    2.安装mongodb到本地,如D:Program FilesMongoDBServer
    3.新建db及log文件夹,如D:Program FilesMongoDBdatadb D:Program FilesMongoDBdatalog
    4.新建配置文件D:Program FilesMongoDBmongodb.conf,配置如下信息
    systemLog:
    destination: file
    path: D:Program FilesMongoDBdatalogmongod.log
    storage:
    dbPath: D:Program FilesMongoDBdatadb
    net:
    port: 27017
    http:
    RESTInterfaceEnabled: true
    #processManagement:
    # fork: false

    5.安装服务 mongod.exe --config "D:Program FilesMongoDBmongodb.conf" --install
    6.启动服务 net start MongoDB
    7.停止服务 net stop MongoDB
    8.移除服务 mongod.exe --remove

    4.MongoDB使用

    5.MongoDB客户端使用

  • 相关阅读:
    axios+post获取并下载后台返回的二进制流
    vue+ckEditor5
    金额大写转换(改进版)
    vue+axios请求头封装
    移动端h5+vue失焦搜索,ios和android兼容问题
    vue滚动+滑动删除标记(移动端)仿qq/微信
    重置 centos 7 密码
    发现好玩的——github + git 有意思的用法
    github 中使用 issues
    java代理模式与装饰模式
  • 原文地址:https://www.cnblogs.com/lookupthesky/p/10530128.html
Copyright © 2011-2022 走看看