

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# NoSQL Workbench 的範例資料模型
<a name="workbench.SampleModels"></a>

模型器的首頁會顯示 NoSQL Workbench 隨附的許多範例模型。本節說明這些模型及其潛在用途。

**Topics**
+ [

## 員工資料模型
](#workbench.SampleModels.EmployeeDataModel)
+ [

## 開發論壇資料模型
](#workbench.SampleModels.DiscussionForumDataModel)
+ [

## 音樂資料庫資料模型
](#workbench.SampleModels.MusicLibraryDataModel)
+ [

## 滑雪渡假村資料模型
](#workbench.SampleModels.SkiResortDataModel)
+ [

## 信用卡優惠資料模型
](#workbench.SampleModels.CreditCardOffersDataModel)
+ [

## 書籤資料模型
](#workbench.SampleModels.BookmarksDataModel)

## 員工資料模型
<a name="workbench.SampleModels.EmployeeDataModel"></a>

這個資料模型是一個簡介模型。它代表了員工的基本詳細資料，例如唯一的別名、名字、姓氏、頭銜、主管和技能。

該資料模型會描繪了一些技術，例如處理複雜工作的屬性，像是擁有不只一個技能。此模型也會透過次要索引 DirectEports 的範例，說明主管與其直屬員工的一對多關係。

此資料模型有助於以下存取模式：
+ 使用員工的登入別名擷取員工記錄，您可透過名為 `Employee` 的表格來加快完成此動作。
+ 按名稱搜尋員工，您可透過名為 `Name` 的員工表格全域次要索引來加快完成此動作。
+ 使用管理員的登入別名擷取管理員的所有直屬報告，您可透過名為 `DirectReports` 的員工表全域次要索引來加快完成此動作。

## 開發論壇資料模型
<a name="workbench.SampleModels.DiscussionForumDataModel"></a>

這個資料模型代表開發論壇。使用此模型，客戶可以與開發人員社群互動、提出問題，以及回應其他客戶的貼文。每一種 AWS 服務都有專用的論壇。任何人都可以在論壇張貼訊息、開始新的主題，每個主題都會收到許多回覆。

此資料模型有助於以下存取模式：
+ 使用論壇名稱擷取論壇記錄，您可透過名為 `Forum` 的表格來加快完成此動作。
+ 擷取某個論壇的特定主題或所有主題，您可透過名為 `Thread` 的資料表來加快完成此動作。
+ 使用張貼使用者的電子郵件地址搜尋回覆，您可透過名為 `PostedBy-Message-Index` 的 Reply 資料表的全域次要索引來加快完成此動作。

## 音樂資料庫資料模型
<a name="workbench.SampleModels.MusicLibraryDataModel"></a>

此資料模型代表具有大量歌曲選集的音樂資料庫，能以近乎即時的方式展示下載次數最多的歌曲。

此資料模型有助於以下存取模式：
+ 擷取一首歌曲記錄，您可透過名為 `Songs` 的表格加快完成此動作。
+ 擷取特定的下載記錄或歌曲的所有下載記錄，您可透過名為 `Songs` 的表格加快完成此動作。
+ 擷取歌曲特定的每月下載次數記錄，您可透過名為 `Song` 的表格加快完成此動作。
+ 擷取歌曲的所有記錄 (包括歌曲記錄、下載記錄和每月下載次數記錄)，您可透過名為 `Songs` 的表格加快完成此動作。
+ 搜尋最多人下載的歌曲，您可透過名為 `DownloadsByMonth` 的表格的全域次要索引加快完成此動作。

## 滑雪渡假村資料模型
<a name="workbench.SampleModels.SkiResortDataModel"></a>

此資料模型代表一個滑雪渡假村，其中有每部滑雪纜車每天收集到的大量資料集合。

此資料模型有助於以下存取模式：
+ 擷取指定滑雪纜車或整體渡假村的所有資料 (動態和靜態)，您可透過名為 `SkiLifts` 的表格加快完成此動作。
+ 在特定日期擷取滑雪纜車或整體渡假村的所有動態資料 (包括特別的纜車乘客，積雪覆蓋率、雪崩危險性和纜車狀態)，您可透過名為 `SkiLifts` 的表格加快完成此動作。
+ 擷取特定滑雪纜車的所有靜態資料 (包括纜車是否是給有經驗的乘客使用、纜車升高的垂直高度 (英尺)、纜車乘坐時間)，您可透過名為 `SkiLifts` 的表格加快完成此動作。
+ 擷取對特定滑雪纜車或整體渡假村記錄的資料日期 (依特別的乘客總數排序)，您可透過名為 `SkiLiftsByRiders` 的 SkiLifts 表格的全域次要索引加快完成此動作。

## 信用卡優惠資料模型
<a name="workbench.SampleModels.CreditCardOffersDataModel"></a>

此資料模型由信用卡優惠應用程式使用。

信用卡供應商會不時提供優惠。這些優惠包括不收費的餘額轉移、提高信用額度、降低利率、現金回饋和航空公司里程數。客戶接受或拒絕這些優惠後，相應的優惠狀態會隨之更新。

此資料模型有助於以下存取模式：
+ 使用 `AccountId` 擷取帳戶記錄，您可透過主表格加快完成此動作。
+ 擷取有少量預估項目的所有帳戶，您可透過次要索引 `AccountIndex` 加快完成此動作。
+ 使用 `AccountId` 擷取帳戶和所有與這些帳戶相關的優惠，您可透過主表格加快完成此動作。
+ 使用 `AccountId` 和 `OfferId` 擷取與這些帳戶相關的帳戶和特定優惠記錄，您可透過主表格加快完成此動作。
+ 使用 `AccountId`、`OfferType` 和 `Status` 擷取所有與帳戶相關且為 `OfferType` 特定的所有 `ACCEPTED/DECLINED` 優惠記錄，您可透過次要索引 `GSI1` 加快完成此動作。
+ 使用 `OfferId` 擷取優惠和相關的優惠項目記錄，您可透過主表格加快完成此動作。

## 書籤資料模型
<a name="workbench.SampleModels.BookmarksDataModel"></a>

這個資料模型可供客戶用來存放書籤。

一個客戶可以有很多個書籤，且一個書籤可以屬於許多客戶。這個資料模型代表多對多的關係。

此資料模型有助於以下存取模式：
+ `customerId` 的單一查詢現在可以傳回客戶資料以及書籤。
+ 查詢 `ByEmail` 索引會透過電子郵件地址傳回客戶資料。請注意，此索引不會擷取書籤。
+ 查詢 `ByUrl` 索引會透過 URL 取得書籤資料。請注意，我們有 CustomerID 作為索引的排序金鑰，因為相同的 URL 可以被多個客戶加入書籤。
+ 查詢 `ByCustomerFolder` 索引會依資料夾取得每位客戶的書籤。