# MongoDB簡介與短網址服務範例 ###### tags: `資料庫` `NoSQL` `MongoDB` `ORM` `專案實作` ## MongoDB是什麼? - [台灣代理簡介](http://www.omniwaresoft.com.tw/mongodb/) ### From SQL (RDBMS) to NoSQL (Not only SQL) - 二者的簡易比較 - [概念:SQL/NoSQL](https://tw.alphacamp.co/blog/sql-nosql-database-dbms-introduction) - [應用:MySQL與MongoDB](https://tw.alphacamp.co/blog/mysql-and-mongodb-comparison) - 補充:[SQL方面的應用比較筆記](https://hackmd.io/OKoBOIwzRzamCIJZKcrGYQ) ### 實戰應用需要先知道的重點選項 - 要不要用ODM(類似SQL指令與ORM的比較)? - Node.js環境為例: - [Mongoose(JS非同步語法)](https://www.npmjs.com/package/mongoose) vs [mongodb(MongoDB內部查詢語法)](https://www.npmjs.com/package/mongodb) - [另有特性介於二者間的query builder可考慮](https://www.npmjs.com/package/mquery) - 自架設伺服器,還是用現成雲端版? - 本機開發與自行架設:MongoDB Server - "MongoDB offers both an ``Enterprise`` and ``Community`` version of its powerful distributed document database. " - [個人使用請選社群版](https://www.mongodb.com/try/download/community) - 直接上雲端:MongoDB Atlas - [可以直接註冊一個免費版來用用看,地點可以選台灣較方便!](https://www.mongodb.com/cloud/atlas) - 圖形化介面:內建的Compass或下載[Robo 3T](https://robomongo.org/) - 皆可連線到本地或雲端服務 - (用Atlas可先忽略,因網頁有內建簡易版介面) ## 使用MongeDB的範例:短網址產生器 個人之前練習的簡易專案 - [專案連結(包含專案架構與原始碼,以及Heroku與GCP佈署展示)](https://github.com/BOBYZH/SIII-Q4-url-shortener)