Vector Databases: Pinecone, Weaviate & pgvector · Pelajaran

Menyimpan Vektor di PostgreSQL

Pelajari cara membuat tabel dengan kolom vektor dan memasukkan data penyematan langsung ke basis data PostgreSQL Anda.

Pelajaran 2 dari 411 langkah

Menyimpan Vektor di PostgreSQL adalah pelajaran Vector Databases: Pinecone, Weaviate & pgvector gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Vector Databases: Pinecone, Weaviate & pgvector, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Vector Databases: Pinecone, Weaviate & pgvector mencakup 4 pelajaran total.

Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.

Storing Vectors in PostgreSQL

Welcome back! In the previous lesson, we set up pgvector. Now, let's get practical and learn how to store actual vector embeddings in your PostgreSQL database.

This lesson covers creating tables with vector columns and inserting embedding data.

PostgreSQL Tables Reminder

Before storing vectors, let's quickly recall how tables work in PostgreSQL. You use the CREATE TABLE statement to define your table's structure, including column names and their data types.

With pgvector installed, we gain a new, powerful data type!

The `vector` Data Type

The core of storing embeddings with pgvector is the vector data type. When you define a column as vector(N), N represents the dimension of your embeddings.

  • vector(3): Stores 3-dimensional vectors.
  • vector(1536): Stores 1536-dimensional vectors (common for OpenAI embeddings).

It's crucial that N matches the dimension of the embeddings you're working with.

Creating a Table with Vectors

To store embeddings, you'll create a table just like any other, but specify one or more columns as type vector(N).

Here's an example creating a simple table to hold items and their 3-dimensional embeddings:

CREATE TABLE items (
  id SERIAL PRIMARY KEY,
  embedding vector(3)
);

Understanding Vector Dimensions

The number N in vector(N) is vital. It must precisely match the number of values (dimensions) in your actual embedding vectors. If your embedding model produces 768-dimensional vectors, your column must be vector(768).

Mismatched dimensions will result in errors when inserting data. Always check your embedding model's output dimension!

Inserting Single Vector Data

Once your table is set up, you can insert vector data using the standard INSERT INTO SQL command. Vector values are provided as a string representation of a list of numbers, e.g., '[1.2, 3.4, 5.6]'.

INSERT INTO items (embedding)
VALUES ('[1.0, 2.0, 3.0]');

Inserting Multiple Vectors

You can insert multiple vectors into your table efficiently by providing multiple sets of values in a single INSERT INTO statement.

Each set of values corresponds to a new row in your table.

INSERT INTO items (embedding) VALUES
  ('[4.0, 5.0, 6.0]'),
  ('[7.0, 8.0, 9.0]');

Storing Vectors with Metadata

In real-world applications, you'll almost always store additional information (metadata) alongside your vectors. This could be text content, a user ID, a timestamp, or any other relevant data.

Just add more columns to your table definition:

CREATE TABLE documents (
  id SERIAL PRIMARY KEY,
  content TEXT,
  category VARCHAR(50),
  embedding vector(4)
);

Inserting Vectors & Metadata

When inserting data into a table with metadata, simply provide values for all the columns you wish to populate. Make sure the order of values matches the order of columns specified in your INSERT INTO statement.

INSERT INTO documents (content, category, embedding) VALUES
  ('The quick brown fox.', 'animal', '[0.1, 0.2, 0.3, 0.4]');

Quick Check: Table Creation

Which of the following SQL statements correctly creates a table named products with an auto-incrementing primary key id and a vector column product_embedding of 1536 dimensions?

Recap: Storing Your Vectors

Great job! You've learned the fundamental steps to store vector embeddings in PostgreSQL using pgvector:

  • Defining vector columns with vector(N), ensuring N matches your embedding dimensions.
  • Creating tables with both vector and metadata columns.
  • Inserting single and multiple vector data points, along with their associated metadata.

Next, we'll explore how to query this data to find similar vectors!

Gratis untuk memulai

Belajar Vector Databases: Pinecone, Weaviate & pgvector dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
12
Pelajaran
48

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Menyimpan Vektor di PostgreSQL” gratis?

Ya — teks lengkap “Menyimpan Vektor di PostgreSQL” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Vector Databases: Pinecone, Weaviate & pgvector, upgrade ke CoddyKit PRO. Kursus Vector Databases: Pinecone, Weaviate & pgvector mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Menyimpan Vektor di PostgreSQL”?

Pelajari cara membuat tabel dengan kolom vektor dan memasukkan data penyematan langsung ke basis data PostgreSQL Anda. Kamu berlatih Vector Databases: Pinecone, Weaviate & pgvector dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Vector Databases: Pinecone, Weaviate & pgvector?

Tidak diperlukan pengalaman sebelumnya. Vector Databases: Pinecone, Weaviate & pgvector di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Menyimpan Vektor di PostgreSQL” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Vector Databases: Pinecone, Weaviate & pgvector ini?

Ya. Setiap pelajaran Vector Databases: Pinecone, Weaviate & pgvector menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Menyiapkan Ekstensi pgvector
  2. Menyimpan Vektor di PostgreSQL
  3. Menjalankan Kueri Kemiripan
  4. Memilih Metrik Jarak di pgvector
← Kembali ke Vector Databases: Pinecone, Weaviate & pgvector