greenplumn CLeftAntiSemiJoinStatsProcessor 源码
greenplumn CLeftAntiSemiJoinStatsProcessor 代码
文件路径:/src/backend/gporca/libnaucrates/include/naucrates/statistics/CLeftAntiSemiJoinStatsProcessor.h
//---------------------------------------------------------------------------
//	Greenplum Database
//	Copyright (C) 2018 VMware, Inc. or its affiliates.
//
//	@filename:
//		CLeftAntiSemiJoinStatsProcessor.h
//
//	@doc:
//		Processor for computing statistics for Left Anti-Semi Join
//---------------------------------------------------------------------------
#ifndef GPNAUCRATES_CLeftAntiSemiJoinStatsProcessor_H
#define GPNAUCRATES_CLeftAntiSemiJoinStatsProcessor_H
#include "naucrates/statistics/CJoinStatsProcessor.h"
namespace gpnaucrates
{
class CLeftAntiSemiJoinStatsProcessor : public CJoinStatsProcessor
{
public:
	// helper for LAS-joining histograms
	static void JoinHistogramsLASJ(
		const CHistogram *histogram1, const CHistogram *histogram2,
		CStatsPredJoin *join_stats, CDouble num_rows1, CDouble num_rows2,
		CHistogram **result_hist1,	// output: histogram 1 after join
		CHistogram **result_hist2,	// output: histogram 2 after join
		CDouble *scale_factor,		// output: scale factor based on the join
		BOOL is_input_empty,		// if true, one of the inputs is empty
		IStatistics::EStatsJoinType join_type,
		BOOL DoIgnoreLASJHistComputation);
	// left anti semi join with another stats structure
	static CStatistics *CalcLASJoinStatsStatic(
		CMemoryPool *mp, const IStatistics *outer_stats_input,
		const IStatistics *inner_stats_input,
		CStatsPredJoinArray *join_preds_stats,
		BOOL
			DoIgnoreLASJHistComputation	 // except for the case of LOJ cardinality estimation this flag is always
		// "true" since LASJ stats computation is very aggressive
	);
	// compute the null frequency for LASJ
	static CDouble NullFreqLASJ(CStatsPred::EStatsCmpType stats_cmp_type,
								const CHistogram *outer_histogram,
								const CHistogram *inner_histogram);
};
}  // namespace gpnaucrates
#endif	// !GPNAUCRATES_CLeftAntiSemiJoinStatsProcessor_H
// EOF
相关信息
相关文章
greenplumn CFilterStatsProcessor 源码
greenplumn CGroupByStatsProcessor 源码
greenplumn CInnerJoinStatsProcessor 源码
greenplumn CJoinStatsProcessor 源码
greenplumn CLeftOuterJoinStatsProcessor 源码
greenplumn CLeftSemiJoinStatsProcessor 源码
                        
                            0
                        
                        
                             赞
                        
                    
                    
                热门推荐
- 
                        2、 - 优质文章
 - 
                        3、 gate.io
 - 
                        7、 openharmony
 - 
                        9、 golang