113 民航特考三等 飛航諮詢 資料處理 考古題詳解
第 一 題25 分
請敘述關聯式資料庫(Structured Query Language, SQL)和非關聯式資料庫(Not only SQL, NoSQL)之間的主要差異,及各自適用的時機。
登入後即可作答並保存紀錄。
核心觀念
本題在考資料庫的資料模型、綱要彈性、交易與一致性、擴充方式,以及不同工作負載的選用原則。SQL 通常指採用關聯式資料模型的資料庫及其查詢語言;NoSQL 是「Not only SQL」的概稱,包含多種非關聯式資料模型,並非單一資料庫技術。
解題方法
可從「資料如何組織、結構是否固定、如何維持一致性、如何擴充、適合哪些工作負載」逐項比較,再依應用需求選擇。選擇時應看資料關係與一致性需求,而非只以資料量大小判斷。
| 比較面向 | 關聯式資料庫(SQL) | 非關聯式資料庫(NoSQL) |
|---|---|---|
| 資料模型 | 以資料表、列與欄組織資料,透過主鍵、外鍵等建立關係 | 依類型採文件、鍵值、欄族或圖形等模型 |
| 資料結構 | 通常先定義綱要,欄位與型別較明確 | 通常較有彈性,可因資料紀錄而異 |
| 查詢與關聯 | 使用 SQL 查詢,支援複雜條件、排序、彙總及資料表連結 | 查詢方式依產品與模型而異;跨資料集合的複雜關聯通常不是主要強項 |
| 交易與一致性 | 多數系統支援完整交易及 ACID 特性,適合要求資料正確一致的工作 | 能力因產品而異;部分系統提供強一致性與交易,部分系統則以高可用性、分散式擴充或特定查詢效率為優先 |
| 擴充方式 | 常見作法是垂直擴充,也可採分割、複寫或分散式架構 | 許多系統以水平擴充作為設計重點,便於增加節點分攤負載 |
| 常見優勢 | 資料關係清楚、交易一致性強、標準查詢能力成熟 | 結構彈性、適合大量或快速變動資料,且可依特定存取模式設計 |
ACID 分別指原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)及持續性(Durability)。
第 二 題25 分
在資訊安全應用當中,「數位憑證」(Digital Certificate)是一份電子性的文件,被用來證明持有人的身分,請敘述數位憑證如何確保數位身分的正確性。
登入後即可作答並保存紀錄。
核心觀念
數位憑證是由**憑證機構(CA)**簽發的電子文件,用來把特定身分資料與公開金鑰綁定。憑證通常包含持有人名稱、公開金鑰、憑證序號、有效期間、簽發者及用途等資料,並由 CA 以自己的私密金鑰對憑證內容產生數位簽章。
數位憑證確保的是「公開金鑰屬於憑證所載身分」的可信連結;它本身不代表持有人在每次操作時都已通過身分驗證,也不會單獨保證資料機密性。
解題方法
驗證憑證時,依序檢查以下事項:
- 確認簽發者可信:檢查憑證是否由受信任的 CA 簽發,並沿憑證鏈驗證至信任的根憑證。
- 驗證數位簽章:使用簽發者憑證中的公開金鑰,驗證 CA 對憑證內容所做的簽章。簽章驗證成功,表示憑證內容未遭竄改,且簽章者持有對應私密金鑰。
- 核對身分與金鑰:檢查憑證所載的主體身分、公開金鑰及憑證用途,是否符合目前要驗證的對象與用途。
- 檢查有效狀態:確認憑證仍在有效期間內,且未被撤銷;
第 三 題25 分
根據一串數值 ,請利用插入排序法(Insertion Sort)將其由小到大進行排序,並列出每輪迴排序的過程。
登入後即可作答並保存紀錄。
核心觀念
插入排序(Insertion Sort)將數列分成「已排序區」與「未排序區」。從第二個數開始,每一輪取出未排序區的第一個數,與已排序區由右向左比較,將較大的數往右移,再把取出的數插入適當位置。
本題共有 個數,因此需進行 輪;每輪結束後,左側已排序區增加一個數。
解題方法與每輪排序過程
原始數列:
| 輪次 | 插入的數 | 插入後的數列 |
|---|---|---|
| 第 1 輪 | ||
| 第 2 輪 | ||
| 第 3 輪 | ||
| 第 4 輪 |
第 四 題25 分
有一個名稱為 Sales 的銷售表,表結構如下:Sale_Id(銷售編號)、Product_Id(產品編號)、Sale_Date(銷售日期)、Quantity(銷售數量)、Price_Per_Unit(每單位的價格)。
請寫一個 SQL 查詢語法,計算每個產品在 2024 年第三季度的總銷售額,並按總銷售額從高到低排序。
登入後即可作答並保存紀錄。
核心觀念
本題考查 SQL 的彙總查詢,包含日期範圍篩選、計算欄位、分組與排序。
每筆銷售額為「銷售數量 × 每單位價格」;用 SUM 加總同一產品的各筆銷售額,並以 GROUP BY 按產品分組,最後依總銷售額由高至低排序。
解題方法
2024 年第三季度為 2024 年 7 月 1 日至 9 月 30 日。若 Sale_Date 欄位包含時間,使用「大於等於 7 月 1 日且小於 10 月 1 日」的條件,可以涵蓋 9 月 30 日全天。