Use of complex join in BMM and Physical Join in Physical layer ?

Hi All ,
Why we need to use complex join in BMM layer not the Physical Join ?
Why we need to use Physical Join in Physical layer not Complex join ?
thanks in advance

Hi,
A physical join is at the physical layer and defines the join between two physical tables.
Logical joins live at the BMM (logical) layer and define a join between two logical tables.
The important differentiation is that at the BMM layer you do not tell the OBIEE server how to do the join,
you just tell it that there is a relationship between these two logical entities.
when the server comes to this logical join it will use the information in the physical joins and decides how the two logical tables are joined together.
thanks,
pramod.

Similar Messages

  • Facts and dimensions joins

    Hi,
    Can we use three fact tables in rpd and not join them? We have three facts and four dimensions. All the four are common dimensions to the three fact tables. So in the physical joins can we just join the facts to the dimensions? will it be accepatble if we do not have a join between fact tables. Is it necessary that all the tables (fact and dimensions) need to be joined to some tabler? Can we leave the joins between the facts which are not necessary? Please advice.

    We do not do joins between fact tables, the joins between facts will be happened through dimensions (conformed dimensions).
    In your case the 4 dimension will act as an conformed one.
    Is it necessary that all the tables (fact and dimensions) need to be joined to some tabler? You cannot have a table in BMM which is not joined to any other table.
    Can we leave the joins between the facts which are not necessary?Yes, Dim1 - fact1 -Dim 2 in this fact 1 is connected with Dim1, Dim2 and there is no relationship for fact1 with Dim3 so we don't join it.
    Dim1,Dim2,Dim3 is joined with fact2 in this case Dim 1 and Dim2 will act as conformed dimesion between fact1 and fact2, where as dim3 will be a non conformed dimesion.
    Thanks,
    Vino

  • Read data using 2 diff connection pool for same DB folder in physical layer

    Hi All,
    i am using two connection pool which have different dsn connection information (both are directed to different database name or database server)..
    so if i view the data of any table, a prompt will come asking for the connection pool, so how do i automize it....?
    how do i set the different connection pool for different tables?
    please let me know if u need further informtaion to understand my problem..
    thnx...

    thnx Stijn..
    yupe that i know...
    actually i have total of around 300 tables in physical layer (in both the schemas..) , around 12 fact and 100 dimension tables in bmm and same in the presentation layer...
    so i think u can guess how many joins and other stuff, i have made in my bmm layer..
    if now i will start modifying all this it will take lot of time...
    i am just wondering that there is no alternative for this...
    as when i check my data from the physical layer then a prompt ask for the connection pool (i have already made two connection pool..) so there could be some alternative way to automize the default connection pool setting for the tables/schemas folders in case if more than one connection pool exits under the same database in the physical layer...
    isn't it?
    thnx again..

  • Recommended steps to generate a web service using nested complex types

    Hello,
    I need to generate a web service that uses nested complex types with built in types on the bottom layer. I hve posted an attempt at a WSDL. Please give advice on if I am doing it correctly.
    I have the suspicion that I should nest the complex types into the final complex type VendorStockingInterface. Please confirm.
    <?xml version="1.0" encoding="utf-8"?>
    <definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:conv="http://www.openuri.org/2002/04/soap/conversation/"
    xmlns:cw="http://www.openuri.org/2002/04/wsdl/conversation/"
    xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
    xmlns:jms="http://www.openuri.org/2002/04/wsdl/jms/"
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:s="http://www.w3.org/2001/XMLSchema"
    xmlns:s0="http://www.openuri.org/"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    targetNamespace="http://www.openuri.org/">
    <types>
    <s:schema targetNamespace="http://www.openuri.org/"
    xmlns:s="http://www.w3.org/2001/XMLSchema">
    <s:element name="RegisterServiceRequest">
    <s:complexType>
    <s:sequence>
    <s:element name="DeviceCapabilities">
    <s:complexType>
    <s:sequence>
    <s:element name="OSName" type="s:string" nillable="true"/>
         <s:element name="OSVersion" type="s:string" nillable="true"/>
         <s:element name="BRType" type="s:string" nillable="true"/>
         <s:element name="DisplayColors" type="s:string" nillable="true"/>
         <s:element name="DisplayTechnology" type="s:string" nillable="true"/>
         <s:element name="NetworkAccess" type="s:boolean" nillable="true"/>
         <s:element name="DownloadMethod" type="s:string" nillable="true"/>
         <s:element name="DownloadVersion" type="s:string" nillable="true"/>
         <s:element name="Protocols" type="s:string" nillable="true"/>
         </s:sequence>
    </s:complexType>
    </s:element>
         <s:element name="LicenseType">
    <s:complexType>
    <s:sequence>
         <s:element name="Licences" type="s:string" nillable="false"/>
    </s:sequence>
    </s:complexType>
    </s:element>
         <s:element name="PriceValue">
    <s:complexType>
    <s:sequence>
         <s:element name="Value" type="s:float" nillable="false"/>
         <s:element name="CurrencyType" type="s:string" nillable="false"/>
    </s:sequence>
    </s:complexType>
    </s:element>
         <s:element name="RevenueModelType">
    <s:complexType>
    <s:sequence>
         <s:element name="VSRP" type="RegisterServiceRequest:PriceValue" nillable="true"/>
         <s:element name="WholesalePrice" type="RegisterServiceRequest:PriceValue" nillable="true"/>
         <s:element name="VendorSplitPercentage" type="s:float" nillable="true"/>
         <s:element name="VendorPurchasePrice" type="RegisterServiceRequest:PriceValue" nillable="true"/>
         <s:element name="License" type="RegisterServiceRequest:LicenseType" nillable="false"/>
    </s:sequence>
    </s:complexType>
    </s:element>
         <s:element name="VendorItemIdentifierType">
    <s:complexType>
    <s:sequence>
         <s:element name="VendorProductDisplay" type="s:string" nillable="false"/>
         <s:element name="VendorProductVersion" type="s:string" nillable="false"/>
         <s:element name="VendorProductCode" type="s:string" nillable="false"/>
    </s:sequence>
    </s:complexType>
    </s:element>     
         <s:element name="VendorBriefType">
    <s:complexType>
    <s:sequence>
         <s:element name="VendorID" type="s:string" nillable="false"/>
    </s:sequence>
    </s:complexType>
    </s:element>     
         <s:element name="VendorItemBriefType">
    <s:complexType>
    <s:sequence>
         <s:element name="VendorProductID" type="RegisterServiceRequest:VendorItemIdentifierType" nillable="false"/>
         <s:element name="VendorID" type="RegisterServiceRequest:VendorBriefType" nillable="false"/>
         <s:element name="VendorDescription" type="s:string" nillable="true"/>
         <s:element name="VendorPricing" type="RegisterServiceRequest:RevenueModelType" nillable="false"/>
         <s:element name="DownloadURL" type="s:string" nillable="true"/>
         <s:element name="ShortCode" type="s:string" nillable="true"/>
         <s:element name="ApplicationCode" type="s:string" nillable="true"/>
         <s:element name="DRMMethod" type="s:string" nillable="true"/>
    </s:sequence>
    </s:complexType>
    </s:element>     
         <s:element name="ContentType">
    <s:complexType>
    <s:sequence>
         <s:element name="Categorization" type="s:string" nillable="false"/>
         <s:element name="MIMEType" type="s:string" nillable="true"/>
    </s:sequence>
    </s:complexType>
    </s:element>     
         <s:element name="VendorStockingInterface">
    <s:complexType>
    <s:sequence>
         <s:element name="VendorItemInfo" type="RegisterServiceRequest:VendorItemBriefType" nillable="false"/>
         <s:element name="ProductType" type="RegisterServiceRequest:ContentType" nillable="false"/>
         <s:element name="DeviceRequirements" type="RegisterServiceRequest:DeviceCapabilitiesType" nillable="true"/>
         <s:element name="VendorPricing" type="RegisterServiceRequest:RevenueModelType" nillable="false"/>
         <s:element name="ProgramMemory" type="s:int" nillable="true"/>
         <s:element name="DataMemory" type="s:int" nillable="true"/>
         <s:element name="Author" type="s:string" nillable="true"/>
         <s:element name="Language" type="s:string" nillable="true"/>
    </s:sequence>
    </s:complexType>
    </s:element>          
    <s:element name="RegisterServiceResponse">
    <s:complexType>
    <s:sequence>
    <s:element name="Message" type="s:string"/>
    </s:sequence>
    </s:complexType>
    </s:element>
    </s:sequence>
    </s:complexType>
    </s:element>
    </s:schema>
    </types>
    <message name="RegisterServiceSoapIn">
    <part name="parameters" element="s0:RegisterServiceRequest"/>
    </message>
    <message name="RegisterServiceSoapOut">
    <part name="parameters" element="s0:RegisterServiceResponse"/>
    </message>
    <portType name="RegisterServiceSoap">
    <operation name="RegisterService">
    <input message="s0:RegisterServiceSoapIn"/>
    <output message="s0:RegisterServiceSoapOut"/>
    </operation>
    </portType>
    <binding name="RegisterServiceSoap" type="s0:RegisterServiceSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
    <operation name="RegisterService">
    <soap:operation soapAction="http://www.openuri.org/RegisterService" style="document"/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    </binding>
    <service name="RegisterService">
    <port name="RegisterServiceSoap" binding="s0:RegisterServiceSoap">
    <soap:address location="http://localhost:7001/RegisterService.jws"/>
    </port>
    </service>
    </definitions>
    I'd like the the consumer of the web service to send it a document with the fields formatted to the VendorInterface complextype which contains the other complextypes. In return the consumer will get another document with some acknowledgement messages.
    To make this happen I'd like to generate the web service, creating the complex type classes and XMLBeans. I'd like advice on the steps to take once I get a good WSDL.
    There is also the option to go from the other direction. Is it better to attempt to create a schema XSD document instead and use that to work towards the web service and WSDL? If so, could someone give an example of how to format an XSD using my example needs.

    I think I have got it all in place, though I have not tested it as of yet. For others who are looking at this, here is my XSD file from which all my complextypes were generated and lastly here is the actual web service file.
    ?xml version="1.0"?>
    <xs:schema targetNamespace="http://openuri.org/RegisterService"
    xmlns:rs="http://openuri.org/RegisterService"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    elementFormDefault="qualified"
    xmlns:tns="http://temp.openuri.org/VerizonBOBO/RegisterServiceRequestDocument.xsd">
    <xs:element name="RegisterServiceRequest" type="rs:VendorStockingInterface"/>
    <xs:complexType name="DeviceCapabilitiesType">
    <xs:sequence>
    <xs:element name="OSName" type="xs:string" nillable="true"/>
    <xs:element name="OSVersion" type="xs:string" nillable="true"/>
    <xs:element name="BRType" type="xs:string" nillable="true"/>
    <xs:element name="DisplayColors" type="xs:string" nillable="true"/>
    <xs:element name="DisplayTechnology" type="xs:string" nillable="true"/>
    <xs:element name="NetworkAccess" type="xs:boolean" nillable="true"/>
    <xs:element name="DownloadMethod" type="xs:string" nillable="true"/>
    <xs:element name="DownloadVersion" type="xs:string" nillable="true"/>
    <xs:element name="Protocols" type="xs:string" nillable="true"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="LicenseType">
    <xs:sequence>     
    <xs:element name="Licences" type="xs:string" nillable="false"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="PriceValue">
    <xs:sequence>
    <xs:element name="Value" type="xs:float" nillable="false"/>
    <xs:element name="CurrencyType" type="xs:string" nillable="false"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="RevenueModelType">
    <xs:sequence>
    <xs:element name="VSRP" type="rs:PriceValue" nillable="true"/>
    <xs:element name="WholesalePrice" type="rs:PriceValue" nillable="true"/>
    <xs:element name="VendorSplitPercentage" type="xs:float" nillable="true"/>
    <xs:element name="VendorPurchasePrice" type="rs:PriceValue" nillable="true"/>
    <xs:element name="License" type="rs:LicenseType" nillable="false"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="VendorItemIdentifierType">
    <xs:sequence>
    <xs:element name="VendorProductDisplay" type="xs:string" nillable="false"/>
    <xs:element name="VendorProductVersion" type="xs:string" nillable="false"/>
    <xs:element name="VendorProductCode" type="xs:string" nillable="false"/>
         </xs:sequence>
    </xs:complexType>
    <xs:complexType name="VendorBriefType">
    <xs:sequence>
    <xs:element name="VendorID" type="xs:string" nillable="false"/>
         </xs:sequence>
    </xs:complexType>
    <xs:complexType name="VendorItemBriefType">
    <xs:sequence>
    <xs:element name="VendorProductID" type="rs:VendorItemIdentifierType" nillable="false"/>
    <xs:element name="VendorID" type="rs:VendorBriefType" nillable="false"/>
    <xs:element name="VendorDescription" type="xs:string" nillable="true"/>
    <xs:element name="VendorPricing" type="rs:RevenueModelType" nillable="false"/>
    <xs:element name="DownloadURL" type="xs:string" nillable="true"/>
    <xs:element name="ShortCode" type="xs:string" nillable="true"/>
    <xs:element name="ApplicationCode" type="xs:string" nillable="true"/>
    <xs:element name="DRMMethod" type="xs:string" nillable="true"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ContentType">
    <xs:sequence>
    <xs:element name="Categorization" type="xs:string"/>
    <xs:element name="MIMEType" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="VendorStockingInterface">
    <xs:sequence>
    <xs:element name="VendorItemInfo" type="rs:VendorItemBriefType"/>
    <xs:element name="ProductType" type="rs:ContentType"/>
    <xs:element name="DeviceRequirements" type="rs:DeviceCapabilitiesType"/>
    <xs:element name="VendorPricing" type="rs:RevenueModelType"/>
    <xs:element name="ProgramMemory" type="xs:int"/>
    <xs:element name="DataMemory" type="xs:int"/>
    <xs:element name="Author" type="xs:string"/>
    <xs:element name="Language" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="RegisterServiceResponse">
    <xs:sequence>
    <xs:element name="Message" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    </xs:schema>
    The Web Service File:
    import org.openuri.registerService.RegisterServiceResponse;
    import org.openuri.registerService.RegisterServiceRequestDocument;
    import com.verizon.hp.registerservice.*;
    public class RegisterService implements com.bea.jws.WebService
    static final long serialVersionUID = 1L;
    * @common:operation
    * @jws:protocol form-post="false" form-get="false"
    public org.openuri.registerService.RegisterServiceResponse RegisterService(org.openuri.registerService.RegisterServiceRequestDocument RegisterServiceDoc)
    VendorStockingInterface vsInterface = (VendorStockingInterface)RegisterServiceDoc.getRegisterServiceRequest();
    System.out.println(vsInterface.toString());
    com.verizon.hp.registerservice.RegisterServiceResponse serviceResponse = new com.verizon.hp.registerservice.RegisterServiceResponse();
    serviceResponse.setMessage("Register New Service Message has been received successfully");
    org.openuri.registerService.RegisterServiceResponse response = (org.openuri.registerService.RegisterServiceResponse)serviceResponse;
    return response;
    }

  • What is the different between Logical complex join and Physical join?

    hi,
    Do somebody know what is the function different between logical complex join in BMM layer and physical join in physical layer?
    Thanks.

    Thank you very much1
    I understand their differentiation:
    In the BMM Complex join (intelligent), means OBI picks the best way from possibly many different ways to join using physical join. FK join forces the same join always, which limits flexibility.

  • Diff bw complex join and physical join

    hi all
    Can sumbody explain me the all the differences between complex join and physical join in the admin tool
    Thanks
    Shobhit

    Hi,
    Suggest you to go through this link. It may be helpful in detail.
    http://st-urriculum.oracle.com/obe/fmw/bi/biee/r1013/bi_admin/biadmin.html
    Thanks,
    Vengatesh.

  • Difference between physical join and logical join

    Hi Gurus,
    Can anyone tell me what is the difference between physical join and logical join
    Thanks,
    Chandra

    Hi,
    A physical join is at the physical layer and defines the join between two physical tables. Logical joins live at the BMM (logical) layer and define a join between two logical tables.
    The important differentiation is that at the BMM layer you do not tell the OBIEE server how to do the join, you just tell it that there is a relationship between these two logical entities. When the server comes to this logical join it will use the information in the physical joins and decides how the two logical tables are joined together.
    In BMM you use complex joins to establish which logical tables are joined which another, the OBI EE server will go to the physical level to search the physical join to make the query. You can also use physical joins in the BMM to override the join in the physical layer but only in very specific conditions.
    If you also set complex join in the physical layer OBI EE won't be able to construct the physical query.
    Hope this answers your question.
    Award points if helpful.
    Thanks,
    -Amith.

  • Logical And Physical Joins Of  SH_PartTwo.rpd provided  by oracle OBIEE

    Hi,
    I am new the OBIEE tool.After downloading SH_PartTwo.rpd .Planned to recreate the physical and logical joins.
    If any one has already tried this, kindly explain why we are creating Alias tables of (SALES,TIMES)and joining COSTS to them instead of directly joining to Sales fact table. Below is the table structure.My question again,previously in SH.rpd we were joining Sales fact with other dimensions.If I need cost data then why should'nt I join cost with sales.
    Thanks for your cooperation in advance.
    Regards,
    Sreekanth
    Costs Sales Times Customers Countries Products Promotions Channels
    Timeid Timeid Timeid
    Productid Productid Productid
    Promotionid Promotionid Promotionid
    Channelid Channelid Channelid
    Custid Custid
    Countryid Countryid
    Unitcost Amount_sold

    Well don't know the example anymore ;)
    But you normally will make aliasses to reuse the object.
    So if you have a time dimension, and you have all kind of fields, like date_sold, date_bought, date_paid...
    Now if you connect those dates directly to the time dimension, then you can get very odd reports... if you use aliasses, then the times have nothing to do with each other...
    So it is always better to use aliasses... you never know if you need a table only once..

  • Physical Joins Difference Between 10G and 11G?

    Hi All, I have started using OBIEE 11G. Anybody please let me know is there any difference in applying physical joins in OBIEE 10G and 11G.
    I heard that we need to join Fact and Dim tables in reverse way in 11G.
    Thanks in Advance.

    # Fast-Start Failover for Maximum Performance Mode in a Data Guard Configuration
    # Compression of Redo Traffic (Only for Gap Resolution) Over the Network in a Data Guard Configuration
    # Real-Time Query Capability of Physical Standby Database
    # Fast Role Transitions in a Data Guard Configuration
    # Data Guard Integration, Simplification, and Performance
    # Dynamic Setting of Oracle Data Guard SQL Apply Parameters
    # Enhanced Data Guard Broker Based Management Framework
    # Histogram for Redo Transport Response Time in a Data Guard Configuration
    # Snapshot Standby
    # Strong Authentication for Data Guard Redo Transport
    # Enhanced DDL Handling in Oracle Data Guard SQL Apply
    # Enhanced Oracle RAC Switchover Support for Logical Standby Databases
    # Data Guard Logical Apply Completeness
    # Oracle Scheduler Support in Data Guard SQL Apply
    # Support Transparent Data Encryption (TDE) with Data Guard SQL Apply
    # Support XMLType Data Type (Only CLOB) in Data Guard SQL Apply
    # Virtual Private Database (VPD) Support in Data Guard SQL Apply
    See Also:
    Oracle Data Guard Concepts and Administration for details
    Ref. Oracle® Database New Features Guide
    11g Release 1 (11.1)
    Part Number B28279-01
    ~ Madrid

  • I HAVE JUST BOUGHT AN I PHONE 4S AND SUCCESSFULLY JOINED I CLOUD, ALSO ON MY PC. BUT I HAVE USED A DIFFERENT SIGN IN E MAIL ADDRESS THAN ON MY ORIGINAL I PAD. HOW CAN I CHANGE THAT TO THE NEW E MAIL SIGN IN ?

    I have just bought an i phone 4s and successfully joined i cloud, i have also successfully linked up my pc with i cloud. However my i pad is a little older, and when i signed on to i cloud some time ago i used a different e mail 'sign in' address. How do I change this in order to link all three devices. Thanks in anticipation, David.

    Go to Settings>iCloud, tap Delete Account and provide the password (if using iOS 7), then sign back in with the ID ("email sign in") you want to use.

  • TS3991 I organazied my contacts by the address of my tenants. I just joined to Icloud and I am not able to find my tenants in the directory in the computer at all. I could search when I am using my phone but they do not show at first.how can correct this?

    I am a landlord and I organazied my contacts by the address of my tenants. I just joined to Icloud and I am not able to find my tenants in the directory in the computer at all. I could search when I am using my phone but they do not show at first.how can correct this? as an example 37 31 1 and when i type this nothing is showing.

    I am a landlord and I organazied my contacts by the address of my tenants. I just joined to Icloud and I am not able to find my tenants in the directory in the computer at all. I could search when I am using my phone but they do not show at first.how can correct this? as an example 37 31 1 and when i type this nothing is showing.

  • I want to use Xcode to create an app and i need developer tools. so i need to join the devoper program only problem is I'm not 18

    i want to use Xcode to create an app and i need developer tools. so i need to join the devoper program only problem is I'm not 18

    You can get Xcode without joining the developer program. Just go to the App Store and download it (it's free).
    You'd only need to join the Developer program if you want to put your app into the App Store, this is for OS X.
    You will need to join the Developer program if you want to develop for IOS. In that case you will need a parent or guardian.

  • I have used lightroom trial before, and i found it good. So i joined the lightroom and photoshop program yesterday. And I have downloaded the photoshop.  On the page of apps, I found out I have photoshop and lightroom, but on the front page, I have only d

    I have used lightroom trial before, and I found it good.  So i joined the lightroom and photoshop yesterday.  I have download the photoshop in the adobe creative cloud, but at the front page of adobe creative cloud, it shows that I have not download the lightroom.  I saw the lightroom is already downloaded in the apps of adobe creative cloud.  However, when I key in the icon of lightroom, I found out I have only 0 day and i need to buy.  So what can I do to get the lightroom?

    Chat Now button near the bottom for Activation and Deactivation problems may help
    http://helpx.adobe.com/x-productkb/policy-pricing/activation-deactivation-products.html
    OR
    http://helpx.adobe.com/creative-cloud/kb/license-this-software.html
    Membership and Payments http://helpx.adobe.com/x-productkb/policy-pricing/membership-subscription-troubleshooting- creative-cloud.html

  • Generally when does optimizer use nested loop and Hash joins  ?

    Version: 11.2.0.3, 10.2
    Lets say I have a table called ORDER and ORDER_DETAIL.
    ORDER_DETAIL is the child table of ORDERS .
    This is what I understand about Nested Loop:
    When we join ORDER AND ORDER_DETAIL tables oracle will form a 'nested loop' in which for each order_ID in ORDER table (outer loop), oracle will look for corresponding multiple ORDER_IDs in the ORDER_DETAIL table.
    Is nested loop used when the driving table (ORDER in this case) is smaller than the child table (ORDER_DETAIL) ?
    Is nested loop more likely to use Indexes in general ?
    How will these two tables be joined using Hash joins ?
    When is it ideal to use hash joins  ?

    Your description of a nested loop is correct.
    The overall rule is that Oracle will use the plan that it calculates to be, in general, fastest. That mostly means fewest I/O's, but there are various factors that adjust its calculation - e.g. it expects index blocks to be cached, multiple reads entries in an index may reference the same block, full scans get multiple blocks per I/O. It also has CPU cost calculations, but they generally only become significant with function / package calls or domain indexes (spatial, text, ...).
    Nested loop with an index will require one indexed read of the child table per outer table row, so its I/O cost is roughly twice the number of rows expected to match the where clause conditions on the outer table.
    A hash join reads the of the smaller table into a hash table then matches the rows from the larger table against the hash table, so its I/O cost is the cost of a full scan of each table (unless the smaller table is too big to fit in a single in-memory hash table). Hash joins generally don't use indexes - it doesn't use the index to look up each result. It can use an index as a data source, as a narrow version of the table or a way to identify the rows satisfying the other where clause conditions.
    If you are processing the whole of both tables, Oracle is likely to use a hash join, and be very fast and efficient about it.
    If your where clause restricts it to a just few rows from the parent table and a few corresponding rows from the child table, and you have an index Oracle is likely to use a nested loops solution.
    If the tables are very small, either plan is efficient - you may be surprised by its choice.
    Don't be worry about plans with full scans and hash joins - they are usually very fast and efficient. Often bad performance comes from having to do nested loop lookups for lots of rows.

  • I have a 1.5 hour video of a concert from which I need to extract several 'tracks' as individual files, and then join them together in a new video. How do I do this using imovie?

    I have a 1.5 hour video of a concert from which I need to extract several 'tracks' as individual files, and then join them together in a new video. How do I do this using imovie?

    Adobe has made this process much simpler in recent years.
    No need to re-install any version earlier than the current version (CS6). All installers (upgrade or full) contain the full program code. The difference between full and upgrade is in the serial number.
    All you need do is download (link below) and install CS6, enter the CS6 upgrade serial number then enter the CS5 serial number (even if that too is an upgrade).
    Download CS6 products

Maybe you are looking for

  • Please help me with the iphone 4 trouble

    I'm using iphone4 and i saw a new update IOS7 and i press to update,the iphone is  updating than it turn off for 5 minutes later it turn on again but with the app's logo and it start to repeat again and again and I can not connect to itunes to fix,I

  • Convert Word doc to PDF

    I need assistance on this issue: "Enter Description of Issue: We are trying to implement a solution to automatically convert Word documents generated by Siebel to PDF's in order to mail them to customers. I see from other support requests you advice

  • How do I get CS4 working when CS5 trial stops everything?

    My CS5 Trial has wrecked my CS4 application entirely. I have newspaper pages that are now frozen and my deadline has gone past. I am out thousands of dollars.

  • How can one make a Distinct  Multiplication Table ?

    This Code make Multiplication Table :- BEGIN FOR I IN 1.. 12 LOOP DBMS_OUTPUT.PUT_LINE('---------------------[' ||I ||']----------------------'); FOR J IN 1.. 12 LOOP DBMS_OUTPUT.PUT_LINE(I ||'*' ||J ||'=' ||I * J); END LOOP; END LOOP; END; ---------

  • Apply a format mask in OA Personalisation

    Hi, Can anyone tell me if it's possible to apply a format mask to a number field using OA Personalisation? I'd like to change the format mask of the amount fields on the Purchasing Requisitions page. Thanks in advance for your help.