Se alătură SAP HANA: Tipuri, sintaxă și exemple

⚡ Rezumat inteligent

SAP HANA unește tabele conectate și vizualizări de informații, astfel încât un model returnează exact rândurile de care are nevoie un raport. Tipurile interne, externe, referențiale, textuale, temporale și spațiale modifică fiecare performanța, gestionarea cardinalității și dimensiunea rezultatului.

  • 🔗 Domeniu de aplicare: Uniește tabele de link și vizualizări de informații în interiorul modelelor grafice și în interiorul instrucțiunilor SQL simple din baza de date.
  • ☑️ Tipuri standard: Join-urile interioare, externe stânga, externe dreapta și externe complete se comportă exact ca în ANSI SQL.
  • ✅ Tipuri exclusiv de modelare: Îmbinarea referențială și cea textuală există doar în vizualizările informaționale și nu are un echivalent SQL prin cuvinte cheie.
  • 🧪 Noduri avansate: Îmbinarea temporală, spațială, dinamică și în stea extinde vizualizările de calcul dincolo de simpla potrivire a coloanelor.
  • 🛠️ Pârghii de performanță: Cardinalitatea și semnalizatorul Optimizare unire coloane decid dacă SAP HANA poate elimina un tabel în timpul execuției.
  • 📈 Modernizare: Vizualizările atributelor și analitice sunt depreciate, așadar noile joncțiuni aparțin vizualizărilor de calcul grafic.

Tipurile de joncțiuni utilizate pentru combinarea tabelelor și a vizualizărilor de informații în SAP HANA

Ce Este SAP HANA se alătură?

O alăturare SAP HANA combină rânduri din două sau mai multe tabele sau dintr-un tabel și o vizualizare informațională și returnează valorile necesare interogării. Join-urile sunt definite grafic în nodul de join al unei vizualizări informaționale și sunt, de asemenea, scrise direct în instrucțiuni SQL care rulează în baza de date.

Cele două forme nu sunt identice. O joncțiune în interiorul unui vizualizare de calcul este executată de către SAP Motorul de calcul HANA, care poate sări peste un tabel atunci când nicio coloană solicitată nu provine din acesta, în timp ce o joncțiune scrisă în SAP HANA SQL se execută întotdeauna exact așa cum este codificat.

Următoarele tipuri de îmbinări sunt disponibile atunci când SAP Tabelele HANA și vizualizările informațiilor sunt combinate.

Alăturați-vă tipului Utilizeaza Comentariu
INNER Join-ul intern selectează setul de înregistrări care se potrivesc în ambele tabele. Rândurile fără partener de ambele părți sunt aruncate.
ÎNTREPRINDERE EXTERIOR STÂNGA Îmbinarea externă stângă selectează setul complet de înregistrări din primul tabel, cu înregistrarea corespondentă din al doilea tabel, acolo unde este disponibilă una. Dacă nu există nicio potrivire în al doilea tabel, se returnează valori nule pentru coloanele sale.
UNIRE EXTERIOR DREAPTA Join-ul extern drept selectează setul complet de înregistrări din al doilea tabel, cu înregistrarea corespondentă din primul tabel, acolo unde este disponibilă una. Dacă nu există nicio potrivire în primul tabel, se returnează valori nule pentru coloanele sale.
UNIRE EXTERIOR COMPLET Îmbinarea externă completă selectează toate înregistrările din ambele tabele. Rândurile nepotrivite din ambele părți sunt completate cu valori nule.
ALĂTURAREA REFERENȚIALĂ Se comportă ca o joncțiune internă, presupunând că integritatea referențială este menținută între cele două tabele. Disponibil în vizualizări atribute, vizualizări analitice și noduri de unire a vizualizării de calcul.
TEXT JOIN Îmbinarea text selectează descrierea specifică limbii care aparține unei chei, utilizând coloana de limbă din tabelul de text. Coloana de limbă, de obicei SPRAS, trebuie semnalizată în proprietățile joncțiunii.

Join-urile referențiale și textuale sunt tipuri doar de modelare. Ele există în nodul de join al unei vizualizări informaționale și nu au un cuvânt cheie echivalent în SQL, motiv pentru care apar în SAP Modelare HANA instrumente mai degrabă decât într-o instrucțiune SELECT.

SAP Sintaxa de asociere HANA și exemple SQL

