Bottom-up optimised search system and method

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to means of searching for hotel rooms. The method includes generating a pre-computed database containing real-time availability attributes associated with hotel rooms on a plurality of length of stays; receiving a query for availability of rooms of at least one hotel for a date range; determining a first search result from the pre-computed database; determining a second search result obtained from a different source; generating a final search result by merging said results. The system implements said method.

EFFECT: high search effectiveness and reliability of search results.

21 cl, 8 dwg

 

The LEVEL of TECHNOLOGY

The existing system of hotel booking and travel use approach to search top to bottom, creating a single cell availability when they are in the search results. For example, such systems may allow the user to enter a query criteria, such as, the name of the hotel, date of arrival and date of departure to find available hotel rooms for your selected number of nights (i.e., a single length of stop). Only after the discovery of trade items (i.e. hotel rooms) to find the rates and availability of special sets of items used by the business logic.

This is known in the prior art approach has several drawbacks. Due to the fact that this approach is ' top-down, commodity unit (for example, selling rooms) must seek and find for each query. Additionally, the search query must have at least the name/code of the hotel, date of arrival and date of departure. The availability request will be rejected if these minimum elements are not present in the request.

Moreover, the key service is known in the prior art approach allows to provide for time check only one of, and subject to the fact that the query uses the date of arrival and departure, rates and response availability, traiettoria special number of nights. A basic search does not allow to use alternative dates, and thus, being unable to find alternative tariffs.

If you search for a city (i.e., focusing the search on one city), the query is broken into multiple search single hotels, and each such key hotel search is performed serially. Key the search service does not recognize the relationship between multiple hotels. As each key request is performed in the same hotel, and each request requires the execution of complex business rules to find the rates and availability, and the cost of time and CPU resources is high. Additionally, in the presence of CPU - and resource-intensive properties of each request, the response time can be relatively slow. The need to find and calculate the rates and rules of availability for each request takes time.

Also known in the prior art systems, the query is very specific to the user and does not provide a transaction system to help find alternative types of products, such as various types of rooms, etc.

Perhaps the greatest shortcoming of the existing level of technology is a single cell of the distance.

A single cell of the distance is obtained from a well-defined duration stop (LOS) in search W�millet. LOS is obtained from a start date and end date in the search query. For multiple possible sets that can be obtained from the LOS in the search query, there is no visibility. For example, if the requestor wishes to evaluate different options in relation to LOS, it will require several separate searches for each option LOS. The prior art does not provide the flexibility of alternative dates, or units of goods. The cost and time required to answer fully flexible, not economical at the present time. For example, if the client wishes to check the availability for the first week of may, would require 49 individual cells availability. Seven cells of availability for each day of the week (i.e. 7 days X 7 LOS values per day). This transaction will increase the value of 48 times (i.e. the difference between 1 query and 49 queries), and will result in a very large response time to the client (i.e., poor orientation of the user).

In this regard, there is a need in the prior art systems improvements transactions of travel, as described in further detail below.

BRIEF description of the DRAWINGS

Accompanying drawings, which are incorporated in and form a part of this description, illustrate embodiments of and together with the description serve to explain the principles of these methods and Syst�m:

Fig.1A depicts a diagram of the reservation system of the hotel.

Fig.1B depicts the architecture of the basic building blocks of the present invention in one embodiment.

Fig.2 depicts the architecture of the present invention already in another embodiment, the.

Fig.3 depicts a flow chart of a high level, depicting the invention in one embodiment.

Fig.4 is a structural block diagram of the architecture for the use of the invention in one embodiment.

Fig.5 is a diagram depicting various calculators that can be used by the present invention in one embodiment.

Fig.6 is a UML model, which can be used for calculators mask.

Fig.7 depicts the steps that may be passed by the present invention in one embodiment.

DETAILED DESCRIPTION

Prior to the disclosure and description of the present methods and systems should be understood that the terminology used here is intended to describe only specific embodiments of the and is not intended to limit.

As used in the description and the appended claims, the ranges can be expressed here as from "about" one particular value and/or to "about" another particular value. When UE�minuets this range, an embodiment may include, for example, only one particular value and/or to the other particular value. Similarly, when applied values as approximations, by use of the preceding expression "about", it will be understood that the particular value forms another embodiment. Will be further understood that the limit values of each of the ranges is important in relation to the other limiting value, independent of the other limit value.

"Optional" or "optionally" means, hereinafter described event or circumstance may or may not occur and that the description includes examples where there is a specified case or circumstance, and examples where it does not occur.

Throughout the description and claims of this description, the word "contain" and variations of that word, such as "contains" and "contains" means "including but without limitation" and is not intended to exclude, for example, other additions, components, integers or steps. The expression "approximate" means "example" and is not intended for transmission to indicate the preferred or ideal embodiment. "Like" is not used in a restrictive sense, and used for the purposes of providing examples.

Here disclosed are components that can be used to �run of the disclosed methods and systems. Here disclosed these and other components, and it is clear that the disclosure of sets, subsets, interactions, groups, etc. of these components, with specific reference of each various individual and combined aggregates and their permutations can not be explicitly disclosed, each is considered and described here in a special way for all methods and systems. This applies to all aspects of this application including, but not limited to, steps in the disclosed methods. Thus, If there are many additional steps that can be performed, it is clear that each of these additional steps can be performed with any special variant of execution or combination of embodiments of the disclosed methods.

These methods and systems may be understood more clearly by reference to the following detailed description of preferred embodiments of the examples included therein and to the figures and the preceding and following further description.

