You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "Zoltán Borók-Nagy (Jira)" <ji...@apache.org> on 2023/08/16 12:37:00 UTC

[jira] [Created] (IMPALA-12373) Implement Small String Optimization for StringValue

Zoltán Borók-Nagy created IMPALA-12373:
------------------------------------------

             Summary: Implement Small String Optimization for StringValue
                 Key: IMPALA-12373
                 URL: https://issues.apache.org/jira/browse/IMPALA-12373
             Project: IMPALA
          Issue Type: Improvement
            Reporter: Zoltán Borók-Nagy


Implement Small String Optimization for StringValue.

Current memory layout of StringValue is:
{noformat}
  char* ptr;  // 8 byte
  int len;    // 4 byte
{noformat}
For small strings with size up to 8 we could store the string contents in the bytes of the 'ptr'. Something like that:
{noformat}
  union {
    char* ptr;
    char small_buf[sizeof(ptr)];
  }
  int len;
{noformat}
Many C++ string implementations use the {{Small String Optimization}} to speed up work with small strings. For example: {{{}Microsoft STL{}}}, {{{}libstdc++{+}{+}{}}}, {{{}libc++{}}}, {{{}Boost{}}}, {{{}Folly{}}}.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org