2013-01-23 11 views
5

Lavoro per un sito Web di notizie che memorizza tutte le loro storie come XML. Lo so, non il modo migliore per andare, ma è quello che è. Quello che sto cercando di fare è rendere possibile la ricerca attraverso i file XML dal sito web. Al momento la nostra funzione di ricerca è tutta basata su Google (cerca solo ciò che Google ha già scovato).Ricerca o indicizzazione di file XML

Quello che sto pensando è di usare Grep, che funziona bene, ma probabilmente non scalerà troppo. L'altra opzione che richiederà molto più lavoro, ma funzionerà meglio, consiste nel memorizzare parti di XML in un database relazionale.

Dato il modo in cui viene configurato il back-end, passare a un altro modello di archiviazione richiederebbe molto tempo, quindi per il momento, questo è ciò con cui dobbiamo lavorare. Idee?

risposta

3

L'aggiunta di alcuni caching potrebbe aiutare a ridimensionare l'idea di grep. Tuttavia, potresti prendere in considerazione una soluzione che non solo aiuti la banda oggi, ma ti porta anche più vicino a una soluzione migliore domani. Forse progettare una soluzione migliore e implementarla pezzo per pezzo nel tempo farebbe il trucco.

0

Se si è impegnati a utilizzare XML, suggerirei di utilizzare una soluzione di database XML nativo come Berkeley DBXML o eXist-db. Entrambi ti permettono di sparare xqueries in loro. eXist implementa anche la ricerca full text su DBXML, tuttavia quest'ultima è più veloce nel recupero dei dati.

1

Vorrei anche suggerire di utilizzare un sistema di database XML come BaseX (.org), poiché è molto veloce. Suggerirei di conservare ogni articolo in un file separato. BaseX supporta XQuery 3.0 e Full Text, l'Update Facility ...

Problemi correlati