The present invention provides an improved transaction system availability of. Fig.1A depicts the architecture of the reservation system of the prior art; namely, the system HOLEDEX (HDX) offered by Six Continents Hotels, Inc. for its global network of hotels. The present invention can be used in combination with this si�theme, or any other suitable system hotel reservation, available on the market.

In the reservation system of Fig.1A the HDX server 101 stores the current availability dates, tariffs, and other details concerning the rooms of the hotel. Various clients 102A, 102b, 102c and 102d may send requests to the HDX server 101. For example, client 102A may include web sites of travel associated with the HDX server 101 using intermediate center 103 data using, for example, the OTA Protocol or XML to communicate with the HDX server 101. Clients 102b can contain global distribution systems (GDS) such as Sabre, Galileo, WorldSpan, Amadeus or TravelWeb, using, for example, the Protocol Pegasus to contact the HDX server 101. Corporate brand owners of hotels can communicate with customers 102c with the HDX server through, for example, 3270 protocols or XML. Finally, individual of 102d can contact the HDX server 101 using, for example, the Protocol XML and/or HMI.

Search queries of accessibility provided by the client (102A, 102b, 102c, and/or 102d) to the HDX server 101 may include at least the code for the hotel, date of arrival and date of departure. Since search multiple hotels, multiple data ranges, etc., can usually result in multiple searches on the HDX server 101, the present invention provides an improved way to perform searches, as described further below. Naib�greater difficulty in today's environments (i.e. hardware and network) on each main data centre is a huge increase in 60% of the traffic availability each year. The most effective search process is a delicate balance between pre-calculated data and data ready. When millions of search queries fall into the reservation system every day, the accumulation of available parts already computed data accessibility translates into a powerful transaction system availability. To determine how best to proceed with the search on the HDX server 101, the process of determining the distance is marked with the possibility of categorization of each stage, based on various criteria. While the categorization may take many forms, in one embodiment can be used the following criteria from the Table As:

Table a
CriterionLabel
The process of findingEach element of accessibility is classified (low-high) based on the number of cells of the database and the logic required to locate items to request. For example, in one embodiment, classif�zimovanje can be the following:
Hotel = low
Category rate = low
Trading unit = high
Processing cyclesEach component of the business logic can be classified (low-high) based on the amount of required processing time. For example, in one embodiment, the classification may be as follows:
Close to arrival = low
To stay for a few days = average
Net income = high
AvailabilityEach component of the business logic can be associated with the element of distance that performs custom business logic. For example, in one embodiment:
Net income = product
To stay for a few days = class tariff

As shown in Fig.1B, the present invention includes PreCompute Availability Database 151 (Database of pre-computed availability), as well as Availability Rule Calculator Engine 152 (the calculation engine accessibility regulations). In one embodiment, the PreCompute Availability Database 151 may contain a relative database, which has 2 main features:

• Each row represents the smallest possible selling unit (product) in one day. The discovery process for the detection of a set of items in d�HB is not required. Each product per day can be obtained from the category of high rate level, which uses the definition of the tariff code by using types of rooms associated with the class and the availability date range.

• Table size should be manageable. The table is quickly updated and read. The number of items for each and every SKU is in itself selective in order to maintain the minimum number of items for pre-calculating in each row.

Primary code database can be formed by using: code of the hotel, dates, room type and tariff categories. Other key data of each row may represent one embodiment of the:

• Physical length of stop (LOS). The string value is a bitmask for each night up to the stop, for example, 14 days (any other maximum LOS can also be selected). Physical availability of room type that can use ideas about the layout, total number of rooms and flight type room in the house. These rules can be applied repeatedly for each night masks LOS.

• The amount of the tariff. The rate value can be obtained from the code rate associated with the tariff category of the commodity unit. This value may be a fixed value or % � / value. At the same time, this value can be found in the code level of the tariff or from another underlying fare code.

• Income LOS. This string value can represent a bitmask for each night up to the stop, for example, 14 days (or any other maximum LOS). Component of management of income can use the calculation of net income, based on LOS. Positive income can be presented open (1), and a negative income can be represented by closed (0). There may be several options of revenue, which could indicate use of a different value based on another rate or corrections. These rules can be applied repeatedly for each night masks LOS.

• Tariff code. The concept of parity to use code rate to maintain the levels of relationship between all codes of rate.

The structure of this relative database creates a very fast way of obtaining items. It is possible to connect PreCompute Availability Database 151 with attribute tables in order to provide filters at this initial stage. Some of the attributes like the type of beds, number of beds and/or maximum capacity may in one embodiment to help pre-select items. This differs from the prior art, which applies filters at the end of the process �determine availability that leads to excess processing cycles on inappropriate marketing units.

The values that are managed using LOS, can use the representation of the bitmask. Each bit represents the night, and the values can be open (1) or closed (0). There is no limit to how long LOS may imagine. A suitable value may correspond to an appropriate audience or the brand of. For example, in one embodiment, the brands c extended stay can have up to 28 days or more precomputed LOS.

As shown in Fig.2, in one embodiment, the Availability Rule Calculator Engine 152 and PreCompute Availability Database 151 may contain pre-computed structure that contains a J2EE application 201, which uses the messages from WebSphere MQ 202 and processes these messages and updates the database 203 Oracle data needed. This structure can contain a J2EE application 201, which may include Core Java application 204. Fig.2 illustrates the entire structure with the main components in each application, according to one embodiment of the present invention. Other suitable structures may also be used.

Fig.3 is a flow chart of a high level which depicts in General the course of message processing in PreCompute Engine of Fig.1B and 2. This scheme last�the dedication shows the script when messages arrive in sequence and immediately processed. Fig.4 is a block diagram of the architecture of the structure, which depicts the full scheme of the present invention in one embodiment.

