Gegevenselementen organiseren in Query Service

Dit document biedt richtlijnen over aanbevolen procedures voor het ordenen van gegevenselementen, zoals gegevenssets, weergaven en tijdelijke tabellen voor gebruik met de Adobe Experience Platform Query Service. Hierin wordt beschreven hoe u uw gegevens kunt structureren en hoe u deze gegevens kunt openen, bijwerken en verwijderen.

Het is belangrijk dat u uw gegevenselementen logisch ordent binnen het Platform Data Lake terwijl ze groeien. De Dienst van de vraag breidt SQL constructies uit die u toelaten om gegevensactiva binnen een zandbak logisch gezien te groeperen. Deze organisatiemethode staat voor het delen van gegevensactiva tussen schema's toe zonder de behoefte om hen fysiek te bewegen.

Aan de slag

Alvorens met dit document verder te gaan, zou u een goed begrip van 🔗 eigenschappen van de Dienst van de Vraag moeten hebben en de gids van het gebruikersinterfacegelezen.

Gegevens ordenen in Query Service

In de volgende voorbeelden worden de constructies getoond die beschikbaar zijn via Adobe Experience Platform Query Service om uw gegevens logisch te ordenen met behulp van de standaard SQL-syntaxis. U moet eerst een database maken die fungeert als container voor uw gegevenspunten. Een gegevensbestand kan één of meerdere schema's bevatten, en elk schema kan één of meerdere verwijzingen naar een gegevenselement (datasets, meningen, tijdelijke lijsten, enz.) dan hebben. Deze verwijzingen omvatten om het even welke verhouding of associaties tussen de datasets.

Zie de gebruikersgids van de Redacteur van de Vraagvoor gedetailleerde begeleiding op hoe te om de Dienst UI van de Vraag te gebruiken om SQL vragen tot stand te brengen.

De volgende SQL-constructies om gegevenssets logisch te organiseren in een sandbox worden ondersteund.

CREATE DATABASE databaseA;
CREATE SCHEMA databaseA.schema1;
CREATE table t1 ...;
CREATE view v1 ...;
ALTER TABLE t1 ADD PRIMARY KEY (c1) NOT ENFORCED;
ALTER TABLE t2 ADD FOREIGN KEY (c1) REFERENCES t1(c1) NOT ENFORCED;

Het voorbeeld (iets afgekapt voor bondigheid) demonstreert deze methode waarbij databaseA schema schema1 bevat.

Gegevenselementen aan een schema koppelen

Zodra een schema is gecreeerd om als container voor de gegevensactiva te handelen, kan elke dataset met één of meerdere schema's in het gegevensbestand worden geassocieerd door standaard SQL te gebruiken ALTER syntaxis van de LIJST.

In het volgende voorbeeld worden dataset1 , dataset2 , dataset3 en v1 toegevoegd aan de container databaseA.schema1 die in het vorige voorbeeld is gemaakt.

ALTER TABLE dataset1 ADD SCHEMA databaseA.schema1;

ALTER TABLE dataset2 ADD SCHEMA databaseA.schema1;

ALTER TABLE dataset3 ADD SCHEMA databaseA.schema1;

ALTER VIEW v1  ADD SCHEMA databaseA.schema1;

Gegevenselementen openen vanuit de gegevenscontainer

Door de databasenaam correct te kwalificeren, kan elke PostgreSQL -client verbinding maken met elke gegevensstructuur die u hebt gemaakt met het trefwoord SHOW. Voor meer informatie over het SHOW sleutelwoord gelieve te zien TONEN sectie binnen de SQL syntaxisdocumentatie.

"all" is de standaarddatabasenaam die elke database- en schemacontainer in een sandbox bevat. Wanneer u een PostgreSQL verbinding gebruikend dbname="all" maakt, kunt u tot toegang hebben om het even welk gegevensbestand en schema dat u hebt gecreeerd om uw gegevens logisch gezien te organiseren.

Als u alle databases opsomt onder dbname="all" , worden drie beschikbare databases weergegeven.

SHOW DATABASES;

