博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[翻译]MongoDb 架构(MongoDb Architecture)
阅读量:6840 次
发布时间:2019-06-26

本文共 1350 字,大约阅读时间需要 4 分钟。

hot3.png

转自:

NOSQL最近成为了一个炙手可热的话题(作者发表在2012年,话说对于现在来说,NOSQL已经如火如荼了)。大规模架构的web服务开发中对于高扩展性和半结构化数据的要求推动着数据库往NOSQL方向转变。最近几年已经有了不少NOSQL数据库解决方案。我在过去的blog中(不是我的blog,),同时也介绍了一些挺好的产品,比如CouchDB和CassanDra/HBase。

上周五,我非常幸运的在一个技术会议上见到了10gen的Jared Rosoff。我们俩对于MongoDB的技术架构做了一些探讨,我觉得我们聊得东西挺有价值的,所以在这里贴出来分享给大家。

首先MongoDb的易用性和底层架构的易懂性让我非常吃惊。下面是一些简单的管理命令--开启和关闭MongoDb server。

  1. #安装MongoDB
  2. mkdir /data/lib
  3. #开启 server
  4. .../bin/mongod #这个时候数据就存储在了/data/db那
  5. #开启命令行shell
  6. ..../bin/mongo
  7. >show dbs
  8. >show collections
  9. #删除collection(删除表)
  10. >db.person.drop()
  11. #通过命令行shell关闭mongod server
  12. >use admin
  13. >db.shutdownServer()

译者注:其实启动mongod可以用 -f conf.txt这种模式启动,启动的参数放到conf.txt中比如

 
#配置启动参数conf.txt dbpath=....my_work_space/mongodb01/dbs logpath=...my_work_space/mongodb01/logs/mongod.log bind_ip=127.0.0.1 directoryperdb=true port=10001 mongodb01/bin/mongod -f conf.txt

相对于关系型数据库的主要不同点

mongodb相对于关系型数据库的主要不同点如下:

  • 不同与关系型数据库的数据扁平化数据格式(2维的数据格式),mongodb的表(collection)是可以嵌套的,是多维的。也就是说mongodb的表里面可以嵌套子表、数组、哈希表等。
  • 不同于关系型数据库中存储在表中的数据必须是全部格式统一,mongodb的collection可以插入任意格式的数据。
  • mongodb查询没有join操作。鼓励不墨守成规的组织数据,保持数据一致性的重任交给了程序员。
  • mongodb没有事物(transaction)这一说。原子性只保持在了document(可以理解为一行)级别。也就是说不可能出现更新一行的时候更新不完整的情况。
  • mongodb没有隔离(isolation),client端读取的任何数据都有可能已经被并行的client修改过了。

通过去除掉这些传统关系型数据库支持的特性后,mongodb可以更轻量级、更灵活的完成大数据处理。

查询处理

mongodb属于一种面向文档的数据库。在查询处理模块中,数据被组织成了JSON文档,nd()

 

转载于:https://my.oschina.net/fffddgx/blog/395378

你可能感兴趣的文章
html备份
查看>>
阿里曾鸣:全球最值钱的互联网公司都做对了什么?
查看>>
千万不要嫁给程序猿,我是认真的
查看>>
刚拿百度offer回来,分享一份刚出炉的百度Java面试真题详解
查看>>
C语言之基本运算及自动类型转换和强制类型转换
查看>>
docker私有仓库管理系统harbor的部署使用
查看>>
centos 编译安装gcc8.1
查看>>
ICS Protocol Dissection
查看>>
Linux的DHCP服务配置
查看>>
我的友情链接
查看>>
【挨踢人物传】李晨光:兴趣铸就专业,努力决定成败
查看>>
横向ListView
查看>>
mysql主从同步操作
查看>>
隐藏自己的进程
查看>>
全国省市数据
查看>>
判断文件夹大小并复制到另一个地方
查看>>
CISCO 路由器 HWIC-4ESW 配置案例
查看>>
1 张图秒懂 Nova 16 种操作 - 每天5分钟玩转 OpenStack(44)
查看>>
hostPath Volume - 每天5分钟玩转 Docker 容器技术(148)
查看>>
Liunx 终端 bash 提示符 修改 DIY
查看>>