Components of the structure in Fig.2-4 will be defined further detail below.

• PreComputeMDBean 211 - PreComputeMDBean 211 is a message-driven bean that listens to a queue 411 sequences MQ 202, which receives messages from HOLEDEX 101. It causes MessageManager 214, wherein the XML message is received from HOLIDEX 101.

• Stateless Session Beans 212: Can be used following components 212 session stateless:

• BootStrapBean: used to start the application. Log4j and other-oriented Timer Task components are initialized when the application starts.

• MessageManagerBean: This EJB is used to process messages for all sources and clients. Basically, it can cause MessageManager 214 or to continue it. Also this component can be invoked by using MDB 211.

• Timer 231 Beans - This EJB Timer Service uses. This EJB is used to process messages that are deposited in the table of pending messages. This EJB is running in the specified time and cause MessageManager, blocks any hotel that has a pending message and processes the message. Important about�abacinate results from Holidex consistently. Running clustered environment (i.e., different nodes may receive updates in the same hotel at the same time) requires this way updates are handled.

• Metric Manager 232 - do not retain This data component is used to collect measurements at the specified time, using the Timer Service (a message every hour). It performs TimedObject. This EJB will be initialized using BootStrapBean will generate a timer.

• Clients Data 233 - component DataClients is a single component that is inside PreCompute engine. Its role is double. First, it provides specific information on how items should be based on the interests Push customers. And, secondly, it provides a means of alerting these Push customers about changes as they occur.

Logging 234 - Log4J will be used as a mechanism of registration data for your application. Registered message will be sent to a file on the server running the application server. Configuration for Log4j must be loaded using the Bootstrap using EJB or class running in the application server. There are different logging levels: debug, information, warning, and error.

MessageManager 214 - MessageManager 214 mainly can perform two operations. First, it is the number of�t XML message into a Java object further, it may cause particular PreCompute Manager 216, based on the message type. It also regulates the processing sequence of messages based on the code of and a sequential message number. If the messages are not in sequence, the message will be stored in a separate table to handle it.

ManagerFactory 218 class Factory Manager 218 dynamically creates PreComputeManagers 216, based on the message type. Once it creates the Manager, it can memorize it for later use.

Classes Java XMLSchema - These classes XMLSchema Java can be a part of the Message Manager 214, and are created based on the XML messages received from HOLTDEX 101. These classes contain the value of the XML elements and attributes in their way. These classes XML components are used as data storage media, thus eliminating the separate object data migration for each message.

PreComputeManager 216 In one embodiment, for each type of message or for a set of types of messages will be a separate PreCompute Manager 216. Their main function is to convert Java objects taken in the required field in the database using certain business logic classes and PreCompute. Most of the business processing happens here and in helper classes.

• HotelLockUtil 220 - This class is used for blocking dannygokey message table House. These messages are processed for hotel, once a record is locked. It is necessary to block the hotel in order to process the messages in sequential order and to prevent a race condition with other messages for the same hotel. If messages are not in order, it will invalidate the entire database.

• PendingMessageUtil - This class is used to store, retrieve, and delete messages in the table of pending messages. When messages are read from the MQ queue using a clustered environment, you need to process messages on the queue. Each message will have a sequence number to maintain the serial order of processing.

• Validation Classes 222 (Classes validation) - In one embodiment there are separate classes of checking for each message. These classes check check your messages and if they find errors, they start PreComputeException.

• Data Access Objects (DAOs) 226 - Data Access Objects 226 separate operations communications and CRUD pertaining to Oracle database 203. PreCompute Manager 216 causes the appropriate DAO 226 to update the table. DAO 226 may be based on a single table or are based on related tables. Basically, this DAO 226 reaches the database connection class 228 DBConnector, prepares applications in SQL database and performs operations� CRUD. Once this is done, it disconnects the connection to the database 203.

• DBConnector 228 - DBConnector 228 is a Java class that allocates a connection mechanism for the database 203. In one embodiment, it will get a connection to the database 203 by calling the data source object. This class will have different ways, such as, disconnection of the connection, the transaction is rolled back, etc.

• PreCompute Utility Components - Common to all the function required by the application, can be developed as an auxiliary classes, such as the check date or the conversion of the special data required by the application. There may be some helper classes that are specific to the message types.

Availability Rule Calculator Engine 152 may include logic grouped in two categories:

• The business logic that is based on the value of the arrival date of a search query, thus it cannot be precomputed. An example of such logic will be a pre-acquired impairments.

• The business logic that was slightly separated during the treatment (based on criteria described earlier regarding Table A), while it was associated with a clearly defined item availability.

Target is to develop a good Balan�and between logicae PreCompute Availability Database 151 and Availability Rule Calculator Engine 152. This balance can be dynamically adjusted to maintain high performance. In the case where the new logic is added to the model of accessibility, it can convert the calculation of the elements of accessibility, which will create a new balance (i.e., the Golden mean) between logicae PreCompute Availability Database 151 and Availability Rule Calculator Engine 152.

Availability Rule Calculator 152 controls the "active" logic of the process to determine availability. Business rules can be divided into different components (i.e., distance calculators), so they can be executed independently. There may be certain limits and restrictions that can be applied in real time with each request. For example, they can represent the attributes of which can be set to control the availability; for example: advance purchase, overnight, minimum/maximum stop special requirements. Other limits and boundaries can be detected only at the level of, the category level of the tariff level and the tariff code. The procedure of how business rules are applied, can have a direct impact during a treatment cycle.

Availability Rule Calculator engine 152 may have two main components:

