ThingWorx 模型和数据最佳做法 > 使用 ThingWorx 存储数据
使用 ThingWorx 存储数据
持久化方案提供工具
在 ThingWorx 中,持久化方案提供工具可实现与数据存储的连接,并能够对这些数据执行 CRUD 操作。持久化方案提供工具是 ThingWorx 中的实体类型。目前,持久化方案提供工具有两个基本的变型:
模型提供者 - 负责 ThingWorx 模型元数据和系统数据。每个 ThingWorx 安装只能有一个模型提供者,并且必须在启动服务器之前定义。当前所有模型提供者实现都包括数据提供者功能以及新安装中的默认数据提供者。可通过 plateform-settings.json 配置详细信息 更改默认数据提供工具。
数据提供者 - 负责针对模型元素接入的运行时数据,例如:流、值流、数据表、博客和 wiki (来自设备、交互系统、外部系统等)。数据提供者必须在服务器启动后安装 (模型提供者除外,它也是数据提供者),并且可以在 Composer 中进行配置。数据提供工具实例可以有多个,默认实例可在 plateform-settings.json 配置详细信息 中指定。还可以基于默认模型提供者包创建多个数据提供者实例,以连接到相同类型的其他数据存储。
ThingWorx 包括多个持久化方案提供工具实现,使您能够选择最适合您的使用情况的数据库选项。ThingWorx 能够利用多个数据存储以提供最大的灵活性,从而最大程度地满足您的 IT 首选项和投资要求。本部分之后随附的主题将介绍有关调整 ThingWorx 以使其功能适应应用环境的最佳做法。
有关计划部署选项的信息,请参阅《ThingWorx 部署体系结构指南》
请参阅 ThingWorx 大小设定,以从性能和可扩展性角度确定最适合您用例的持久化方案提供工具。
连接到不支持的外部数据库
可对 ThingWorx 平台进行增强,使其能够连接到通过 ThingWorx 扩展提供的任何数据存储技术。对于任何兼容 ANSI SQL 的外部关系数据库,只要该数据库提供 JDBC (Java 数据库连接) 驱动程序 (例如 Oracle),即可通过内置的 DatabaseThing 与其集成。只需导入一个将 JDBC 驱动程序封装到 ThingWorx 的简单扩展,即可启用由 DatabaseThing 提供的连通性。许多常用数据库的相应扩展已存在,包括 Oracle、MySQL 和 IBM DB2。
您也可以使用 SQLThing 代替 DatabaseThing 来连接到外部数据库。有关详细信息,请参阅连接到外部数据库
名称
默认值
注解
JDBC 驱动类名称
com.yourdatabase.yourDriver
取决于正在使用的驱动程序。
JDBC 连接字符串
jdbc:mydb:/server:port/database?param=value
定义与数据库建立连接所需的信息。有关连接字符串格式,请访问 connectionstrings.com
connectionValidationString
SELECT NOW()
用于验证数据库返回值的简单查询 (不考虑要执行的表格名称)。
最大连接数
5
允许的最大连接数
数据库用户名
数据库的用户名
新密码
确认密码
新数据库用户的密码
监控器频率 (毫秒)
30000
监控间隔的时间 (毫秒)
重试次数
1
定义连接池将尝试获取新连接的次数
重试延迟 (毫秒)
2000
连接池在两次获取连接尝试之间等待的时间 (以毫秒为单位)
连接到多个受支持的数据库
可以配置 ThingWorx 平台的持久化方案提供工具框架,以将多个数据存储用于给定的数据提供者。可利用此功能将数据接入和查询处理工作载荷分布到多个数据存储,以消除典型的 RDBMS 垂直可扩展性限制。如果已确定单个数据存储的资源使用率 (如 CPU、内存、磁盘 IO) 非常高,并且无法再将更多资源添加到该数据存储,则可以考虑此选项。配置持久化方案提供工具后,可将特定的值流、流、数据表、博客或 wiki 配置为使用其他数据提供者存储。
* 
仅允许将一个模型存储用于 ThingWorx 应用程序实例的单个实例。
有关支持的版本的信息,请参阅ThingWorx Platform 9.0 系统要求
这对您有帮助吗?