Autore Topic: Dati XML  (Letto 1213 volte)

Offline babsevensix

  • Nuovo arrivato
  • *
  • Post: 28
  • Respect: +1
    • Mostra profilo
Dati XML
« il: 18 Giugno 2012, 15:32:14 CEST »
0
Ciao a tutti, ho un serie di file xml nei quali devo effettuare delle ricerche.
Ho utilizzato Sax Parser con successo, solo che, purtroppo è un pò lentino e vorrei avere qualcosa di più performante.

Avete qualche idea? Il parser in questo momento ricerca del testo all'interno dei nodi dei file xml e ritorna una lista dei nodi stessi, su un insieme di file.

Ogni file è circa grande 1MB...


Grazie a tutti

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Dati XML
« Risposta #1 il: 19 Giugno 2012, 19:12:45 CEST »
0
Sulla ricerca singola penso ci sia poco da fare. Se sono molte puoi pensare di caricare il file in memoria in una struttura ottimizzata per le ricerche, o fare qualche indicizzazione.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline Nicola_D

  • Moderatore
  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:Dati XML
« Risposta #2 il: 19 Giugno 2012, 20:35:04 CEST »
0
Sulla ricerca singola penso ci sia poco da fare. Se sono molte puoi pensare di caricare il file in memoria in una struttura ottimizzata per le ricerche, o fare qualche indicizzazione.
o trasportare la struttura su db
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline pivoide

  • Utente junior
  • **
  • Post: 133
  • Respect: +19
    • Mostra profilo
  • Dispositivo Android:
    Samsung galaxy tab 10.1
  • Play Store ID:
    codicerosso
  • Sistema operativo:
    Ubuntu 11.04
Re:Dati XML
« Risposta #3 il: 19 Giugno 2012, 22:11:21 CEST »
0
Indicizzare con un sistema di ricerche testuali stile lucene
Odio l'inglese e per un informatico non è il massimo

Offline babsevensix

  • Nuovo arrivato
  • *
  • Post: 28
  • Respect: +1
    • Mostra profilo
Re:Dati XML
« Risposta #4 il: 21 Giugno 2012, 12:07:31 CEST »
0
Non credo che trasformare un file xml in un db sia la soluzione migliore per le ricerche, è come voler convertire una pagina HTML in una struttura in db per poi effettuare la ricerca. Inoltre non vorrei solo fare la ricerca, ma avere anche il punto esatto di dove si trova il testo cercato.
Pe quanto riguarda lucene, ho visto che hanno fatto qualcosa su android...

Offline DarnellNajanReed

  • Utente normale
  • ***
  • Post: 359
  • Respect: +49
    • Google+
    • Mostra profilo
  • Dispositivo Android:
    LG Optimus One, Acer Iconia A500/501, Asus Transformer Prime, Galaxy ACE, Galaxy S Plus, Galaxy S Advance P, Galaxy Tab 2 7.0, Google Nexus 7
  • Play Store ID:
    Luigi Notaro
  • Sistema operativo:
    OS X 10.8.3
Re:Dati XML
« Risposta #5 il: 21 Giugno 2012, 12:14:14 CEST »
0
Citazione
Non credo che trasformare un file xml in un db sia la soluzione migliore per le ricerche, è come voler convertire una pagina HTML in una struttura in db per poi effettuare la ricerca.
Dipende: se devi fare una ricerca su un file caricato al volo e una tantum, posso darti ragione.
Se invece lo stesso enorme file (1 mega per un xml/html non è poco) lo usi molte volte dopo un primo "import" iniziale....la vedi la differenza se converti il tutto in una struttura tipo db, dove hai indici e tutto il resto.

Offline babsevensix

  • Nuovo arrivato
  • *
  • Post: 28
  • Respect: +1
    • Mostra profilo
Re:Dati XML
« Risposta #6 il: 22 Giugno 2012, 09:27:24 CEST »
0
Supponendo quindi di utilizzare un DB, e volendo tenere la rappresentazione del documento in XML, come faresti allora per effettuare la ricerca? Dalle prove che ho fatto, anche la ricerca di un singolo nodo non è proprio performante...

Offline DarnellNajanReed

  • Utente normale
  • ***
  • Post: 359
  • Respect: +49
    • Google+
    • Mostra profilo
  • Dispositivo Android:
    LG Optimus One, Acer Iconia A500/501, Asus Transformer Prime, Galaxy ACE, Galaxy S Plus, Galaxy S Advance P, Galaxy Tab 2 7.0, Google Nexus 7
  • Play Store ID:
    Luigi Notaro
  • Sistema operativo:
    OS X 10.8.3
Re:Dati XML
« Risposta #7 il: 22 Giugno 2012, 09:29:12 CEST »
0
Citazione
Supponendo quindi di utilizzare un DB, e volendo tenere la rappresentazione del documento in XML, come faresti allora per effettuare la ricerca?
Se sto usando un DB, faccio una query.