• Collector trade items, the organizer of the process of determining the accessibility�. It uses CollectionOptions to determine what rules and order rules will be applied.

• Calculators accessibility regulations. Each calculator (further described below relative to Fig.5) implement the interface MaskCalculator 507 and should provide a method getMask () which will call the collector. The returned mask is logically multiplied with the other masks on the current mask Productltems LOS, to apply the rule. They also must set the reason code execution getReasonCode().

In one embodiment, the Availability Rule Calculator engine 152 may be established and operate, as described in further detail below.

Model classes

The inner side of the collector 502 works in conjunction with several components of the "calculator" (507 601-606 and Fig.6, described further below), and each is assigned a special class of ruled length stop (LOS). In General, each calculator returns a bit mask that is logically multiplied with masks Productltem LOS to get the full mask LOS.

The context of the Assembly

The object 503 CollectionContext is used to save the global state relative to the cycle of the Assembly. When a visitor is calling collect() on the collector 502 (via the interface 504 ProductltemCollector), the collector 502 will create the object 503 CollectionContext. CollectionContext 503 may have the following character�the stick:

• Code of

• Codes of rate categories

• Date

• Object database

• Selecting the build

• Memorized facts

CollectionContext 503 is transferred to the designer for each calculator. The constructor sets up the environment of each calculator, and represents the software component of this class. Calculators use CollectionContext 503, to obtain the database 203 to query tables CRS. They also use it to share facts with each other through the context object. For example, If the hotel found the hotel HIRO, then this fact may be important for more than one calculator.

Calculators

Calculators (601-606) are key components of the business logic for PACE engine (mechanism RACE). CollectionStrategy 505 determines which calculators to use, based on what was set in build options 506. Each calculator provides conditions MaskCalculator 507 and should provide a method getMask(), which will cause the collector 502. The returned mask is logically multiplied with the other masks on the current mask Productltems LOS, to apply the rule. The reason code can also be provided by performing, for example, getReasonCode().

An exemplary interface for MaskCalculator 507 can be:

There may be any number MasCalculator 507. Fig.6 depicts an example for the current installation. In one embodiment, the calculators can contain very specific rules, boundaries or limitations of the model availability IHG, such as:

• Arrival Calculator 601 - It uses the day of arrival of the request, check whether the hotel is not available date or closed to arrival, or category level of the tariff.

• MinMax Calculator 602 - He uses the date of arrival and date of departure to obtain LOS. The value of the LOS must meet the minimum and maximum number of days limit stop, if it exists.

• Revenue Calculator 603 - It verifies that the LOS for a special amount of the tariff creates a positive return.

• RoomSS Calculator 604 - It checks that the special room style linked with the strategy of selling hotel rooms. The sales strategy of the hotel rooms indicates the types of rooms that are for sale.

• StayoverDays Calculator 605 - He uses the date of arrival and date of departure to obtain LOS. The value of the LOS must satisfy the days of the week that you want to stay the night.

• Active Days Calculator 606 - It uses the date of arrival and date of departure to obtain LOS. The value of the LOS must satisfy the days of the week that are marked active.

Stock rules of

It is preferable to have a PACE engine, which is the maximum effective. Fig.5 and 6 a large part of e�CSOs can lie on the execution of several MaskCalculator 507, they include rules of encrypted in the database CRS. Everytime PACE engine creates a new MaskCalculator 507, and Calculator 507 can optimize yourself pre-selecting the data that is required only once from the database 203, and then using them again for each application method getMask(). However, the presence of a database query calculators for all rules that rarely change, significantly affect the performance, and should be deleted.

To provide this, the object 503 CollectionContext (Fig.5) may include the capability of memorizing rules for multiple MaskCalculator 507. Once MaskCalculator 507 will create its own rules from the database 203, it can memorize them CollectionContext 503. This, in turn, means that all MaskCalculator 507 can first find out whether there are more rules are needed to achieve database 203 and create rules from scratch. This model will contribute to increase efficiency, and therefore, can be used in all possible cases.

Here's how ways can look for memorizing rules:

After MaskCalculator 507 remembers the rules, the rules can stay in memory as long as there is not one of the following cases:

• changing the rules of in the database 203

• PA�ive LRU erases the rules of for resource management

• the application is restarted

In one embodiment, each of several MaskCalculator 507 may make attempts to use ways of learning and to check their reliability. If suitable management solution for remembering-change is not available, then PACE engine can ensure that memory is not activated. Still, a few MaskCalculator 507 can activate memorization at any time.

Build strategy

As the PACE engine can be used in a variety of ways, the single search algorithm for all cases is not appropriate. For example, availability requests from the application Pull can look at limits higher levels of the first and the commodity unit when the app Push may want to look at the item first and apply rules in the most efficient order.

To provide this, PACE engine may use the interface CollectionStrategy 505 to imagine how really builds. It basically is an implementation of the design pattern Abstract Algorithm, known to those skilled in the art. The choice of strategy can be based on installations in CollectionOptions 506.

An exemplary interface for CollectionStrategy 505 is provided below:

In one embodiment, the supported CollectionStrategie 505 may include:

ClassDescription
The basic strategyAn abstract class with basic formulaic method of calculation
Strategy defaultContinues the basic strategy with the criterion of SQL codes for categories of tariffs
Strategy trading ID unitsContinues the basic strategy with the criterion SQL id for the trading of units

Requests

When PACE engine is called d the end, it may read items from the table of items and apply MaskCalculator 507 to obtain the final LOS. The query used to select trade items? can take into account several factors. They include:

• Selection criteria

• History of LOS

• The elimination of direct selling

