Composer 中的 ThingWorx 模型定義 > 資料儲存 > 持續性提供者 > 將 Microsoft SQL Server 用作持續性提供者
將 Microsoft SQL Server 用作持續性提供者
概觀
SQL 伺服器是 Microsoft 開發出的關聯式資料庫管理系統。作為資料庫伺服器,它是一個軟體產品,其主要功能是依其他軟體應用程式的需求儲存與擷取資料,該軟體可以在同一電腦上執行,也可以透過網路 (包括網際網路) 在其他電腦上執行。
* 
如需有關所支援 MSSQL 版本的資訊,請參閱 ThingWorx 系統需求文件。
* 
已針對 ThingWorx 8.4.0 的寫入效能進行最佳化。因此,一些 API 可能會削弱 MSSQL 的效能。如需詳細資訊,請參閱 版本 8.4.0 發行版本說明
此部份中包含下列主題:
SQL Server 版本比較
有多個 SQL Server 版本可供您選用,以最合乎您的資料解決方案:Enterprise、Standard或 Express。下表對三個 MS SQL Server 版本進行了比較。
一般而言,SQL Standard 版本適用於生產環境,因為它能夠支援大多數必要功能。
如果您的生產環境需要高可用性功能 (例如 AlwaysOn) 與其他功能 (例如記憶體內部 OLTP、表格及索引分割),則建議使用 SQL Enterprise 版本。
功能
Enterprise 版本
Standard 版本
Express 版本
最大關聯式資料庫大小
524 PB
524 PB
10 GB
使用的最大記憶體 (SQL Server Database Engine 的每個執行個體)
作業系統,最大容量
128 GB
1 GB
AlwaysOn 可用性群組
備份壓縮
資料庫鏡像
僅見證
記錄傳送
多重執行個體支援
50
50
50
加密備份
資料表和索引分割
平行處理分割資料表與索引的查詢
如需有關不同版本的 SQL Server 所支援功能的詳細描述,請參閱下列內容:
2014 (支援 ThingWorx 8.4 之前的版本): https://msdn.microsoft.com/en-us/library/ms144275(v=sql.120).aspx
MSSQL Server 需求
硬體與軟體需求
MS SQL Server Express 版本的最小需求位於:
如需關於生產用 SQL Server 大小資源,請參閱 容量規劃部份。
作業系統需求
Microsoft Windows 是 MSSQL Server 唯一支援的作業系統。雖然作業系統的選擇並不會影響 ThingWorx,但未來可能會支援 Linux。如需詳細資訊,請遵循 上述清單中的連結,以前往您所使用之 MS SQL Server 版本的 Microsoft 硬體與軟體需求頁。
ThingWorx 與 MSSQL Server 的連線
ThingWorx 透過 SQL JDBC Driver 連線至 MSSQL 資料庫。如需有關 JDBC 連線內容的詳細資訊,請參閱下列網址: https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/ms378988(v=sql.105) (針對 MS SQL Server 2014 版) 或 https://docs.microsoft.com/en-us/sql/database-engine/install-windows/installation-for-sql-server?view=sql-server-2017 (針對 MS SQL Server 2017 版)。
這些連線內容可以在 ThingWorx 軟體下載中提供的 platform-settings.json 檔案中配置。platform_settings.json 檔案包含下列連線內容:
jdbcUrl: jdbc:sqlserver://localhost:1433;databaseName=thingworx;applicationName=Thingworx;"
連線內容:
ServerName - 執行 SQL Server 的電腦 - localhost
PortNumber - SQL Server 正在接聽的連接埠 - 1433
DatabaseName - 欲連線之資料庫的名稱 - ThingWorx
applicationName - 應用程式名稱 - Thingworx
MSSQL 安裝規劃
可以在下列環境中安裝 MSSQL:
內部部署
SQL Server 安裝精靈會提供單一功能樹,以供安裝 SQL Server 的所有元件,因此您不必進行個別安裝。
Amazon EC2 (Amazon EC2 中的 SQL Server) -
Amazon Web Services 可讓您視需要花費盡可能多或少的時間來執行 Microsoft SQL Server。您可以從多個版本中進行選擇,以及選擇在 Amazon Elastic Compute Cloud (Amazon EC2) 或 Amazon Relational Database Service (Amazon RDS) 上執行。
透過 Amazon EC2 上的 SQL Server 可讓您完全控制每個設定,這類似於對其進行內部部署安裝時的情形。
Amazon EC2 環境特性
針對生產環境,使用 Amazon EC2 中的下列設備:
專用硬體
交叉可用性區域網路延遲是區域內網路延遲的六倍。因此,「區域 A - 資料中心」中的所有電腦都應位於單一可用性區域。
不同可用性區域和/或用於嚴重損壞修復的「區域 B - 資料中心」區域。每個區域是一個單獨的地理區域,並且有多個稱為「可用性區域」的隔離位置。如需詳細資訊,請參閱 http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html
Amazon EC2 VPC。將電腦部署至虛擬私人網路以取得對虛擬網路環境的完整控制權,包括選取您自己的 IP 位址範圍、建立子網路,以及配置路由表及網路閘道。如需詳細資訊,請參閱 http://aws.amazon.com/vpc/
放置群組是單一可用性區域內 Amazon EC2 執行個體的邏輯群組。使用放置群組可讓應用程式來參與低延遲的 10 Gbps 網路。如需詳細資訊,請參閱 https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html
啟動進入共用的叢集放置群組的執行個體會放入邏輯叢集,以便在叢集中的所有執行個體之間提供高頻寬、低延遲網路。C4、C3、I2、CR1、G2 及 HS1 實例支援叢集網路,但 M3 實例不支援。請參考。 https://aws.amazon.com/ec2/instance-types/
具有多個 IP 位址的多個彈性網路介面 (ENI) 與 ThingWorx Platform 伺服器處在同一 VPC 中。請參考 https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html
硬體虛擬機器 (HVM) 使用新的網路虛擬化堆疊,可提供比傳統實行更高的 I/O 效能與更低的 CPU 使用率。為了利用強化網路,HVM AMI 應在 VPC 中啟動,並安裝適當的驅動程式。
SSD 暫時儲存 (不建議使用 EBS 卷)。SSD 支援的執行個體儲存已進行最佳化,從而實現非常高的隨機 I/O 效能。
* 
如果您未登入 Amazon 帳戶,點選此連結之後,會要求您登入。
在 AWS 上部署 MS SQL Server 的指南: https://aws.amazon.com/windows/products/sql/
配置 SQL Server AlwaysOn 可用性群組
如需詳細資訊,請參閱下列連結: http://docs.aws.amazon.com/quickstart/latest/sql/part3.html
Amazon EC2 (Amazon RDS 上的 Microsoft SQL Server) -
Microsoft Azure -
Microsoft Azure SQL Database 是一個由應用程式開發人員管理的雲端資料庫,可使建構和維護應用程式更容易並提高生產力。
SQL Azure 可讓組織將關係資料儲存在雲端,並在企業需要變更時快速擴充其資料庫的大小。資料會在 Microsoft 資料中心中進行託管、管理與提供。
組織可以在內部建構應用程式,並將它們移至 SQL Azure 或在 Windows Azure 上建構它們並將資料保留在雲端。SQL Azure 支援 SQL Server Transact-SQL (T-SQL) 查詢語言,提供對高可用性與容錯的內建支援,並可讓您在內部部署 SQL Server 和雲端資料庫之間同步處理資料。
如需其他詳細資訊,請參閱下列連結:
容量規劃
欲確定 MSSQL Server是否為資料的正確解決方案,請參閱下列 Microsoft 文件中的大小及規劃部份:
硬體與軟體需求:
瞭解 SQL Server 與 IOPS
當針對 SQL Server 配置新的伺服器時,或當新增或修改現有系統的磁碟組態時,最好在部署 SQL Server 之前決定 I/O 子系統的容量。
安裝 SQL 之前,我們建議您使用 SQLIO 磁碟子系統基準標竿工具對 I/O 子系統進行基準標竿測試。
如需有關如何使用 SQLIOSim 公用程式與 SQLIO 進行壓力測試的資訊,請參閱 TechNet 視訊 Stress testing using SQLIOSIM and SQLIO (使用 SQLIOSIM 與 SQLIO 進行壓力測試)
選擇磁碟類型
您在系統中使用的磁碟類型可能會影響可靠性與效能。
在 SQL Server 中使用固態硬碟 (SSD) 進行儲存。
選擇 RAID 類型
雖然 RAID 不是 SQL Server 的一部份,但實行 RAID 會直接影響 SQL Server 的執行方式。RAID 層級 0、1 和 5 通常與 SQL Server 搭配使用。
SQL Server 版本的計算容量限制
欲瞭解有關計算容量限制的詳細資訊,請參閱下列連結:
SQL Server 的最大容量規格
欲瞭解有關最大容量限制的詳細資訊,請參閱下列連結:
前置部署 I/O 最佳作法
如需有關 SQL Server 最佳作法的資訊,請參閱下列文章: