Comments (7)
DuckDB has a custom LIKE implementation not using regular expressions: https://github.com/duckdb/duckdb/blob/master/src/function/scalar/string/like.cpp
DuckDB folks considered switching to RE2, but found that RE2 is 2-4x slower: duckdb/duckdb#157
Same for OmniSciDB: https://github.com/omnisci/omniscidb/blob/master/Utils/StringLike.cpp#L94
CC: @biswapesh @spershin @amitkdutta
from velox.
Masha and I discussed this last week. We concluded that the current re2 based implementation is sufficient for the purpose of tpch coverage. There will be subsequent work when optimizing tpch queries.
from velox.
More changes are needed in presto_cpp for the e2e TPC-H query.
from velox.
https://github.com/facebookexternal/presto_cpp/pull/537 for presto_cpp changes
from velox.
@aditi-pandit Aditi, have you had a chance to check performance of LIKE to see if we need to special case starts-with, ends-with and contains expressions. E.g. can we check whether RE2 is already optimized for foo%, %bar and %foo% patterns and if not provide non-regexp implementation for such patterns.
CC: @kgpai @spershin @tanjialiang
from velox.
Seems this is already done. Shall we close the issue? @aditi-pandit
from velox.
@yingsu00 : I have not spent much time benchmarking the like operator. But I will open a separate issue for it and close this one.
Opened issue #872
from velox.
Related Issues (20)
- Wrong result while Iceberg table read with Positional Delete HOT 2
- Velox parquet scan fail when select row index column before data column HOT 2
- Move to Centos9 Stream as Centos8 Stream is going EOL 2024-05-31 HOT 2
- Support Oniguruma-based regex functions. HOT 1
- TIMESTAMP type cannot represent seconds representable in Spark HOT 4
- Optimize try_cast(varchar as date/timestamp)
- Refactor DateTimeFormatter::parse to return velox::Expected HOT 3
- Create a NOTICE file
- Parquet PageReader incorrectly skips rep/def levels when the max values are 0
- Print stack trace on fuzzer crashes in CI
- velox_test_util is being used in non-test targets HOT 5
- Folly F14Table.h rehashImpl Assertion failure HOT 2
- S3FileSystemRegistrationTest.cpp:69:56: error: no matching function HOT 5
- Row index column can't work as expected if no data column been selected HOT 2
- Arrow third-party compilation not passing CMAKE_PREFIX_PATH
- scalar-functions doc examples use not exist method : DecodedVector::values HOT 2
- Spark input_file_name design HOT 15
- Unit tests S3FileSystemTest.viaRegistry and S3FileSystemTest.fileHandle are failing at merge time. HOT 4
- HashJoinTest.failedToReclaimFromHashJoinBuildersInNonReclaimableSection is flaky HOT 1
- Window and aggregation fuzzer failing after #9759 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from velox.