Skip to content

[c++] Geometry Dataframe#3212

Merged
XanthosXanthopoulos merged 2 commits intomainfrom
xan/geometry_dataframe_cpp
Nov 6, 2024
Merged

[c++] Geometry Dataframe#3212
XanthosXanthopoulos merged 2 commits intomainfrom
xan/geometry_dataframe_cpp

Conversation

@XanthosXanthopoulos
Copy link
Copy Markdown
Collaborator

This PR adds the new SOMAGeometryDataFrame object. This new object requires spatial axes to be determined and uses them internally to index geometry objects stored as a WKB encoded attribute. To differentiate between binary attributes and WKB binary attributes the Arrow schema requires a dtype metadata key with the value WKB.

@codecov
Copy link
Copy Markdown

codecov Bot commented Oct 21, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 83.97%. Comparing base (99ba3a3) to head (ead7104).
Report is 39 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3212      +/-   ##
==========================================
+ Coverage   83.86%   83.97%   +0.10%     
==========================================
  Files          51       51              
  Lines        5505     5505              
==========================================
+ Hits         4617     4623       +6     
+ Misses        888      882       -6     
Flag Coverage Δ
python 83.97% <ø> (+0.10%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
python_api 83.97% <ø> (+0.10%) ⬆️
libtiledbsoma ∅ <ø> (∅)

@XanthosXanthopoulos XanthosXanthopoulos requested review from johnkerl, jp-dark and nguyenv and removed request for jp-dark and nguyenv October 21, 2024 21:11
@XanthosXanthopoulos XanthosXanthopoulos marked this pull request as ready for review October 21, 2024 21:12
Copy link
Copy Markdown
Collaborator

@jp-dark jp-dark left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That parts of this I understand look good to me, but I'm not familiar enough with the arrow adapter code to have a good sense of what impact the change might have there.

Comment thread libtiledbsoma/src/utils/arrow_adapter.cc Outdated
Comment thread libtiledbsoma/src/utils/arrow_adapter.cc Outdated
Comment thread libtiledbsoma/src/utils/arrow_adapter.h
Comment thread libtiledbsoma/src/soma/soma_geometry_dataframe.h Outdated
Comment thread libtiledbsoma/src/soma/soma_geometry_dataframe.h
Comment thread libtiledbsoma/src/soma/soma_geometry_dataframe.cc Outdated
Comment thread libtiledbsoma/test/unit_soma_geometry_dataframe.cc Outdated
Comment thread libtiledbsoma/test/unit_soma_geometry_dataframe.cc Outdated
Comment thread libtiledbsoma/test/unit_soma_geometry_dataframe.cc
Comment thread libtiledbsoma/test/unit_soma_geometry_dataframe.cc
Comment thread libtiledbsoma/src/utils/arrow_adapter.cc Outdated
Comment thread libtiledbsoma/src/utils/arrow_adapter.cc Outdated
Copy link
Copy Markdown
Contributor

@nguyenv nguyenv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this look good! Maybe wait for one more approval since it's a larger PR though.

const std::string ENCODING_VERSION_KEY = "soma_encoding_version";
const std::string ENCODING_VERSION_VAL = "1.1.0";
const std::string SOMA_GEOMETRY_COLUMN_NAME = "soma_geometry";
const std::string SOMA_GEOMETRY_DIMENSION_PREFIX = "tiledb__internal__";
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
const std::string SOMA_GEOMETRY_DIMENSION_PREFIX = "tiledb__internal__";
const std::string SOMA_GEOMETRY_DIMENSION_PREFIX = "tiledb_internal__";

@XanthosXanthopoulos XanthosXanthopoulos merged commit 94eb538 into main Nov 6, 2024
@XanthosXanthopoulos XanthosXanthopoulos deleted the xan/geometry_dataframe_cpp branch November 6, 2024 10:14
johnkerl pushed a commit that referenced this pull request Nov 6, 2024
* Geometry dataframe implementation, use spatial axes when available when creating schema

* Address PR review comments
johnkerl added a commit that referenced this pull request Nov 6, 2024
* Geometry dataframe implementation, use spatial axes when available when creating schema

* Address PR review comments

Co-authored-by: XanthosXanthopoulos <[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