The sections below describe these aspects for a query in more detail.

• The underlying query

• The history of LOS

• The elimination of direct selling

(1) Basic query

The underlying query is the most simple form of SQL that selects the commodity unit. In fact, a valid SQL can not be used. But he description�turns out because it can serve as a base for other fully-formed queries. In other words, to understand all requests, it is important to understand the underlying query.

The criteria for the underlying query includes the following:

• Code of

• Date range

• Codes of rate categories

• Current status

• Accepted the change (optional)

• Codes excluded room (optional)

• ID sales units (optional)

"Current status" is only for transmission lines Product Item (product). Adopted changed is used to select lines with the adopted value equal to or more specialized meanings. Types excluded rooms used for filtering excluded rooms. Finally, the last ID from products in inventory may be included instead of the adopted changes for more precise selection of trade items.

The value of the token ID and sales units are used to facilitate the filtering of only those trade items that really converted using the PreCompute. At the time, as there are various ways that can be used to specify when and why change items to PreCompute, and the amount taken plus ID sales units can be used in one embodiment.

Order in Coto�Ohm SKU served in ProductltemConsumer important for two reasons. First, it allows multiple Calculator 507 (Calculators) effectively behave in context switching. Second, it allows multiple ProductltemConsumer just to get the results of their creation.

In this regard, the results can be sorted as follows:

• Date

• Category code rate

• Room code

Based on the above ideas and with reference to Fig.7 in one embodiment of the present invention can perform the stages on which:

• create pre-computed database containing the attributes of the availability in real time, associated with hotel rooms on the set duration of stops (step 701);

• take a request for at least one of the date range, the date range has a start date and an end date (step 702);

• calculate the availability for each day within the date range on the set duration of stops the application of business requirements according to the request (step 703);

• create final availability for each day within the date range on the set duration of stops Association availability of pre-computed database and attributes of the request (step 704); and

• form the final availability of hotel rooms for at least one of for each day in pre�trusted a date range for the set duration of stops (step 705).

At the time, the methods and systems described in connection with preferred embodiments of and specific examples, it is not intended that the scope of protection is limited to the described specific embodiments of, as here options for implementation are intended in all respects to be illustrative rather than limiting.

Except when stated otherwise, in any way, it is not intended that any method set forth herein, it is understood as requiring that its steps were performed in a special order. Accordingly, where a claim for the method in fact does not describe the order established its stages, or, otherwise, in a particular way does not install in the claims or descriptions that the steps are limited to special order, in no way assumes that the order is accepted in any respect. This is true for any possible unclear basis for interpretation, including: the nature of logic about the order of steps or stroke; understand the meaning derived from grammatical organization or punctuation; the number or type of embodiments of the described in the description.

For the specialist in the field of technology will be clear that various transformations and variations can be made without deviation from the scope or intent of the invention. Dr�many options for implementation will be clear to the specialist in the field of technology from consideration of the description and practice disclosed here. It is assumed that the description and examples be considered only as an example with the correct scope and concept as defined below by the claims.

1. A way to improve the search in the database through a balance between pre-computed data and prepared data containing phases in which:
creating, by the computer system, a pre-computed database that contains the data calculated before receiving the request to pre-computed database, and the data contain attributes availability in real time, associated with rooms of the hotel, for a variety of durations of stay;
accepting, by the computer system, a request to pre-computed database, wherein the request includes a request for at least one of the date range, the date range has a start date and end date;
determine, by the computer system, the first search result from a pre-computed database based on the query, the first search result comprises a first availability that is associated with at least one of the plurality of durations of stay;
calculate, by the computer system, based on the request and requirements, the second of resultative, the second search result to be calculated from a source other than a pre-computed database, and the search result contains the availability for each day within the date range for a variety of durations of stay, and requirements require the establishment of processing time to calculate a second
search result;
creating, by the computer system, the final result by merging the first search result and second search result, and the final result contains the final availability for each day within the date range for a variety of durations of stay; and
forming, by the computer system, the end result, and the step of forming includes the formation of the final availability of hotel rooms for at least one of for each day within the date range for a variety of durations of stay.

2. A method according to claim 1, wherein the creating the ultimate availability for each day within the date range for a variety of durations of stay includes the use of a bitmask to represent the length of stay, and each bit represents a day in length of stay.

3. A method according to claim 1, wherein the accept request from the website to make travel arrangements.

4. A method according to claim , in which accept the request from the client.

5. A method according to claim 1, wherein the step of calculating comply with rule boundaries.

6. A method according to claim 1, wherein the step of calculating comply with rule restrictions.

7. A method according to claim 1, further comprising the step of transmitting the final availability of the website to make travel arrangements.

8. A method according to claim 1, further comprising the step of transmitting the final availability of the client.

9. A method according to claim 1, wherein the creating the ultimate availability for each day within the date range includes the share of pre-computed data associated with the first availability of pre-computed database, and dynamically computed data associated with the second availability.

10. A method according to claim 9, further comprising regulating the relationship between pre-computed data and dynamically calculated data.

11. A method according to claim 10, in which the regulation of the relationship between pre-computed data and dynamically calculated data based, at least in part, on a processing time of at least one of the one or more requirements based on the processing time.

12. A method according to claim 1, further comprising:
categorizing the many stages of the process of the query distance in m�ojesto categories moreover, the process of the availability request processes the request for withdrawal of the final availability of hotel rooms;
the Association of multiple estimates from numerous categories, with each score based, at least in part, on a combination of accesses to the database, the logic of the process of finding and processing time;
before receiving the query, the execution stage of the plurality of stages based, at least in part, on the relevant assessment of this stage, for generating data pre-computed database; and
if logic is added to the process of the availability request, updating the estimates associated with multiple categories, and determining whether the step to be performed after receiving the request, based at least in part, on the updated estimates.

