mongodb

复制代码
MONGO优缺点:

1海量查询是mongo更快
2mongo可以存储文件
3mongo不需要定义数据结构:字段个数,字段类型【NoSQL可能更加适合初始化数据还不明确或者未定的项目中。】
4mongo可以通过集合分片实现水平扩展,应用不用关注数据是否被分散到多个机器(sql可以垂直扩展:增加CPU、内存。分库分表)


mongo不支持事务
mongo不支持join
SQL中不允许删除已经被使用的外部数据,mongo没有这种限制

sql的弊端:

1. 扩展困难:由于存在类似Join这样多表查询机制,使得数据库在扩展方面很艰难

2. 读写慢:这种情况主要发生在数据量达到一定规模时由于关系型数据库的系统逻辑非常复杂,使得其非常容易发生死锁等的并发问题,所以导致其读写速度下滑非常严重

为了进行join处理,关系型数据库不得不把数据存储在同一个服务器内,这不利于数据的分散 
复制代码

 https://api.mongodb.com/python/current/api/bson/decimal128.html

要转换为Python的Decimal类型,请使用Decimal128.to_decimal方法

 

MongoClient的第一个参数host还可以直接传MongoDB的连接字符串,以mongodb开头,例如:client = MongoClient('mongodb://localhost:27017/')

pymongo 连接配有副本集的数据库 示例::
mongodb://数据库账户:数据库密码@52.83.139.139:59997,52.83.224.86:59998,52.83.138.55:59999/admin?replicaSet=rs0

 pymongo接口:

插入:insert_one() insert_many()
查找:find_one() find()
更新:update_one() update_many()
删除:delete_one() delete_many()

在mygirlfriend集合中删除以 S 开头的文档数据
myquery = { "hometown": {"$regex": "^S"} }
x = collection.delete_many(myquery)

符号含义示例示例含义
$regex匹配正则{'name': {'$regex': '^M.*'}}name以M开头
$exists属性是否存在{'name': {'$exists': True}}name属性存在
$type类型判断{'age': {'$type': 'int'}}age的类型为int
$mod数字模操作{'age': {'$mod': [5, 0]}}年龄模5余0
$text文本查询{'$text': {'$search': 'Mike'}}text类型的属性中包含Mike字符串
$where高级条件查询{'$where': 'obj.fans_count == obj.follows_count'}自身粉丝数等于关注数

posted on   我和你并没有不同  阅读(216)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示