Abstract
In the present paper, we introduce TaLTaC version 3.0. For this updated version, the software's architecture has been entirely restructured, and the code completely rewritten. The main aims of these changes were i) to enable TaLTaC to handle large textual corpora and ii) to introduce a web-based (HTML5/CSS/Javascript) user interface. The backend code has been ported to the Python/PyPy language, and the implementation of a NoSQL approach for the data persistence layer allowed for improved performance. In particular, advanced automatic memory caching services through SSD memory devices are exploited, and results are obtained that are comparable to those achieved by using only the computer's main memory. TaLTaC 3.0 runs on Windows, Linux and Os X, without any dependency from proprietary software technologies. The graphical user interface (GUI) has been redesigned and reserved a software sub-system decoupled from the inner processing core (CORE). CORE extracts a 3-layered lexical vocabulary from each given corpus, taking advantage of the parallel operations that can be carried out by current personal computers. The three lexical layers are i) basic parsing output with extraction of original graphic forms, ii) pre-normalization, and iii) named entities and multi-words recognition; all lexical layers are based on one and the same textual parsing. The paper also presents and compares the actual performances that can be obtained on different operating systems/machines and working with different data set sizes.
Riassunto
La versione 3 di TaLTaC, qui presentata, include una revisione globale dell'architettura software e una riscrittura totale del codice, con l'obiettivo di elaborare grandi corpora testuali e introdurre una interfaccia utente basata sul web (HTML5/CSS/Javascript). Il codice di calcolo di base è scritto in Python e nei suoi derivati ad alte prestazioni, come PyPy. Inoltre l'adozione di un approccio NoSQL per lo strato di persistenza dei dati, ha permesso di ottenere prestazioni paragonabili all'uso della sola memoria centrale, potendo sfruttare tecniche avanzate automatiche di memoria cache con l'uso dei dispositivi allo stato solido (SSD). TaLTaC 3.0 può girare su Windows, Linux e Os X, non presentando dipendenze da tecnologie software proprietarie. L'interfaccia grafica (GUI) è stata riprogettata, implementando un sottosistema disaccoppiato dal nucleo centrale di elaborazione (CORE). Il CORE estrae simultaneamente dal corpus un vocabolario a 3 livelli lessicali, sfruttando il parallelismo disponibile negli attuali computer: scansione con estrazione delle forme grafiche originarie, pre-normalizzazione e riconoscimento di entità e multiwords predefinite. Questi tre parsing lessicali insistono tutti su un'unica scansione testuale. Nel lavoro vengono confrontati i tempi di elaborazione ottenibili nei diversi sistemi operativi per corpora di vari tipi e dimensioni.