13. The upgrade system searches the database via a balance between pre-calculated data and the data that contains:
one or more processors;
the memory comprising executable instructions that, when performed by one or more processors, encourage a system of at least:
to create a pre-computed database that contains the data calculated before receiving the request to pre-computed database, and the data contain attributes availability in real time, associated with to�matami of, for a variety of durations of stay;
to accept the request to a pre-computed database, wherein the request includes a request for at least one of the date range, the date range has a start date and end date;
to determine the first search result from a pre-computed database based on the query, the first search result comprises a first availability that is associated with at least one of the plurality of durations of stay;
calculate, based on the request and requirements, the second search result and the second search result to be calculated from a source other than a pre-computed database, and the search result contains the availability for each day within the date range for a variety of durations of stay, and requirements require the establishment of processing time to calculate the second search result;
to create the final result by merging the first search result and second search result, and the final result contains the final availability for each day within the date range for a variety of durations of stay; and
to form the final result, with the formation includes the formation of the final availability of hotel rooms are for men�Shea least one of for each day within the date range for a variety of durations of stay.

14. A system according to claim 13, in which the creation of a pre-computed database containing the attributes of the availability in real time, associated with rooms of the hotel, for a variety of durations of stay includes the use of a bitmask to represent the length of stay, and each bit represents a day in length of stay.

15. A system according to claim 13, in which the request is received from the website to make travel arrangements.

16. A system according to claim 13, in which the request is received from the client.

17. A system according to claim 13, in which the calculation of the second distance for each day includes the use of rules boundaries.

18. A system according to claim 13, in which the calculation of the second distance for each day includes the use of constraint rules.

19. The system of claim 13, where the instructions further induce one or more processors together to pass the final availability of hotel rooms on the website to make travel arrangements.

20. The system of claim 13, where the instructions further induce one or more processors together to pass the final availability of the rooms of the client.

21. Machine-readable media containing computer readable software code stored on it, and the computer readable program code p�and execution, provides the method of improving search in the database through a balance between pre-calculated data and the data that contains:
create a pre-computed database that contains the data calculated before receiving the request to pre-computed database, and the data contain attributes availability in real time, associated with hotel rooms for a variety of durations of stay;
the reception of the request to a pre-computed database, wherein the request includes a request for at least one of the date range, the date range has a start date and end date;
the definition of the first search result from a pre-computed database based on the query, the first search result comprises a first availability that is associated with at least one of the plurality of durations of stay;
the calculation, based on the request and on the requirements of the second search result and the second search result to be calculated from a source other than a pre-computed database, and the search result contains the availability for each day within the date range for a variety of durations of stay, and requirements require the establishment of processing time for computations�display the second search result;
the creation of the final result by merging the first search result and second search result, and the final result contains the final availability for each day within the date range on the set of durations of stay; and
the formation of the final result, with the formation includes the formation of the final availability of hotel rooms for at least one of for each day within the date range for a variety of durations of stay.



 

Same patents:

FIELD: medicine.

SUBSTANCE: invention refers to medicine. The method characterised by the fact that a chosen territory map is covered with regular-hexagon cells equal in area; the epidemiologically significant findings are aggregated on the base by spatial addition; the findings are recorded in an attributive cell table and processed, so secondary parameters are derived, including: the number of patients, total length of an epidemic period, population, rate of growth of the number of patients; thereafter, the cells having related values are clustered; a degree of epidemic risk - maximum, moderate and low - is calculated for each cluster; that is followed by building an epidemic risk map and zoning the territory by combining the clusters; the high epidemic risk clusters include the cells having the maximum values, and the moderate and low risk clusters include those with the medium and minimum values.

EFFECT: increasing the epidemiological zoning accuracy.

2 dwg, 1 tbl

FIELD: measurement equipment.

SUBSTANCE: invention relates to a municipal water pipeline and sewerage system and is designed for determination of parameters of reliability and regular supply of water supply and water discharge networks. A system for determining parameters of reliability and regular safety of water supply and water discharge networks includes a unit of primary information processing, a calculation unit of reliability parameters of network components, a unit for determining probabilistic reliability parameters of the network, a unit for determining technological reliability parameters of the water discharge network, which is provided with a network modelling cell having a possibility of determining flow rate of emergency discharge qjmod of water discharge networks at deactivation of j section of the network.

EFFECT: improvement of efficient determination of parameters of reliability and regular supply of water supply and water discharge networks.

30 cl, 3 dwg

FIELD: physics, computation hardware.

SUBSTANCE: invention relates to authentication of the user and performance of payment transaction. Proposed device comprises processor, data carrier connected thereto and including the set of instructions. Execution of said instructions by said processor makes this device authenticate the user by registration of mobile device and communication of mobile device with the user payment account. Mobile device is registered is authenticated with the use of identification data issued by the user and related with payment account. Data initiating the payment transaction is received to define is payment transaction is initiated with the help of mobile device. Proceeding from the mobile device registration authentication payment transaction is authenticated for payment account with the use of mobile device.

EFFECT: higher rate of payment transaction.

41 cl, 6 dwg

FIELD: medicine.

