Vector bucket adalah kontainer untuk menyimpan indeks vektor dan data vektor, yang berfungsi sebagai unit penyimpanan dasar dalam membangun dan mengelola layanan pengambilan vektor berskala besar.
Standard-mode saat ini tersedia di wilayah berikut: China (Shenzhen), China (Qingdao), China (Beijing), China (Hangzhou), China (Shanghai), China (Ulanqab), Singapura, China (Hong Kong), Indonesia (Jakarta), Jerman (Frankfurt), AS (Silicon Valley), dan AS (Virginia).
Fusion-mode saat ini dalam pratinjau undangan dan hanya tersedia di wilayah Indonesia (Jakarta).
Create vector bucket
Satu Akun Alibaba Cloud dapat membuat maksimal 100 vector bucket di satu wilayah.
Console
Pada halaman Vector Buckets, klik Create a Vector Bucket.
Konfigurasikan bucket:
Vector Bucket Name: Nama harus unik per wilayah untuk satu Akun Alibaba Cloud. Nama harus terdiri dari 3 hingga 32 karakter dan hanya boleh berisi huruf kecil, angka, dan tanda hubung (-). Nama tidak boleh dimulai atau diakhiri dengan tanda hubung.
Region: Pilih wilayah untuk bucket. Pengaturan ini tidak dapat diubah setelah bucket dibuat. Untuk mengurangi latensi akses, pilih wilayah yang paling dekat dengan lokasi bisnis Anda.
Redundancy Type: Penyimpanan redundansi zona digunakan secara default untuk menjamin keandalan tinggi. Tidak perlu melakukan perubahan.
Endpoint: Sistem secara otomatis menghasilkan titik akhir untuk bucket. Layanan ini menyediakan titik akhir publik dan internal yang terpisah serta diisolasi dari bucket OSS standar.
Klik OK untuk membuat bucket.
ossutil
Buat vector bucket bernama examplebucket.
ossutil vectors-api put-vector-bucket --bucket examplebucket --account-id <your-account-id>SDK
Python
import argparse
import alibabacloud_oss_v2 as oss
import alibabacloud_oss_v2.vectors as oss_vectors
parser = argparse.ArgumentParser(description="vector put bucket sample")
parser.add_argument('--region', help='Wilayah tempat bucket berada.', required=True)
parser.add_argument('--bucket', help='Nama bucket.', required=True)
parser.add_argument('--endpoint', help='Titik akhir untuk mengakses OSS.', required=False)
parser.add_argument('--account_id', help='ID akun.', required=True)
def main():
args = parser.parse_args()
# Muat kredensial dari variabel lingkungan
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# Gunakan konfigurasi default SDK
cfg = oss.config.load_default()
cfg.credentials_provider = credentials_provider
cfg.region = args.region
cfg.account_id = args.account_id
cfg.use_internal_endpoint = True # Atur ke False atau hapus baris ini jika ingin mengakses OSS melalui jaringan publik.
if args.endpoint is not None:
cfg.endpoint = args.endpoint
vector_client = oss_vectors.Client(cfg)
result = vector_client.put_vector_bucket(oss_vectors.models.PutVectorBucketRequest(
bucket=args.bucket,
))
print(f'status code: {result.status_code},'
f' request id: {result.request_id},'
)
if __name__ == "__main__":
main()Go
package main
import (
"context"
"flag"
"log"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/vectors"
)
var (
region string
bucketName string
accountId string
)
func init() {
flag.StringVar(®ion, "region", "", "Wilayah tempat vector bucket berada.")
flag.StringVar(&bucketName, "bucket", "", "Nama vector bucket.")
flag.StringVar(&accountId, "account-id", "", "ID akun.")
}
func main() {
flag.Parse()
if len(bucketName) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, nama bucket wajib diisi")
}
if len(region) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, wilayah wajib diisi")
}
if len(accountId) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, accountId wajib diisi")
}
cfg := oss.LoadDefaultConfig().
WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
WithRegion(region).WithAccountId(accountId).
// Untuk menggunakan titik akhir publik, atur parameter ini ke false atau hapus baris ini.
WithUseInternalEndpoint(true)
client := vectors.NewVectorsClient(cfg)
request := &vectors.PutVectorBucketRequest{
Bucket: oss.Ptr(bucketName),
}
result, err := client.PutVectorBucket(context.TODO(), request)
if err != nil {
log.Fatalf("gagal membuat vector bucket %v", err)
}
log.Printf("hasil pembuatan vector bucket:%#v\n", result)
}Java
import com.aliyun.sdk.service.oss2.credentials.CredentialsProvider;
import com.aliyun.sdk.service.oss2.credentials.EnvironmentVariableCredentialsProvider;
import com.aliyun.sdk.service.oss2.vectors.OSSVectorsClient;
import com.aliyun.sdk.service.oss2.vectors.models.PutVectorBucketRequest;
import com.aliyun.sdk.service.oss2.vectors.models.PutVectorBucketResult;
public class PutVectorBucketSample {
public static void main(String[] args) throws Exception {
CredentialsProvider provider = new EnvironmentVariableCredentialsProvider();
try (OSSVectorsClient client = OSSVectorsClient.newBuilder()
.region("cn-hangzhou")
.accountId("1234567890")
.credentialsProvider(provider)
.build()) {
PutVectorBucketRequest request = PutVectorBucketRequest.newBuilder()
.bucket("examplebucket")
.build();
PutVectorBucketResult result = client.putVectorBucket(request);
System.out.printf("status code: %d, request id: %s%n", result.statusCode(), result.requestId());
}
}
}API
Panggil operasi API PutVectorBucket untuk membuat vector bucket.
Vector bucket information
Console
Pada halaman Vector Buckets, klik nama bucket yang dituju.
Pada halaman Overview, Anda dapat melihat informasi berikut:
Basic Information: Meliputi nama bucket, wilayah, dan waktu pembuatan.
Access Port: Titik akhir publik dan internal.
ossutil
Lihat informasi tentang vector bucket bernama examplebucket.
ossutil vectors-api get-vector-bucket --bucket examplebucket --account-id <your-account-id>SDK
Python
import argparse
import alibabacloud_oss_v2 as oss
import alibabacloud_oss_v2.vectors as oss_vectors
parser = argparse.ArgumentParser(description="vector get bucket sample")
parser.add_argument('--region', help='Wilayah tempat bucket berada.', required=True)
parser.add_argument('--bucket', help='Nama bucket.', required=True)
parser.add_argument('--endpoint', help='Titik akhir untuk mengakses OSS.')
parser.add_argument('--account_id', help='ID akun.', required=True)
def main():
args = parser.parse_args()
# Muat kredensial dari variabel lingkungan
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# Gunakan konfigurasi default SDK
cfg = oss.config.load_default()
cfg.credentials_provider = credentials_provider
cfg.region = args.region
cfg.account_id = args.account_id
cfg.use_internal_endpoint = True # Untuk mengakses OSS melalui jaringan publik, atur parameter ini ke False atau hapus baris ini.
if args.endpoint is not None:
cfg.endpoint = args.endpoint
vector_client = oss_vectors.Client(cfg)
result = vector_client.get_vector_bucket(oss_vectors.models.GetVectorBucketRequest(
bucket=args.bucket,
))
print(f'status code: {result.status_code},'
f' request id: {result.request_id},'
f' bucket: {result.bucket_info},'
)
if __name__ == "__main__":
main()Go
package main
import (
"context"
"flag"
"log"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/vectors"
)
var (
region string
bucketName string
accountId string
)
func init() {
flag.StringVar(®ion, "region", "", "Wilayah tempat vector bucket berada.")
flag.StringVar(&bucketName, "bucket", "", "Nama vector bucket.")
flag.StringVar(&accountId, "account-id", "", "ID Akun Alibaba Cloud.")
}
func main() {
flag.Parse()
if len(bucketName) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, nama bucket wajib diisi")
}
if len(region) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, wilayah wajib diisi")
}
if len(accountId) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, accountId wajib diisi")
}
cfg := oss.LoadDefaultConfig().
WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
WithRegion(region).WithAccountId(accountId).
// Untuk mengakses bucket melalui jaringan publik, atur ke false atau hapus baris ini.
WithUseInternalEndpoint(true)
client := vectors.NewVectorsClient(cfg)
request := &vectors.GetVectorBucketRequest{
Bucket: oss.Ptr(bucketName),
}
result, err := client.GetVectorBucket(context.TODO(), request)
if err != nil {
log.Fatalf("gagal mendapatkan informasi vector bucket %v", err)
}
log.Printf("hasil informasi vector bucket:%#v\n", result)
}Java
import com.aliyun.sdk.service.oss2.credentials.CredentialsProvider;
import com.aliyun.sdk.service.oss2.credentials.EnvironmentVariableCredentialsProvider;
import com.aliyun.sdk.service.oss2.vectors.OSSVectorsClient;
import com.aliyun.sdk.service.oss2.vectors.models.GetVectorBucketRequest;
import com.aliyun.sdk.service.oss2.vectors.models.GetVectorBucketResult;
public class GetVectorBucketSample {
public static void main(String[] args) throws Exception {
CredentialsProvider provider = new EnvironmentVariableCredentialsProvider();
try (OSSVectorsClient client = OSSVectorsClient.newBuilder()
.region("cn-hangzhou")
.accountId("1234567890")
.credentialsProvider(provider)
.build()) {
GetVectorBucketRequest request = GetVectorBucketRequest.newBuilder()
.bucket("examplebucket")
.build();
GetVectorBucketResult result = client.getVectorBucket(request);
System.out.printf("status code: %d, request id: %s%n", result.statusCode(), result.requestId());
}
}
}API
Panggil operasi API GetVectorBucket untuk mengambil informasi tentang vector bucket.
List vector buckets
Console
Buka halaman Vector Buckets untuk melihat semua vector bucket dalam Akun Alibaba Cloud Anda.
ossutil
Daftar semua vector bucket milik pemohon.
ossutil vectors-api list-vector-buckets --account-id <your-account-id>SDK
Python
import argparse
import alibabacloud_oss_v2 as oss
import alibabacloud_oss_v2.vectors as oss_vectors
parser = argparse.ArgumentParser(description="contoh daftar vector bucket")
parser.add_argument('--region', help='Wilayah tempat bucket berada.', required=True)
parser.add_argument('--endpoint', help='Nama domain yang dapat digunakan layanan lain untuk mengakses OSS')
parser.add_argument('--account_id', help='ID akun.', required=True)
def main():
args = parser.parse_args()
# Memuat nilai kredensial dari variabel lingkungan
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# Menggunakan konfigurasi default SDK
cfg = oss.config.load_default()
cfg.credentials_provider = credentials_provider
cfg.region = args.region
cfg.account_id = args.account_id
cfg.use_internal_endpoint = True # Untuk mengakses OSS melalui jaringan publik, atur parameter ini ke False atau hapus baris ini.
if args.endpoint is not None:
cfg.endpoint = args.endpoint
client = oss_vectors.Client(cfg)
# Buat Paginator untuk operasi ListVectorBuckets
paginator = client.list_vector_buckets_paginator()
# Iterasi melalui halaman vector bucket
for page in paginator.iter_page(oss_vectors.models.ListVectorBucketsRequest(
)
):
for o in page.buckets:
print(f'Bucket: {o.name}, {o.location}')
if __name__ == "__main__":
main()Go
package main
import (
"context"
"flag"
"log"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/vectors"
)
var (
region string
accountId string
)
func init() {
flag.StringVar(®ion, "region", "", "Wilayah tempat vector bucket berada.")
flag.StringVar(&accountId, "account-id", "", "ID akun vector.")
}
func main() {
flag.Parse()
if len(region) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, wilayah wajib diisi")
}
if len(accountId) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, accountId wajib diisi")
}
cfg := oss.LoadDefaultConfig().
WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
WithRegion(region).WithAccountId(accountId).
// Untuk mengakses layanan melalui jaringan publik, atur ke false atau hapus baris ini.
WithUseInternalEndpoint(true)
client := vectors.NewVectorsClient(cfg)
request := &vectors.ListVectorBucketsRequest{}
p := client.NewListVectorBucketsPaginator(request)
var i int
log.Println("Vector Buckets:")
for p.HasNext() {
i++
page, err := p.NextPage(context.TODO())
if err != nil {
log.Fatalf("gagal mendapatkan halaman %v, %v", i, err)
}
// Catat bucket yang ditemukan.
for _, b := range page.Buckets {
log.Printf("Bucket:%v, %v, %v\n", oss.ToString(b.Name), oss.ToString(b.ResourceGroupId), oss.ToString(b.Location))
}
}
}Java
import com.aliyun.sdk.service.oss2.credentials.CredentialsProvider;
import com.aliyun.sdk.service.oss2.credentials.EnvironmentVariableCredentialsProvider;
import com.aliyun.sdk.service.oss2.vectors.OSSVectorsClient;
import com.aliyun.sdk.service.oss2.vectors.models.ListVectorBucketsRequest;
import com.aliyun.sdk.service.oss2.vectors.models.ListVectorBucketsResult;
public class ListVectorBucketsSample {
public static void main(String[] args) throws Exception {
CredentialsProvider provider = new EnvironmentVariableCredentialsProvider();
try (OSSVectorsClient client = OSSVectorsClient.newBuilder()
.region("cn-hangzhou")
.accountId("1234567890")
.credentialsProvider(provider)
.build()) {
ListVectorBucketsRequest request = ListVectorBucketsRequest.newBuilder()
.build();
ListVectorBucketsResult result = client.listVectorBuckets(request);
System.out.printf("status code: %d, request id: %s%n", result.statusCode(), result.requestId());
}
}
}API
Panggil operasi API ListVectorBuckets untuk mendaftar semua vector bucket dalam Akun Alibaba Cloud Anda.
Delete vector bucket
Sebelum menghapus vector bucket, Anda harus menghapus semua indeks vektor dan data vektor yang dikandungnya. Operasi ini tidak dapat dikembalikan. Cadangkan data penting sebelum melanjutkan.
Console
Pada halaman Vector Buckets, temukan dan klik nama vector bucket yang ingin dihapus.
Di panel navigasi sebelah kiri, klik Delete Bucket.
Ikuti petunjuk di layar untuk menghapus semua sumber daya dalam bucket.
Setelah semua sumber daya dihapus, klik Delete immediately.
ossutil
Hapus vector bucket bernama examplebucket.
ossutil vectors-api delete-vector-bucket --bucket examplebucket --account-id <your-account-id>SDK
Python
import argparse
import alibabacloud_oss_v2 as oss
import alibabacloud_oss_v2.vectors as oss_vectors
parser = argparse.ArgumentParser(description="contoh penghapusan vector bucket")
parser.add_argument('--region', help='Wilayah bucket.', required=True)
parser.add_argument('--bucket', help='Nama bucket.', required=True)
parser.add_argument('--endpoint', help='Titik akhir akses OSS.')
parser.add_argument('--account_id', help='ID Akun Alibaba Cloud Anda.', required=True)
def main():
args = parser.parse_args()
# Muat kredensial dari variabel lingkungan
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# Gunakan konfigurasi default SDK
cfg = oss.config.load_default()
cfg.credentials_provider = credentials_provider
cfg.region = args.region
cfg.account_id = args.account_id
cfg.use_internal_endpoint = True # Untuk mengakses OSS melalui jaringan publik, atur ke False atau hapus baris ini.
if args.endpoint is not None:
cfg.endpoint = args.endpoint
vector_client = oss_vectors.Client(cfg)
result = vector_client.delete_vector_bucket(oss_vectors.models.DeleteVectorBucketRequest(
bucket=args.bucket,
))
print(f'status code: {result.status_code},'
f' request id: {result.request_id},'
)
if __name__ == "__main__":
main()Go
package main
import (
"context"
"flag"
"log"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/vectors"
)
var (
region string
bucketName string
accountId string
)
func init() {
flag.StringVar(®ion, "region", "", "Wilayah tempat vector bucket berada.")
flag.StringVar(&bucketName, "bucket", "", "Nama vector bucket.")
flag.StringVar(&accountId, "account-id", "", "ID akun yang berisi vector bucket.")
}
func main() {
flag.Parse()
if len(bucketName) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, nama bucket wajib diisi")
}
if len(region) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, wilayah wajib diisi")
}
if len(accountId) == 0 {
flag.PrintDefaults()
log.Fatalf("parameter tidak valid, accountId wajib diisi")
}
cfg := oss.LoadDefaultConfig().
WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
WithRegion(region).WithAccountId(accountId).
// Untuk akses publik, atur parameter ini ke false atau hapus baris ini.
WithUseInternalEndpoint(true)
client := vectors.NewVectorsClient(cfg)
request := &vectors.DeleteVectorBucketRequest{
Bucket: oss.Ptr(bucketName),
}
result, err := client.DeleteVectorBucket(context.TODO(), request)
if err != nil {
log.Fatalf("gagal menghapus vector bucket %v", err)
}
log.Printf("hasil penghapusan vector bucket:%#v\n", result)
}Java
import com.aliyun.sdk.service.oss2.credentials.CredentialsProvider;
import com.aliyun.sdk.service.oss2.credentials.EnvironmentVariableCredentialsProvider;
import com.aliyun.sdk.service.oss2.vectors.OSSVectorsClient;
import com.aliyun.sdk.service.oss2.vectors.models.DeleteVectorBucketRequest;
import com.aliyun.sdk.service.oss2.vectors.models.DeleteVectorBucketResult;
public class DeleteVectorBucketSample {
public static void main(String[] args) throws Exception {
CredentialsProvider provider = new EnvironmentVariableCredentialsProvider();
try (OSSVectorsClient client = OSSVectorsClient.newBuilder()
.region("cn-hangzhou")
.accountId("1234567890")
.credentialsProvider(provider)
.build()) {
DeleteVectorBucketRequest request = DeleteVectorBucketRequest.newBuilder()
.bucket("examplebucket")
.build();
DeleteVectorBucketResult result = client.deleteVectorBucket(request);
System.out.printf("status code: %d, request id: %s%n", result.statusCode(), result.requestId());
}
}
}API
Panggil operasi API DeleteVectorBucket untuk menghapus vector bucket.