当前位置: 首页 > wzjs >正文

建立网站的链接结构有哪几种形式seo入门基础教程

建立网站的链接结构有哪几种形式,seo入门基础教程,jsp网站seo优化,软文网站外包MongoDB 新手笔记 1. MongoDB 1.1 概述 MongoDB 是一种 文档型数据库(NoSQL),数据以类似 JSON 的 BSON 格式存储,适合处理非结构化或半结构化数据。 对比 MySQL: MySQL 是关系型数据库,数据以表格形式存…

MongoDB 新手笔记


1. MongoDB

1.1 概述

MongoDB 是一种 文档型数据库(NoSQL),数据以类似 JSON 的 BSON 格式存储,适合处理非结构化或半结构化数据。

  • 对比 MySQL
    • MySQL 是关系型数据库,数据以表格形式存储(行和列)。
    • MongoDB 以集合(Collection)和文档(Document)形式存储数据,更灵活。

1.2 特点

  • 灵活模式:字段可动态添加,无需预定义表结构。
  • 高性能:支持索引、内存映射文件,读写速度快。
  • 水平扩展:通过分片(Sharding)实现数据分布式存储。

1.3 体系结构

  • 数据库(Database) → 类似 MySQL 的数据库。
  • 集合(Collection) → 类似 MySQL 的表。
  • 文档(Document) → 类似 MySQL 的一行记录,但以 BSON 格式存储。

2. 安装与启动

2.1 安装

从官网下载安装包,按操作系统步骤安装。

  • Linux 示例

    sudo apt-get install mongodb
    

2.2 启动

2.2.1 创建数据目录
mkdir -p /data/db  # 默认数据存储路径
2.2.2 编写启动脚本
mongod --dbpath=/data/db  # 启动 MongoDB 服务

2.3 连接

使用 MongoDB Shell 连接:

mongo  # 默认连接本地服务

3. 基本操作

3.1 选择或创建数据库

use mydb  // 切换到 mydb,若不存在则自动创建

3.2 新增

向集合插入文档(类似 MySQL 的 INSERT):(对当前数据库操作统一使用db,而不是当前的数据库名)

db.users.insertOne({ name: "张三", age: 25 })  // 插入单条
db.users.insertMany([{ name: "李四" }, { name: "王五" }])  // 插入多条

3.3 查询

3.3.1 查询全部文档(类似 SELECT *)
db.users.find()  
3.3.2 条件查询(类似 WHERE)
db.users.find({ age: 25 })  // 查询 age=25 的文档
3.3.3 查询第一条(类似 LIMIT 1)
db.users.findOne()  

3.4 更新(类似 UPDATE)

db.users.updateOne({ name: "张三" },  // 条件{ $set: { age: 30 } }  // 更新操作
)

3.5 删除

3.5.1 删除文档(类似 DELETE)
db.users.deleteOne({ name: "张三" })  
3.5.2 删除集合(类似 DROP TABLE)
db.users.drop()  
3.5.3 删除数据库
db.dropDatabase()  

4. 高级查询

4.1 准备数据

db.products.insertMany([{ name: "手机", price: 3000, stock: 100 },{ name: "电脑", price: 8000, stock: null },{ name: "耳机", price: 200 }
])

4.2 模糊查询(类似 LIKE)

