<html>
<head>
    <base href="https://docs.jboss.org/author">
            <link rel="stylesheet" href="/author/s/en/2172/19/5/_/styles/combined.css?spaceKey=TEIID&amp;forWysiwyg=true" type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://docs.jboss.org/author/display/TEIID/Extensions">Extensions</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://docs.jboss.org/author/display/~shawkins">Steven Hawkins</a>
    </h4>
        <br/>
                         <h4>Changes (1)</h4>
                                 
    
<div id="page-diffs">
                    <table class="diff" cellpadding="0" cellspacing="0">
    
            <tr><td class="diff-unchanged" >h1. Conformed Tables <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;"> <br>A conformed table is a source table that is the same in several physical sources.  Unlike [Multisource Models] which assume a partitioning paradigm, the planner assumes any conformed table may be substituted for another to improve performance.  Typically this would be used when reference data exists in multiple sources, but only a single metadata entry is desired to represent the table.   <br> <br>Conformed tables are defined by adding the {code}{http://www.teiid.org/ext/relational/2012}conformed-sources{code} extension metadata property to the appropriate source tables.  Extension properties can be set at design time in Designer, in the vdb.xml when using full [DDL Metadata] or alter statements, or at runtime using the setProperty [system procedure|System Procedures]. The property is expected to be a comma separated list of physical model/schema names. <br> <br>{code:SQL|title=DDL Alter Example} <br>ALTER FOREIGN TABLE &quot;reference_data&quot; OPTIONS (ADD &quot;teiid_rel:conformed-sources&quot; &#39;source2,source3&#39;);{code} <br> <br>There is no expectation that a metadata entry exists on the other schemas. Just as with the multi-source feature, there is then no source specific metadata entry to the conformed sources.  Also just as with multi-source planning, the capabilities are assumed to be the same across conformed sources. <br> <br>The engine will take the list of conformed sources and associate a set of model metadata ids to the corresponding access node. The logic considering joins and subqueries will also consider the conformed sets when making pushdown decisions. The subquery handling will only check for conformed sources for the subquery - not in the parent. So having a conformed table in the subquery will pushdown as expected, but not vice versa. <br></td></tr>
    
            </table>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <h1><a name="Extensions-ConformedTables"></a>Conformed Tables</h1>

<p>A conformed table is a source table that is the same in several physical sources.  Unlike <a href="/author/display/TEIID/Multisource+Models" title="Multisource Models">Multisource Models</a> which assume a partitioning paradigm, the planner assumes any conformed table may be substituted for another to improve performance.  Typically this would be used when reference data exists in multiple sources, but only a single metadata entry is desired to represent the table.  </p>

<p>Conformed tables are defined by adding the <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="theme: Confluence; brush: java; gutter: false" style="font-size:12px; font-family: ConfluenceInstalledFont,monospace;">{http://www.teiid.org/ext/relational/2012}conformed-sources</pre>
</div></div> extension metadata property to the appropriate source tables.  Extension properties can be set at design time in Designer, in the vdb.xml when using full <a href="/author/display/TEIID/DDL+Metadata" title="DDL Metadata">DDL Metadata</a> or alter statements, or at runtime using the setProperty <a href="/author/display/TEIID/System+Procedures" title="System Procedures">system procedure</a>. The property is expected to be a comma separated list of physical model/schema names.</p>

<div class="code panel" style="border-width: 1px;"><div class="codeHeader panelHeader" style="border-bottom-width: 1px;"><b>DDL Alter Example</b></div><div class="codeContent panelContent">
<pre class="theme: Confluence; brush: sql; gutter: false" style="font-size:12px; font-family: ConfluenceInstalledFont,monospace;">
ALTER FOREIGN TABLE "reference_data" OPTIONS (ADD "teiid_rel:conformed-sources" 'source2,source3');</pre>
</div></div>

<p>There is no expectation that a metadata entry exists on the other schemas. Just as with the multi-source feature, there is then no source specific metadata entry to the conformed sources.  Also just as with multi-source planning, the capabilities are assumed to be the same across conformed sources.</p>

<p>The engine will take the list of conformed sources and associate a set of model metadata ids to the corresponding access node. The logic considering joins and subqueries will also consider the conformed sets when making pushdown decisions. The subquery handling will only check for conformed sources for the subquery - not in the parent. So having a conformed table in the subquery will pushdown as expected, but not vice versa.</p>
    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;" class="grey">
                        <a href="https://docs.jboss.org/author/users/removespacenotification.action?spaceKey=TEIID">Stop watching space</a>
            <span style="padding: 0px 5px;">|</span>
                <a href="https://docs.jboss.org/author/users/editmyemailsettings.action">Change email notification preferences</a>
</div>
        <a href="https://docs.jboss.org/author/display/TEIID/Extensions">View Online</a>
        |
        <a href="https://docs.jboss.org/author/pages/diffpagesbyversion.action?pageId=75989356&revisedVersion=2&originalVersion=1">View Changes</a>
                |
        <a href="https://docs.jboss.org/author/display/TEIID/Extensions?showComments=true&amp;showCommentArea=true#addcomment">Add Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>