Sobes.tech
Junior — Middle

Môžete vysvetliť, čo je typ údajov JSONB v databáze a ako sa líši od bežného JSON?

sobes.tech AI

Odpoveď od AI

Typ dát JSONB v databáze, napríklad v PostgreSQL, predstavuje binárne uloženie JSON dát. Na rozdiel od bežného JSON, ktorý uchováva dáta vo forme textu, JSONB ich uchováva v binárnom formáte, čo umožňuje:

  • Rýchlejšie vykonávanie operácií vyhľadávania a filtrovania podľa obsahu.
  • Použitie indexov na zrýchlenie dopytov.
  • Odstránenie duplikátov kľúčov a zoradenie objektov.

Príklad použitia v PostgreSQL:

CREATE TABLE príklad (
    data JSONB
);

INSERT INTO príklad (data) VALUES ('{"name": "Alice", "age": 30}');

-- Vyhľadávanie podľa kľúča s použitím indexu
CREATE INDEX idx_data_name ON príklad USING gin ((data -> 'name'));

SELECT * FROM príklad WHERE data ->> 'name' = 'Alice';

Týmto je JSONB efektívnejší pre prácu s JSON dátami, keď je dôležitý výkon a možnosť zložitých dopytov.