案例 1 - 設計全球規模與安全存取

已完成

在下列兩個單元中,您將會複習兩個商務案例。 您已經具有公司描述、專案目標和限制。 您可單獨進行此工作,但可能的話,請盡可能與其他人共同討論。

開發解決方案的程序

在這些很可能存在於現實世界的案例中,您的目標是了解:

  • 公司需要解決的問題。
  • 解決方案的需求和限制。

此目標的形式通常是「問題陳述」。 這是一組正式的段落,其清楚地定義解決方案的情況、目前條件和所需結果。 此時,您可能不想要探索如何解決問題,而是將焦點放在想要解決什麼問題。

在您 (以及小組和利害關係人) 同意問題陳述之後,建議盡可能地列出專案的需求 (即「目標」)。 然後針對解決方案中存在的任何限制進行規劃。

可於此時列出一些不合理的限制。 稍後,您可在顯示每個需求和限制的成本/收益比之後再將其撤回。

在生產中,建立解決方案通常涉及六個階段。 開發問題陳述只是開頭。

  1. 探索:來自客戶的原始問題陳述。
  2. 構想:對於專案成功模樣的創意描述。 通常會使用「我可以…」的方式來表達。
  3. 結構設計工作階段:針對初步解決方案的技術選項與選擇進行初始安排。
  4. 概念證明 (POC):針對解決方案選取最佳的技術和程序之後,以小型代表性範例來說明解決方案的形式,以此建立 POC。 可能的話,也可使用類似範例中目前正在執行的解決方案。
  5. 實作:根據先前階段的結果,實作逐步推出的完整解決方案。
  6. 遞交:針對專案進行事後檢討,並討論未來需要的改善。

在本課程模組中,您可利用專案範本最新圖示。 您也可以在生產工作負載中使用這些資產。

針對本課程模組中的案例,您將會花費一些時間來判斷問題陳述 (「探索」)。 但重點應在「結構設計工作階段」。 若想要在課程模組之後進一步開發解決方案,可使用課程模組中的資產來進行。

案例詳細資料

客戶在全球各地提供服務及內容傳遞。 您已接獲要求要協助建置系統,該系統每秒可處理數千次對正在運作資料超市進行的寫入。

客戶也需要能夠針對資料進行即時分析,以判斷趨勢及識別異常。 其目前正在使用通用語言執行平台 (CLR) 應用程式來進行該工作。 客戶不需要資料倉儲,也不會使用大部分的 SQL 介面區,而是需要能夠縮放至其使用者的居住地。

客戶也正在嘗試判斷要在其混合式環境中使用的驗證方法。 雖然主要解決方案和應用程式會存留在 Azure 中,但客戶也也需要考量到下列條件:

  • 非 Azure 機器 (已加入網域) 上的應用程式。
  • 非 Azure 機器上不允許變更驅動程式或連接字串的較舊應用程式。
  • 在非 Azure 機器 (未加入網域) 上從 SQL 管理工具 (SQL Server Management Studio、Azure Data Studio、PowerShell) 執行報表的多名使用者。

可能的話,客戶想要消除連接字串和應用程式設定檔中的硬式編碼密碼或祕密。 客戶也想要停止在 SQL 工具中使用密碼,或是尋找能夠增強該驗證的方式。

案例指引

  • 使用與目前解決方案最相容且可供使用的 Azure SQL 部署選項。
  • 在將讀取工作負載與寫入工作負載隔離時,客戶如何於發生多個查詢情況的同時,在多個區域中進行縮放?
  • 客戶可如何跨各種部署存取資料?
  • 案例中所述的互動路徑會建議哪些驗證方法?

工作

  1. 在複習案例和所提供的指引之後,請盡可能地為專案找出各種需求。

  2. 列出可能會在解決方案中使用的技術與程序。 您可隨意調整案例,讓更多資訊更加清楚明瞭。 您也可以針對此案例進行各種假設。

    提示

    您可考慮使用 Azure SQL 安全性最佳做法腳本 (機器翻譯) 來面對安全性挑戰。

  3. 使用決策矩陣或其他決策程序來選擇技術和程序,以構成初步解決方案。

  4. 將專案目標和限制以及建議的解決方案設計作成筆記。

在完成初步的解決方案之後,下一個步驟通常是將該解決方案呈現給較大型小組 (或客戶、領導階層等,視情況而定)。 您必須以共用專案目標和限制以及解決方案該如何應對上述兩者的方式來組合並呈現解決方案。

準備就緒後,請回答下列問題來比較解決方案與範例解決方案以進行評估。 正確答案可能不只一個,所以即使沒有列出解決方案,該解決方案仍然可能是可行的。

知識檢查

1.

哪一個 Azure SQL 部署選項可能最適合此案例?

2.

在將讀取工作負載與寫入工作負載隔離時,客戶如何於發生多個查詢情況的同時,在多個區域中進行縮放?

3.

對於在 Azure VM 上執行的應用程式,您會建議使用哪種驗證方法?

4.

對於在非 Azure 機器 (已加入網域) 上執行的應用程式,您會建議使用哪種驗證方法?

5.

對於在非 Azure 機器 (未加入網域) 上執行的 SQL 管理工具 (SSMS、PowerShell),您會建議使用哪種驗證方法?

6.

針對非 Azure 機器上無法變更驅動程式/連接字串的較舊應用程式,您會建議使用哪種驗證方法?