Skip to content

gsoc/embedding-ingestion - #162

Open
i-am-leslie wants to merge 13 commits into
cBioPortal:mainfrom
i-am-leslie:gsoc/embedding-ingestion
Open

gsoc/embedding-ingestion#162
i-am-leslie wants to merge 13 commits into
cBioPortal:mainfrom
i-am-leslie:gsoc/embedding-ingestion

Conversation

@i-am-leslie

@i-am-leslie i-am-leslie commented Jun 12, 2026

Copy link
Copy Markdown

Describe changes proposed in this pull request:

  • Introduced Python validation layer for embedding data types, including EmbeddingDefinitionValidator and EmbeddingValidator in validateData.py
  • Implemented Java ingestion layer for embedding definitions, including EmbeddingDefinition model, DaoEmbeddingDefinition, and ImportEmbeddingDefinition
  • Implemented Java ingestion layer for embedding data, including EmbeddingData model, DaoEmbeddingData, and ImportEmbeddingData using ClickHouseBulkLoader for high-volume coordinate ingestion
  • Registered EMBEDDING and EMBEDDING_DEFINITION meta types in IMPORTER_CLASSNAME_BY_META_TYPE and IMPORTER_REQUIRES_METADATA (TODO: negative tests and edge cases to be added in a follow-up)
  • Added tests for ImportEmbeddingDefinition and ImportEmbeddingData scripts
  • Added unit tests for EmbeddingDefinitionValidator and EmbeddingValidator covering the happy path (TODO: negative tests and edge cases to be added in a follow-up)

Checks

Notify reviewers

Read our Pull request merging
policy
. It can help to figure out who worked on the
file before you. Please use git blame <filename> to determine that
and notify them either through slack or by assigning them as a reviewer on the PR

Note future plan

  • Rename ambiguous embeddingId fields for clarity on both new models for EmbeddingDefinition and EmbeddingData. Needs to be renamed for clarity
  • Write more tests for the importer, which includes the Java layer(import) and Python layer(validation)
  • Edit the validation requirements for meta files so that definition no longer reqires cancser study id rather the embedding meta file requires cacncer study id
  • Use the log to provide useful outputs throughout the importing process
  • Fix a situation where data has been imported to the data embedding table it should not appear twice on the table. It should only appear once, Possible solutions using ReplacingMegeTree as the engine for the table so clickhouse sorts ut out later dont forget the orderyby

@i-am-leslie
i-am-leslie marked this pull request as ready for review July 1, 2026 00:08
@i-am-leslie
i-am-leslie force-pushed the gsoc/embedding-ingestion branch 2 times, most recently from e86b2ee to 9b84548 Compare July 1, 2026 00:43
@i-am-leslie i-am-leslie changed the title Embedding import gsoc/embedding-ingestion Jul 10, 2026
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.

1 participant