Σχόλια 0

Το κείμενο του εγγράφου

METALA:a J2EE Technology BasedFramework for Web Mining∗Juan M.Hernansaez†Juan A.Bot´ıa‡Antonio F.Skarmeta§AbstractIn this paper,we discuss the most important aspects of METALA,a software tool formeta-learning that we have developed to perform inductive learning in a distributedand component based fashion.The distribution comes from the use of a well posed dis-tributed application development standard as is J2EE,and the component basis comesfrom the methodology we developed to integrate new learning algorithms and othersoftware utilities into the system.We aim to use this new architecture for evaluatealgorithms of Web Usage Mining,a concrete learning problem of the Web Mining area,and for taking advantage of these algorithms to build new knowledge models.Thesemodels can be used then to create and incorporate new applications and tools to thearchitecture.We discuss the advantages and ﬂaws of using J2EE as the technologybasis.We also compare our architecture with some other software platforms intendedto solve similar Web Mining problems as METALA can solve.To illustrate the use ofMETALA,we present a complete Web Usage Mining life cycle process explanation.Keywords:Software architecture,web usage mining,inductive learning,knowledgemodels,J2EE,XML.ResumenEn este art´ıculo,comentamos los aspectos m´as importantes de METALA,una her-ramienta software para meta-aprendizaje,que hemos desarrollado para realizar apren-dizaje inductivo de manera distribuida y basada en componentes.La distribuci´on vienepor el uso de un est´andar de desarrollo de aplicaciones distribuidas bien deﬁnido comoes J2EE,y la base de componentes de la metodolog´ıa que hemos desarrollado para inte-grar nuevos algoritmos y otras utilidades software dentro del sistema.Nuestro objetivoes usar esta nueva arquitectura para evaluar algoritmos de Miner´ıa de Uso Web,unproblema de aprendizaje concreto del area de la Miner´ıa del Web,y aprovechar estos al-goritmos para construir nuevos modelos de conocimiento.Estos modelos pueden usarsedespu´es para crear e incorporar en la arquitectura nuevas aplicaciones y herramientas.Comentaremos las ventajas y defectos de usar J2EE como base tecnol´ogica.Adem´ascompararemos nuestra arquitectura con otras plataformas software propuestas para re-solver problemas de Miner´ıa del Web similares a los que METALA puede resolver.Para∗Supported by the Spanish CICYT through the project TIC2002-04021-C02-02†Departamento de la Ingenier´ıa de la Informaci´on y las Comunicaciones,Facultad de Inform´atica de laUniversidad de Murcia,juanma@um.es‡Departamento de la Ingenier´ıa de la Informaci´on y las Comunicaciones,Facultad de Inform´atica de laUniversidad de Murcia,juanbot@um.es§Departamento de la Ingenier´ıa de la Informaci´on y las Comunicaciones,Facultad de Inform´atica de laUniversidad de Murcia,skarmeta@um.esilustrar el uso de METALA,presentamos la explicaci´on del proceso de un ciclo de vidacompleto de Miner´ıa de Uso Web.Palabras clave:Arquitectura del software,miner´ıa de uso de la web,aprendizajeinductivo,modelos de conocimiento,J2EE,XML.1 IntroductionIn this paper we propose METALA,a META-Learning Architecture.Our architectureaims to facilitate the coding of diﬀerent learning paradigms and domains applications in theserver side and the testing of the techniques of the incorporated paradigms from the clientside.As stated in [12],Web Mining (WM) can be viewed as the use of data mining techniquesto automatically retrieve,extract and evaluate information for knowledge discovery fromweb documents and services.Although considered to be a particular application of datamining,it is clear that a separate research ﬁeld is required to deal with all the problems andchallenges of information mining from the Web.Currently,there are two diﬀerent areas ofWM:Web Resources Mining and Web Usage Mining (WUM).We focus on WUM.One ofthe most accepted deﬁnitions for WUM is given in [7]:it is the application of data miningtechniques to large web data repositories in order to extract usage patterns.As we know,web servers around the world record data about user interaction with the web pages hostedin web servers.If we analyze the web access logs of diﬀerent web sites we can know moreabout the user behaviour,allowing personalization or making easier the improvement of websites design among other interesting applications.At the present time,there are three main approaches to face the problems of WUM:clustering,association rules and sequential patterns discovery.There are many techniquesfor the diﬀerent approaches.For this paper,we have tested the Apriori algorithm [1] fromthe association rules approach to Web Usage Mining,and added an application which takesadvantage of the learning process result (knowledge model) of such algorithm.The original contribution of this paper consists of this J2EE based soft computing frame-work for WM,how it can be used to incorporate new learning paradigms and domain ap-plications,and how it can be useful for adding new abstraction layers.For our future workwe are planning to add a new intelligent agent layer,which can be also proﬁtable for WMpurposes.This would allow us to have most of the Web Mining phases,applications andtechnologies available from a built-in single framework.The rest of the paper is organized as follows:in section 2,we present our softwarearchitecture for automated data analysis processes.After that,in section 3 we discuss themost relevant implementation issues of the new software architecture.Then,in section 4 wewill show a complete WUM life cycle resulting in a knowledge model that we use to buildan URL recommender application onto our architecture.In section 5 we compare some ofthe features of our tool with other similar WM intended tools,like [11] and [15].Finally,in section 6 we discuss the beneﬁts and uniqueness of METALA and we outline our futurework.2 Architecture of METALAMETALA is a software architecture which aims to guide the engineering of the informa-tion systems which support multi-process inductive learning - MIL.The previous versionApplicationMASMiddlewareOODistribution of machine learningtechniques and data setsMachine learning techniquesas servicesResearch on SupervisedLearningApplicationBusiness LogicData LayerPersistent storage -Data setsMachine learning techniquesas services - models - MILResearch on InductiveLearning(a) Abstraction layers of METALA-RMI(b) Abstraction layers of METALA-J2EEData sets, basic techniques, theoriesMIL (Multi-Inductive Learning)Figure 1:Abstraction layers of METALA.of METALA (which we named METALA-RMI) was deﬁned with four diﬀerent abstractionlayers (see ﬁgure 1 (a)):(1) Object-oriented layer (OO),(2) Middleware layer and (3) agentslayer (MAS,Multi-Agent System).The layer (4) is the METALA application.We can com-pare this layer with the one of the ﬁgure 1 (b),which corresponds to the new version ofMETALA (which we named METALA-J2EE).In this new architecture there are only threelayers:(1) data layer,(2) business logic layer and (3) METALA application layer.METALA-RMI was based on diﬀerent technologies:RMI (Remote Method Invocation)for providing distribution,LDAP for service location and data persistence,etc.Everythinghas to be explicitely coded using Java,including load-balancing,communications,distribu-tion,persistent data storing and retrieving,performance,etc.Thus,the maintenance andextensibility of the system was not easy,although we provided a coding methodology basedon a predesigned business logic,so METALA users wishing to test their algorithms coulduse this methodology and forget about technology-related issues.Then,we thought aboutusing J2EE as the only technology basis of our framework.We show below which are the underlying technologies that we are currently using andwhy.But ﬁrst,we must explain how the METALA systems works,i.e.which is its businesslogic.2.1 Business logic of METALAWe start from the data managed by any learning technique.The basic data unit is theinstance.It is composed of a set of attribute values referred to a particular sample in alearning data source.A data source is a set of instances.Instances in a data source can beaccessed by using a cursor named access.The learning techniques of the architecture are the possible services to be oﬀered andused.An usual operation in METALA has the following sequence of actions:ﬁrst,conﬁgurethe parameters needed by a learning technique (i.e.conﬁgure the experiment);then,launchthe experiment;while the experiment is running,monitor its progress generating desiredprogress watches (progress logs);ﬁnally,if the experiment ends successfully,generate theassociated data model,for further evaluation or utilization.Data models are the pieces of knowledge induced from data by a particular learningtechnique.They may be stored for analysis,recreated for feeding other learning processes,Figure 2:Learning process of any learning technique.visualized for user-friendly evaluation and used as part of new applications,as we will seein section 4.In ﬁgure 2 we show the behaviour of all the learning services of METALA.The business logic of METALA has not changed along its diﬀerent versions.The originaldesign of METALA and its Java interfaces and class hierarchy [2] has proved to be validfor the purposes of meta-learning,incorporating new heterogeneus learning paradigms andnow,for adding and testing eﬃcient WM soft computing techniques.Thanks to this designand to the coding facilities provided by J2EE,we were able to performa fast migration fromone to another underlying technology.2.2 J2EE technology for data analysisThe architecture of METALA is shown in ﬁgure 3 (similar to the “Common 3-tier archi-tecture” ﬁgure from [3]).At the top of the ﬁgure we can see the level of the clients.Here,a client can access to the METALA functionality using diﬀerent front-ends.Currently,allservices of METALA are oﬀered through HTTP from a web portal1or pure Java clients.Nevertheless,they could be also Java applets or in PDAs (dashed lines in ﬁgure 3 indicatethese possibilities).METALA,as any EJB tool,is composed of three types of beans:entity beans are usedto interface with the storage medium.An entity bean can pull information from a relationaldatabase or some other legacy system containing business data.Session beans deﬁne theapplication business logic,or what the application can do given some entity beans to workwith.Finally,Amessage-driven bean allows J2EEapplications to receive JMS (Java MessageService) messages asynchronously,which can be used to perform diﬀerent actions.In ﬁgure 3 below the clients we found the business logic level of METALA.It is containedin the Enterprise Java Beans (EJBs) deployed in the J2EE application server.All the serviceswe provide implement the needed interfaces and lay on the appropiate session beans.Allthe data needed by the services lay on entity beans.Finally,to monitor the progress ofthe learning experiments we use a message driven bean which take cares of storing into thedatabase all generated progress logs,reading them from an asynchronous topic publisher.The application server provides us automatically with all the needed features of systemdistribution (with RMI),load balancing,service locating -with JNDI (Java Naming and1Developed using the Tapestry framekork from Jakarta (http://jakarta.apache.org/tapestry/).ApplicationsMETALAServices fromWebBrowser AppletsPDAServlets Java Server PagesEJB Interfaces -> Platform Services...EJBs: Business LogicFront-ends(JAVA, web)ConnectorsJ2EE ApplicationServerRelational DatabaseSQLExisting System -Legacy SystemPropietaryProtocolosOther systemSOAPSupportSystemsIIOPSOAPHTTPHTTP/WAPFirewallUser CMPMail SFSBuserLoggerMDBLog CMPlogExampleBMPPlaintextCMPSequentialAccessSFSBdataExperimentCMPExperimentSchemaCMPExperimenterMDBmachine learningLearningTechniqueSFSBtechniquesSupervisedLearningTechniqueSFSBUnSupervisedLearningTechniqueSFSBApriori SFSBNaiveBayesSFSB...METALAEJBsPersistentModelCMPmodelsMETALAENTITIESDataSourcesUsersExperimentsExperimentSchemasAlgorithmsData ModelsExamplesLogsExecutionQueueCMP = Container Managed Persistence (entity bean)BMP = Bean Managed Persistence (entity bean)SFSB = Stateful Session BeanMDB = Message Driven BeanFigure 3:J2EE based architecture of METALA.Directory Interface)-,database access -with JDBC (Java DataBase Connectivity)-,and someothers.Now we do not need to code explicit connections to the database or remote systems,taking care of load balancing,updating the database,thread controlling,etc.We justconcentrate on implementating the business logic and let the application server take care ofconnection,performance and system control issues.Finally,at the third level,some support systems are needed.Currently we only needthe database support given by a relational database but some other systems may easily beconnected with the application server thanks to its connectors and to protocols as SOAP(Simple Object Access Protocol).To facilitate the incorporation of a new learning technique into our architecture weprovide a new template or programming methodology for adding the learning algorithm,the generable knowledge model and the technique execution progress log type.This is allyou need to deﬁne in order to to make your technique available through the Internet.Evenif you have already programmed your technique in Java,it is very easy to use the templateand incorporate the technique to our architecture.If your technique does not belong to anyof the paradigms or domain applications existing in the architecture,you may add a newparadigm just coding with pure Java all the features of the new paradigm,forgetting aboutother underlying-technology related issues,and then incorporate the new technique usingthe provided methodology.After that,if you want to take even more advantage of youradded technique,you may want to create new applications based on the knowledge modelgenerated by your technique.These applications can also be aggregated to our platform byimplementing a single interface,and then they will be automatically available as servicesusable from any browser.3 Design and Implementation of METALAAs we have seen in ﬁgure 3,the METALAsystemshould be considered fromtwo perspectives:clients and business logic.The clients can use METALA from any Internet browser,sincethe services of METALA are available from web pages.We can develop new Java graphicclients by using the classes of the packages paquetes javax.swing and java.awt,but we arelooking for providing the access to METALA from the Web.In section 6 we point out thepossibility of describing the services of METALA as real Web Services.The second part of METALA,the business logic of the system,is obviously the mostimportant one.It is concentrated on the EJBs and classes deployed on JBoss.We candistinguish the following functional parts:• user:it manages users and their permissions on METALA.• data:it deals with data acquisition,data parsing and access to data from originaldata sources.• ml (machine learning):it deﬁnes the learning experiments and the conﬁgurationof the associated parameters.• techniques:it contains the techniques of inductive learning,in diﬀerent paradigms.There are two main types of learning:inductive supervised learning and inductiveunsupervised learning (which WUM belongs to).• models:it stores the knowledge models got from the execution of an experiment withsome speciﬁc parameter for a particular learning technique.• log:it deﬁnes the beans and classes associated to the monitor of the progress of theexperiments;each generated log is stored in the data base and sent to a Topic inorder to be immediately consumed by a client who is watching the progress of theexperiment.• xml:it describes how to transform any information piece (knowledge models,experi-ments,learning techniques,etc.) of METALA to XML.Any knowledge related to thelearning process must be available in XML,providing communication facilities withother heterogeneus systems and platforms.Note that,as already pointed,there is a concrete methodology to add new learning ser-vices.It is deﬁned upon some Java interfaces,which are separated in packages correspondingto the functional parts described above.They are:• Package data:– AccessFactory:it provides the static access to the data source;the type of usedaccess (random,sequential,etc.) is speciﬁed by the schema of the experiment.– DataAccess:it shows all the methods that can be used when accessing to a par-ticular data source.All the data sources in a typical machine learning applicationmay be divided into a learning part and an evaluation part.The ﬁrst part of theinstances of the data source is used for the learning process,and the second oneto estimate the error of the learning process.– DataSet:it groups the features of any data source of METALA.– DataSetFactory:it provides in a static way a data source of a speciﬁc type.Theinstances of the data source are stored in the database.– ExampleHandler:it provides the needed methods to manage the instances of adata source.– Instance:general deﬁnition of any data instance of METALA.• Packages ml and techniques:– LearningTechnique:general deﬁnition of a learning algorithm of METALA.– SupervisedLearningTechnique:general deﬁnition of a supervised learning algo-rithm.– UnSupervisedLearningTechnique:general deﬁnition of an unsupervised learningalgorithm (for example,the ones from WM).– Experiment:deﬁnition of an experiment of a learning algorithm,storing its state,diagnostic,elapsed time,etc.– ExperimentSchema:conﬁguration of an experiment of a learning algorithm,withinformation about used parameters,type of algorithm,etc.• Package log:– MLLogValue:deﬁnition of the data unit stored in a logging process along theexecution of a learning algorithm of METALA.– LogClient:needed methods to generate (anotate) a data unit in a logging process.• Package models:– Model:related to the generic model generated from a learning algorithm,whichcan be stored in the database and used to make inferences.– Inference:representation of an inference of a data model,for the inductive learn-ing algorithms which need to make inference.• Package xml:– XMLItem:needed features to serialize any important element of METALA intoa XML document.3.1 Some implementation decisionsAs implementation notes,we should mention that current coding lays on the EJB 2.0 speciﬁ-cation2,and that all created entity beans are of type CMP (Container Managed Persistence).The reason for using CMP is again to delegate to the application server the responsabilityof choosing the best moment to dump memory information into the database,to roll backa transaction due to an unexpected error,etc.(i.e.all the aspects which fall out of thelearning business logic).However,sometimes it is advisable to code “manually” certainparts of a process.For example,the data handling at instance (data sample) level shouldbe extremely eﬃcient to increase overall system performance.The application server andthe EJB speciﬁcation allows this by providing BMP (Bean Managed Persistence) or justprogramming directly with the underlying technologies (in our case,JDBC) those criticalparts as if it was not on any application server.So we can take the best of both program-ming styles.This is exactly what we have done to develop our software architecture.In thisway,the performance with the J2EE application server support (providing enough machine2http://java.sun.com/products/ejb/docs.htmlresources for its execution) is not noticeably reduced in comparation with direct technologyprogramming.We should also mention the METALA class hierarchy,which is based on the data andlogic model of [2] and represented by Java interfaces.The interfaces are implemented byentity and session beans,which are placed in the hierarchy providing local and remoteinterfaces (which are the ﬁnal services to be used).This hierarchy contains many inheritancerelations,which allowed us to deﬁne a fairly simple coding methodology.About the concrete underlying technologies that we use,there are some reasons to chooseJBoss as the J2EE application server.First,it is open source,which is an important ad-vantage for us.There exists an important community of developers which use this appli-cation server,providing lots of information and documents.There is also a lot of free andpurchasable documentation available from the JBoss home page (http://www.jboss.org).Second,this application server is always kept up-to-date,and new versions appear oftenly.Third,JBoss is highly conﬁgurable,which allows us to “play” with diﬀerent conﬁgurations,and some of them seem to be more suitable for our software architecture.Besides,it meetsthe requirements of any powerful application server,such as clustering,last EJB speciﬁca-tion compliance,etc.Finally,it is always shipped with the last third party technologies(open source) distributions.However,as JBoss is full J2EE compliant,there should notbe important problems to migrate to other J2EE compliant applications servers,if needed.We are using some other tools which aims to facilitate this possible migration,as XDoclet(http://xdoclet.sourceforge.net).4 A Sample ApplicationSince the Apriori algorithm is included in the WM domain application of the architecture,we can use its respective user interface fromthe Internet for testing.Let us check a completelife cycle WUM process:1.First of all,we choose the WM domain,then the web usage mining approach andafter that we select the Apriori algorithm.We then select a new experiment for thealgorithm.2.The service shows which parameters should be conﬁgured before the experiment couldbe launched,with information about how they must be conﬁgured.For the preprocess-ing step [5],we must set the session expiration time.For the algorithm itself,we mustprovide a minimum support value and a minimum conﬁdence value [1].3.After conﬁguring the experiment,we launch it.While it is running we can check itsprogress or test some other service of METALA.We may also leave the tool and checklater the conclusion and results of the experiment,or abort its execution.4.The preprocessing step may also generate readable and storable progress logs or mes-sages,as part of the overall learning technique process.i.e.these logs may be used tofollow up the progress and the results of the preprocessing step.5.When the experiment has ﬁnished,we got a knowledge model that can be browsed(or viewed,or whatever the METALA developer consider the best represetantion ofits data model) for evaluation.The model is also stored in a XML document for otherusages.This model type may also have associated applications.For example,for theWUM approach we have developed an URL recommender application available forall WUM models (see ﬁgure 4).If we choose the model obtained from Apriori,theFigure 4:URL recommender based on a WUM knowledge model.application takes this model as its knowledge source and provides URL recommenda-tions for a given observated user URL traversal path and for given desired values ofrecommendation support and conﬁdence.6.Since the conﬁguration of the experiment has been saved in a experiment schema,we may repeat the experiment with diﬀerent parameters values.This way,if we arenot satisﬁed with the model accuracy,we can get another model using less restrictivevalues for the parameters of the learning technique.The URL recommender that we have built is available as a pure Java client to be useddirectly,and also as a Java applet and as a web page to be accessed from any Internetbrowser.Nevertheless,we are deﬁning all the services of METALA as Web Services (seesection 6).At the moment,these services are available as pure Java clients and as web pagesof the web portal that we have developed,based on the interfaces described above.Let usreview this application as an example of a METALA built-in application.In ﬁgure 4 weshow the pure Java client version of the application.As we can see in ﬁgure 4,at the left side of the application window we ﬁnd the represen-tation of an Apriori knowledge model,for the WUM domain application.The applicationjust invokes the visualize method of the Model interface to load its representation on theleft frame.On the right frame we deﬁne the control panel of the application itself.Herewe can choose the current browsing pattern of an user,give the desired values of supportand conﬁdence and ﬁnally obtain the recommended URLs basing on the obversed browsingpattern.The recommendations are given with a value score.5 Comparison with Other PlatformsThere are many tools,frameworks,and research initiatives intended for WM.Most of themconcentrate on the required WMtasks,providing an acceptable solution for a concrete WMproblem [4] or for the problems of a particular WM approach as WUM [13] [9].Some of them even combine WUM with other WM approaches such as Web StructureMining [6] or Web Content Mining [10] to aid in a more eﬀective WUM and to provideuser proﬁling,content management and a publishing mechanism for adaptive Web sites.Weconsider these kinds of general frameworks as the most interesting ones,because they couldoﬀer a solution for a global WM process,providing multiple valid applications,and usingdiﬀerent learning techniques into the same system.However,to update these systems is not easy.Newtechniques and plugins to be added re-quired a systemreconsideration and maybe a newsystemimplementation.They did not havethe required level of abstraction to deal with extensibility issues,which is one of the strengthsof our proposed architecture.Moreover,those systems were very technology-dependant.TheMETALA underlying J2EE application server represents a relatively modern technology ap-proach to Java programming,which aims to support technology-indepedent Java systemsby concentrating on the required business logic of the system.One of the platforms most similar to METALA is proposed in [11].In this paper,two architectures -Whoweda and Wiccap- are joined into a single platform to provide,withthe Whoweda system,extraction and retrieval of information from the Web and miningand knowledge discovery;with the Wiccap we obtain XML documents from the knowledgegained fromthe Web by Whoweda,so that we can get structured information to performdatamining with semi-structured Web data.The Wiccap systemcan be viewed as an applicationof the information provided by the Whoweda system.What is more interesting for us is thecapability of the Whoweda system of incorporating new algorithms by using some skeletonframework to guarantee a set of interfaces required for inter-component communication.In our case,METALA is built on a single architecture,and we are not limited to theWMdomain.Our framework is thought to support almost any supervised and unsupervisedlearning paradigm,for educational and research purposes,in a distributed environment forconcurrent users.The platformfrom[11] is regarding data warehousing and concerned aboutthe eﬃcient application of the Wiccap system.Unfortunately,we do not have informationabout implementation issues of [11],so we cannot stablish more coincidences and diﬀerencesamong both platforms.Finally,another interesting work in progress with some similarities with our platformcan be found in [15].In this work the authors have implemented several techniques for someWUM problems,as association rules mining (Apriori algorithm) classiﬁcation (Naive Bayesalgorithm) and clustering (k-means,o-cluster).Again,a higher abstraction is missing andcoding the diﬀerent algorithms required some extra eﬀort.6 Conclusions and Future WorkIn this paper we have shown how the J2EE technology can support our soft computingframework,named METALA.In this way we have reached a high abstraction level for easilycoding and testing machine learning techniques,new paradigms,and new domain applica-tions as Web Mining (WM).For WMwe have tested one of the algorithms of the Web UsageMining approach to WM,reviewing a complete WMlife cycle and providing an URL recom-mender tool.Any knowledge piece added to METALA (as algorithms,models,applications,etc.) is immediately available through HTTP,thanks to the underlying framework and tothe J2EE technology support.Researchers interested in testing new algorithms only have to concentrate on the businesslogic of the new algorithms.There are many chances of easily adding these algorithms toMETALA even if they have been already coded outside our framework,on condition thatno speciﬁc technology (just pure Java) is involved.The coding process of new algorithms,models,etc.has been greatly simpliﬁed thanks to the programming methodology weprovide,which overcomes some of the limitations (specially with inheritance relations) ofthe J2EE speciﬁcation.However,this abstraction capability and coding facility is only the tip of the iceberg.The J2EE application server has many strengths,and one of themis its capability to connectheterogeneous systems.At the present time,we are working on providing support to theparadigm of software agents and multiagent systems [14] in order to take into account userproﬁles based on stereotypes.In this way we will be able to add adaptability to our tool.Using stereotypes we can deﬁne classes of users,so that each user may feel more identiﬁedwith one or another class.Thus,we can give valuable information about (a) choosingwhich algorithm may be more convenient for a particular problem and (b) how to presentthe results.On the other hand,using an ontology to model the diﬀerent algorithms andthe adaptation capabilities by means of agents learning,we can provide our tool with amechanism to progressively execute the learning services more eﬃciently.To integrate inMETALA the needed multiagent support we have at our disposal some alternatives [3]:onone hand,the needed agents may be built using standard EJBs.These agents would be usedfrom the EJB container (variant EJB interface).On the other hand,we can use a speciﬁcagent container,working together with the EJB container (variant container interface).Both solutions have strengths and ﬂaws,which will be analysed in further works.Another of our work in progress is the developping of a computational grid.It is clearthat we need a huge computational power to take advantage of the METALA experimentsand simulations.Although the application server provides clustering,we need a somehowmore abstract view of the METALA services and applications.Moreover,we must include asecurity infraestructure for our system,such as a public key infrastructure,since we deﬁneWeb Services available to everyone (using the Web Services Description Language,WSDL),and we also need multi-platform support for the diﬀerent involved technologies or possiblemigrations.We are planning to build this grid infrastructure onto our J2EE based archi-tecture,in a non-overlapping way.For this task,we are evaluating the possibility of usingthe Globus tookit version 3.0,an open source implementation of OGSI (Open Grid ServicesInfrastructure [8]).References[1] R.Agrawal and R.Srikant.Fast algorithms for mining association rules.In Jorge B.Bocca,Matthias Jarke,and Carlo Zaniolo,editors,Proc.20th Int.Conf.Very LargeData Bases,VLDB,pages 487–499.Morgan Kaufmann,12–15 1994.[2] J.A.Botia,A.G.Skarmeta,M.Valdes,and A.Padilla.Metala:A meta-learning archi-tecture.In Proceeding of the 7th Fuzzy Days,Dortmund,Germany,October 2001.[3] S.Brantschen and T.Haas.Agents in a j2ee world.Technical report,WhitesteinTechnologies AG,2002.[4] M-S.Chen,J.S.Park,and P.S.Yu.Eﬃcient data mining for path traversal patterns.Knowledge and Data Engineering,10(2):209–221,1998.[5] R.Cooley,B.Mobasher,and J.Srivastava.Data preparation for mining world wideweb browsing patterns.Knowledge and Information Systems,1(1):5–32,1999.[6] R.Cooley,P.Tan,and J.Srivastava.Websift:the web site information ﬁlter system,1999.[7] R.Cooley,P-N.Tan,and J.Srivastava.Discovery of interesting usage patterns fromweb data.In WEBKDD,pages 163–182,1999.[8] Global Grid Forum.Open grid services infrastructure (ogsi) version 1.0,2003.[9] A.Joshi and R.Krishnapuram.On mining web access logs.In ACM SIGMOD Work-shop on Research Issues in Data Mining and Knowledge Discovery,pages 63–69,2000.[10] B.Mobasher,R.Cooley,and J.Srivastava.Automatic personalization based on Webusage mining.Communications of the ACM,43(8):142–151,2000.[11] K-L.Ong,W-K.Ng,and E-P.Lim.A web mining platform for enhancing knowledgemanagement on the web.In Proc.of Int.Workshop on Integrating Data Mining andKnowledge Management (in conj.with 1st IEEE Int.Conf.on Data Mining),San Jose,California,2001.[12] S.K.Pal,V.Talwar,and P.Mitra.Web mining in soft computing framework:Relevance,state of the art and future directions.In IEEE Transactions on Neural Networks,volume 13 of 5,pages 1163–1177,2002.[13] M.Spiliopoulou.Web usage mining for web site evaluation.Commun.ACM,43(8):127–134,2000.[14] M.J.Wooldridge.Introduction to Multiagent Systems.John Wiley and Sons,NewYork,USA,2002.[15] J.Xu,Y.Huang,and G.Madey.A research support system framework for web datamining.In J.T.Yao and P.Lingras,editors,WI/IAT 2003 Workshop on Applications,Products and Services of Web-based Support Systems,Halifax,Canada,2003.