morrySnow commented on a change in pull request #8695:
URL: https://github.com/apache/incubator-doris/pull/8695#discussion_r836413449



##########
File path: 
fe/fe-core/src/main/java/org/apache/doris/planner/JoinCostEvaluation.java
##########
@@ -147,7 +149,7 @@ public long constructHashTableSpace() {
                 Math.pow(1.5, (int) ((Math.log((double) 
rhsTreeCardinality/4096) / Math.log(1.5)) + 1)) * 4096;
         double nodeOverheadSpace = nodeArrayLen * 16;
         double nodeTuplePointerSpace = nodeArrayLen * rhsTreeTupleIdNum * 8;
-        return Math.round((bucketPointerSpace + (double) rhsTreeCardinality * 
rhsTreeAvgRowSize
+        return Math.round((bucketPointerSpace + (double) rhsTreeCardinality * 
rhsTreeAvgRowSize * COMPRESSION_RATIO

Review comment:
       > In fact, when we wrote this cost formula, we tested it with real 
memory consumption. According to the previous test, the current formula is 
relatively accurate.
   > 
   > If you have actually tested the gap between cost and the real memory 
consumption, can you provide the test data. Let's analyze where the specific 
gap is, instead of simply multiplying by a fixed value.
   
   we do test on tpc-h with sf = 100 and 3 be with 64GB memory.
   q9, q12 and q21 failed on previous cost formula.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to