name
---------
databaseA
databaseB
databaseC

Als u alle schema's onder dbname="all" opgeeft, worden de drie schema's weergegeven die betrekking hebben op elke database in de sandbox.

SHOW SCHEMAS;

database       | schema
----------------------
databaseA      | schema1
databaseA      | schema2
databaseB      | schema3

Wanneer u een PostgreSQL verbinding maakt met dbname="databaseA" , kunt u elk schema openen dat aan die specifieke database is gekoppeld, zoals in het onderstaande voorbeeld wordt getoond.

SHOW DATABASES;

name
---------
databaseA


SHOW SCHEMAS;

database       | schema
----------------------
databaseA      | schema1
databaseA      | schema2

Met puntnotatie hebt u toegang tot elke tabel die is gekoppeld aan een specifiek schema dat is verbonden met de gekozen database. Als u verbinding maakt met DBNAME = databaseA.schema1; , worden alle tabellen die aan dat specifieke schema ( schema1 ) zijn gekoppeld, weergegeven. Dit verstrekt informatie over welke dataset bevat welke lijst.

SHOW DATABASES;

name
---------
databaseA


SHOW SCHEMAS;

database       | schema
----------------------
databaseA      | schema1


SHOW tables;
name       | type
----------------------
dataset1| table
dataset2| table
dataset3| table

Gegevenselementen bijwerken of verwijderen uit een gegevenscontainer

Naarmate de hoeveelheid gegevenselementen in uw organisatie (of sandbox) toeneemt, moet u gegevenselementen bijwerken of verwijderen uit een gegevenscontainer. Individuele elementen kunnen uit de organisatiecontainer worden verwijderd door met behulp van puntnotatie te verwijzen naar de juiste database- en schemanaam. De tabel en weergave (t1 respectievelijk v1 ) die in het eerste voorbeeld aan databaseA.schema1 zijn toegevoegd, worden verwijderd met de syntaxis in het volgende voorbeeld.

ALTER TABLE databaseA.schema2.t1 REMOVE SCHEMA databaseA.schema2;
ALTER VIEW databaseA.schema2.v1 REMOVE SCHEMA databaseA.schema2;

Gegevenselementen verwijderen

De DROP TABLEfunctie verwijdert slechts fysisch een gegevenselement uit Data Lake wanneer één enkele verwijzing naar de lijst over alle gegevensbestanden in uw organisatie bestaat.

DROP TABLE databaseA.schema2.t1;

Een container van gegevenselementen verwijderen

Zowel de database als het schema kunnen ook worden verwijderd met behulp van standaard SQL-functies.

Een database verwijderen

Als er andere verwijzingen naar gegevensactiva verbonden aan het gegevensbestand zijn, zal de functie een fout veroorzaken wanneer het proberen om het gegevensbestand te verwijderen.

DROP DATABASE databaseA;

Een schema verwijderen

Er zijn drie belangrijke overwegingen om op te merken wanneer het verwijderen van een schema:

  • Als u een schema verwijdert, worden gegevenselementen zoals tabellen, weergaven of tijdelijke tabellen niet fysiek verwijderd.
  • Als er om het even welke gegevensactiva zijn die in het doelschema van verwijzingen worden voorzien en de wijze is RESTRICT, zal een uitzondering worden geworpen.
  • Als er om het even welke gegevensactiva zijn die in het doelschema van verwijzingen worden voorzien en de wijze is CASCADE, verwijdert het systeem alle gegevensactiva die door de schemacontainer van verwijzingen worden voorzien en schrapt dan de schemacontainer.
DROP SCHEMA databaseA.schema2;

Volgende stappen

Door dit document te lezen, hebt u nu een beter inzicht in de beste praktijken betreffende de organisatie en de structuur van uw gegevensactiva voor gebruik met de Dienst van de Vraag van Adobe Experience Platform. Het wordt geadviseerd verder te leren over de beste praktijken van de Dienst van de Vraag door over documentatie van gegevensdeduplicatiete lezen.

recommendation-more-help
ccf2b369-4031-483f-af63-a93b5ae5e3fb