最新資訊
科技新聞

雲端整合專家,提供全方位雲端顧問服務

科技趨勢

MongoDB 是什麼?5分鐘帶你了解 MongoDB 的5大特性與好處

現今有越來越多的國際企業,例如:Adobe、Cisco、ebay、Facebook、Google等,都是MongoDB的使用者。這些企業為什麼選擇使用MongoDB來取代MySQL?MongoDB的特性是什麼?在不同雲端平台上的應用,能帶來哪些好處?現在就讓我們來為你一一解惑!

MongoDB 是什麼?

MySQL與MongoDB都是開源的常用資料庫,兩者採用不同的資料庫設計方式,有各自的優缺點,關鍵看用在解決什麼問題。MySQL是傳統的關聯式資料庫,而MongoDB則是非關聯式資料庫,是一種文件導向(Document-oriented database)的資料庫管理系統。在選擇使用MongoDB資料庫之前,先帶你來認識什麼是關聯式資料庫(RDBMS)與非關聯式資料庫(NoSQL)。

關聯式資料庫(RDBMS)

關聯式資料庫(RDBMS)簡單來說,就是資料之間具有明確相互關聯的特性。透過SQL(Structured Query Language)語言在資料庫裡進行新增、查詢、更新和刪除資料等操作,同時也能建立和修改資料庫模式。資料表需預先設定好架構(Schema),以及需預先定義好資料表之間的關係,使資料之間有明確的關聯。

由於關聯式資料庫須事先設計好架構,上線後如要進行欄位變更便會相當麻煩,若資料量龐大,變更Schema更是工程浩大。因此,對於已經有明確的資料格式,並預計未來不會有大幅度的變更,且更著重在資料操作的準確性與一致性(ACID),則可考慮選擇使用關聯式資料庫,例如:MySQL。

非關聯式資料庫(NoSQL)

非關聯式資料庫(NoSQL)的意思是「Not Only SQL」,指的是不限定為關聯式資料庫的資料庫管理系統,以混用關聯式資料庫和非關聯式資料庫來達到最佳的儲存效果。NoSQL資料庫沒有Schema架構,也就是所謂的Schema-Free,可自由定義資料文件(Document)的結構,以及自由新增欄位。

由於非關聯式資料庫不需事先定義資料的Schema及資料之間的關聯,對於資料格式不確定,希望保留未來可以彈性調整的空間,且資料之間沒有複雜的關聯,較著重在快速讀取資料與可用性,則可考慮選擇使用非關聯式資料庫,例如:MongoDB。

MongoDB 5大特色報你知!

MongoDB使用的是文件導向的儲存概念,是一種靈活、易於擴展、高效能的NoSQL資料庫,它提供了可以跟SQL相比的Query Language(查詢語言),同時也是Open Source的NoSQL DB,本身用C++語言撰寫而成,在許多場景下可用於替代傳統的關聯式資料庫儲存方式。MongoDB的特點主要有以下5大項:

 

  1. 高效能處理大數據:MongoDB可以處理T級量的資料庫,可將眾多資料庫串聯後,交給大數據,例如:Cloudera等去分析。
  2. 提供高可用性架構:MongoDB的複製工具(稱為副本集)有自動故障轉移功能,提供資料的高可用性(High Availability)。
  3. 無限制的水平擴充:藉由資料分片(Sharding)功能來達到水平式擴充,提高MongoDB的儲存空間與效能。
  4. 新增欄位自由靈活:MongoDB擁有非常彈性的Schema,不需事先創建表格,數據可直接寫入並自由添加欄位。
  5. 查詢語言功能強大:MongoDB支援豐富的查詢語言以支援讀寫操作(CRUD),並支持聚合和其它現代用例,例如:地理搜索、圖形搜索、文本搜索。

MongoDB 在2大雲端平台應用的好處

AWS(Amazon Web Services)

  • 提供 Quick Starts技術,能以快速、方便且可靠的方式部署MongoDB。

  • 透過 AWS CloudFormation範本自動進行部署,簡化在AWS上的佈建流程。

GCP(Google Cloud Platform)

  • 可與 Cloud Key Management Service(金鑰管理服務,簡稱KMS)整合,將機密資訊存入KMS中,保障金鑰安全。

  • 藉由 Snapshot快照功能,將任一時間點的系統狀態與資料記錄下來,將來可輕鬆迅速進行還原。

MongoDB是目前最受歡迎的NoSQL資料庫,也是NoSQL資料庫的領導者。MongoDB是一個可靠且高效能的系統,具備處理大量資料、加速開發效率、降低支出成本等特色,可以在AWS和Google Cloud上完全託管。蓋亞資訊是MongoDB的最佳合作夥伴,想要了解更詳細的服務內容,或想立即開始試用,歡迎你透過線上諮詢與我們聯繫