Un pensiero recente a tarda notte In realtà non è nemmeno nuovo, è sempre lo stesso argomento "chi lavora nell'infrastruttura deve avvicinarsi al business, altrimenti tutto è un castello in aria" Ho già presentato molte volte la nostra azienda come un attore di punta nell'AIGC, specializzato nel settore dei contenuti anime. Recentemente ci siamo trovati di fronte a un problema causato da Elasticsearch. Le opere d'arte e i compiti generati dai nostri utenti sono tutti ricercabili. Recentemente, Elasticsearch ha frequentemente mostrato situazioni in cui alcuni Data Node erano saturi, causando problemi nelle ricerche a catena. Come possiamo risolvere rapidamente questo problema? Prima di discutere ulteriormente, dobbiamo riflettere su quale sia l'essenza dell'operazione di ricerca in questo scenario. La mia opinione è che si tratti di gestione degli asset. Nel contesto dell'AIGC, il Prompt è senza dubbio l'asset principale dell'utente, mentre il Task e l'Artwork corrispondono in un certo senso a una preview (o attributo) dell'asset. Con questa deduzione, possiamo chiaramente capire che, almeno nella forma attuale, le proprietà fondamentali del business non possono essere compromesse per i risultati tecnici. Inoltre, abbiamo osservato che la visibilità delle opere d'arte pubblicate dai nostri utenti è diversa da quella dei Task; l'Artwork è ricercabile pubblicamente e ha anche responsabilità SEO, mentre il Task è visibile solo agli utenti. In altre parole, la frequenza di accesso ai dati e le esigenze di risorse tra i due sono piuttosto diverse. In altre parole, abbiamo bisogno di una gestione multi-tenant per l'indice di ES. Ma sfortunatamente, secondo il design attuale di ES, non ha la capacità di supportare il multi-tenant. Sebbene a lungo termine l'ottimizzazione delle query sarà un'opzione inevitabile, di fronte a un business in rapida evoluzione, suddividere l'indice in cluster diversi e assegnare potenza di calcolo/disco in base alle diverse proprietà dell'indice diventerà la nostra scelta preferita per testare rapidamente. Attualmente questo lavoro è in corso, i risultati sono sconosciuti, ma l'intero processo di riflessione strategica è qualcosa che ho considerato raramente negli ultimi anni. Molte volte, la soluzione tecnica ottimale non è necessariamente la soluzione ottimale per il business. Infine, un'ultima nota. La nostra azienda sta assumendo, posizioni aperte per ML Engineer, ML Data/Full Stack/Backend/Marketing e altro. Se vuoi fare qualcosa di interessante insieme, sentiti libero di contattarmi, ti metterò in contatto direttamente con il tuo capo.