englefly opened a new pull request, #10009: URL: https://github.com/apache/incubator-doris/pull/10009
# Proposed changes when column is dict encoded, in_predicate::evaluate() put dict code of IN_LIST into a set, and then compare the selected codes with column cells. The selected dict codes are put into a map, by which the evaluate time is O(logN) It is better to use a std::vector to indicated if a dict word is in IN_LIST, by which the evaluate time shrinks to O(1). test evn: ssb_flat 5G test sql: simplified from ssb q.3.3 SELECT count(c_city) FROM lineorder_flat WHERE C_CITY in ('UNITED KI1','UNITED KI5'); ShortPredEvalTime is decreased from 240ms to 170ms by average. 在测试环境中 ssb100-flat, 3BE q3.3 从291ms下降到248ms Issue Number: close #xxx ## Problem Summary: Describe the overview of changes. ## Checklist(Required) 1. Does it affect the original behavior: (Yes/No/I Don't know) 2. Has unit tests been added: (Yes/No/No Need) 3. Has document been added or modified: (Yes/No/No Need) 4. Does it need to update dependencies: (Yes/No) 5. Are there any changes that cannot be rolled back: (Yes/No) ## Further comments If this is a relatively large or complex change, kick off the discussion at [d...@doris.apache.org](mailto:d...@doris.apache.org) by explaining why you chose the solution you did and what alternatives you considered, etc... -- 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: commits-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org