salve,
sto creando un modulo drupal per un API ad un sito web (di un catalogo bibliografico), che mi da una lunga lista xml con una serie di valori variabili
es.
record 1 {
100 - tags
200 - attori
300 - boh
401 - blah blah
420 - ...
425 - ...
427 - ...
...
700 - titolo
720 - titolo originale
}
record 2{
xxx - xxx
...
}
record N {...}
potenzialmente le colonne potrebbero essere 800, in pratica sono mediamente un settantina
i record sui 400, ma per ora solo 80 (ma aumenteranno, maledizione! ;))
volevo creare una tabella con 800 colonne collegata a nodeapi, ma mi è sembrato esagerato.
la cosa migliore per me potrebbe essere fare una specie di integrazione a cck "pluggabile", dato che comunque non mi servono tutti i campi (ma potrei doverne aggiungere o togliere) e posso potenzialmente sempre recuperarli tramite api dal sito web 'origine'.
O semplicemente alterare la tabella contenitore per aggiungere o togliere le colonne, ma qui ritorna cck che sarebbe più comodo.
in pratica, per ora il tutto cammina elaborando al volo le richieste, ma è lento (5-48 sec per richiesta) e vorrei fare una cache per renderlo più veloce e utile (ed customizzabile)
Chiederei caladamente un consiglio su come procedereste voi, drupaliani
HELP! voglio laurearmi prima del risultato della prossima ricerca!!! :)
grazie lu
La butto li, devi memorizzare i dati? Potresti provare con una tabella a tre colonne.. (forse 4)
[opzionale] ID | record | chiave | valore
In questo modo dovresti cavartela, il rischio è che riempi la tabella ad una velocità mostruosa e quindi alla fine la ricerca diventa mastodontica, ma sempre melgio che prendere e fare richiesta ad un service che magari da tempi di latenza pazzeschi, magari potresti creare qualceh funzione chiamata da cron che svuoti la tabella dai dati inutili (non so ceh dati sono, quindi magari non va per nulla bene come concetto :D
Altra via che potresti seguire è una tabella con due soli campi e memorizzare al'lid del record questo sotto forma di array (vedi come vengono gestite le funzione variable_set e variable_get, in questo modo potresti ridurre i record della tablla e velocizzare le fasi di prelevamento informazioni (se ti serve l'array interno), ma di contro limiti le possibili ricerche nell'array che diventerebbero ben più complesse.
Problema interessante, dovresti specificare meglio che tipi di dati sono e cosa devi farci poi per poterti dare aiuto, in ogni caso tienici informati :)
Ciao
Marco
--
My blog
Working at @agavee
ci lavoro domani e mi faccio risentire ciao grazie
ho pensato a una cosa tipo
nid | ID_DB_SERVICE | x campi utili all'utente(cck?) | keywords
per le visualizzazioni nel teaser di una views.
per la vista di un nodo carico da disco l'xml relativo nel formato
files/[cache_dir]/[ID_DB_SERVICE].xml
così è accessibile.
poi ho pensato di usare services e json server (e collect_nodes), e renderlo web2.0 oriented (dato che ajax in questo caso potrei usarlo in maniera "completa" con xml)
a presto, per un review comunitario del modulo :)
lu
mm.. non ti ho capito, ma se va bene a te :D
Ciao
Marco
--
My blog
Working at @agavee
eureka!
http://dev.e-banana.it/cbtapi