New Relicアプリケーションの構築を支援するために、 New Relic One SDK](/docs/New Relic-solutions/build-nr-UI/sdk-component/intro-to-sdk) を提供します。 このページでは、NerdStorage SDK コンポーネントの使用方法を学習します。
アプリでNerdStorageを使用する
NerdStorage を使用すると、ユーザーの設定やお気に入りなどの好み、またはその他の小さなデータセットを含む単純なデータセットを保存および取得できます。 このストレージは Nerdpack ごとに固有であり、他の Nerdpack と共有することはできません。
NerdStorage は次の 3 つのカテゴリに分類されます。
- ユーザー ストレージ: 特定のユーザーに添付されるデータ。 データが添付されているユーザーとして認証されている場合は、そのデータを読み取ったり書き込んだりできます。
- アカウント ストレージ: 特定のアカウントに添付されたデータ。 認証されていてアカウントにアクセスできる場合は、アカウント スコープの NerdStorage を読み書きできます。 アカウント データの可視性も、マスター アカウントまたはサブ アカウントのルールによって決定されます。ユーザーがマスター アカウントにアクセスできる場合は、すべてのサブアカウントのデータにもアクセスできます。
- エンタープライズ ストレージ: 特定のエンタープライズに添付されるデータ。 対応するエンティティが表示されている場合は、そのエンティティのデータを読み書きできます。
データ・モデル
NerdStorage はネストされたキー値マップとして考えることができます。 データはドキュメント内にあり、コレクション内にネストされています。
{ "YourNerdpackUuid": { "collection-1": { "document-1-of-collection-1": "{\"lastNumber\": 42, \"another\": [1]}", "document-2-of-collection-1": "\"userToken\"" // ... }, "another-collection": { "fruits": "[\"pear\", \"apple\"]" // ... } // ... }}
各 NerdStorage レベルには、異なるプロパティと目的があります。
- コレクション: Nerdpack から、それぞれに名前を付けて複数のコレクションを作成できます。 コレクション内に 1 つ以上のドキュメントを配置できます。 コレクションは、各ドキュメントがキー値のペアであるキー値のストレージと考えてください。
- ドキュメント: ドキュメントは、識別子 (
documentId
) とそれに関連付けられたデータのセットで構成されます。 - ドキュメントに関連付けられたデータ: NerdStorage は、
documentId
に関連付けられたあらゆる種類のデータを受け入れます。 提供されるクエリおよびミューテーション コンポーネントは、JSON をシリアル化および逆シリアル化することによって機能します。
注意
NerdStorage は暗号化されていません。 シークレット、API キー、個人アクセス トークン、ライセンスキーを保存しないでください。
制限
- Nerdpack には、最大 1,000 個のコレクションと 10,000 個のドキュメント、およびストレージ タイプを保存できます。
- コレクションには、最大 1,500 個のドキュメントとストレージ タイプを保存できます。
- シリアル化された各ドキュメントの最大長は 1024 KiB です。
データアクセス
NerdStorage にアクセスするには、NerdGraph クエリを実行するか、提供されているストレージ クエリを使用します。
アクセスするストレージに応じて、異なる SDK コンポーネント セットを使用できます。
- ユーザーアクセス:
UserStorageQuery
およびUserStorageMutation
- アカウントアクセス:
AccountStorageQuery
およびAccountStorageMutation
- エンティティアクセス:
EntityStorageQuery
およびEntityStorageMutation
これらの各コンポーネントは、たとえば React レンダリング メソッドの一部として宣言的に動作することも、命令的に動作することもできます。 query
とmutation
の静的メソッドを使用します。
NerdStorage を操作するための権限
アカウントやテンプレート ストレージの作成、更新、削除などの変更を NerdStorage に永続化するには、 変更を永続化する権限を持つユーザー ロールが必要です。