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

sql: support vector index creation #137370

Closed
DrewKimball opened this issue Dec 13, 2024 · 1 comment
Closed

sql: support vector index creation #137370

DrewKimball opened this issue Dec 13, 2024 · 1 comment
Labels
A-vector-index C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) T-sql-queries SQL Queries Team

Comments

@DrewKimball
Copy link
Collaborator

DrewKimball commented Dec 13, 2024

This issue tracks adding support for vector index creation. We should support the following syntax:

CREATE VECTOR INDEX ...;
CREATE TABLE foo (..., VECTOR INDEX ...);
CREATE INDEX ... USING CSPANN;

support for this feature should include parsing, validating, and creating the index descriptor. We may also need to set up workers to maintain the index in the background.

Jira issue: CRDB-45998

@DrewKimball DrewKimball added C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) T-sql-queries SQL Queries Team A-vector-index labels Dec 13, 2024
@github-project-automation github-project-automation bot moved this to Triage in SQL Queries Dec 13, 2024
DrewKimball added a commit to DrewKimball/cockroach that referenced this issue Dec 17, 2024
This commit adds `IsVector()` and `VectorColumn()` to the `cat.Index`
interface, and implements them both in the test catalog. This prepares
the way to add and test optimizer operators for conducting vector search,
and also provides the interface that the actual catalog must implement
when vector index creation is fully supported.

Informs cockroachdb#137370

Release note: None
DrewKimball added a commit to DrewKimball/cockroach that referenced this issue Dec 20, 2024
This commit adds `IsVector()` and `VectorColumn()` to the `cat.Index`
interface, and implements them both in the test catalog. This prepares
the way to add and test optimizer operators for conducting vector search,
and also provides the interface that the actual catalog must implement
when vector index creation is fully supported.

Informs cockroachdb#137370

Release note: None
craig bot pushed a commit that referenced this issue Dec 20, 2024
137312: roachtest: allow for overriding mvt planner params through env vars r=srosenberg a=DarrylWong

When debugging mixed version tests, one often wishes to generate a specific
upgrade path or use a specific deployment mode. The latter is not possible
without changing the source code while the former is not supported at all.

This change exposes two env vars, MVT_UPGRADE_PATH and MVT_DEPLOYMENT_MODE
to allow for overriding mixed version plan generation.

Release note: none
Epic: none
Fixes: none

137626: sql/opt: allow vector index creation in the test catalog r=DrewKimball a=DrewKimball

#### sql: add support for vector index creation to the parser

It is now possible to create a vector index using `CREATE VECTOR INDEX`
syntax. Vector indexes can also be created inline in `CREATE TABLE`
statements with `VECTOR INDEX ...`. Finally, a vector index can be created
via the new `CSPANN` index access method, like so:
```
CREATE INDEX ON t(v) USING CSPANN;
```

Epic: CRDB-42943

Release note: None

#### opt: rename NonInvertedPrefixColumnCount() to PrefixColumnCount()

This commit renames the `cat.Index` method `NonInvertedPrefixColumnCount`
to just `PrefixColumnCount`. This is preparation for adding support for
vector indexes, which will share the concept of "prefix columns" with
inverted indexes.

Epic: None

Release note: None

#### opt: add vector index creation to the test catalog

This commit adds `IsVector()` and `VectorColumn()` to the `cat.Index`
interface, and implements them both in the test catalog. This prepares
the way to add and test optimizer operators for conducting vector search,
and also provides the interface that the actual catalog must implement
when vector index creation is fully supported.

Informs #137370

Release note: None

137680: rac2,kvserver: expose RACv2 status in ranges.json r=sumeerbhola,kvoli a=pav-kv

This PR plumbs the basic information about the RACv2 range controller and send streams to the `RangeInfo` proto exposed via `ranges.json` in `debug.zip`.

Part of #136014

Co-authored-by: DarrylWong <[email protected]>
Co-authored-by: Drew Kimball <[email protected]>
Co-authored-by: Pavel Kalinnikov <[email protected]>
@mgartner mgartner moved this from Triage to 25.2 Release in SQL Queries Dec 26, 2024
@DrewKimball
Copy link
Collaborator Author

Fixed by #140090 and #140437.

@github-project-automation github-project-automation bot moved this from 25.2 Release to Done in SQL Queries Feb 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-vector-index C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) T-sql-queries SQL Queries Team
Projects
Archived in project
Development

No branches or pull requests

1 participant