Na tej strani
Predstavljajte si zaslon za podporo, ki potrebuje en odgovor: ali je to naročilo plačano? Plačilni sistem ima odgovor. Ekipa za integracije predlaga kopiranje vseh plačilnih zapisov v drugo zbirko, vzdrževanje sveže kopije in branje te kopije, ko agent odpre naročilo. To je hipotetičen operativni primer, ne analitična uporaba v navedeni predstavitvi.
To je morda potrebno. Najprej vprašajte, ali zaslon zdaj potrebuje le en odgovor iz vira, do katerega ima dostop.
Tehnična predstavitev analitičnih poizvedb med oblaki pokaže poizvedbo po obstoječih virih podatkov brez predhodne trajne kopije izvorne tabele v ciljnem sistemu. Ista predstavitev ustvari tudi združeno tabelo, kar pokaže, da oddaljeni dostop in kopiranje lahko sobivata v enem poteku. To je resnična zmožnost izdelka, ne obljuba, da je storitev za analitične poizvedbe primerna za operativni zaslon s statusom plačila ali da se podatki med izvedbo nikoli ne premaknejo. Dokumentacija Google Cloud o federacijskih poizvedbah pojasnjuje, da se nekateri rezultati zunanjih poizvedb začasno premaknejo v storitev za poizvedbe. Pomembna razlika je med trajno sinhronizirano kopijo in omejenim branjem za določeno vprašanje.
Odločite se glede na nalogo porabnika
V zahtevi „povežite ta sistema“ sta skriti dve različni želji. Prva sprašuje: „Kaj vir pravi zdaj?“ Druga: „Katero stanje mora ciljni sistem hraniti, da bo lahko ukrepal pozneje?“
Za zaslon podpore lahko poizvedba z omejenim obsegom vrne status naročila in čas opazovanja. Vir ostane avtoritativen. Če vir ne deluje, naj zaslon pove, da trenutni status ni na voljo, ali jasno označi shranjen odgovor. Druga kopija bi ustvarila novo vprašanje: kateri status velja, ko se kopiji ne ujemata?
Porabnik od vira pooblaščeno zahteva en trenutni odgovor; poizvedba lahko obdela začasne podatke, ne da bi ustvarila trajno kopijo.
Pri kampanji za zapuščeno košarico mora ciljni sistem morda ukrepati, ne da bi kdo odprl zaslon. Potrebuje lahko pravočasen dogodek, stanje privolitve in način za preklic sporočila v vrsti po nakupu. Živo branje ob času kampanje lahko še vedno pomaga, vendar odgovor na zahtevo ni celotna naloga.
| Potreba porabnika | Prva zasnova za preizkus | Glavni kompromis |
|---|---|---|
| En trenutni odgovor | Poizvedba z omejenim obsegom pri lastniku | Odvisna od dostopa do vira in zakasnitve |
| Sprotno ukrepanje ob spremembah | Dogodek ali sinhronizacija najmanjših razlik | Obravnava zamude, podvojitev in manjkajočih dogodkov |
| Zgodovinski dokaz za odločitev | Posnetek pomembnih polj z različico | Urejanje hrambe in dostopa |
| Delovanje ob izpadu vira | Izrecen predpomnilnik ali kopija | Lahko zastari; potrebuje pravilo o starosti |
To je odločitvena tabela, ne primerjalna meritev. Iz nje ne izhaja splošen prag za poizvedbo ali kopiranje.
Kopija ima trajen strošek
Prvo pridobitev podatkov je lahko podceniti, ker se konča. Kopija živi naprej. Pojavi se novo polje, identifikator se združi, dovoljenje se spremeni ali star dogodek prispe po novem. Zdaj lahko ciljni sistem hrani odgovor, ki bi ga vir zavrnil.
Strošek ni le shramba. Je usklajevanje: spremljanje zaostanka, ponovna izvedba zamujenih sprememb, brisanje podatkov, ko je potrebno, in pojasnjevanje, zakaj je odločitev uporabila včerajšnjo vrednost. Te naloge so upravičene, ko ciljni sistem potrebuje neodvisno stanje. So odvečno delo, ko je edini cilj trenutni odgovor.
Tudi poizvedba ima stroške. Obremeni lahko vir, razkrije polja drugemu subjektu, prečka omrežno mejo in odpove v najslabšem trenutku. Načrtovalnik poizvedb lahko obdela več podatkov, kot kaže vidni rezultat. Dokumentacija o federaciji opisuje izvedbo, ki jo je vredno preveriti, preden oddaljeno poizvedbo označite za ničelno premikanje.
Varna poizvedba ima ozek namen in ozek rezultat. Poimenujte lastnika polja. Omejite klicateljevo dovoljenje. Odločite, kako star je odgovor lahko, kako dolgo sme poizvedba čakati in kaj vmesnik pove ob poteku časa. Čas opazovanja hranite skupaj z odgovorom.
Kdaj nadzorovana kopija upraviči svoj strošek
„Lokalni podatki nam dajo predvidljiv vmesnik in manj oddaljenih odpovedi.“ To je resen argument. Če ima potek strogo omejitev zakasnitve ali mora delovati med izpadom vira, je nadzorovana kopija lahko prava zasnova.
Beseda nadzorovana opravi glavno delo. Določite, katera polja kopirate, kako hitro se morajo posodobiti, kaj se zgodi, ko posodobitve obstanejo, in kdaj porabnik noče ukrepati na zastarelem stanju. Poleg običajne poti preizkusite tudi pozen popravek. Hiter zastarel odgovor je lahko slabši od vidnega sporočila, da odgovor ni na voljo.
Začnite pri najmanjšem vprašanju porabnika. Če ga branje reši, pustite viru oblast nad odgovorom. Če dejanje potrebuje lokalno stanje, kopirajte le tisto, kar dejanje upraviči.
Majhen preizkus lahko izbiro razreši brez splošne plasti za kopiranje. Izberite eno vprašanje, ki ga porabnik dejansko postavlja, zabeležite potrebno svežino odgovora in opravite pooblaščeno poizvedbo pri viru. Opazujte zakasnitev, obremenitev vira in vedenje ob napaki z resničnimi omejitvami dostopa. Nato preizkusite najožjo kopijo stanja, ki zadosti istemu porabniku. Primerjajte ne le čas odziva, ampak tudi popravke, brisanje in izpade. Vodnik za načrtovanje integracij daje širši kontekst poteka; ta preizkus izbere, kje naj odgovor živi. Nobena pot ni samodejno cenejša, ko prištejete stalno vzdrževanje.
Povezave ne merimo s številom vrstic, ki so jo prečkale.
Pogosto Zastavljena Vprašanja
Kdaj je oddaljena poizvedba boljša od sinhronizacije?
Ko klicatelj potrebuje odgovor iz avtoritativnega vira in lahko sprejme njegovo razpoložljivost ter zakasnitev. Dostop naj bo omejen, pokažite pa tudi čas branja odgovora.
Kdaj je podatke treba kopirati?
Kopirajte najmanjše potrebno stanje, kadar mora drugi sistem ukrepati brez žive poizvedbe, ohraniti preverljiv posnetek ali izpolniti zahtevo glede zakasnitve oziroma razpoložljivosti, ki je vir ne more.
Ali poizvedovanje na mestu pomeni, da se podatki nikoli ne premaknejo?
Ne. Federacijska storitev lahko med izvedbo prenese vmesne podatke ali rezultate. Preverite dokumentirano vedenje ponudnika glede izvajanja, hrambe in varnosti.