ビューシステムはクラスタに保存されるデータの形式がJSONであることに依存しています。JSON形式のデータは個々のフィールドを特定でき、インデックスコンポーネントで利用可能になります。
情報は格納した情報をパースするCouchbase データベースに格納され、情報が有効なJSONとして識別される場合、情報は有効なJSONとしてデータベース内にタグ付けされ、識別されます。情報が有効なJSONとしてパースできない場合、送信されたデータをそのままバイナリ―コピーとして格納します。
保存されたデータを参照する際、情報のフォーマットは有効なJSONとしてタグ付けされたかどうかに依存します:
JSON
情報はJSONデータとして認識され、保存されたデータと完全に同一のフォーマットで返却されるとは限りません。サブミットされたデータ構造とフィールドは、意味的には同等の情報で返却されます。ビュー処理中には、ドキュメントのメタデータ情報は独立した構造として提供されます。
空白文字やフィールドの順序はサブミットされたJSONドキュメントと異なる場合があります。
たとえば、次のJSONドキュメントは、mykey
というキーを使用して格納jされます:
{ "title" : "Fish Stew" "servings" : 4, "subtitle" : "Delicious with fresh bread", }
ビュープロセスでは次のように返却される場合があります:
{ "servings": 4, "subtitle": "Delicious with fresh bread", "title": "Fish Stew" }
JSON以外
JSONとしてパースできない情報は、常にデータベースにサブミットされた情報のバイナリコピーとして返却されます。例えば、画像を保存すると、保存された画像と完全に同一なバイナリコピーとして返却されます。
JSON以外のデータはbase64文字列でビュー処理中に利用できます。非JSONドキュメントは、メタデータ構造体のtype
フィールドを調べることにより識別できます。
返却された構造は、Webコンソールのビュー編集時に確認できます。