<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Document Database 彙整 - 歐立威科技</title>
	<atom:link href="https://www.omniwaresoft.com.tw/tag/document-database/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.omniwaresoft.com.tw/tag/document-database/</link>
	<description>歐立威科技 Omniwaresoft｜全方位企業級開源軟體解決方案</description>
	<lastBuildDate>Fri, 26 Dec 2025 08:11:09 +0000</lastBuildDate>
	<language>zh-TW</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.4</generator>

<image>
	<url>https://www.omniwaresoft.com.tw/wp-content/uploads/2022/12/android-icon-192x192-1.png</url>
	<title>Document Database 彙整 - 歐立威科技</title>
	<link>https://www.omniwaresoft.com.tw/tag/document-database/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">242464019</site>	<item>
		<title>MongoDB 是什麼？ＭongoDB 優勢、適用場景和基本概念介紹</title>
		<link>https://www.omniwaresoft.com.tw/product-news/mongodb-news/introduction-to-mongodb/</link>
		
		<dc:creator><![CDATA[Omni]]></dc:creator>
		<pubDate>Wed, 26 Jan 2022 08:55:40 +0000</pubDate>
				<category><![CDATA[MongoDB 產品資訊]]></category>
		<category><![CDATA[Document Database]]></category>
		<category><![CDATA[MongoDB]]></category>
		<guid isPermaLink="false">http://www.omniwaresoft.com.tw/?p=16944</guid>

					<description><![CDATA[MongoDB，一個基於分散式架構的文件資料庫（document database），主要功能與特性，包含：擁有高性能、豐富的查詢語言、高可用性、支援多個儲存引擎來處理大規模資料。下文介紹了 MongoDB 中的關鍵概念和查詢語言，並提供操作和管理的注意事項和程序，以及綜合參考。]]></description>
										<content:encoded><![CDATA[<p>Toyota、Bosch、EA Games 等國際知名企業都是 MongoDB 的使用者， MongoDB 為什麼深受企業的愛戴？有什麼使用上的優點？</p>
<p>在上篇 <a href="https://www.omniwaresoft.com.tw/mongodb/" target="_blank" rel="noopener">MongoDB-最受歡迎的 NOSQL 資料庫 </a>的介紹中，我們詳細講解了 MongoDB 的產品性能以及優點。那麽，這篇文章則會介紹 MongoDB 的基本觀念、合適使用情境以及相較於 MySQL ，MongoDB 的優勢。 </p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2><strong>MongoDB 是什麼 ?</strong></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p><a href="https://www.omniwaresoft.com.tw/mongodb/" target="_blank" rel="noopener">MongoDB</a> 是一種開源的 NoSQL 文件資料庫，由於使用 JSON 文檔資料儲存結構，MongoDB 具有 <span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">靈活</span>、 <span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">易於擴展</span>、 <span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">高效能</span> 這三種優勢。</p>
<p>與傳統關聯式資料庫相比，用戶在使用 MongoDB 儲存資料時，無需事先定義資料架構，還能夠自由地增加資料的 Key/Value 。</p>
<p>因此企業在處理巨量資料時，能夠花更少的時間，而且透過 MongoDB 允許資料格式不一致的特性，開發者也能夠輕鬆地處理資料架構不穩定的問題。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>試想，如果一間企業每天有大量的資料需處理，而這些資料涵蓋的範圍從客戶資訊到公司的銷售資料應有盡有。每一種資料也有不同的特徵，如果使用傳統的 RDBMS （關聯式資料庫），那用戶就必須先定義資料的格式與架構，才能將資料儲存。然而，因為資料的種類繁多，如果每一筆資料都需要先定義才能存入，效率會太過緩慢。</p>
<p>只要透過 MongoDB 的半結構和非結構化的資料儲存特性，開發團隊能夠省下時間和減少工作量。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":34608,"width":"512px","height":"131px","sizeSlug":"large","linkDestination":"none"} --></p>
<figure><img data-recalc-dims="1" height="262" width="1024" style="width: 512px; height: 131px;" src="https://i0.wp.com/www.omniwaresoft.com.tw/wp-content/uploads/2023/02/MongoDB-logo_darkreen.png?resize=1024%2C262&#038;ssl=1" alt="MongoDB logo_darkreen" /></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:heading --></p>
<h2><strong>MongoDB 的關鍵元素</strong></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3><strong>文件（Documents）</strong></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>在 MongoDB 中，<span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">Document 是資料儲存的基本單位</span>。</p>
<p>每個 Document 都是一個 JSON 格式的資料結構，由一個或多個 key-value 對組成。由於 Document 具有動態特性，同一個集合（Collection）中的不同 Document 可以擁有完全不同的欄位與結構。</p>
<p>當使用者將 JSON 文件儲存至 MongoDB 時，系統會自動將其轉換為 BSON（Binary JSON）格式。BSON 是 JSON 的二進位表示，支援更多資料類型，並具備更快的序列化與傳輸效率。</p>
<p>在查詢過程中，MongoDB 會讀取相應的 BSON，並將其轉換回 JSON，讓使用者能方便地檢視與操作。</p>
<p>以下是 MongoDB 官方對 BSON 的說明：<br />「BSON，即 Binary JSON。它的二進位結構能夠編碼資料類型與長度。相較於 JSON，BSON 的傳輸速度更快。」</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><em>Document 的靈活性和動態結構，以及 BSON 的高效傳輸特性，使 MongoDB 能夠有效地處理各種資料結構，並滿足現代應用程式的需求。</em></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><em>一個簡單的 Document 可能如下所示：</em></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":36686,"width":"196px","height":"228px","sizeSlug":"full","linkDestination":"none"} --></p>
<figure><img data-recalc-dims="1" style="width: 196px; height: 228px;" src="https://i0.wp.com/www.omniwaresoft.com.tw/wp-content/uploads/2023/08/%E6%88%AA%E5%9C%96-2023-08-07-%E4%B8%8A%E5%8D%8810.56.40.png?w=1170&#038;ssl=1" alt="" /></figure>
<figure>這個 Document 包括了三個欄位，其中地址是巢狀的 Document</figure>
<p><!-- /wp:image --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3><strong>集合（Collection）</strong></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>在 MongoDB 中，<span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">Collection 是由多個 Document 組成的容器</span>。</p>
<p>它類似於關聯式資料庫中的表格，但與表格不同的是，Collection 不需要固定結構。這意味著同一個 Collection 內的 Document 可以擁有不同的欄位與格式。</p>
<p>Collections 常用來組織與儲存相關的 Document。舉例來說，一個 Collection 可以包含某公司所有員工的 Document，每個 Document 分別記錄一位員工的詳細資訊。</p>
<p>在操作上，Collections 提供查詢、插入、更新與刪除等功能，並可透過建立索引來提升查詢效能。這種設計使 Collection 具備高度靈活性，能夠因應各種資料需求與應用場景。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":36687,"width":"468px","height":"255px","sizeSlug":"large","linkDestination":"none"} --></p>
<figure><img data-recalc-dims="1" height="558" width="1024" style="width: 468px; height: 255px;" src="https://i0.wp.com/www.omniwaresoft.com.tw/wp-content/uploads/2023/08/%E6%88%AA%E5%9C%96-2023-08-07-%E4%B8%8A%E5%8D%8810.59.29.png?resize=1024%2C558&#038;ssl=1" alt="" />
<p>&nbsp;</p>
<figcaption><a href="https://studio3t.com/academy/lessons/mongodb-basics/" target="_blank" rel="noopener">上圖 </a>是資料庫、集合和文件之間的關係。MongoDB 內可以有多個資料庫（Database），資料庫中包含多個集合Collection），集合中則包含多個文件（Document）
<p>&nbsp;</p>
</figcaption>
</figure>
<p><!-- /wp:image --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3><strong>_id</strong></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>在 MongoDB 中，<span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">_id 欄位是每個文件的主鍵（Primary Key），代表該文件的唯一識別值</span>。</p>
<p>每個文件都會擁有獨特的 _id，用來確保集合內資料的一致性與正確性。若使用者在建立文件時未指定 _id，MongoDB 會自動為其產生一個長度為 12 位元組的 _id。</p>
<p>這種自動生成機制能保證資料的唯一性，使得集合內的檢索更加高效且可靠。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":36692,"width":"707px","height":"183px","sizeSlug":"large","linkDestination":"none"} --></p>
<figure><img data-recalc-dims="1" height="265" width="1024" style="width: 707px; height: 183px;" src="https://i0.wp.com/www.omniwaresoft.com.tw/wp-content/uploads/2023/08/%E6%88%AA%E5%9C%96-2023-08-07-%E4%B8%8A%E5%8D%8811.19.02.png?resize=1024%2C265&#038;ssl=1" alt="" /></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3><strong>索引（Indexes）</strong></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p><span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">使用者可以在集合中的任意欄位上建立次級索引（Secondary Index），以加速 BSON 文件的搜尋</span>。</p>
<p>與預設的 _id 索引 不同，次級索引允許在多個欄位上進行快速檢索。若缺少索引，查詢時就必須對整個集合進行掃描（Collection Scan），逐一比對欄位，成本相當高。</p>
<p>次級索引在處理龐大資料集時特別重要，能有效降低查詢延遲並提升效能。<br />例如，在儲存客戶資訊的集合中，若經常需要依電子郵件地址進行查詢，就可以在「電子郵件」欄位上建立次級索引，從而直接透過該欄位快速檢索目標文件。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2><strong>MongoDB</strong><b> 的 4 大優勢</b></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3><strong>（一）高效能（High Performance）</strong></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>異於傳統關聯式資料庫，利用 Join 的運算功能進行資料的查詢。</p>
<p>MongoDB 採用基於文檔（ Document Base ）的模型，將資料 <a href="https://docs.mongodb.com/manual/tutorial/model-embedded-one-to-many-relationships-between-documents/" target="_blank" rel="noopener">嵌入 </a>至單一文檔中。得益於這種特性， <span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">MongoDB 的查詢速度能與傳統關聯式資料庫相互媲美活</span>。</p>
<p>另外，MongoDB 能夠串聯眾多資料庫，快速的將 TB 級資料儲存，再將資料交付給擅於分析大數據的 Cloudera 進行處理。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3><strong>（二）JSON 文檔資料庫（Document Database)</strong></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>MongoDB 採用文件資料庫，將每筆資料以 Document 和 Field 的方式組織資料，這個特色的強大之處在於，它能夠匯總非結構化資料，快速製作成容易閲讀的資料目錄。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":18043,"width":"390px","height":"195px","sizeSlug":"full","linkDestination":"none"} --></p>
<figure><img data-recalc-dims="1" style="width: 390px; height: 195px;" src="https://i0.wp.com/www.omniwaresoft.com.tw/wp-content/uploads/2022/08/MongoDB-Document-Database.png?w=1170&#038;ssl=1" alt="MongoDB-Document-Database" /></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3><strong>（三）廣泛支援的程式語言</strong></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>以下是 MongoDB  支援的各種主流程式語言：</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>C、C++、C#，Erlang、Haskell、Java、JavaScript、Lisp、fibjs、node.JS、Perl、PHP、Python、Ruby、Scala、Go、Rust。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3>（四）<b>合乎成本效益</b></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>MongoDB 提供多種靈活的計價方案。如果使用 MongoDB 的雲端版本 MongoDB Atlas ，您也能夠選擇最符合需求的付費方案！</p>
<p>另外，MongoDB Atlas 具有自動規模化（Auto Scaling）功能，能夠隨時調整資料集群的大小，不只能有效將成本降至最低，還能隨時保持應對突發狀況的靈活性！</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2><strong>4 個 MongoDB 的應用場景</strong></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p data-sourcepos="3:1-3:85">MongoDB 是一種 NoSQL 資料庫，以其靈活性和可擴展性而聞名。以下列出 MongoDB 的 4 個應用場景，希望能幫助您了解 MongoDB 的優勢和適用範圍：</p>
<h3 data-sourcepos="5:1-5:29"><strong>(一) 需要處理大量資料和高併發請求的雲端資料庫</strong></h3>
<p data-sourcepos="7:1-7:87">MongoDB 的水平擴展能力可以輕鬆應對資料量和流量的增長，確保應用程式的效能和可用性。</p>
<p data-sourcepos="7:1-7:87">這對於需要大量運算功能，並將資料快速發送到多個伺服器的雲端資料庫來說至關重要，例如：</p>
<ul data-sourcepos="9:1-14:0">
<li data-sourcepos="9:1-9:37"><strong>電商平台：</strong> 處理大量的商品資訊、訂單資料和使用者行為數據。</li>
<li data-sourcepos="10:1-10:33"><strong>物聯網應用：</strong> 儲存和分析來自各種感測器的海量數據。</li>
<li data-sourcepos="11:1-11:32"><strong>遊戲平台：</strong> 儲存玩家資訊、遊戲進度和排行榜數據。</li>
<li data-sourcepos="12:1-14:0"><strong>社群媒體：</strong> 處理使用者資訊、貼文、訊息和互動數據。</li>
</ul>
<h3 data-sourcepos="15:1-15:25"><strong>(二) 沒有專職 DBA 的小型企業或團隊</strong></h3>
<p data-sourcepos="17:1-17:71">MongoDB 的易用性和自動化管理功能，例如自動分片、自動備份和恢復，可以降低資料庫的運維成本和複雜度，即使沒有專職 DBA 也能輕鬆管理。</p>
<h3 data-sourcepos="20:1-20:29"><strong>(三) 擁有大量尚未確定且未來還會變動的資料架構</strong></h3>
<p data-sourcepos="22:1-22:152">MongoDB 採用 schema-less 架構，允許使用者在無需預先定義資料結構的情況下儲存資料，非常適合應對結構經常變動的資料。</p>
<p data-sourcepos="22:1-22:152">這對於擁有大量不穩定 schema 的應用程式來說非常重要，因為它可以靈活地適應 schema 的變更，而無需進行複雜的遷移或重構。</p>
<h3 data-sourcepos="25:1-25:35"><strong>(四) 資料關係不複雜，且不需要進行 Join 運算的應用程式</strong></h3>
<p data-sourcepos="27:1-27:37">MongoDB 的文件資料模型非常適合儲存和查詢具有嵌套結構的資料，例如：</p>
<ul data-sourcepos="29:1-32:0">
<li data-sourcepos="29:1-29:12"><strong>產品目錄</strong></li>
<li data-sourcepos="30:1-30:14"><strong>使用者設定檔</strong></li>
<li data-sourcepos="31:1-32:0"><strong>內容管理系統</strong></li>
</ul>
<p data-sourcepos="33:1-33:83">這使得 MongoDB 非常適合資料關係不複雜，且不需要進行 Join 運算的應用程式，因為它可以避免 Join 操作帶來的性能開銷，並提供更簡單、更直觀的資料模型。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2><strong>MongoDB 與關聯式資料庫的關係為何？</strong></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>MongoDB 是一個 <span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">文件導向的 NoSQL 資料庫</span>，與傳統的關聯式資料庫如 MySQL、Oracle 或 SQL Server 有著本質上的差異。</p>
<p>這些差異不僅體現在資料管理的方式上，其中的文件導向和無架構設計使 MongoDB 在可擴展性和高可用性方面具有優越的效能。雖然，MongoDB 和 MySQL 都是開源且常見的資料庫，兩種資料庫的核心理念卻截然不同，因為它們分別為解決不同的問題而生。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>在選擇 MongoDB 前，使用者必須先了解關聯式資料庫（RDBMS）與非關聯式資料庫（NoSQL）間的區別。</p>
<p>因此接下來我們將介紹關聯式資料庫與非關聯式資料庫間的區別，並深入比較 MongoDB 與 MySQL 的差異。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3><strong>關聯式資料庫（RDBMS）</strong></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>關聯式資料庫（RDBMS）是一種傳統的資料庫系統，以結構化查詢語言（SQL）為基礎，將資料儲存於預定義的表格中。這些表格包括行和列，彼此之間存在明確的關聯性。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>在 RDBMS 中，使用者必須先將資料架構（Schema）和表之間的關係設定好。</p>
<p>這種預設方式使資料有明確的結構和關聯，但同時也會帶來一些挑戰。</p>
<p>因為一但將資料架構設定好，後續的變更就會變得相當複雜，尤其在資料量龐大的情況下，調整 Schema 不僅麻煩，更可能是個浩大的工程。儘管如此，關聯式資料庫的結構化方式仍適用於許多情況。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>例如，它特別適合遵循ACID 特性的產業，如資料交易密集的銀行系統、企業資源規劃（ERP）系統等。這類強調一致性與完整性的設計，使其成為相關場景中的理想資料庫代表，如 MySQL 與 PostgreSQL。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3><strong>非關聯式資料庫（NoSQL）</strong></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>NoSQL 意指「not only SQL」，指不限於關聯式資料庫的各類資料庫。</p>
<p>NoSQL 資料庫通常無固定架構，具備更高的水平擴展性和靈活的資料結構，能快速存取大量非結構化或半結構化資料。</p>
<p>因此，它們特別適合需要高速讀寫和高吞吐量的場景，如即時分析、物聯網（IoT）及大數據應用。而代表性資料庫包括 MongoDB 與 Cassandra。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2><b>MongoDB 相較於 MySQL 的優點為何？</b></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3><strong>（一）服務零中斷</strong></h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>主機發生故障時， MongoDB 的副本集架構（Replica Set）能夠提供 <span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">冗餘（Redundancy）</span>和 <span style="background: linear-gradient(to top, rgba(255, 204, 0, 0.5) 50%, transparent 50%);">高可用性 (High Availability）</span>。</p>
<p>每個副本集內部包含多台主機，其中一台為 Primary，其他台為 Secondary，多台機器之間的狀態及資料會自動同步。因此，當故障發生時，系統會在幾秒之內從 Secondary 中選出一台 Primary 接管工作，從而達到零停機 。</p>
<p>然而，對 MySQL 來說，故障移轉的程序必須依靠手動完成。維運團隊需要無時無刻的保持警覺，就算主機在半夜發生故障，維運團隊還是必須起床修復。</p>
<p>這不僅讓團隊無法好好休息，主機重新上線也需要耗費幾分鐘的時間。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3>（二）更快的開發時程</h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>JSON 檔的本質是靈活的，每個文檔資料中的 Key Value 也不盡相同 。</p>
<p>例如：產品目錄中，儲存男裝資料與儲存電視規格資料的 Key/Value 是不相同的。我們也稱這種現象為資料的「多型」。</p>
<p>使用 JSON 文檔，我們能夠在無需更改資料庫架構的情況下，隨意增添資料的 Key Value。 JSON 文檔這種對資料欄位沒有強制定義的特性，讓開發者能用最短的時間開發軟體系統。</p>
<p>反觀 MySQL ，如果貿然更改 MySQL 內的資料結構，會造成資料庫的停機或主機資源的大量耗損。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3>（三）更方便的擴充</h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>隨著資料量的增多，再優秀的資料庫都會面臨擴充的需求，利用 MongoDB 的分片功能，資料庫中的工作量會被分散至多台主機中。</p>
<p>用戶只需根據自身的需求增加主機，而不用花費鉅額成本增添一台效能更好的主機系統，從而達到節省成本的目的。而且使用者在擴充 MongoDB 時，無需更改資料庫內的設定，能減少擴充的複雜度。</p>
<p>然而，在擴充 MySQL 時，由於關聯式資料庫內寫入大量的 SQL Join，使用者必須調整資料庫內的所有程式碼、停機資料庫，同時必須小心地處理資料表格存放的節點。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3>（四）MongoDB 與 MySQL 的差異對照表</h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>以下為 MongoDB 與 MySQL 之間的差別：</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:table --></p>
<figure>
<table>
<tbody>
<tr>
<td data-align="center"> </td>
<td data-align="center"><strong> MongoDB</strong></td>
<td data-align="center"><strong> MySQL</strong></td>
</tr>
<tr>
<td data-align="center">資料類型</td>
<td data-align="center">非結構化或半結構資料</td>
<td data-align="center">結構化資料</td>
</tr>
<tr>
<td data-align="center">資料表示方法</td>
<td data-align="center">JSON 文檔</td>
<td data-align="center">Row、Table</td>
</tr>
<tr>
<td data-align="center">JOIN 支援</td>
<td data-align="center">沒有</td>
<td data-align="center">有</td>
</tr>
<tr>
<td data-align="center">架構</td>
<td data-align="center">不需定義</td>
<td data-align="center">須將資料定義為表格和欄位</td>
</tr>
<tr>
<td data-align="center">查詢語法</td>
<td data-align="center">Javascript</td>
<td data-align="center">SQL</td>
</tr>
</tbody>
</table>
</figure>
<p><!-- /wp:table --></p>
<p><!-- wp:paragraph --></p>
<p>語法差異</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>雖然 MongoDB 使用的術語和 MySQL 不同，但本質上是差不多的，差異可參考下方術語對照表 ： </p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:table --></p>
<figure>
<table>
<tbody>
<tr>
<td data-align="center"><strong> SQL 術語 </strong></td>
<td data-align="center"><strong>MongoDB 術語</strong></td>
<td data-align="center"><strong>說明 </strong></td>
</tr>
<tr>
<td data-align="center">database</td>
<td data-align="center">database</td>
<td data-align="center">資料庫</td>
</tr>
<tr>
<td data-align="center">table</td>
<td data-align="center">collection</td>
<td data-align="center">資料表格/集合</td>
</tr>
<tr>
<td data-align="center">row</td>
<td data-align="center">document</td>
<td data-align="center">行/文檔</td>
</tr>
<tr>
<td data-align="center">column</td>
<td data-align="center">field</td>
<td data-align="center">資料欄位/域</td>
</tr>
<tr>
<td data-align="center">index</td>
<td data-align="center">index</td>
<td data-align="center">索引</td>
</tr>
</tbody>
</table>
</figure>
<p><!-- /wp:table --></p>
<p><!-- wp:heading --></p>
<h2><strong>總結</strong></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>MongoDB 是目前市面上最受歡迎的 NoSQL 資料庫，同時也是 NoSQL 資料庫領域中的領頭羊。</p>
<p>MongoDB 提供企業更方便的資料儲存解決方案、提供工程師更友善的開發環境，也讓企業在不用花費鉅額成本的情況下，能夠選擇一個價格更低廉，效能良好的資料庫替代方案。</p>
<p>歐立威科技是 MongoDB 的代理商，如果想要獲得更多資訊，<a href="https://www.omniwaresoft.com.tw/contact/" target="_blank" rel="noopener">歡迎聯繫我們！</a></p>
<hr />
<p><!-- /wp:button --></p>
<p><!-- /wp:buttons --></p>
<p><!-- /wp:html --></p>
<p>加入歐立威 LINE 好友，了解更多產品資訊<br /><br /><a style="display: inline-block;" href="https://lin.ee/VCvhQSK" target="_blank" rel="noopener"> <img data-recalc-dims="1" width="1170" src="https://i0.wp.com/scdn.line-apps.com/n/line_add_friends/btn/zh-Hant.png?fit=1170%2C36&#038;ssl=1" alt="加入好友" height="36" border="0" /> </a></p>]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">16944</post-id>	</item>
	</channel>
</rss>
