iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

0
Modern Web

強型闖入DenoLand系列 第 32

強型闖入DenoLand[31] - MongoDB 安裝教學

Node.js之父新專案Deno 1.0正式亮相| iThome

強型闖入DenoLand[31] - MongoDB 安裝教學

本章會分為兩個部分:

  • MongoDB 安裝教學 (1篇)
  • Oak 串接 MongoDB (1-2篇)

在本章完成後,我們就順利完成一個簡單的 Web API 服務了!

開始之前: 什麼是 MongoDB ?

MongoDB 是眾多 NoSQL 中最受歡迎的資料庫之一。它能儲存 JSON 及 Schema-free 的資料,對比傳統的關聯式資料庫 (MySQL 等等), MongoDB 對於巨量資料、高併發以及高可靠性有更為強大的支援。

此外,比起傳統的關聯式資料庫, MongoDB (也幾乎是 NoSQL 的優點)有如下優點:

  1. 不需要事先定義資料文件的結構與資料之間的關聯
  2. 也因為不需定義結構,使用者可以自由的新增欄位,不需回頭修改過去的資料文件
  3. 能在不停機的狀態下,水平式的擴展和資料自動平衡

The History of NoSQL

NOSQL 一詞最早出現於1998年,是 Carlo Strozzi 開發的一個輕量、開源、不提供 SQL 功能的關聯式資料庫[1]

2009年, Last.fm 的 Johan Oskarsson 發起了一次關於分散式開源資料庫的討論[2],來自 Rackspace 的 Eric Evans 再次提出了NOSQL 的概念,這時的 NOSQL 主要指非關係型、分散式、不提供 ACID 的資料庫設計模式。

2009年在亞特蘭大舉行的 "no:sql(east)" 討論會是一個里程碑,其口號是 "select fun, profit from real_world where relational=false;" 。因此,對 NOSQL 最普遍的解釋是「非關聯型的」,強調鍵-值儲存文件導向資料庫的優點,而不是單純的反對 RDBMS 。

基於2014年的收入, NOSQL 市場領先企業是 MarkLogicMongoDBDatastax[3]。基於2015年的人氣排名,最受歡迎的NOSQL資料庫是 MongoDBApache CassandraRedis[4]

-- wikipedia

為何選擇 MongoDB

因為在 MongoDB 中,資料的儲存架構是以 JSON 格式儲存。我們在 Oak 程式從 MongoDB 上取得資料後,就能直接對 JSON 格式的資料進行操作。

進入正題

首先,我們先到 MongoDB 的官網取得安裝檔:

https://ithelp.ithome.com.tw/upload/images/20201018/20110850J9FXCy7E86.png

下載安裝檔後,直接打開安裝檔準備進行安裝:

https://ithelp.ithome.com.tw/upload/images/20201018/20110850YP6hezNAxn.png

打開安裝檔後,會看見引導程式,直接按下一步 (Next)。

https://ithelp.ithome.com.tw/upload/images/20201018/20110850BjdMnjAIo3.png

接下來會看到聲明合約,當然同意,哪次不同意?

https://ithelp.ithome.com.tw/upload/images/20201018/20110850yy9b6DzaGH.png

因為筆者沒有特殊要求,就直接選擇 Complete 將安裝程序完成就好。

https://ithelp.ithome.com.tw/upload/images/20201018/20110850hjIKfca5PR.png

來到服務確認頁面,筆者這邊是原封不動的直接按下一步。

https://ithelp.ithome.com.tw/upload/images/20201018/201108509OIgcssYri.png

MongoDB Compass 是官方提供的圖形化介面,因為方便入門,所以筆者選擇安裝並進行下一步。

https://ithelp.ithome.com.tw/upload/images/20201018/20110850ZZNmhr4X4b.png

安裝完成後, MongoDB Compass 就會自動啟動拉 !

今天筆者只會介紹 MongoDB 的安裝部分,至於如何設定 Collection 等等,筆者會將它與 Oak 串接教學放到同一篇文章一起說明。

題外話

如果沒有意外的話,筆者明天也會繼續產出文章。昨天出門大吃大喝一整天,回來的時候已經11點多所以才沒有發文,真的十分抱歉 QQ

延伸閱讀

同樣的事情在不同人眼中可能會有不同的見解、看法。

在讀完本篇以後,筆者也強烈建議大家去看看以下文章,或許會對型別、變數宣告...等觀念有更深層的看法唷!


上一篇
強型闖入DenoLand[30] - Web API 實作篇
下一篇
強型闖入DenoLand[32] - 使用 Deno 串接 MongoDB
系列文
強型闖入DenoLand37

尚未有邦友留言

立即登入留言