mongoDB 數據庫簡介

背景概念-數據庫類型

對比關係型數據庫

優勢 :

  • 邏輯清晰.容易理解,結構相似表格
  • 使用 sql 語句技術成熟,使用方便
  • 數據一致性好,完整性好
  • 關係型數據庫比較成熟,能夠使用一些複雜操做

缺點 :

  關鍵詞: 慢 mysql

  • 每次操做須要解析 sql 語句
  • 內部加鎖,影響效率
  • 不能很好處理海量高併發需求
  • 讀寫能力差

非關係型數據庫

NoSql ---> Not only sql linux

常見數據庫:

  • 鍵值型數據庫: Redis(散列表)
  • 列存儲數據庫: HBase
  • 文檔型數據庫: MongoDB, CouchDB
  • 圖形數據庫: Graph

優勢

  • 讀寫速度快,更好的應對處理需求
  • 靈活多樣,容易擴展

缺點

  • 沒有統一的語句操做
  • 技術成熟度較差,缺乏複雜操做

使用場景

對數據格式一致性要求不嚴格
較強的擴展須要數據庫作緩存時sql

MongoDB 數據庫

特性

  • 非關係型數據庫的文檔型整理庫
  • 開源數據庫,使用普遍,更新較快
  • 由C++ 編寫
  • 支持豐富的存儲類型和數據操做
  • 有衆多的編程語言提供接口
  • 方便擴展和部署,使用方便

安裝

Liunx :

sudo apt-get install mongodb

windows :

www.mangodb.com ----> try free ---> Server ---> 選版本下載

Mac OS :

brew install mongodb

安裝目錄

linux :

自動安裝位置 : /var/lib/mangodb
配置文件: /etc/mangodb.conf
命令集: /usr/bin

命令

mongod 配置基本信息mongodb

經常使用參數,其餘不經常使用的在 -h 裏面本身查吧shell

-h / help 查看幫助
--dbpath 設置數據庫存儲位置
--port 設置端口,默認 27017

mongo 進入moongo shell 界面數據庫

quit() / ctrl+c 退出

數據結構

組成:

鍵值對----> 文檔-----> 集合-----> 數據庫編程

概念對比

------------------------------------
| mysql | mongoDB | 含義 |
------------------------------------
| database | database | 表/集合 |
------------------------------------
| table | collection | 字段/域 |
------------------------------------
| row | field | 記錄/文檔 |
------------------------------------
| index | index | 索引 |
------------------------------------

示例

mysql:

-----------------
ID | NAME | AGE |
-----------------
1 | yang | 18 |
-----------------
2 | tuo | 16 |
-----------------

mongoDB:

{
  "ID" : 1, 
  "NAME" : "yang",
  "AGE" : 18
}, 
{
  "ID" : 2,
  "NAME" : "tuo",
  "AGE" : 16
},

特色:

所謂靈活性: 一個集合中,不須要對文檔的結構有限制,每一個文檔(記錄)均可以隨意自主的格式
簡單來講,mysql 中的表的每行數據都要有固定的格式,不存在的字段必需要設置爲空。windows

相關文章
相關標籤/搜索