diff --git a/VERSIONS/GO_VERSION b/VERSIONS/GO_VERSION index 6521720b4..f1968aa88 100644 --- a/VERSIONS/GO_VERSION +++ b/VERSIONS/GO_VERSION @@ -1 +1 @@ -1.24.5 +1.25.7 diff --git a/content/docs/api/build_proto.md b/content/docs/api/build_proto.md index 4a0dc700f..7ed3706d3 100644 --- a/content/docs/api/build_proto.md +++ b/content/docs/api/build_proto.md @@ -1,6 +1,6 @@ --- title: "Build_proto_api" -date: 2024-08-08T00:23:48+09:00 +date: 2026-02-10T02:02:09Z draft: false weight: 1100 description: How to build gRPC proto files for calling API to your Vald cluster @@ -41,12 +41,10 @@ Let's build proto files using your favorite programming language. There are 3 steps to building API proto: 1. Install gRPC tools - - gRPC official document provides [the way to install for each language](https://grpc.io/docs/languages/).
If your favorite programming language is not there, you can find 3rd party tools for building. 1. Download Vald api proto files and external dependence - - [vald api proto](https://github.com/vdaas/vald/tree/main/apis/proto/v1/vald) - [vald payload proto](https://github.com/vdaas/vald/tree/main/apis/proto/v1/payload) - [googleapis](https://github.com/googleapis/googleapis) @@ -96,7 +94,7 @@ There are many tools for building proto in Rust, we use [tonic](https://github.c [package] name = "vald-grpc" version = "0.1.0" - edition = "2021" + edition = "2024" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html @@ -154,7 +152,6 @@ There are many tools for building proto in Rust, we use [tonic](https://github.c ``` 1. Implement `build.rs` and Build proto - 1. `build.rs` ```rust @@ -207,7 +204,6 @@ There are many tools for building proto in Rust, we use [tonic](https://github.c ``` 1. Implement code using client - 1. `lib.rs` Import build proto in `src/lib.rs` @@ -241,7 +237,6 @@ There are many tools for building proto in Rust, we use [tonic](https://github.c 1. `src/client.rs` There are 4 steps in `src/client.rs`: - 1. Load dataset 1. Insert vector to Vald cluster 1. Search nearest neighbor vectors from Vald cluster after indexing finished diff --git a/content/docs/contributing/coding-style.md b/content/docs/contributing/coding-style.md index 5ac722223..ca1932c0f 100644 --- a/content/docs/contributing/coding-style.md +++ b/content/docs/contributing/coding-style.md @@ -1,6 +1,6 @@ --- title: "Coding Style_contributing" -date: 2024-10-16T16:03:39+09:00 +date: 2026-02-10T02:02:10Z draft: false weight: 300 description: Coding style for Vald project @@ -815,7 +815,6 @@ tests := map[string]func(t *testing.T) test { Test case names should be readable, meaningful, and understandable easily. If you create a new test, the test name should be named based on the below-naming templates - - Success cases: - Start with `success` or `{verb} success` or `success {verb}` - End with the condition `when {condition}` or `with {condition} @@ -988,7 +987,6 @@ Still, in some cases, you may need to change the generated code to meet your req 1. goleak usage There are two methods for valid goroutine leak: - 1. Use `goleak.VerifyNone()` to validate it on each test cases. 1. Use `goleak.VerifyTestMain()` to validate it on each package. @@ -1135,7 +1133,6 @@ Still, in some cases, you may need to change the generated code to meet your req By default, when testing the function of the struct, the target struct initialization is implemented by setting the data from the `fields` defined in the test case. This initialization method has a few disadvantages: - 1. When there are many fields in the struct, it is hard to set them all. 1. The default value is the zero value of the type, not the struct default value from the struct initialization function. diff --git a/content/docs/overview/about-vald.md b/content/docs/overview/about-vald.md index 97d24c1d4..90fe7d491 100644 --- a/content/docs/overview/about-vald.md +++ b/content/docs/overview/about-vald.md @@ -1,6 +1,6 @@ --- title: "About Vald_overview" -date: 2025-09-02T04:53:44Z +date: 2026-02-10T02:02:11Z draft: false weight: 100 description: What is Vald and what you can do with Vald @@ -32,39 +32,31 @@ Vald is easy to use, feature-rich and highly customizable as you needed. - Asynchronous Auto Indexing - - Usually the graph requires locking during indexing, which causes stop-the-world. But Vald uses distributed index graphs so it continues to work during indexing. - Customizable Ingress/Egress Filtering - - Vald implements it's own highly customizable Ingress/Egress filter. - Which can be configured to fit the gRPC interface. - Ingress Filter: Ability to Vectorize through filter on request. - Egress Filter: rerank or filter the searching result with your own algorithm. - Cloud-native based vector searching engine - - Horizontal scalable on memory and CPU for your demand. - Auto Backup for Index data - - Vald supports to backup Vald Agent index data using Object Storage or Persistent Volume. - Distributed Indexing - - Vald distributes vector index to multiple agents, and each agent stores different index. - Index Replication - - Vald stores each index in multiple agents which enables index replicas. - Automatically rebalancing the replica when some Vald agent goes down. - Easy to use - - Vald can be easily installed in a few steps. - Highly customizable - - You can configure the number of vector dimensions, the number of replica and etc. - Multi language supported diff --git a/content/docs/overview/architecture.md b/content/docs/overview/architecture.md index 84dffe0ff..091d31f27 100644 --- a/content/docs/overview/architecture.md +++ b/content/docs/overview/architecture.md @@ -1,6 +1,6 @@ --- title: "Architecture_overview" -date: 2024-08-08T00:23:48+09:00 +date: 2026-02-10T02:02:11Z draft: false weight: 200 description: High-Level architecture design and overview of each component @@ -63,7 +63,6 @@ Here are the concepts of Vald. - Kubernetes based Vald can integrate with Kubernetes which enables the following features. - - Orchestrated Kubernetes supports container orchestration. All components in Vald can be managed by Kubernetes automatically. diff --git a/content/docs/overview/component/mirror-gateway.md b/content/docs/overview/component/mirror-gateway.md index befcff1ae..a4a557ea8 100644 --- a/content/docs/overview/component/mirror-gateway.md +++ b/content/docs/overview/component/mirror-gateway.md @@ -1,6 +1,6 @@ --- title: "Mirror Gateway_overview/Component" -date: 2024-02-15T17:10:09+09:00 +date: 2026-02-10T02:02:12Z draft: false weight: 600 description: Gateway for operating Vald cluster compatible with Multi-region and Multi AZ @@ -66,27 +66,23 @@ Here's an overview of how the Mirror Gateway handles failures for each type of r For more information about status code, please refer to [Mirror Gateway Troubleshooting](/docs/troubleshooting/mirror-gateway). - Insert Request - - If the target host returns a status code of `ALREADY_EXISTS`, the Update request is sent to this host. - If the target host returns a status code other than `OK`, `ALREADY_EXISTS`, the Mirror Gateway returns that status code without continuous processing. - If all target hosts return a status code `ALREADY_EXISTS`, the Mirror Gateway returns `ALREADY_EXISTS`. - If all target hosts return a status code `OK` or `ALREADY_EXISTS`, the Mirror Gateway returns `OK`. - Update Request - - If the target host returns a status code `NOT_FOUND`, the Insert request is sent to this host. - If the target host returns a status code other than `OK`, `ALREADY_EXISTS`, the Mirror Gateway returns that status code without continuous processing. - If all target hosts return a status code `ALREADY_EXISTS`, the Mirror Gateway returns `ALREADY_EXISTS`. - If all target hosts return a status code `OK` or `ALREADY_EXISTS`, the Mirror Gateway returns `OK`. - Upsert Request - - If all target hosts return a status code `ALREADY_EXISTS`, the Mirror Gateway returns `ALREADY_EXISTS`. - If the target host returns a status code other than `OK` or `ALREADY_EXISTS`, the Mirror Gateway returns that status code without continuous processing. - If all target hosts return a status code `OK` or `ALREADY_EXISTS`, the Mirror Gateway returns `OK`. - Remove/RemoveByTimestamp Request - - If all target hosts return a status code `NOT_FOUND`, the Mirror Gateway returns `NOT_FOUND`. - If the target host returns a status code other than `OK` or `NOT_FOUND`, the Mirror Gateway returns that status code without continuous processing. - If all target hosts return a status code `OK` or `NOT_FOUND`, the Mirror Gateway returns `OK`. diff --git a/content/docs/performance/loadtest.md b/content/docs/performance/loadtest.md index e05375b3c..525ed4a0b 100644 --- a/content/docs/performance/loadtest.md +++ b/content/docs/performance/loadtest.md @@ -1,6 +1,6 @@ --- title: "Loadtest_performance" -date: 2025-09-02T04:53:40Z +date: 2026-02-10T02:02:09Z draft: false weight: 200 description: Shows how to perform load test in the Vald cluster @@ -43,14 +43,14 @@ Please refer to the [Sample configuration file](https://github.com/vdaas/vald/bl Here are the important configurations and following the explanation. -| Name | Description | Example | -| :---------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------ | -| service | By setting the value to the gateway, you can test the Vald cluster through the Vald gateway.
By setting the value to agent, you can test the Vald agent directly. | gateway or agent | +| Name | Description | Example | +| :---------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------- | +| service | By setting the value to the gateway, you can test the Vald cluster through the Vald gateway.
By setting the value to agent, you can test the Vald agent directly. | gateway or agent | | operation | To perform the specific load test action to the Vald cluster. | insert, streaminsert, search or streamsearch | -| dataset | The dataset is used in insert and stream insert operation. | | -| concurrency | The number of concurrent execution of the load test. | | -| batch_size | The batch size of the dataset. | | -| addr | The cluster you want to test | | +| dataset | The dataset is used in insert and stream insert operation. | | +| concurrency | The number of concurrent execution of the load test. | | +| batch_size | The batch size of the dataset. | | +| addr | The cluster you want to test | | ## Execute load test diff --git a/content/docs/tutorial/get-started-with-faiss-agent.md b/content/docs/tutorial/get-started-with-faiss-agent.md index f866123a6..813f108ce 100644 --- a/content/docs/tutorial/get-started-with-faiss-agent.md +++ b/content/docs/tutorial/get-started-with-faiss-agent.md @@ -1,6 +1,6 @@ --- title: "Get Started With Faiss Agent_tutorial" -date: 2024-10-16T16:03:40+09:00 +date: 2026-02-10T02:02:11Z draft: false weight: 200 description: Running Vald cluster with faiss Agent on Kubernetes and execute client codes @@ -200,9 +200,7 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
The detailed explanation of example code is here
This will execute 6 steps. - 1. init - - Import packages
example code
@@ -228,7 +226,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
- Set variables - - The constant number of training datasets and test datasets.
example code
@@ -269,7 +266,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
1. load - - Loading from Fashion-MNIST dataset and set id for each vector that is loaded. This step will return the training dataset, test dataset, and ids list of ids when loading is completed with success.
example code
@@ -300,7 +296,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
1. Insert and Index - - Insert and Indexing 400 training datasets to the Vald agent.
example code
@@ -338,7 +333,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
1. Search - - Search 10 neighbor vectors for each 20 test datasets and return a list of the neighbor vectors. - When getting approximate vectors, the Vald client sends search config and vector to the server via gRPC. @@ -369,7 +363,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
1. Remove - - Remove 400 indexed training datasets from the Vald agent.
example code
diff --git a/content/docs/tutorial/get-started.md b/content/docs/tutorial/get-started.md index 7110d2ec4..e78cfab60 100644 --- a/content/docs/tutorial/get-started.md +++ b/content/docs/tutorial/get-started.md @@ -1,6 +1,6 @@ --- title: "Get Started_tutorial" -date: 2024-10-16T16:03:40+09:00 +date: 2026-02-10T02:02:11Z draft: false weight: 100 description: Running Vald cluster with NGT Agent on Kubernetes and execute client codes @@ -255,9 +255,7 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
The detailed explanation of example code is here
This will execute 6 steps. - 1. init - - Import packages
example code
@@ -283,7 +281,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
- Set variables - - The constant number of training datasets and test datasets.
example code
@@ -324,7 +321,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
1. load - - Loading from Fashion-MNIST dataset and set id for each vector that is loaded. This step will return the training dataset, test dataset, and ids list of ids when loading is completed with success.
example code
@@ -355,7 +351,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
1. Insert and Index - - Insert and Indexing 400 training datasets to the Vald agent.
example code
@@ -393,7 +388,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
1. Search - - Search 10 neighbor vectors for each 20 test datasets and return a list of the neighbor vectors. - When getting approximate vectors, the Vald client sends search config and vector to the server via gRPC. @@ -424,7 +418,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
1. Remove - - Remove 200 indexed training datasets from the Vald agent.
example code
@@ -447,7 +440,6 @@ If you are interested, please refer to [SDKs](/docs/user-guides/sdks).
1. Flush - - Remove all remaining training datasets from the Vald agent.
example code
diff --git a/content/docs/tutorial/vald-agent-standalone-on-docker.md b/content/docs/tutorial/vald-agent-standalone-on-docker.md index be2eec7a4..777e6dca3 100644 --- a/content/docs/tutorial/vald-agent-standalone-on-docker.md +++ b/content/docs/tutorial/vald-agent-standalone-on-docker.md @@ -1,6 +1,6 @@ --- title: "Vald Agent Standalone on Docker_tutorial" -date: 2024-02-15T17:10:12+09:00 +date: 2026-02-10T02:02:10Z draft: false weight: 400 description: Running Vald Agent on Docker and execute client codes @@ -142,7 +142,6 @@ This chapter will use NGT for the core engine of Vald Agent. To deploy Vald agent on docker with `config.yaml`, you can run the below command. Note: - - Please check whether there is `config.yaml` file and `backup` directory in your current directory. ```bash diff --git a/content/docs/tutorial/vald-agent-standalone-on-k8s.md b/content/docs/tutorial/vald-agent-standalone-on-k8s.md index 168a662a6..5024aca24 100644 --- a/content/docs/tutorial/vald-agent-standalone-on-k8s.md +++ b/content/docs/tutorial/vald-agent-standalone-on-k8s.md @@ -1,6 +1,6 @@ --- title: "Vald Agent Standalone on K8s_tutorial" -date: 2025-09-02T04:53:43Z +date: 2026-02-10T02:02:11Z draft: false weight: 300 description: Running only Vald Agent on Kubernetes and execute client codes @@ -158,9 +158,7 @@ This chapter uses [NGT](https://github.com/yahoojapan/ngt) as Vald Agent to perf
The detailed explanation of example code is here
This will execute 6 steps. - 1. init - - Import packages
example code
@@ -187,7 +185,6 @@ This chapter uses [NGT](https://github.com/yahoojapan/ngt) as Vald Agent to perf
- Set variables - - The constant number of training datasets and test datasets.
example code
@@ -228,7 +225,6 @@ This chapter uses [NGT](https://github.com/yahoojapan/ngt) as Vald Agent to perf
1. load - - Loading from Fashion-MNIST dataset and set id for each vector that is loaded. This step will return the training dataset, test dataset, and ids list of ids when loading is completed with success.
example code
@@ -258,7 +254,6 @@ This chapter uses [NGT](https://github.com/yahoojapan/ngt) as Vald Agent to perf
1. Insert and Index - - Insert and Indexing 400 training datasets to the Vald agent.
example code
@@ -314,7 +309,6 @@ This chapter uses [NGT](https://github.com/yahoojapan/ngt) as Vald Agent to perf
1. Search - - Search 10 neighbor vectors for each 20 test datasets and return a list of neighbor vectors. - When getting approximate vectors, the Vald client sends search config and vector to the server via gRPC. @@ -345,7 +339,6 @@ This chapter uses [NGT](https://github.com/yahoojapan/ngt) as Vald Agent to perf
1. Remove - - Remove indexed 400 training datasets from the Vald agent.
example code
diff --git a/content/docs/user-guides/client-api-config.md b/content/docs/user-guides/client-api-config.md index 798348264..7e366be2d 100644 --- a/content/docs/user-guides/client-api-config.md +++ b/content/docs/user-guides/client-api-config.md @@ -1,6 +1,6 @@ --- title: "Client Api Config_user Guides" -date: 2024-10-16T16:03:40+09:00 +date: 2026-02-10T02:02:12Z draft: false weight: 1000 description: Shows more detailed explanation about APIs configuration @@ -387,20 +387,17 @@ When `timestamp` is not set, the current time will be used. Vald provides four types of search services. 1. Search - - `Search` is the `ANN(Approximate Nearest Neighbor)` search with query vector. It is a fast search even though large dimension vector. The search duration is quick but less accurate than `LinearSearch`. The search algorithm depends on each core algorithm. 1. SearchById - - `SearchById` is the `ANN(Approximate Nearest Neighbor)` search with the stored vector's ID. The ID should already exist in the NGT indexes before the search process. The search algorithm is the same as `Search`. 1. LinearSearch - - `LinearSearch` is the most general search algorithm with a query vector. It searches all indexed vectors and calculates the distance between the query. It returns accurate results but requires more processing time than `Search` (ANN search) as it needs to calculate from all indexed vectors instead of only a subset of indexed vectors. diff --git a/content/docs/user-guides/deployment.md b/content/docs/user-guides/deployment.md index 53a60beff..58a34ace7 100644 --- a/content/docs/user-guides/deployment.md +++ b/content/docs/user-guides/deployment.md @@ -1,6 +1,6 @@ --- title: "Deployment_user Guides" -date: 2024-08-08T00:23:47+09:00 +date: 2026-02-10T02:02:12Z draft: false weight: 600 description: How to launch Vald cluster on your Kubernetes cluster @@ -14,7 +14,6 @@ menu: There are two major ways for the deployment of the Vald cluster ways: Using the Helm command with `values.yaml` or without Helm command using operator called `vald-helm-operator`. - Using Helm command with `values.yaml` - - Easy to deploy - Allow editing Vald configuration values when the user executes Helm command with inlining. - Need Helm command when applying configuration diff --git a/content/docs/user-guides/upgrade-cluster.md b/content/docs/user-guides/upgrade-cluster.md index b0f67f083..c1c930113 100644 --- a/content/docs/user-guides/upgrade-cluster.md +++ b/content/docs/user-guides/upgrade-cluster.md @@ -1,6 +1,6 @@ --- title: "Upgrade Cluster_user Guides" -date: 2024-08-08T00:23:47+09:00 +date: 2026-02-10T02:02:12Z draft: false weight: 800 description: Describes hot to upgrade Vald version for the running Vald cluster @@ -104,7 +104,6 @@ If there is major or minor upgrading, the chart structure may have changed. ``` 1. Edit `values.yaml` - - We recommend setting a specific version as an image tag. ```yaml @@ -141,7 +140,6 @@ The upgrading steps are below if you use `vald-helm-operator` for the deployment - Also, you can upgrade manually by editing `vhor.yaml` and applying it. 1. Edit `vr.yaml` - - We recommend setting a specific version as an image tag. ```yaml diff --git a/stage b/stage index f06b29b22..6e06ebb3a 160000 --- a/stage +++ b/stage @@ -1 +1 @@ -Subproject commit f06b29b227f7aaf2fa876f867d54fd95cd09b9fc +Subproject commit 6e06ebb3a30dd8fd2542c9c8c1d1793ff6f8284e