Îmbinările interioare și exterioare sunt scrise în SAP HANA SQL cu sintaxă ANSI standard, deci o interogare testată pe o altă bază de date relațională rulează de obicei neschimbată. Exemplul de mai jos unește un tabel de comenzi de vânzare cu un tabel de clienți și apoi cu un tabel de stare.

SELECT so.ORDER_ID, c.NAME, s.STATE_NAME, so.AMOUNT
FROM SALES_ORDER AS so
INNER JOIN CUSTOMER AS c
  ON so.CUSTOMER_ID = c.CUSTOMER_ID
LEFT OUTER JOIN STATE AS s
  ON c.STATE_CODE = s.STATE_CODE
WHERE so.AMOUNT > 1000
ORDER BY so.ORDER_ID;

Join-ul intern elimină fiecare comandă de vânzare a cărei înregistrare principală client lipsește. Join-ul extern stâng păstrează toate comenzile rămase chiar și atunci când codul de stare nu are descriere și returnează un nume de stare nul pentru acele rânduri. Swapping Prin urmare, cele două tipuri de joncțiune modifică numărul de rânduri, nu doar coloanele afișate.

Modelele grafice ajung la același rezultat fără SQL. Un nod de joncțiune este plasat între două surse de date în editorul de vizualizări, coloanele care formează condiția de joncțiune sunt mapate, iar tipul de joncțiune și cardinalitatea sunt setate în proprietățile nodului. SAP HANA Studio Atât editorul, cât și modelatorul bazat pe browser generează codul SQL la momentul execuției din aceste setări.

Tipuri avansate de îmbinări în SAP Vizualizări de calcul HANA

Vizualizările de calcul adaugă un comportament de joncțiune pe care SQL-ul simplu nu îl exprimă într-un singur cuvânt cheie. Aceste opțiuni sunt configurate pe nodul de joncțiune sau printr-un tip de nod dedicat.

Alăturați-vă tipului Ce face Utilizare tipică
Îmbinare temporală Potrivește înregistrările tranzacțiilor cu versiunea datelor principale valabilă la o anumită dată, utilizând câmpurile de la și la ale sursei de date principale. Date principale dependente de timp, cum ar fi un centru de cost care și-a schimbat proprietarul. Tipul de asociere trebuie să fie referențial, iar cheia trebuie să fie o dată, o oră sau un număr întreg.
Îmbinare spațială Unește două surse pe o coloană geometrică cu un predicat spațial, cum ar fi intersectează sau înăuntru, în loc de o condiție de egalitate. Analiză geografică, de exemplu, potrivirea locațiilor clienților cu teritoriile de vânzări.
Asociere dinamică Construiește condiția de joncțiune la momentul execuției din coloanele de joncțiune solicitate de interogare, agregând coloanele rămase înainte de executarea joncțiunii. Îmbinare pe mai multe coloane în care granularitatea interogării variază. Trebuie solicitată cel puțin o coloană de îmbinare, altfel interogarea eșuează.
Alăturare cu stea Unește o sursă de fapte cu mai multe vizualizări de calcul al dimensiunilor într-un singur nod. Modele de schemă stea care înlocuiesc vechea vedere analitică.

O joncțiune dinamică modifică secvența operațiilor, nu regula de potrivire. Într-o joncțiune statică, fiecare coloană definită participă la condiție, iar agregarea are loc ulterior; într-o joncțiune dinamică, coloanele nesolicitate sunt agregate mai întâi, ceea ce returnează de obicei mai puține rânduri și un total diferit. Prin urmare, cele două răspund la întrebări de business diferite, astfel încât steagul este setat în mod deliberat, nu ca o optimizare generală.

Cum să alegi tipul de îmbinare potrivit SAP Modelare HANA

Selecția joncțiunii afectează atât corectitudinea, cât și timpul de execuție, iar cea mai rapidă joncțiune este cea SAP HANA nu trebuie niciodată să se execute. Următoarele reguli acoperă majoritatea deciziilor de modelare.

  • Îmbinare referențială — utilizați-l doar atunci când fiecare rând de pe o parte are garantat un partener, deoarece motorul poate omite complet joncțiunea atunci când nu este solicitată nicio coloană din tabelul unit.
  • Alăturare interioară — se utilizează atunci când integritatea referențială nu este garantată și rândurile nepotrivite trebuie excluse.
  • Îmbinare exterioară stângă — se folosește atunci când primul tabel determină rezultatul și datele principale lipsă trebuie să apară în continuare.
  • Îmbinare exterioară completă — utilizați-o cu moderație, deoarece este cea mai scumpă opțiune și este rareori necesară în modelele de raportare.
  • Alăturare prin SMS — utilizați-o ori de câte ori o coloană de descriere depinde de limba de conectare.