SUBSTANCE: invention relates to devices for medical monitoring. The method contains stages at which: a packet (7) of data about a patient is transmitted from a device (10) for patient monitoring to the central server (12); a message (72) with acknowledgement (ACK), transmitted by the central server (12) in response to receiving by the central server (10) of the transmitted packet (70) of data about the patient, with a message with acknowledgement containing a time stamp, provided from the central server (12) clock (46), indicating the time and date, when the central server (12) received the packet (70) of the patient's data; the message time stamp (72) with ACK is compared with the current time of the clock (28) of the patient monitoring device (10); and if the difference between the current time of the clock (28) of the patient monitoring device (10) and the time stamp (74) with ACK is larger than the first preliminarily determined time, the clock (28) is synchronised in accordance with the time and date in the time stamp (74) in the message (72) with ACK.

EFFECT: provision of control of the time synchronisation interface.

13 cl, 5 dwg

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to computer engineering and specifically to intelligent automated assistant systems. Disclosed is method of operating an intelligent automated assistant. The method is carried out in an electronic device having a processor and memory which stores instructions for execution by the processor. The processor executes instructions on which a user request is received, wherein the user request includes a speech input received from the user. Based on the representation of user intent, a plurality of relevant task parameters are identified for the task flow, wherein the plurality of relevant task parameters includes at least one task parameter explicitly expressed in speech input and at least one task parameter logically derived from context information associated with the speech input.

EFFECT: high accuracy of presenting a user with relevant information by taking into account task parameters logically derived from context information.

11 cl, 50 dwg, 5 tbl

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to computer engineering. A method for electronic notary certification of text information, which includes preliminary registration of a contractor in an "electronic notary" system; when sending information by electronic mail, indicating in the "copy" field the address of the automatic "electronic notary" system; upon receiving a copy of the sent information, the automatic mail enters the copy into the personal accounts of the sender and the receiver with indication of the time of sending, the sender, the addressee of the information and all attachments comprising the information, wherein the automatic mail further notifies the addressee on the sending of information and storage of the certified copy of the sent information on the website in the personal account of the contractor.

EFFECT: confirming the sending of a document or file with indication of the date and time of sending via electronic mail.

4 cl

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to providing secure transactions in payment systems using bank cards. The technical result is the low risk of card transactions that are unauthorised by the card holder when the card is compromised. In the method of conducting authorised card transactions, the card holder changes said card parameters in advance to permitting parameters by sending an authenticated request to a processing centre of the issuer, thereby permitting one or more authorised transactions; an authorised transaction can be approved by the processing centre of the issuer only if card parameters permitting said transaction were established by an authentication request by the card holder.

EFFECT: present solution minimises the risk of transactions that are unauthorised by a card holder in any environment of using cards and is distinguished by the capability for use in existing systems for controlling authorised transactions.

3 cl, 5 dwg

FIELD: physics, computation hardware.

SUBSTANCE: invention relates to creation and operation of data base of vacancies and manpower resources. Search system for every selected data element defines its rating and processes data of data base and includes structuring in relational view of data on structure, terms and interrelations as to official characteristics with allowance for taxonomy and ontology of subject area as well as compilation of the rating of indices making the matrix and their ranging. Clients-physical persons define the priorities of criteria for fulfilled job and selection of a company. Besides, they enter the obligatory magnitude of criteria and varying ranged indices for selection of vacancies to be automatically processed by the system in scoring mode. For this, these are ganged after determination of their mean arithmetic value. Client-physical person defines the obligatory values of criteria and varying ranged indices for personnel selection. The latter are processed by the system in scoring mode. For this all candidates selected in compliance with used complex of search criterion after definition of their mean arithmetic value get the rating in the list of resumes of selected candidates for client-physical person the make the decision on.

EFFECT: accelerated search at ranging of data on personnel or vacancies.

8 cl, 1 dwg

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to the field of optimisation of selection and delivery of products in a trading network. The system for the network optimisation implemented by the computer comprises: the first processor for data processing for data receiving and storage in data memory; the second processor for data processing for obtaining at least one input data for conditional dynamic options in a network; the third processor for data processing for obtaining at least one input data set for the specified network to define the specified chosen products with use of at least one optimised filters; the fourth processor for data processing for delivery of at least one of the named products at least to one of the named organisations participating in a trade network and the fifth processor for data processing for data recording relating to the named delivered products, in the data memory.

EFFECT: optimisation of selection of a product or service with reference to requirements of clients and ensuring dynamic integration of these requirements.

16 cl, 5 dwg

FIELD: physics, control.

SUBSTANCE: invention relates to computer engineering. A climate control device, having a network interface configured to receive a request to use the climate control device; transmit an authorisation request to a payment system in response to receiving said request; receive an activation message containing information associated with the payment system in response to the authorisation request; transmit a payment message to the payment system based on a plurality of usage parameters, wherein the payment message leads to the deduction of funds from the account of the user; a user interface configured to receive user input which identifies a climate control programme containing a temperature parameter, a humidity parameter, an ionisation parameter, a dryer parameter, an air purification parameter, a sound parameter and a fragrance parameter, wherein each of said parameters is associated with a corresponding one of a plurality of times, a plurality of durations and a plurality of set values; and a climate control subsystem configured to change the environment based on the climate control programme.

EFFECT: automated climate control on a confined territory.

13 cl, 1 tbl, 11 dwg

FIELD: computer science, in particular, system for situational analysis of passenger transportation.

SUBSTANCE: system has block for selection of database addresses, block for forming recording signals and reading server database, block for controlling selection of data, first and second registers, block for comparing codes, five blocks for selecting record parameters, memory block, first group memory block, second group memory block, third group memory block.

EFFECT: higher speed of operation of system due to localization of range of data search addresses in server database using voyage group identifiers and given time period.

11 dwg

FIELD: technologies for realization of an additional useful effect during purchase of consumer goods.

