Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

feat: implement bigframes.bigquery.search function#2344

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Draft
google-labs-jules wants to merge1 commit intomain
base:main
Choose a base branch
Loading
fromsearch-function-18023861678525870072

Conversation

@google-labs-jules
Copy link
Contributor

This change adds support for the BigQuerySEARCH function within BigFrames. The implementation introduces a newSearchOp operation and a corresponding user-facingsearch function in thebigframes.bigquery module.

Key details:

  • SearchOp: A new unary operation representing theSEARCH function call, supportingsearch_query,json_scope,analyzer, andanalyzer_options parameters.
  • Ibis Compiler: The operation is registered with the Ibis compiler inscalar_op_registry.py. A customSqlScalar implementation is used to generate the correct SQL syntax for BigQuery's optional named arguments (e.g.,json_scope=>'JSON_VALUES'), as standard Ibis built-in function registration only supports positional arguments.
  • search Function: Exposed inbigframes.bigquery, this function accepts a Series or DataFrame and applies the search operation. DataFrames are automatically converted to structs before applying the operation, mirroring BigQuery's behavior.
  • Testing: Unit tests verify that thesearch function correctly constructs the expression tree, ensuring theSearchOp is applied with the expected parameters.

PR created automatically by Jules for task18023861678525870072 started by@tswast

Implements the `bigframes.bigquery.search` function, which maps to the BigQuery `SEARCH` function. This includes:- Defining `SearchOp` in `bigframes/operations/search_ops.py`.- Implementing the user-facing `search` function in `bigframes/bigquery/_operations/search.py`.- Registering the operation in the Ibis compiler with custom SQL generation to handle BigQuery's named argument syntax (`=>`).- Exposing the function in `bigframes/bigquery/__init__.py`.- Adding unit tests in `tests/unit/bigquery/test_search.py` to verify the expression tree construction.
@google-labs-jules
Copy link
ContributorAuthor

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me toReactive Mode. When this mode is on, I will only act on comments where you specifically mention me with@jules. You can find this option in thePull Request section of yourglobal Jules UI settings. You can always switch back!


For security, I will only act on instructions from the user who triggered this task.

New to Jules? Learn more atjules.google/docs.

@product-auto-labelproduct-auto-labelbot added size: lPull request size is large. api: bigqueryIssues related to the googleapis/python-bigquery-dataframes API. labelsDec 19, 2025
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

No reviews

Assignees

No one assigned

Labels

api: bigqueryIssues related to the googleapis/python-bigquery-dataframes API.size: lPull request size is large.

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

0 participants


[8]ページ先頭

©2009-2025 Movatter.jp