SMML要素: 物理表

SMML物理表要素は、セマンティック・モデルの物理レイヤーの一部である物理表スキーマに対応します。物理表スキーマには、物理表オブジェクトおよび要素が含まれます。

Physical Tableの要素

  • name (必須プロパティ) — 物理表の名前。

  • description — 物理表の説明。

  • tags — このオブジェクトに割り当てられたキーワード。この要素は、「タグ」フィールドに対応します。

  • sourceType — 物理表のタイプを示します。

  • sourceTable — 別名表のみに使用できます。この別名表のソースとして使用されている物理表を参照します。

  • additionalKeys — プライマリ列および表示列に加えて定義できるキー。

  • joins — このリンクの結合を定義します。これは、結合のタイプに応じて異なる子要素を保持します。

  • dynamicName — セッション変数を使用してこの物理表の名前が指定されている場合、この要素はそのセッション変数を参照します。

  • sqlHints — Oracle Databaseのみに使用できます。INDEXヒントやLEADINGヒントなど、この物理表に指定されたデータベース・ヒントをリストします。

  • caching — trueに設定されている場合、この表がOracle Analytics問合せエンジンの問合せキャッシュに含まれていることを示します。「Cachingの要素」を参照してください。

  • overrideSourceCacheSetting — 別名表のみに使用できます。TRUEに設定されている場合、別名表に、ソース表のキャッシュ・プロパティよりも優先される独自のキャッシュ・プロパティが設定されていることを示します。

  • eventPollingFrequency — ポーリング頻度(秒単位)。この表がOracle Analytics問合せエンジンのイベント・ポーリング表である場合にのみ適用されます。デフォルト値は3600秒です。

  • selectStatements — 異なるデータベースに対して定義できるselect文のリスト。

  • physicalColumns — この物理表に属する物理列を指定します。

PhysicalColumnの要素

  • name (必須プロパティ) — 物理列の名前。

  • description — 物理列の説明。

  • dataTypeVARCHARなどの物理列のデータ型。「DataTypeの列挙値」を参照してください。

  • length — 物理列の長さ。

  • nullableTRUEに設定されている場合、この列に対してnull値が許可されていることを示します。これにより、特定の機能および外部結合に必要なNull値をユーザーに返すことができます。

構文

{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "$ref": "#/definitions/physicalTable",
    "definitions": {
        "physicalTable": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "name": {
                    "type": "string",
                    "minLength": 1,
                    "pattern": "^[^?*]+$"
                },
                "description": {
                    "type": "string"
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "sourceType": {
                    "type": "string",
                    "enum": [
                        "TABLE",
                        "STORED_PROCEDURE",
                        "SELECT"
                    ]
                },
                "sourceTable": {
                    "type": "string"
                },
                "additionalKeys": {
                    "type": "array",
                    "items": {
                        "type": "array",
                        "items": {
                            "type": "string" 
                        }
                    }
                },
                "joins": {
                  "type": "array",
                  "items": {
                      "$ref": "#/definitions/Join"
                  }
                },
                "dynamicName": {
                    "type": "string"
                },
                "sqlHints": {
                    "type": "string"
                },
                "caching": {
                    "$ref": "common#/definitions/Caching"
                },
                "overrideSourceCacheSetting": {
                    "type": "boolean"
                },
                "eventPollingFrequency": {
                    "type": "string"
                },
                "selectStatements": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/SelectStatement"
                    }
                },
                "physicalColumns": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/PhysicalColumn"
                    }
                }
            },
            "required": [
                "name"
            ],
            "title": "PhysicalTable"
        },
        "PhysicalColumn": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "name": {
                    "type": "string",
                    "minLength": 1,
                    "pattern": "^[^?*]+$"
                },
                "description": {
                    "type": "string"
                },
                "dataType": {
                    "$ref": "#/definitions/DataType"
                },
                "length": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 2147483647
                },
                "nullable": {
                    "type": "boolean"
                }
            },
            "required": [
                "name"
            ],
            "title": "PhysicalColumn"
        }
    }
}