SUBSTANCE: method for realization of additional useful effect includes dispensing an individual code to consumer, providing access to commonly accessed data transfer network by means of appropriate data processing device, while wherein a software storage is present. Access to storage is performed by means of individual code, launched selected software remains accessible for a certain time, and after anticipated number of accesses individual code is blocked for any further access.

EFFECT: expanded functional capabilities and range of technical means of communication network for users, purchasing goods.

3 cl

FIELD: commerce.

SUBSTANCE: method involves selling goods by way of selling system comprising stores, distributing center and selling terminal chain; transmitting signals from buyer communication means to store communication means, said signals containing information on goods ordered by buyers, and transmitting signals from buyer communication means to store and/or distributing center, said signals containing information on selling terminals selected by buyers; preparing in stores ordered goods for sending and sending said goods to distributing center and further from distributing center to selling terminals selected by buyers; also transmitting signals from store communication means to selling terminal communication means, said signals containing information on buyers orders, and/or transmitting information carriers from stores to selling terminals, said information carriers containing information on buyers orders, with goods being stored in selling terminals and dispensed therefrom to buyers. Also disclosed is goods remote selling system.

EFFECT: reduced time and costs, increased turnover of merchandize and simplified construction of delivery means.

4 cl, 3 dwg

FIELD: method and system for data exchange for facilitating upholding of laws and standards on information transfers and confidentiality of individuals.

SUBSTANCE: method includes stages: transferring from system to user computer a notification, that object confirmed agreement to sanctioned confidentiality and data protection rules; receipt by system of confirmation of individual of receipt of object by server or confirmation, that object will receive and use personal data in accordance to laws active in the country where individual or object is located; transferring by system to server of data object about agreement of individual to aforementioned receipt; receipt of data object from server, containing personal data of individual; periodical check of agreement of object.

EFFECT: improved reliability of information exchanges.

2 cl, 15 dwg

FIELD: engineering of educational equipment, in particular, technology for performing exams with use of computer-based equipment.

SUBSTANCE: method includes forming on machine-readable carrier of database of simplified informative-mathematical models of operation of industries or organizations, aforementioned carrier is given to examinee with notification of variant, data are selected from database for forming more precise model of operation of organization or industry. From server along Internet network information about current values of macro- and micro-economical coefficients of country and the world are received, on basis of which examinee develops dependencies, allowing process calculations pertaining to financial and managing activities of organization or industry in given time interval, recording aforementioned dependencies on machine-readable carrier and checking these by examiner.

EFFECT: improved objectivity of estimation of knowledge of examinees.

3 cl

FIELD: engineering of systems for producing individually optimized products in accordance to request from client.

SUBSTANCE: device is made for producing care products for house pets in accordance to client requests, including food for house pets, wherein integrated client interface is used, based on the Internet, and controlling process for a series of actions, device is configured for receipt of individual data about house pets, receipt of orders for appropriate care product for house pets for each buyer, controlling equipment operation during production for processing each request, care products for house pets in accordance to requirements of each client, and for tracking product delivery through delivery system to house of client.

EFFECT: possible processing of orders from clients for food for house pets and presentation of care scheme data in accordance to individual data pertaining to house pets.

7 cl, 3 dwg

FIELD: engineering of information accumulation system, in particular - technology for performing an interactive game.

SUBSTANCE: each user is provided with means for identification as game participant, provided with a mark. As a mark, optical signal source is used. Positioning of device for receiving optical signals is performed relatively to multiple users. Source position of identification means of game participant is held relatively to means for receiving optical signals in accordance to game conditions. Game objects and rules are given to participants and game start signal is given. User targets his mark to appropriate means for receiving optical signals. Optical signals are received from game participants and received optical signals are registered in registration device. Signals are processed in accordance to given program and results are outputted on an information carrier.

EFFECT: possible polling of large group of participants and detection of winners, while maintaining anonymousness of results.

6 dwg

FIELD: engineering of equipment for processing documents.

SUBSTANCE: device has detector system for detecting characteristic signs of documents, controlling system for realization functions, connected to information, received by detector system and/or to documents processing method, aforementioned system includes memorizing device for storing a set of codes, each of which corresponds to appropriate function, and is made with possible permission of function use, if it is confirmed that transferred permitting code corresponds to one of stored function codes.

EFFECT: simplified adjustment processes of software-hardware equipment complex.

3 cl, 6 dwg

FIELD: engineering of computerized information-analytic trading means, possible use for negotiating orders for buying and selling during performing of trade operations with cashless payment using communication network.

SUBSTANCE: system has authorization and registration block, roles block, block for controlling price offers, price forming block, block for controlling formulas, logistics block, block for controlling agreements, block for finding goods and making agreements, ordering block, block for accepting, block for forming goods movement graphs, display block, block for forming characteristics of goods and goods batches, block for controlling goods, block for purchasing goods, payment block, block for registering goods at warehouses, balances block, notifications block, documents registration block, block for payments and determining payments, automatic procedures block, activation block, analytics block, goods card block, marketing block, participants block, sells block.

EFFECT: expanded functional capabilities due to control over deliveries and quality of goods and services.

1 dwg

FIELD: computer science, in particular, engineering of information effect system of information-marketing centers in integrated electronic trading infrastructure.

SUBSTANCE: system has three registration devices, two adders, block for selecting supporting recording address, block for selecting supporting reading address, block for selecting query source address, block for selecting current record address, block for forming temporal period address, block for forming database addresses, block for controlling recording and reading of data and data dispensing block.

EFFECT: improved system speed of operation by excluding renewable data search across whole database of electronic trading and localizing search only by temporal and individual signs of goods identifiers.

9 dwg

Up!