Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

basic columnar-based data structure #682

Merged

Conversation

Myrrolinz
Copy link
Contributor

  • bit_mask.h: for bitmask
  • cypher_string_t.h: A special implementation of string type. The data structure is designed to store a small string or a pointer to a larger string. It consists of a prefix that stores the first few bytes (4 bytes) of the string, followed by a union that can either hold an 8-byte array called data (to store the remaining part of the string) or an 8-byte pointer called overflowPtr. If the total string length fits within the defined SHORT_STR_LENGTH (which is 12 bytes), it can be stored directly within the structure using the prefix and data. If the string is longer, the overflowPtr is used to point to an external memory location that stores the complete string.
  • column_vector.h: support int and string vector.

src/cypher/resultset/cypher_string_t.h Outdated Show resolved Hide resolved
src/cypher/resultset/cypher_string_t.h Outdated Show resolved Hide resolved
src/cypher/resultset/cypher_string_t.h Outdated Show resolved Hide resolved
src/cypher/resultset/cypher_string_t.h Outdated Show resolved Hide resolved
src/cypher/resultset/bit_mask.h Show resolved Hide resolved
src/cypher/resultset/column_vector.h Show resolved Hide resolved
src/cypher/resultset/column_vector.h Outdated Show resolved Hide resolved
src/cypher/resultset/cypher_string_t.h Outdated Show resolved Hide resolved
src/cypher/resultset/bit_mask.h Show resolved Hide resolved
@qishipengqsp qishipengqsp changed the base branch from master to experimental October 28, 2024 11:16
@qishipengqsp qishipengqsp enabled auto-merge (squash) October 28, 2024 11:17
@yannan-wyn
Copy link
Collaborator

LGTM

@yannan-wyn yannan-wyn disabled auto-merge October 29, 2024 04:54
@yannan-wyn yannan-wyn merged commit f1dbabf into TuGraph-family:experimental Oct 29, 2024
5 checks passed
ljcui pushed a commit to ljcui/tugraph-db that referenced this pull request Dec 20, 2024
* basic columnar-based data structure

* remove unnecessary function in cypher _string_t

* improve resizeOverflowBuffer

* add FieldType

---------

Co-authored-by: Shipeng Qi <[email protected]>
ljcui added a commit that referenced this pull request Dec 21, 2024
* Fix test case error

* update

* Query plan cache for cypher queries. (#676)

* plan cache codebase.

* plan cache codebase.

* split plan_cache.h and plan_cache_param.

* integrate plan_cache into execution process.

* add test cases for parameterized query execution.

* fail direction

* plan cache codebase

* add more pattern for fastQueryParam

* add more pattern for fastQueryParam

* fix lint error

* remove buildit deps.

* fix bug in cypher visitor

* remove unused dir

---------

Co-authored-by: Ke Huang <[email protected]>

* basic columnar-based data structure (#682)

* basic columnar-based data structure

* remove unnecessary function in cypher _string_t

* improve resizeOverflowBuffer

* add FieldType

---------

Co-authored-by: Shipeng Qi <[email protected]>

* Column record (#683)

* basic columnar-based data structure

* columnar data record structure

* remove unnecessary function in cypher _string_t

* improve resizeOverflowBuffer

* add FieldType

* support FieldType

* format fix

---------

Co-authored-by: yannan-wyn <[email protected]>

* Tugraph supporting column based data done (#685)

* basic columnar-based data structure

* columnar data record structure

* operators support column data

* modify runtime_context

* db support columnar-data done

* remove unnecessary function in cypher _string_t

* improve resizeOverflowBuffer

* add FieldType

* support FieldType

* initialize ColumnVector with FieldType

* format fix

* delete comments, adjust indent

* another formatting

* modify according to reviewer's comments

* add username after TODO

* TODO (username)

* TODO

* TODO

* fix potential memory leaking

* delete unlikely definition and usage

* make BATCH_SIZE an independent config

* fix coding standard

* remove whitespace

* static cast FLAGS_BATCH_SIZE

---------

Co-authored-by: yannan-wyn <[email protected]>

* Add column related testing and benchmark (#686)

* basic columnar-based data structure

* columnar data record structure

* operators support column data

* modify runtime_context

* db support columnar-data done

* column related testing and benchmark

* remove unnecessary function in cypher _string_t

* improve resizeOverflowBuffer

* add FieldType

* support FieldType

* initialize ColumnVector with FieldType

* format fix

* delete comments, adjust indent

* another formatting

* modify according to reviewer's comments

* add username after TODO

* TODO (username)

* TODO

* TODO

* fix potential memory leaking

* delete unlikely definition and usage

* add testing for bitmask

* make BATCH_SIZE an independent config

* fix coding standard

* remove whitespace

* static cast FLAGS_BATCH_SIZE

* delete wrong assert

* rm reference in moveDataChunk

---------

Co-authored-by: yannan-wyn <[email protected]>

* Query compilation framework. (#687)

* compilation execution framework.

* execution framework.

* remove static_var usage in data structures.

* test framework.

* generate code on current directory

* delete files after executions.

* fix bugs in test framework.

* LLVM framework

* LLVM backend

* fix compilation error.

* fix lint error.

* fix lint error.

* fix lint error.

---------

Co-authored-by: Ke Huang <[email protected]>

* revert

---------

Co-authored-by: RT_Enzyme <[email protected]>
Co-authored-by: Ke Huang <[email protected]>
Co-authored-by: Myrrolinz <[email protected]>
Co-authored-by: Shipeng Qi <[email protected]>
Co-authored-by: yannan-wyn <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants