Dati, AI e piattaformaBI, AI e ML per l'azienda
Il calcolo che costa: CPU per progetto e flusso
Ogni notte un flusso ricalcola i margini e nessuno sa quanto gli costa. Muvia misura la CPU di ogni progetto, flusso e passo, mostra quale calcolo pesa di più e permette di riscriverlo e di confrontare prima e dopo sulle stesse esecuzioni.
Scenario illustrativo: descrive un caso tipo, non il progetto di un cliente.
Un calcolo lento non fa rumore. Consuma e basta.
Un flusso notturno che ricalcola i margini funziona: i numeri al mattino ci sono. Nessuno si accorge che scorre le righe una per una e usa cento volte la CPU che servirebbe, finché i flussi diventano dieci e la notte non basta più.
Per decidere cosa ottimizzare serve sapere quanto consuma ogni progetto, ogni flusso e ogni passo, e poter dimostrare che la versione riscritta dà gli stessi risultati.
- Per chi
- Responsabile della piattaforma dati, data engineer e chi scrive le funzioni; IT e direzione che decidono dove investire.
In Muvia, passo per passo
Schermate vere del prodotto, registrate su un progetto con dati di esempio.
Il video · Ogni notte un flusso ricalcola i margini e nessuno sa quanto gli costa. Muvia misura la CPU di ogni progetto, flusso e passo, mostra quale calcolo pesa di più e permette di riscriverlo e di confrontare prima e dopo sulle stesse esecuzioni.
Cosa ottieni
- Si sa dove va la CPU
- Progetto, flusso e passo: il consumo si legge dall'alto verso il basso, senza strumenti a parte.
- Si ottimizza ciò che pesa
- Il calcolo più pesante salta all'occhio, e lo sforzo va dove serve invece che dove è comodo.
- Il prima e il dopo si dimostrano
- Le esecuzioni delle due versioni stanno nello stesso cruscotto, con le stesse righe in uscita.
- La decisione resta scritta
- Il notebook conserva perché il calcolo costava e cosa si è deciso, accanto ai numeri.
Per il team tecnico
Come si costruisce in Muvia
- 1
Leggi l'utilizzo
Nelle impostazioni dell'azienda, la pagina Utilizzo mostra la CPU del mese per progetto; da un progetto scendi al flusso e da lì ai singoli passi.
- 2
Trova il calcolo più pesante
Nel flusso dei margini notturni, alle 2:30, quasi tutta la CPU va nella funzione Python. Le esecuzioni dicono durata e versione di ogni passaggio.
- 3
Riscrivi la funzione
La nuova versione unisce e raggruppa invece di scorrere riga per riga; Athena può scriverne una prima bozza. Un'esecuzione di prova non scrive nulla, e il flusso usa la nuova versione dalla notte dopo.
- 4
Confronta prima e dopo
Un cruscotto legge il registro delle esecuzioni: secondi di CPU per esecuzione con la prima e la seconda versione, e le stesse righe in uscita.
- 5
Scrivi cosa decidete
Un notebook spiega perché costava, cosa è cambiato e quali altri flussi guardare, e resta nel progetto per chi verrà dopo.
Funzione Python
import pandas as pd
def transform(inputs, params, ctx):
righe = inputs["righe"]
listino = inputs["listino"][["articolo", "costo_unitario"]].drop_duplicates("articolo")
df = righe.merge(listino, on="articolo", how="left")
df["ricavo"] = df["prezzo"] * (1 - df["sconto_pct"] / 100) * df["quantita"]
df["costo"] = df["costo_unitario"].fillna(0) * df["quantita"]
df["giorno"] = pd.to_datetime(df["giorno"])
out = (df.groupby(["giorno", "area", "categoria"], as_index=False)
.agg(righe=("ricavo", "size"), ricavo=("ricavo", "sum"),
costo=("costo", "sum")))
out["margine"] = out["ricavo"] - out["costo"]
ricavo = out["ricavo"].where(out["ricavo"] != 0)
out["margine_pct"] = (out["margine"] / ricavo * 100).round(2)
ctx.logger.info("margini: %d righe d'ordine, %d gruppi", len(df), len(out))
return {"rows": out}- I dati che servono
- Righe d'ordine con prezzo, sconto e quantità dal gestionale su SQL Server
- Listino con il costo di ogni articolo, da un file Excel
- Clienti e aree da Salesforce
- Il consumo di CPU di ogni esecuzione, misurato da Muvia
- Le parti di Muvia usate
Altri casi della stessa linea
Tutti i casi d'uso- Data science sui dati aziendaliIl data scientist addestra dove preferisce, sul suo Jupyter e con i suoi strumenti. Muvia gli dà i dati governati da cui partire, esegue il modello su programma vicino ai dati e porta i punteggi in cruscotti, allarmi e report.
- Athena: dalla domanda alla query e al notebookUna domanda in italiano e il lavoro è fatto: Athena salva la query nel Laboratorio, scrive il notebook con la classifica e la conclusione e spiega dai dati cosa è successo. Tutto resta nel progetto, si può controllare e si trova con un tasto.
- Dati dai sistemi aziendali, controllati prima dell'usoFile, database e servizi online si collegano da un unico catalogo, e ognuno diventa una tabella senza progettare uno schema. Prima che i dati arrivino in un report, regole scritte tengono fuori le righe sbagliate e le mettono in quarantena con il motivo.
Portaci una domanda a cui oggi non sai rispondere.
Partiamo da una domanda vera della tua azienda e ti mostriamo il percorso dalla fonte al cruscotto, con i tuoi sistemi e non con quelli di una demo.