Supabase backend palveluna · Oppitunti

Postgres-laajennusten hyödyntäminen

Tutustukaa tehokkaiden PostgreSQL-laajennusten käyttöönottoon ja käyttöön uusien toimintojen, kuten UUID-tunnisteiden luonnin ja kokotekstihaun, lisäämiseksi

Oppitunti 1/311 vaihetta

Postgres-laajennusten hyödyntäminen on ilmainen Supabase backend palveluna-oppitunti CoddyKitissä. Tämä on oppitunti 1/3. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Supabase backend palveluna-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Supabase backend palveluna-kurssilla on yhteensä 3 oppituntia.

Mitä Postgres-laajennukset ovat?

PostgreSQL on erittäin tehokas, mutta tiesittekö, että voitte tehdä siitä vielä paremman? Tässä laajennukset astuvat kuvaan!

Laajennukset ovat tietokannan liitännäisiä. Ne lisäävät uusia funktioita, tietotyyppejä tai operaattoreita, joita ei ole oletusarvoisesti käytettävissä.

PostgreSQL:n päälle rakennettu Supabase mahdollistaa monien näiden laajennusten helpon käyttöönoton sovelluksen ominaisuuksien laajentamiseksi.

Laajennusten käyttöönotto Supabasessa

Laajennuksen ottaminen käyttöön Supabasessa on suoraviivaista. Yleensä se tehdään Supabase-hallintapaneelin SQL-editorissa.

  • Siirtykää SQL-editoriin.
  • Suorittakaa komento: CREATE EXTENSION extension_name;
  • Varmistakaa, että teillä on tietokannan järjestelmänvalvojan oikeudet.

Kun laajennus on otettu käyttöön, uudet ominaisuudet ovat käytettävissä koko tietokannassa.

CREATE EXTENSION "uuid-ossp"; -- Example for UUIDs

Yksilölliset tunnisteet `uuid-ossp`-laajennuksella

Aidosti yksilöllisten tunnisteiden luominen on tärkeää monissa sovelluksissa. PostgreSQL:n sisäiset SERIAL- tai BIGINT-sekvenssit sopivat hyvin yksinkertaisiin automaattisesti kasvaviin tunnisteisiin, mutta ne ovat järjestyksessä eteneviä.

Maailmanlaajuiseen yksilöllisyyteen, erityisesti hajautetuissa järjestelmissä, universaalit yksilölliset tunnisteet (UUID:t) ovat parempi vaihtoehto. uuid-ossp-laajennus auttaa luomaan niitä.

`uuid-ossp`-laajennuksen käyttäminen

Kun uuid-ossp on otettu käyttöön, voitte luoda taulun, jonka perusavain on UUID. Näin luotte taulun ja lisäätte rivin luodulla UUID-tunnisteella:

-- First, ensure the extension is enabled (run once in SQL Editor)
-- CREATE EXTENSION IF NOT EXISTS "uuid-ossp";

CREATE TABLE products (
  id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
  name TEXT NOT NULL,
  price NUMERIC
);

INSERT INTO products (name, price) VALUES
('Supabase T-Shirt', 25.00),
('Postgres Mug', 12.50);

SELECT id, name FROM products;

Sumea haku `pg_trgm`-laajennuksella

Oletteko koskaan hakeneet jotain kirjoitusvirheen kera ja silti saanutte asiaankuuluvia tuloksia? Tätä kutsutaan sumeaksi hauksi!

pg_trgm-laajennuksen avulla voitte tehdä samankaltaisuushakuja trigrammien eli kolmen merkin jaksojen perusteella. Se sopii erinomaisesti "tarkoititteko tätä?" -ominaisuuksiin ja läheisten osumien etsimiseen.

Samankaltaisuushaku `pg_trgm`-laajennuksella

Otetaan pg_trgm käyttöön ja etsitään tuotteita, joiden nimet muistuttavat hakutermiä. Käytämme similarity()-funktiota.

-- First, ensure the extension is enabled (run once in SQL Editor)
-- CREATE EXTENSION IF NOT EXISTS pg_trgm;

-- Create a sample table if it doesn't exist
CREATE TABLE IF NOT EXISTS articles (
  id SERIAL PRIMARY KEY,
  title TEXT NOT NULL
);

TRUNCATE TABLE articles; -- Clear previous data for fresh run
INSERT INTO articles (title) VALUES
('PostgreSQL Best Practices'),
('Supabase Authentication Guide'),
('Understanding Postgres Extensions'),
('Postgres Performance Tips');

