Package org.apache.pig.backend.executionengine

Examples of org.apache.pig.backend.executionengine.ExecPhysicalOperator


       
        if (materializedResult != null) {
           
            if (PigContext.instantiateFuncFromSpec(materializedResult.outFileSpec.getFuncSpec())
                                                            instanceof ReversibleLoadStoreFunc) {
                ExecPhysicalOperator pp = new POLoad(logicalKey.getScope(),
                            nodeIdGenerator.getNextNodeId(logicalKey.getScope()),
                            physicalOpTable,
                            pigContext,
                            materializedResult.outFileSpec,
                            LogicalOperator.FIXED);

               OperatorKey ppKey = new OperatorKey(pp.getScope(), pp.getId());
               return ppKey;         
            }

        }
View Full Code Here


    private boolean compileOperator(OperatorKey logicalKey,
                                    Map<OperatorKey, LogicalOperator> logicalOpTable,
                                    Properties properties,
                                    OperatorKey physicalKey)
            throws ExecException {
        ExecPhysicalOperator pp;
        LogicalOperator lo = logicalOpTable.get(logicalKey);
        String scope = lo.getScope();
        boolean compileInputs = true;
       
        if (lo instanceof LOEval) {
           
            pp = new POEval(scope,
                           nodeIdGenerator.getNextNodeId(scope),
                           physicalOpTable,
                           ((LOEval) lo).getSpec(),
                           lo.getOutputType());
        }
        else if (lo instanceof LOCogroup) {
            pp = new POCogroup(scope,
                               nodeIdGenerator.getNextNodeId(scope),
                               physicalOpTable,
                               ((LOCogroup) lo).getSpecs(),
                               lo.getOutputType());
       
        else if (lo instanceof LOLoad) {
            pp = new POLoad(scope,
                            nodeIdGenerator.getNextNodeId(scope),
                            physicalOpTable,
                            pigContext,
                            ((LOLoad)lo).getInputFileSpec(),
                            lo.getOutputType());
        }
        else if (lo instanceof LOSplitOutput) {
            LOSplitOutput loso = (LOSplitOutput)lo;
            LOSplit los = ((LOSplit)(logicalOpTable.get(loso.getInputs().get(0))));
           
            pp = new POSplit(scope,
                             nodeIdGenerator.getNextNodeId(scope),
                             physicalOpTable,
                             doCompile(los.getInputs().get(0),
                                       logicalOpTable,
                                       properties),
                             los.getConditions(),
                             loso.getReadFrom(),
                             lo.getOutputType());
           
            compileInputs = false;
        }
        else if (lo instanceof LOStore) {
            pp = new POStore(scope,
                             nodeIdGenerator.getNextNodeId(scope),
                             physicalOpTable,
                             lo.getInputs().get(0),
                             materializedResults,
                             ((LOStore)lo).getOutputFileSpec(),
                             ((LOStore)lo).isAppend(),
                             pigContext);
        }
        else if (lo instanceof LOUnion) {
            pp = new POUnion(scope,
                             nodeIdGenerator.getNextNodeId(scope),
                             physicalOpTable,
                             ((LOUnion)lo).getInputs().size(),
                             lo.getOutputType());
        }
        else if (lo instanceof LOSort) {
            pp = new POSort(scope,
                            nodeIdGenerator.getNextNodeId(scope),
                            physicalOpTable,
                            ((LOSort)lo).getSortSpec(),
                            lo.getOutputType());
        }
        else {
            throw new ExecException("Internal error: Unknown logical operator.");
        }
       
        physicalKey.scope = pp.getScope();
        physicalKey.id = pp.getId();
       
        logicalToPhysicalKeys.put(logicalKey, physicalKey);
       
        return compileInputs;
    }
View Full Code Here

TOP

Related Classes of org.apache.pig.backend.executionengine.ExecPhysicalOperator

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.