Data Engineer
Kas ir vaicājumu plāns? Kam tas ir nepieciešams?
Kāda ir shuffle bīstamība Spark?
Kā salīdzināt sākotnējo („dzīvo”) un mērķa tabulu, ja avots pastāvīgi mainās?
Kas ir datu sadalīšana un kā tas palīdz izvairīties no pilnas tabulas skenēšanas?
Jūs atklājāt, ka galvenās Git krātuves vēsturē ir komiti, kas satur kritiskus konfidenciālus datus. Šos datus ir nepieciešams pilnībā izdzēst no visas krātuves vēstures. Novērtējiet, cik pareizi un droši būtu izmantot šo stratēģiju: izveidot jaunu commit, kas noņems konfidenciālos datus no pašreizējās failu versijas, un nosūtīt to uz main. - Pareizi, bet ne optimāli. Labāk ir izmantot git revert, lai atsauktu commitus - Pagaidu pareizi. Tā ir pagaidu risinājums, līdz tiks atrasts radikālāks veids, kā izdzēst datus - Nepareizi un nedroši. Dati tiks izdzēsti no pašreizējās versijas, bet paliks pieejami krātuves vēsturē - Nepareizi. Šis commit var radīt jaunus konfliktus ar citām zarēm - Pareizi un droši. Šī metode garantē, ka dati tiks izdzēsti un vairs neparādīsies krātuvē
Kā atjaunināt tabulu ClickHouse tā, lai lietotāji neko nepamanītu (atomu aizvietošana)?
PostgreSQL ir nepieciešams optimizēt transakciju veiktspēju, izmantojot minimālo izolācijas līmeni, kurā: • paralēlās transakcijas var redzēt neizpildītas izmaiņas citām; • ir iespējami "netīri lasījumi" (dirty read). Kādu izolācijas līmeni jānorāda transakcijai, lai sasniegtu šo mērķi? netīrs lasījums nav iespējams PostgreSQL repeatable read read uncommitted read committed serializable
Kopumā paskaidrojiet, kā ir uzbūvēta Spark arhitektūra: kādi komponenti ir un kā tie sadarbojas, izpildot SQL vaicājumu.
Vai Python vārdnīca ir maināms vai nemaināms tips? Kādi ir tās atslēgu un vērtību prasības?
Jūs strādājat pie jaunas funkcijas dev zara. Pēkšņi ir nepieciešams ātri pārslēgties uz galveno zaru, lai ātri izlabotu pareizrakstības kļūdu README.md failā. Jums ir dažas nesaglabātas izmaiņas: src/feature.js (nesaglabātas) un styles/main.css (saglabātas). Jūs vēlaties pagaidu saglabāt visas šīs izmaiņas, lai vēlāk varētu atgriezties pie tām dev zarā. Kādu komandu secību jums būtu jāizmanto šim? git stash save "WIP on feature" && git checkout main && [fix] && git checkout dev && git stash pop git stash push -m "WIP on feature" && git checkout main && [fix] && git checkout dev && git stash pop git stash && git checkout main && [fix] && git checkout dev && git stash apply git add . && git stash && git checkout main && [fix] && git checkout dev && git stash drop git commit -m "Temp commit" && git checkout main && [fix] && git checkout dev && git reset HEAD^
JOIN veidi un to atšķirības
Kā atšķir tehnikas un biznesa datu pārbaudes, un kas būtu jānosaka to prasībām?
Kāda ir atšķirība starp EXPLAIN ANALYZE un parastu EXPLAIN? Kāpēc nav ieteicams to palaist DELETE/UPDATE vaicājumos?
Pastāsti par sadalīšanu. Kādas interesantas operācijas tev nācās veikt?
Kas ir Oracle skata (VIEW) un materializētās skata (MATERIALIZED VIEW)? Kā tiek atjaunināti dati materializētajā skatā?
Izskaidrojiet lazy un tūlītējos aprēķinus Spark.
Kas ir primārā atslēga ClickHouse un kā tā atšķiras no parastajās datu bāzēs izmantotās primārās atslēgas?
Kā sadalīt pieprasījumu posmos? Ko darām tam?
Vai jums ir pieredze SQL vaicājumu optimizācijā? Sniedziet piemēru.
Ko jāizskata, ja žurnāli neatveras (kļūda 403)?