-- Find titles similar to 'Postgres Extension'
SELECT title, similarity(title, 'Postgres Extension') AS score
FROM articles
WHERE similarity(title, 'Postgres Extension') > 0.3
ORDER BY score DESC;

Avain-arvo-tiedot `hstore`-laajennuksella

Joskus joustavat, rakenteistamattomat tiedot, kuten käyttäjäasetukset tai tuotemääritteet, on tallennettava ilman useiden uusien sarakkeiden luomista.

hstore-laajennus tarjoaa tietotyypin avain-arvoparien joukon tallentamiseen yhteen sarakkeeseen. Se muistuttaa pientä JSON-objektia, mutta on optimoitu yksinkertaiseen merkkijonoavainten ja -arvojen tallentamiseen.

`hstore`-laajennuksen käyttäminen

Lisätään tauluun hstore-sarake ja tallennetaan siihen joustavia tietoja. Tietoja voi sitten hakea esimerkiksi ->-operaattorilla, jolla arvo haetaan avaimen perusteella.

-- First, ensure the extension is enabled (run once in SQL Editor)
-- CREATE EXTENSION IF NOT EXISTS hstore;

CREATE TABLE IF NOT EXISTS users (
  id SERIAL PRIMARY KEY,
  name TEXT NOT NULL,
  settings HSTORE
);

TRUNCATE TABLE users; -- Clear previous data for fresh run
INSERT INTO users (name, settings) VALUES
('Alice', 'theme=>dark, notifications=>true'),
('Bob', 'theme=>light, language=>en-US');

-- Query for users with dark theme
SELECT name, settings->'theme' AS user_theme
FROM users
WHERE settings->'theme' = 'dark';

Miksi laajennuksia käytetään?

PostgreSQL-laajennukset tarjoavat useita merkittäviä etuja:

  • Laajennetut ominaisuudet: Lisäävät tehokkaita toimintoja, joita ei ole oletusarvoisesti käytettävissä.
  • Suorituskyky: Monet niistä ovat pitkälle optimoituja C-funktioita ja tarjoavat erinomaisen nopeuden.
  • Yksinkertaisuus: Monimutkainen logiikka voidaan integroida suoraan tietokantaan.

Välttäkää kuitenkin liiallista riippuvuutta laajennuksista ja varmistakaa, että laajennusta ylläpidetään aktiivisesti ja että se on yhteensopiva Postgres-versionne kanssa.

Laajennustesti

Olette oppineet muutamasta tehokkaasta PostgreSQL-laajennuksesta. Testataan ymmärrystänne!

Kertaus: Tehoa tietokantaan!

Tässä oppitunnissa tutustuimme PostgreSQL-laajennusten maailmaan! Opimme, että ne ovat tehokkaita liitännäisiä, jotka laajentavat tietokannan ominaisuuksia.

  • Opimme ottamaan laajennuksia käyttöön Supabasessa.
  • Käytimme uuid-ossp-laajennusta yksilöllisten tunnisteiden luomiseen.
  • Käytimme pg_trgm-laajennusta sumeaan hakuun.
  • Käytimme hstore-laajennusta joustavaan avain-arvo-tallennukseen.

Näiden laajennusten avulla voitte rakentaa tehokkaampia ja monipuolisempia sovelluksia suoraan tietokantaan!

Aloita maksutta

Opi Supabase backend palveluna tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
11
Oppitunnit
40

Usein kysytyt kysymykset

Onko oppitunti ”Postgres-laajennusten hyödyntäminen” ilmainen?

Kyllä – oppitunnin ”Postgres-laajennusten hyödyntäminen” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Supabase backend palveluna-kurssin, päivitä CoddyKit PROhon. Supabase backend palveluna-kurssilla on yhteensä 3 oppituntia.

Mitä opin oppitunnilla ”Postgres-laajennusten hyödyntäminen”?

Tutustukaa tehokkaiden PostgreSQL-laajennusten käyttöönottoon ja käyttöön uusien toimintojen, kuten UUID-tunnisteiden luonnin ja kokotekstihaun, lisäämiseksi Harjoittelet Supabase backend palveluna-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Supabase backend palveluna-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Supabase backend palveluna-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/3.

Kuinka kauan ”Postgres-laajennusten hyödyntäminen”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Supabase backend palveluna-oppitunnilla?

Kyllä. Jokainen Supabase backend palveluna-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Postgres-laajennusten hyödyntäminen
  2. Edistynyt paikkatieto (PostGIS)
  3. Kokotekstihaku ja vektoriupotukset pgvectorilla
← Takaisin: Supabase backend palveluna