ThingWorx モデルとデータの最良事例 > ThingWorx でのデータの保管
ThingWorx でのデータの保管
永続化プロバイダ
ThingWorx で、永続化プロバイダはデータストアへの接続を可能にし、そのデータに対して CRUD 操作を実行できるようにします。 永続化プロバイダは ThingWorx におけるエンティティタイプです。現在のところ、永続化プロバイダには次の 2 つの基本的なバリエーションがあります。
モデルプロバイダ - ThingWorx モデルのメタデータとシステムデータを提供します。各 ThingWorx インストールにはモデルプロバイダが 1 つだけ必要であり、サーバーを起動する前に定義されていなければなりません。現在のモデルプロバイダのすべての実装にデータプロバイダの機能も含まれており、新規インストールではデフォルトのデータプロバイダになります。デフォルトのデータプロバイダは、 platform-settings.json コンフィギュレーションの詳細 ファイルで変更できます。
データプロバイダ - (デバイス、対話型、外部システムなどからの) ストリーム、値ストリーム、データテーブル、ブログ、Wiki などのモデルエレメントに対して取得されたランタイムデータを提供します。データプロバイダ (データプロバイダでもあるモデルプロバイダは除く) はサーバー起動後にインストールしなければならず、Composer で設定できます。複数のデータプロバイダインスタンスが存在可能であり、1 つを platform-settings.json コンフィギュレーションの詳細 ファイルでデフォルトとして指定できます。デフォルトのモデルプロバイダパッケージに基づいて複数のデータプロバイダインスタンスを作成して、同じ種類の追加のデータストアに接続することもできます。
ThingWorx には複数の永続化プロバイダ実装が含まれており、各自のユースケースに最適なデータベースオプションを選択できます。ThingWorx では複数のデータストアを利用できるので、IT のプリファレンスや投資に最も適した多大な柔軟性が得られます。このセクションの以降のトピックでは、お使いのアプリケーション環境に ThingWorx の機能を適合させる際の最良事例について説明します。
デプロイメントオプションの計画については、 ThingWorx デプロイメントアーキテクチャガイドを参照してください。
パフォーマンスとスケーラビリティの観点から用途に最も適した永続化プロバイダを決定する際には、 ThingWorx のサイジング を参照してください。
サポートされていない外部データベースへの接続
ThingWorx 拡張機能を使用することで、ThingWorx プラットフォームの機能を拡張して、使用可能なほぼすべてのデータストレージテクノロジに接続できます。組み込みの DatabaseThing によって、Oracle など、JDBC (Java Database Connectivity) ドライバーを提供する外部の ANSI SQL 対応リレーショナルデータベースに簡単に統合できます。DatabaseThing を介した接続は、JDBC ドライバーを ThingWorx 内にラップする単純な拡張機能をインポートすることによって有効にできます。Oracle、MySQL、IBM DB2 などの多くの一般的なデータベース用の拡張機能がすでに存在します。
サポートされている複数のデータベースへの接続
特定のデータプロバイダに複数のデータストアを使用するように ThingWorx プラットフォームの永続化プロバイダフレームワークを設定できます。この機能を利用して、データ取得とクエリー処理のワークロードを複数のデータストアに分散し、一般的な RDBMS の垂直スケーラビリティの制約を克服できます。このオプションは、単一のデータストアのリソースの利用率 (CPU、メモリ、ディスク IO など) が非常に高く、データストアにさらにリソースを追加できない場合に検討できます。永続化プロバイダが設定された後は、特定の値ストリーム、ストリーム、データテーブル、ブログ、または Wiki インスタンスが追加のデータプロバイダストアを使用するように設定できます。
* 
ThingWorx アプリケーションインスタンスの 1 つのインスタンスにはモデルストアを 1 つだけ使用できます。
サポートされているバージョンについては、 8.5 システム要件を参照してください。