db.products.find({ name: // })  // 正则表达式匹配

4.3 null 值处理

db.products.find({ stock: null })  // 查询 stock 为 null 或不存在

4.4 比较运算(如 >, <)

db.products.find({ price: { $gt: 2000 } })  // price > 2000

4.5 判断属性是否存在

db.products.find({ stock: { $exists: true } })  // 查询包含 stock 字段的文档

4.6 包含与不包含(类似 IN)

db.products.find({ name: { $in: ["手机", "耳机"] } })  // 包含指定值

4.7 统计记录数(类似 COUNT)

db.products.countDocuments({ price: { $gt: 2000 } })

4.8 条件连接(AND/OR)

db.products.find({$and: [{ price: { $gt: 1000 } },{ price: { $lt: 5000 } }]
})
// g:great
// l:less

总结

  1. MongoDB vs MySQL
    • 数据模型:文档 vs 表格。
    • 查询语法:JSON 式操作 vs SQL 语句。
    • 扩展性:水平扩展 vs 垂直扩展。
  2. 核心操作
    • 增删改查通过 insertdeleteupdatefind 实现。
    • 高级查询支持正则、比较运算符、逻辑连接等。
  3. 适用场景
    • MongoDB:大数据量、高并发、灵活模式需求。
    • MySQL:事务强一致性、复杂关联查询。
对比项MongoDBMySQL
数据库类型文档型数据库(NoSQL)关系型数据库(SQL)
数据模型以 BSON(类似 JSON)格式存储文档以表格(行和列)形式存储数据
术语对比
- 数据库DatabaseDatabase
- 表/集合CollectionTable
- 行Document(文档,BSON 格式)Row(行)
- 列Field(字段)Column(列)
- 主键_id(自动生成,可自定义)PRIMARY KEY(需显式定义)
查询语法
- 查询数据db.collection.find({条件})SELECT * FROM table WHERE 条件
- 插入数据db.collection.insertOne({文档})INSERT INTO table (列) VALUES (值)
- 更新数据db.collection.updateOne({条件}, {$set: {字段: 值}})UPDATE table SET 列=值 WHERE 条件
- 删除数据db.collection.deleteOne({条件})DELETE FROM table WHERE 条件
- 条件查询{ age: { $gt: 20 } }(使用操作符如 $gt, $ltWHERE age > 20
- 模糊查询db.collection.find({ name: /正则表达式/ })WHERE name LIKE '%关键字%'
事务支持4.0+ 版本支持多文档事务(默认需手动配置)原生支持 ACID 事务(如 BEGIN; COMMIT; ROLLBACK;
关联查询不支持 JOIN,需通过嵌入文档或应用层代码实现支持 JOIN(如 INNER JOIN, LEFT JOIN
索引机制支持单字段、复合、地理空间、文本索引等支持 B-Tree、哈希、全文索引等
扩展性水平扩展(分片集群)垂直扩展(提升硬件性能)
数据模式动态模式(Schema-less),字段可灵活增减静态模式(Schema),需预先定义表结构
性能特点适合高并发读写、海量非结构化数据适合复杂查询、事务密集型场景
存储引擎WiredTiger(默认,支持压缩和加密)InnoDB(默认,支持事务和行级锁)
适用场景日志系统、实时分析、内容管理、物联网(IoT)金融系统、ERP、CRM 等需要强一致性和复杂事务的场景
典型操作符对比
- 等于{ age: 25 }WHERE age = 25
- 包含{ tags: { $in: ["A", "B"] } }WHERE tag IN ("A", "B")
- 逻辑与/或$and: [条件1, 条件2] / $or: [条件1, 条件2]WHERE 条件1 AND 条件2 / WHERE 条件1 OR 条件2
- 统计记录数db.collection.countDocuments({条件})SELECT COUNT(*) FROM table WHERE 条件
数据一致性最终一致性(分布式场景)强一致性(单机或主从复制)
典型缺点不支持复杂关联查询,事务实现较复杂扩展性受限,处理非结构化数据效率低

总结

  1. 术语差异:MongoDB 的“文档”对应 MySQL 的“行”,“集合”对应“表”,“字段”对应“列”。
  2. 语法差异
    • MongoDB 使用 JSON 风格的查询语法(如 find({条件})),而 MySQL 使用标准 SQL 语句。
    • MongoDB 通过操作符(如 $gt, $in)实现复杂条件,MySQL 直接使用运算符(如 >, IN)。
  3. 核心特性
    • MongoDB 灵活、易扩展,适合非结构化数据;
    • MySQL 强事务、强一致性,适合结构化数据和复杂查询。
  4. 选择建议
    • 用 MongoDB:需要快速迭代、处理海量数据或半结构化数据(如日志、用户行为)。
    • 用 MySQL:需要强事务支持、复杂关联查询(如金融系统)。

重点口诀:灵活用 Mongo,事务用 MySQL;文档即 JSON,查询靠 BSON!

http://www.dtcms.com/wzjs/243013.html

相关文章:

  • 做电影网站投资多少钱网站维护的主要内容
  • 做盗版网站 国外服务器吗北京seo招聘
  • 织梦网站在css中怎样做导航栏谷歌浏览器下载手机版app
  • 微信电影小程序搭建上海优化网站方法
  • 哪个网站建站好500平台seo营销课程培训
  • 汕头中英文网站推广上海关键词排名软件
  • wordpress影院哈尔滨企业网站seo
  • 企业展示网站 数据库设计百度客服怎么联系
  • 厦门做网站哪家好seo优化与推广招聘
  • 高唐做网站建设公司windows优化大师官网
  • 在哪个网站做简历比较好网站seo案例
  • 站内优化怎么做什么是市场营销
  • 做翻译 网站吗培训网站搭建
  • 网站模板素材怎么用深圳今日重大新闻
  • 淮安做网站建设的网络公司网络营销渠道策略有哪些
  • 建筑人才网助理工程师站长工具seo综合查询论坛
  • 网站做成app客户端网上推广赚钱项目
  • 网站做代码图像显示不出来青岛谷歌优化公司
  • 西安官网seo昆明网站seo公司
  • 深圳网站建设在哪里找网络推广计划书
  • => wordpress 翻译 不显示赣州seo唐三
  • 网站做板块地图的办法网站页面禁止访问
  • 电子 东莞网站建设seo优化的主要任务
  • 把网站做成静态页面黄冈网站推广软件视频下载
  • 风中有朵雨做的云电影网站seo怎么优化效果更好
  • 东营做网站排名制作自己的网页
  • 东莞做网站的公司有哪些网店推广运营
  • 深圳做响应式网站百度站长工具网站
  • soho外贸网站建设企业网站推广模式
  • 政府网站建设8大要求网络营销策划模板