Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Evitare sovraccarico, spezzare query

    Salve ragazzi!
    E' da un pò che non posto nel forum e, dato che mi avete aiutato innumerevoli volte, torno a rompere le scatole :P
    Sto lavorando per una compagnia in America come analista ed ho bisogno di chiedere loro alcune modifiche a livello della piattaforma che utilizziamo, ma prima ho bisogno di qualche dritta teorica sul come implementare al meglio tali modifiche.
    Vi fornisco qualche elemento per capire meglio la situazione.
    Ogni cliente dell'azienda viene registrato da noi sul nostro portale. All'interno dell'account (che può essere anche visto come un grande contenitore), creiamo dei contenitori, all'interno dei quali creiamo degli album (e all'interno di ogni album inseriamo poi specifiche tipologie di fotografie). Un esempio dovrebbe rendere molto più semplice la cosa:


    >(Account A):


    =>Estate 2014 Italia
    ===>Mare (varie foto dentro)
    ===>Montagna (varie foto dentro)
    ===>Città (varie foto dentro)


    =>Estate 2014 UK
    ===>Mare (varie foto dentro)
    ===>Montagna (varie foto dentro)
    ===>Città (varie foto dentro)
    ===>Altro (varie foto dentro)


    […]




    Ogni contenitore ha un proprio ID, così come ogni album. All'interno di ogni account possiamo avere decine (o anche centinaia) di contenitori ed all'interno di ogni contenitore possiamo avere decine/centinaia di album.
    Il problema sorge quando un cliente decide di inviare singole foto che però vanno inserite manualmente in tutti gli album. Cioè, UNA STESSA FOTO deve essere inserita su tutti gli album "Città" di 40 contenitori (Italia, UK, Germania etc…).
    Come potrete immaginare questo è un vero inferno, quindi gli sviluppatori dell'azienda hanno implementato un scomodissimo sistema che fa affidamento ad excel °__° , si avete capito bene excel.
    In sostanza dobbiamo compilare un foglio csv e popolarlo con gli ID di tutti gli album interessati (che possiamo ottenere facendo una query con un altro tool del tutto arcano) ed il percorso della foto da uploadare negli album stessi.


    A questo punto ecco il motivo del topic. Potreste aiutarmi, a livello teorico, a trovare un'altra soluzione proponibile? L'azienda non è molto grande, quindi sono convinto che se mi deste qualche input da cui partire, potrei essere ascoltato.


    La mia idea era quella di creare un uploader nella stessa pagina dell'uploader attuale del singolo album ma dove diviene possibile selezionare tutti gli albume desiderati con una select di questo tipo: http://aloksah.org/listbox/listbox.html . A mio avviso, se loro non hanno optato per questa soluzione è perché temono un blocco di mysql, elencando tutti gli ID degli album a disposizione per un determinato account (posso arrivare anche a 1000 ID).
    Che soluzione potrei chiedere di implementare?
    Io pensavo di spezzare la query ogni 50 ID. Tipo nella select (come quella sopra) saranno riportati i primi 50 album, poi cliccando su un link "more" se ne caricano altri 50, sino a caricarli tutti.
    Tuttavia non amo particolarmente questa soluzione perché oltre al fatto che cliccare su "more" sarebbe comunque fastidioso, non sarebbe nemmeno funzionale, perché magari prima di trovare elencato l'album che si desidera, devo cliccare "more" 20 volte.

    Scrivete pure tutte le idee che vi sembrano fattibili e nel caso in cui dovessi riuscire a convincerli, bhè avrete reso la vita molto più semplice ad un povero analista


    Grazie mille in anticipo!

  2. #2
    basta che crei una tabella "tipologia album" e salvi tutte le tipologie.

    Per fare l'inserimento di 1 foto su più album userai l'id della tipologià.
    Questa volta, più che un voto.. è favoreggiamento.

  3. #3
    Ciao Al_katraz984 e grazie per l'aiuto!
    Potresti essere più specifico? Cosa intendi per tipologia? Tra l'altro non capita mai di aggiornare tutti gli album con la stessa immagine, ma magari 2 album di contenitore A, 2 di contenitore B, 1 di C, 2 di D ecc...quindi non capisco come la tua idea dovrebbe funzionare.


    Inoltre
    ===>Mare (varie foto dentro)
    ===>Montagna (varie foto dentro)
    ===>Città (varie foto dentro)

    era solo un esempio perchè posso anche avere

    ===>Mare1 (varie foto dentro)
    ===>Moareblu (varie foto dentro)
    ===>Città (varie foto dentro)

    Non c'è quasi mai una distinzione costante tra gli album di diversi contenitori, perchè ogni contenitore ha diversi album con titoli diversi.
    Ultima modifica di the blader; 19-11-2014 a 11:17

  4. #4
    se tu fai una tabellina semplice:

    Codice PHP:
    tipi album

    id 
    name
    mare
    montagna
    città
    altro 
    puoi identificare gli album in modo univoco

    Il problema sorge quando un cliente decide di inviare singole foto che però vanno inserite manualmente in tutti gli album. Cioè, UNA STESSA FOTO deve essere inserita su tutti gli album "Città" di 40 contenitori (Italia, UK, Germania etc…).
    Idealmente avrai un'interfaccia che ti permette di selezionare quali contenitore usare e in che "tipologia" inserire la foto. Oppure partendo dalla tipologia puoi selezionare su quali contenitori fare l'inserimento..

    è capibile?
    Questa volta, più che un voto.. è favoreggiamento.

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Dato che è solo di database che parli, la sezione giusta è Database, non PHP.

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2014
    residenza
    imola
    Messaggi
    47
    domanda : è l'utente che seleziona su quali contenitori / album inserire la foto ?

  7. #7
    Quote Originariamente inviata da antonioimola Visualizza il messaggio
    domanda : è l'utente che seleziona su quali contenitori / album inserire la foto ?
    Sì antonioimola, a quel punto noi procediamo con l'upload.
    Quote Originariamente inviata da Al_katraz984 Visualizza il messaggio
    se tu fai una tabellina semplice:

    Codice PHP:
    tipi album

    id 
    name
    mare
    montagna
    città
    altro 
    puoi identificare gli album in modo univoco



    Idealmente avrai un'interfaccia che ti permette di selezionare quali contenitore usare e in che "tipologia" inserire la foto. Oppure partendo dalla tipologia puoi selezionare su quali contenitori fare l'inserimento..

    è capibile?
    Scusa Al_katraz984, ma continuo a non capire :P , puoi fare un esempio più tecnico? Gli album tra l'altro cambiano in maniera continua, perchè su Estate 2014 Italia possiamo aggiungere nuovi album.
    Aggiungo che ogni album ha un ID, il problema però, secondo il mio punto di vista, è come elencare tutti gli IDs (album ids) di tutti i contenitori disponibili ogni volta che dobbiamo fare un upload di una stessa foto su molteplici album. Ricapitolando, si sta parlando di trovare una soluzione sostenibile per il database per elencare tutti gli id degli album disponibili (in una select) per fare un upload di una stessa foto su più album. Ogni volta che si andrà sulla pagina "upload di massa", il form sarà automaticamente compilato con tutti gli ids degli album creati (10, 100 o anche 1000) nella select.
    Grazie per la pazienza.

    Ultima modifica di the blader; 20-11-2014 a 09:25

  8. #8
    facciamo cosi.. posta la struttura tabellare che hai attualmente, solo le tabelle interessate da questo problema.

    Codice PHP:
    trovare una soluzione sostenibile per il database per elencare tutti gli id degli album disponibili (in una select). Ogni volta che si andrà sulla pagina "upload di  massa"il form sarà automaticamente compilato con tutti gli ids degli  album creati (10100 o anche 1000nella select
    gli ID degli album li hai disponibili internamente quindi non occorre esporli sul form. La pagina di "upload di massa" sarà già predisposta internamente per caricare la foto su tutti gli album.
    Ma anche qui bisogna vedere chi sono gli attori in campo, sarà l'amministratore a fare caricamenti di massa o anche l'utente? se anche l'utente, che cartelle può vedere? 1 utente può caricare sugli album degli altri o solo sui suoi?

    Posta la struttura del db che ci chiariamo le idee
    Questa volta, più che un voto.. è favoreggiamento.

  9. #9
    Dunque ricapitolo. Io sono solo un analista ed assieme al team ci occupiamo anche di uploadare queste nuove foto. Nessun cliente ha accesso alla modifica degli album, che può avvenire solo da parte degli amministratori della piattaforma (io ed il mio team).
    Sfortunatamente non conosco il dietro le quinte della piattaforma, che viene gestito dagli ingeneri oltre mare. Considerato il problema molto serio dell'upload della stessa immagina su più albums (cosa che capita spesso), gli ingegneri ci han fornito un nuovo tool che consente di effettuare tale upload, ma con un arcano metodo basato su fogli .csv excel che devono essere completati da noi ed uploadati nella piattaforma seguendo un determinato template (dove indichiamo gli IDs degli album e l'url dell'immagine che vogliamo uploadare su più album). Visto che questo sistema è quasi più noioso di uploadare manualmente la foto in ogni singolo album, volevo proporre una soluzione. Sapendo per certo che se suggerissi semplicemente "ehi ragazzi, perchè non facciamo tutto con una bella interfaccia online senza passare dal .csv?" non verrei nemmeno preso in considerazione, volevo preparare una soluzione "cotta e mangiata" almeno a livello teorico, dove dico: questa è la situazione attuale, questo quello che farei, questo come lo farei".
    Vorrei quindi avere qualche consiglio sul come affrontare la cosa a livello tecnico. A mio vedere, e correggetemi se sbaglio, la ragione per la quale stiamo usando questi stupidi .csv è proprio per evitare una query enorme dove dovrebbero essere listati tutti gli album ids, che come ho scritto possono essere migliaia, a seconda del contenitore in cui ci troviamo.
    Quello che vedo dal browser è:
    #ogni contenitore ha un id
    #ogni album contenuto nei contenitori ha un proprio id
    #il database usato dovrebbe essere Mysql

    So che non è molto, ma credo possa essere sufficiente per darvi una comprensione generale della piattaforma.
    il mio obiettivo è fare in modo che l'attuale interfaccia all'interno del singolo album che consente l'upload di un file su quell'album stesso diventi in grado di estendere l'upload a piu albums. Pensavo quindi di inserire una select di questo tipo: http://aloksah.org/listbox/listbox.html , dove all'interno saranno elencati gli album a disposizione dentro quell'account (struttura: account=>contenitore(i)=>album(s)=>foto

    Spero ora sia più chiaro, grazie mille!

  10. #10
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    the blader, dal mio punto di vista se non conosci come è fatta la base dati, come sono fatti i programmi che la alimentano e quali risorse ci sono a disposizione non puoi proporre qualcosa di "cotto e mangiato".

    Da analista (non tecnico) proporrei una soluzione che preveda al realizzazione di un front end di back office che renda più agevole il caricamento delle immagini, dando giusto un'idea di processo operativo non di programmi:
    - eliminazione dell'attività manuale ripetitiva (motivando con un costa 10 FTE con rischio di errore di 10 su 10);
    - eliminazione dell'attività di compilazione del CSV (motivando con un costa 5 FTE e rischio di errore di 8 su 10);
    - aumento della produttività con la nuova interfaccia (spiegando il risparmio di FTE e la riduzione del rischio di errore)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.