Două proprietăți ale nodului contează la fel de mult ca tipul de joncțiune în sine. Cardinalitatea (1:1, 1:n, n:1 sau n:m) îi spune motorului câte rânduri să aștepte pe fiecare parte, iar funcția Propune cardinalitate o derivă din date. Indicatorul Optimizează coloanele de joncțiune permite apoi SAP HANA elimină o coloană de asociere din planul de execuție atunci când interogarea nu o solicită. O cardinalitate greșită poate multiplica în mod silențios măsurile, așa că este verificată în raport cu datele, nu presupusă.

O altă constrângere influențează dezvoltarea nouă. Vizualizările atributelor și vizualizările analitice sunt depreciate și SAP recomandă convertirea lor în vizualizări grafice de calcul, astfel încât o îmbinare proiectată astăzi este în mod normal construită într-un nod de îmbinare a vizualizării de calcul sau de îmbinare în stea. Informațiile despre obiectele mai vechi sunt încă utile atunci când se menține un model existent, iar vizualizare atribute și perspectivă analitică paginile descriu modul în care au fost configurate acele îmbinări. SAP Material de învățare pe unește nodurile acoperă același comportament în SAP HANA Cloud și mediul mai larg SAP Tutorial HANA Seria explică locul în care vizualizările informațiilor se încadrează în platformă.

Întrebări frecvente

Cardinalitatea (1:1, 1:n, n:1, n:m) îi spune motorului câte rânduri corespondente să aștepte pe fiecare parte. Aceasta permite eliminarea joncțiunilor și protejează agregatele. Cardinalitatea propusă derivă setarea din date, ceea ce este mai sigur decât ghicirea.

Permite SAP HANA elimină o coloană de asociere din planul de execuție atunci când interogarea clientului nu o solicită niciodată. Mai puține coloane înseamnă mai puține grupuri.pingși timpi de execuție mai rapizi, dar rezultatele se pot schimba dacă coloana eliminată a influențat nivelul de agregare.

Obiectele existente rulează în continuare, dar ambele tipuri de vizualizări sunt depreciate și nu pot fi adăugate la noile vizualizări de calcul. SAP recomandă convertirea lor în vizualizări de calcul grafic, unde sunt disponibile aceleași tipuri de îmbinări, plus îmbinarea în stea și îmbinarea spațială.

Trebuie să păstreze rândurile nepotrivite din ambele părți, astfel încât niciun tabel să nu poată fi eliminat și fiecare rând să fie materializat. O joncțiune referențială, prin contrast, poate fi omisă complet atunci când interogarea nu solicită nicio coloană din tabelul unit.

Coloana de limbă a tabelului de text, de obicei SPRAS în SAP tabele, este semnalizată în proprietățile joncțiunii. SAP HANA filtrează apoi descrierile după limba sesiunii, astfel încât un model deservește fiecare limbă de conectare fără o vizualizare separată.

Da. Un nod de joncțiune acceptă tabele, funcții de tabel și alte vizualizări de calcul ca surse de date, acesta fiind modul în care vizualizările dimensiunilor sunt atașate la un tabel de fapte. Numele coloanelor pot diferi, deoarece condiția de joncțiune mapează explicit coloanele.

Valorile coloanelor de profilare a învățării automate sugerează chei de joncțiune și cardinalitate, semnalează modele ale căror măsuri se umflă după o joncțiune și grupează vizualizări aproape duplicate. SAP De asemenea, încorporează servicii predictive și generative în platformă, astfel încât scorarea se execută alături de datele modelate.

Copilot redactează corect joncțiunile SQL standard și accelerează instrucțiunile SELECT repetitive. Nu cunoaște integritatea referențială a unei scheme, așa că tipul de joncțiune, cardinalitatea și opțiunile de modelare, cum ar fi joncțiunea text, trebuie totuși verificate în raport cu datele reale.

Rezumați această postare cu: