Perché l'indice B-tree è così popolare e versatile?
Golang
Come hai fatto lo sharding in PostgreSQL? Quale algoritmo di hashing hai usato?
Per favore, parlami un po' di te. Su cosa stai lavorando nell'ultimo progetto?
Perché avete scelto lo sharding per account_id? A cosa serviva in generale lo sharding?
Quali metriche seguivi durante il consumo di dati dalle fonti?
Come hai distribuito PostgreSQL? Parlami di stabilità e scalabilità.
Quale soluzione proponi per una funzione di query nel database che restituisce sempre lo stesso valore, in modo che non debba accedere più volte al database per gli stessi dati?
Hai lavorato nell'ultimo posto di lavoro con un contratto di lavoro o con un contratto civile?
Come monitoravi l'ordine dei messaggi in Kafka? Ad esempio, se prima passa lo stato e poi la fattura?
Cosa succede se avvii 5 trilioni di goroutine? Come ottimizzare?
Come hai affrontato la gestione delle versioni dei contratti gRPC?
Un indice può rallentare la lettura (SELECT)?
Cos'è la selettività dell'indice?
Quali sono gli svantaggi degli indici? Un indice può rallentare la lettura?
Perché hai scelto map per la cache invece di sync.Map?
Perché hai usato Mutex invece di Atomic per il contatore?
Se hai controllato le rimanenze in magazzino, hai cercato per SKU specifico?
Hai esaminato i grandi magazzini, e anche i dark store facevano parte della tua analisi?
```go type User struct { ID int Name string } var ( dbHits int ) func getUserInfoFromDB(id int) User { time.Sleep(100 * time.Millisecond) dbHits++ return User{ID: id, Name: fmt.Sprintf("User-%d", id)} } func main() { var wg sync.WaitGroup for i := 0; i < 5; i++ { wg.Add(1) go func(i int) { defer wg.Done() fmt.Println(getUserInfoFromDB(i)) }(42) } wg.Wait() fmt.Println("DB hits:", dbHits) } ``` ```go func main() { var wg sync.WaitGroup j := 12345 for i := 0; i < 5000; i++ { wg.Add(1) go func(i int) { defer wg.Done() once.Do(func() { user = getUserInfoFromDB(42) }) fmt.Println(user) }(j) } wg.Wait() fmt.Println("DB hits:", dbHits) } ``` (Senza una domanda esplicita, ma il codice suggerisce un compito relativo alla concorrenza, sincronizzazione e minimizzazione delle chiamate al database usando sync.Once o tecniche simili.)
Con quali sfide ti sei confrontato lavorando con Kafka?