Data Modeling for Better Performance in a Bulletin Board Application
暂无分享,去创建一个
Introduction Amongst the factors which have the greatest impact in the efficacy of computerized informing processes, are the time intervals involved in order to achieve effective communication with the information's clients. Should there be a significant delay, due either to the sending or the receiving processes, where we apply the adjective whenever the time intervals considerably exceed what the person expects or even is willing to accept, the probability of the message achieving its purpose - informing--would be considerably reduced. Additionally, user reading sessions should be considered as part of a set of possibly concurrent ones, which implies sharing computer resources with many other such processes. This in turn imposes a further constraint on the informing process: it must be efficient enough so as not to consume too many computer resources, starting with CPU usage, probably adding the use of memory, but naturally taking into account the transmission of data between resources. Thus, when defining or implementing new communication means, for example ways in which information can be posted on a computer for others to read, as in the situation described here, efficient use of computer resources should be assigned a high priority in the technical design of the processes. With the enormously powerful computers now available, taking into account their huge RAM capacities and CPU speeds, not to speak of disk space which is very inexpensive, apparently a notion prevails in the sense that it is no longer necessary to worry about processing times. This is an example of statements found: "But does performance really matter? The answer is NO" (Berger, 2004). Actually, notwithstanding such opinions, a very important part of the research in this field is directed towards providing more efficient ways to store and process data. Of course software products such as the package we are designing for the electronic notice board have always paid attention to their performance, but additional concern by the users of the development tools is necessary. In this paper we show one such effort. A real situation prompted the search for more efficient ways to store data, that is, to find a better data model, since the initial model did not deliver tolerable response times for the main query. First some comments on alternatives to the relational databases (RDB) are presented, since they might serve readers interested in this topic. The notice board is described in some detail in an Appendix, but its features which gave rise to the particular query are presented in the paper. The initial model formulated to store the messages, and the queries that will produce the list of messages to be offered to a user, are described next. Since there performance was unsatisfactory, a strategy of formulating alternatives, and obtaining the resulting response times via simulated data, was adopted. The subsequent models and the processing necessary to furnish the list of messages are explained, and comparisons of simulated response times for similar queries are shown. The paper concludes with some thoughts and opinions about designing data models for information systems. Relational and Other Types of Databases For the last 30 years, the use of relational databases (RDB) has dominated the technologies to store and use data in information systems and other applications, to the point that in most cases, not even a thought is given to an alternative. RDB's have gained this prestige and acceptance through a process of constant improvements, both in their technical aspects as in their relative ease of use. However, in the last few years, many applications have shown that there is no one-size-fits-all solution. Actually, both the use of other databases and relational database bashing has become fashionable. Many experts agree on something which might be termed obvious: were it not for the enormous popularity of RDB's, the appropriate model would depend on the particular situation. …
[1] J. Santoro,et al. Change of Shift , 1998 .
[2] Alfonso F. Cardenas,et al. Data base management systems (2nd ed.) , 1985 .
[3] John Carter,et al. Relational Database , 1994, Encyclopedia of Database Systems.