[MCOL-3735] Investigate using unix sockets instead of full tcp/ip sockets for localhost connections Created: 2020-01-20 Updated: 2020-01-31 Resolved: 2020-01-31 |
|
| Status: | Closed |
| Project: | MariaDB ColumnStore |
| Component/s: | ? |
| Affects Version/s: | None |
| Fix Version/s: | 1.4.3 |
| Type: | Task | Priority: | Minor |
| Reporter: | Patrick LeBlanc (Inactive) | Assignee: | Patrick LeBlanc (Inactive) |
| Resolution: | Won't Do | Votes: | 0 |
| Labels: | None | ||
| Sprint: | 2020-1 |
| Description |
|
Investigate whether or not there is a benefit to using unix sockets for localhost connections. Really, this is to test whether linux is smart enough to skip the tcp & ip stacks for localhost connections. |
| Comments |
| Comment by Patrick LeBlanc (Inactive) [ 2020-01-20 ] |
|
Will resume after a couple bug fixes. |
| Comment by Patrick LeBlanc (Inactive) [ 2020-01-24 ] |
|
Mixed results in initial testing. {{Benchmarking unix sockets mod
localhost-sockets:
time mariadb tpch1 -e 'select l_comment from lineitem order by 1 limit 100;'
localhost-sockets:
|
| Comment by Patrick LeBlanc (Inactive) [ 2020-01-30 ] |
|
Some add'l test results. Ran the DBT3 queries against a 10GB load. These timings are on the 2nd run of a query, where all of the data is cached. There are also time gaps between queries to ensure there is no CPU time being spent on cleanup tasks when a query starts. At least on my laptop & with queries like this, it looks like there's no benefit to using unix sockets over tcp/ip sockets. Will repeat these benchmarks on a 'real' machine later. localhost-sockets: develop-1.4: |
| Comment by Patrick LeBlanc (Inactive) [ 2020-01-31 ] |
|
A big PM join query. 30GB DBT3 load. set columnstore_ordered_only=on; (2nd run, data is fully cached) This isn't worth bringing into the code at the moment. If there is overhead in using TCP/IP sockets for a localhost connection, it's minimal. I'll keep this in the 'localhost-sockets' branch of my fork in case we want to experiment with it later at some point. |