Golang
Jak przebiegała migracja? Z kim to robiłeś? Jak dokładnie?
Jak zadania były rozdzielane w zespole?
// tabela towarów: // ID | cnt_view // ----------- // 1 | 100 // dwaj użytkownicy zaczęli jednocześnie oglądać towar o id = 1 // i w naszej bazie danych uruchomiono 2 równoległe transakcje // jaki będzie wynik? postgresql func IncrementView(ctx context.Context, db *sql.DB, id int64) error { tx, err := db.BeginTx(ctx, nil) if err != nil { return err } defer tx.Rollback() var cnt int err = tx.QueryRowContext(ctx, "SELECT cnt_view FROM goods WHERE id = $1", id, ).Scan(&cnt) if err != nil { return err } cnt++ _, err = tx.ExecContext(ctx, "UPDATE goods SET cnt_view = $1 WHERE id = $2", cnt, id, ) if err != nil { return err } return tx.Commit() }
Zobacz zapytanie z warunkami w kolumnach A, B, C. W jakich warunkach działa indeks? Jaki indeks należy utworzyć, aby maksymalnie przyspieszyć zapytanie (tabela users, warunek WHERE age = 35 ORDER BY name)?
Co rozwiązuje Repeatable Read, a czego nie rozwiązuje? (anomalia Repeatable Read)
Jak pracowałeś z Kubernetes w swoim poprzednim zespole?
Co się dzieje podczas aktualizacji wiersza w PostgreSQL z MVCC?
Opowiedz o swoim doświadczeniu w zakresie infrastruktury i współpracy z DevOps
Jakie są zalety goroutines w porównaniu do wątków systemu operacyjnego?
Czego szukasz w pracy, czym chcesz się zajmować?
Jaki błąd wystąpi podczas próby zmiany znaku w ciągu: panika, obsługiwana błęd lub coś innego?
Wyobraźmy sobie sytuację: kilka aktywnych odczytów, nadchodzi żądanie zapisu (RWMutex). W jakiej kolejności będą wykonywane operacje?
Opowiedz o swoim doświadczeniu z PostgreSQL: projektowałeś schematy, optymalizowałeś zapytania, administrowałeś?
Wymień główne struktury danych i podaj przykłady ich implementacji/użycia w Go (tablice, slices, mapy/tablice haszujące).
Czym różni się Mutex od RWMutex?
W jakich sytuacjach bardziej odpowiednie jest, aby programista napisał kod ręcznie zamiast polegać na rozwiązaniach generowanych przez AI?
Czy masz doświadczenie w uczestnictwie w przesiewach technicznych lub rozmowach kwalifikacyjnych?
Jaki poziom izolacji transakcji będzie odpowiedni w tym przypadku?
Czy Redis może zapewnić ACID?
Czy znasz język C lub C++?