In this paper we address cardinality estimation problem which is an important subproblem in query optimization. Query optimization is a part of every relational DBMS responsible for finding the best way of the execution for the given query. These ways are called plans. The execution time of different plans may differ by several orders, so query optimizer has a great influence on the whole DBMS performance. We consider cost-based query optimization approach as the most popular one. It was observed that cost-based optimization quality depends much on cardinality estimation quality. Cardinality of the plan node is the number of tuples returned by it. In the paper we propose a novel cardinality estimation approach with the use of machine learning methods. The main point of the approach is using query execution statistics of the previously executed queries to improve cardinality estimations. We called this approach adaptive cardinality estimation to reflect this point. The approach is general, flexible, and easy to implement. The experimental evaluation shows that this approach significantly increases the quality of cardinality estimation, and therefore increases the DBMS performance for some queries by several times or even by several dozens of times.
System for summoning service personnel to a particular table in a restaurant or similar facility and for monitoring service personnel response time. Each table includes a transmitter selectively activated by a switch at the table operated by a customer requiring service. When activated, each transmitter generates a signal unique to its table. A central station includes a display panel having a plurality of individual sections each relating to one of the tables. Each individual section includes a visual indicator, an audible annunciator, and a digital timer. The central station also includes a plurality of receivers, each responsive to one of the table transmitters. When a transmitter is activated by a customer, the corresponding receiver activates the appropriate visual indicator to alert service personnel that service is required at that table. Simultaneously the receiver causes the digital timer to count at one count per second. If the count reaches a predetermined amount, indicating the customer has waited too long, the audible annunciator is activated to alert service personnel of their failure to respond to the customer. When service personnel respond to the customer's signal at the table, the transmitter is de-activated, thus de-activating the visual indicator, audible annunciator, and timer. The number contained in the digital timer at that time represents the total response time to the customer's signal. A microprocessor connected to each visual indicator, audible annunciator, and time, stores the data generated for compiling a record of the performance of service personnel for each table.