WO2005045719A1 - 集計システム - Google Patents
集計システム Download PDFInfo
- Publication number
- WO2005045719A1 WO2005045719A1 PCT/JP2004/016109 JP2004016109W WO2005045719A1 WO 2005045719 A1 WO2005045719 A1 WO 2005045719A1 JP 2004016109 W JP2004016109 W JP 2004016109W WO 2005045719 A1 WO2005045719 A1 WO 2005045719A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- user
- information
- array
- operation information
- user management
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/2895—Intermediate processing functionally located close to the data provider application, e.g. reverse proxies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1006—Server selection for load balancing with static server selection, e.g. the same server being selected for a specific client
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/288—Distributed intermediate devices, i.e. intermediate devices for interaction with other intermediate devices on the same level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Definitions
- the present invention relates to a tallying system, and more particularly to a tallying system capable of tallying information operated by a large number of users in a short time via a communication network such as the Internet at a high speed and ordering the information. Things. Background art
- voting information operated by a viewer (user) in conjunction with a viewer participation program on a television
- Patent Document 1 discloses a system in which voting information of viewers is collected by a www server via the Internet.
- Patent Document 1 Japanese Patent Application Laid-Open No. 2002-344928
- the conventional WWW server system as described above includes, for example, a load balancer, an http server, an RDB server, and the like.
- these devices have the following problems in terms of speeding up.
- Layer 7 load balancer decodes application protocol for transferring the same user to the same http server, and specifies http server while searching for and retaining past! / There was a limit to the speed due to processing. Also, since load distribution is performed based on the stored user information, proportional expansion is impossible! / ⁇ ⁇ There were also problems.
- An object of the present invention is to solve the conventional problems as described above.
- a special ID number is assigned to a user, and this ID number is included in operation information from the user.
- the user proxy server arbitrarily assigned to the call specifies the user management server by calculation from this ID number, thereby connecting to a specific user management server at high speed.
- the user management server updates user data based on operation information by accessing the user information recorded by calculation at high speed without performing a timely search from this ID number.
- Another feature is that information calculated for each user from a plurality of user management servers, for example, headcount data corresponding to score information such as the elapsed time of the reception start force is stored in special transfer array data. is there.
- the number of persons corresponding to the score information is obtained in the entire system by collecting the transfer sequence data in a predetermined numbering server and performing addition and synthesis.
- the transfer array data can be divided according to a certain rule, and when the data is divided, multiple servers can perform addition and synthesis, thereby improving performance.
- the reception Another feature is that the number of transfer array data is converted in order.
- the configuration of the present invention has the following effects. According to the configuration of the present invention, it is not necessary for the load balancer to transfer the same user to the same user proxy server, so that it is possible to assign packets to arbitrary user proxy servers in the order of arrival at the layer 3 level. Since there is no need to store information for decentralization or to decode and judge application protocols, high-speed processing is possible, and it can be arbitrarily added.
- the user proxy server divides the user ID by the number of user management servers, and the remainder can specify the user management server storing the user information, so that there is no need to search. Can be relayed at high speed.
- the user management server stores the user information at the position of the array whose index is the quotient obtained by dividing the user ID by the number of user management servers, so referencing the user information without having to search And rewriting can be performed at high speed.
- special transfer array data is used for collecting and distributing user information data distributed and processed by a plurality of user management servers. Since the transferred array data is composed of only the unit of the head count data corresponding to the score information where the data exists, the amount of data transferred between the servers is reduced, and the processing Z transfer time is shortened. .
- the transfer sequence data is simultaneously generated by a plurality of user management servers, and the process of assigning order information to the user information from the distributed sequence is also simultaneously performed by the plurality of user management servers in a distributed manner. Therefore, the processing speed is increased. Furthermore, it is possible to simultaneously perform distributed processing by a plurality of user management servers for combining processing of a plurality of transfer arrays. As a result, user data distributed to a plurality of user management servers can be collected at one location and the order can be obtained at high speed without the need to perform sort processing.
- the user management server stores user information and operation information in a memory in order to operate at the highest possible speed. Functions and security similar to existing WWW / RDB systems that require There is an effect that a system that can easily increase the processing capacity can be developed while securing the same.
- the system of the present invention is capable of quickly summarizing response processing and priority processing by ordering even if a large number of calls are concentrated in a short time, and increases the number of user management servers and the like as necessary. This has the effect that the processing capacity can be easily increased.
- FIG. 1 is a block diagram showing a configuration of an entire system according to an embodiment of the present invention.
- FIG. 2 is a block diagram showing a configuration of an aggregation node 11-13 of the present invention.
- FIG. 3 is a block diagram showing a configuration of a management and registration node of the present invention.
- FIG. 4 is a flowchart 1 showing exchange of processing between the devices of the present invention.
- FIG. 5 is a flowchart 2 showing exchange of processing between the devices of the present invention.
- FIG. 6 is a flowchart showing details of operation information registration processing of the present invention.
- FIG. 7 is an explanatory diagram showing a data configuration of a transfer array of the present invention.
- FIG. 8 is a flowchart showing details of a total Z ranking process of the present invention.
- FIG. 9 is an explanatory diagram 1 illustrating an example of a process of registering operation information.
- FIG. 10 is an explanatory diagram 2 illustrating an example of a process of registering operation information.
- FIG. 11 is an explanatory diagram 3 showing an example of the operation information registration process.
- FIG. 12 is an explanatory diagram 4 showing an example of a process of registering operation information.
- FIG. 13 is an explanatory view 1 showing an example of the processing in S40 of FIG. 8.
- FIG. 14 is an explanatory diagram 1 showing a processing example of S41-S45 in FIG.
- FIG. 15 is an explanatory diagram 2 showing a processing example of S40 in FIG. 8.
- FIG. 16 is an explanatory diagram 2 showing a processing example of S41-S45 in FIG. 8;
- FIG. 17 is an explanatory diagram showing a processing example of S50 and S51 in FIG. 8;
- FIG. 18 is an explanatory view 1 showing an example of the processing in S52 and S53 in FIG.
- FIG. 19 is an explanatory diagram 2 showing a processing example of S52 and S53 in FIG.
- FIG. 20 is an explanatory view 1 showing an example of the processing in S55 to S59 in FIG.
- FIG. 21 is an explanatory diagram 2 showing a processing example of S55-S59 in FIG.
- FIG. 22 is an explanatory diagram 3 showing a processing example of S55-S59 in FIG.
- FIG. 23 is an explanatory diagram 4 showing a processing example of S55-S59 in FIG. 8;
- FIG. 24 is an explanatory diagram 5 showing a processing example of S55-S59 in FIG. 8.
- FIG. 25 is an explanatory diagram 6 showing a processing example of S55-S59 in FIG. 8.
- FIG. 26 is an explanatory diagram 7 showing a processing example of S55-S59 in FIG. 8.
- FIG. 27 is an explanatory diagram 8 showing a processing example of S55-S59 in FIG. 8.
- FIG. 28 is an explanatory diagram showing a processing example of S70 in FIG. 8.
- FIG. 29 is an explanatory diagram showing a processing example of S71 in FIG. 8.
- FIG. 30 is an explanatory diagram showing a processing example of S72 in FIG. 8.
- FIG. 31 is an explanatory diagram showing a state in which the ordering process has been completed.
- FIG. 32 is a flowchart showing exchanges between respective devices according to the second embodiment of the present invention.
- FIG. 33 is an explanatory diagram showing a tabulation Z ordering process according to the second embodiment of the present invention.
- FIG. 34 is a flowchart showing a sequence imparting process of the second embodiment of the present invention c
- FIG. 36 is a flowchart showing a sequence conversion process of the second embodiment of the present invention c
- FIG. 3A is a flowchart showing a lower hierarchical routine according to the second embodiment.
- Example 1 An embodiment of an order assigning system capable of quickly summarizing information operated by a viewer in conjunction with a television program via the Internet and performing ordering will be disclosed below.
- Example 1 An embodiment of an order assigning system capable of quickly summarizing information operated by a viewer in conjunction with a television program via the Internet and performing ordering will be disclosed below.
- FIG. 1 is a block diagram showing a configuration of an entire system according to an embodiment of the present invention.
- the Internet 22 is connected to a plurality of mobile communication networks A25 and B28 via gateways 23 and 24, and the mobile terminal 30 can be connected to the Internet via base stations 26 and 29.
- a DNS (domain name server) 16 and a PC terminal 33 are also connected to the Internet.
- Such a configuration is well known.
- the user accesses the counting system of the present invention using the portable terminal 30 while watching the television program broadcast from the television station 20 on the television 31.
- the Internet 22 is connected to the registration node 10 of the present invention and three aggregation nodes All, B12, and C13. These nodes are also connected to a private network (PN) 21.
- the management node 14 and the studio terminal 15 of the present invention are also connected to the PN 21.
- the PN 21 may be configured by a dedicated line or the like, or a VPN (Virtual Private Network) may be installed in the Internet 22. Further, all devices may be connected via the Internet without providing the PN21.
- At least one aggregation node is sufficient, but by distributing calls as shown in the figure, even if the line connected to one aggregation node is congested or down, another aggregation node is used.
- the program can be continued by the data of the node.
- FIG. 2 is a block diagram showing a configuration of the tallying nodes 11 to 13 of the present invention.
- a plurality of load balancers 41 connected to the Internet 22 via the router 40 and the LAN 45 are set with different IP addresses, and the calls (access) arrive in a distributed manner by the well-known DNS 16.
- Each load balancer 41 sequentially selects one of the plurality of user proxy servers 42 and transfers the calls in the order of arrival.
- the user proxy server 2 connected to the load balancer 41 via the LAN 46 performs processing to be described later, converts a form, specifies the user management server 43, transfers a call, and responds.
- the user management server 43 connected to the user proxy server 2 via LAN 46 It performs the processing described later, and records and retains the operation information and the like transmitted from the user, outputs the total information, registers the order information, and the like.
- the various servers used in the present invention can be realized by creating and installing a program of the present invention described later on a commercially available server device.
- FIG. 3 is a block diagram showing the configuration of the management and registration node of the present invention.
- FIG. 3A is a block diagram showing the configuration of the management node 14.
- the management node 14 receives status data from the status management server 51 that manages the processing status of the entire system, the aggregated data from the user management server 43 of the aggregation node, and assigns an order to the numbering server 53 and the user management server 43.
- a ranking table integration server 52 is provided which receives a fixed (eg, higher) order data and generates a ranking table required for the program.
- FIG. 3B is a block diagram showing the configuration of the registration node 10, in which a registration server is installed. Note that the management node, registration node, and aggregation node may be integrated and installed in one place.
- FIG. 4 is a flowchart 1 showing exchange of processing between the devices of the present invention.
- This flowchart shows the registration process and the participation preparation process!
- the user starts the browser of the terminal 30 and accesses the registration server 61 (Sl).
- the registration server 61 returns the registration page (S2) and is displayed on the terminal (S3).
- the user enters personal information such as name and address (S4).
- the registration server 61 Upon receiving the personal information, the registration server 61 receives a hash code (a value randomly distributed) of a key character string (address, name, age, a unique user identifier obtained from a mobile communication network, etc.). ) Is divided to select an aggregation node to be stored.
- the hash code h of the character string is calculated by the following method, for example.
- s [i] is the ith character code of the character string
- n is the length of the character string
- the user management server number is specified by the remainder obtained by dividing this hash value by the number of user management servers in the aggregation node to be connected. This process ensures that the same user is always connected to the same user management server and cannot be registered more than once, This is for even distribution to the user management server.
- the registration server 61 transfers the registration information to the selected user management server 43 (S5).
- the user management server 43 registers personal information and the like at the new sequence position I of the sequence for registering user information, and notifies the registration server 61 of the generated ID number (S6).
- Registration server 61 transmits a participation page in which the received ID number is embedded to the terminal.
- the participation page contains the address and ID number of the selected aggregation node, and when the user performs a participation operation on the participation page, the participation information including the ID is transmitted to the selected aggregation node (S8). ).
- the load balancer transfers the call to an arbitrary user proxy server in the order of arrival (S9).
- the user proxy server 42 receives the participation information, it transmits an operation page in which the ID number is embedded. (S10) is displayed on the terminal (S11). You are now ready to participate.
- FIG. 5 is a flowchart 2 showing the exchange of processing between the devices of the present invention.
- This flowchart shows a single tally of quizzes and questionnaire responses related to the program. In practice, this process is repeated several times within the program.
- the status management server 51 instructs the “preparation” state based on the instruction from the studio terminal 15 (S24). In the “prepared” state, even if the terminal is operated and the operation information is transmitted, only the same operation page is returned on the user proxy server, and no processing is performed.
- the status management server 51 instructs the “collection” state based on the response reception start instruction from the studio terminal 15 (S25).
- the “collection” state when the user operates the terminal and transmits the operation information, the user is connected to the specified aggregation node, and the load balancer transfers the call to an arbitrary user proxy server in the order of arrival (S13).
- the user proxy server 42 uses a different data format for each user terminal. Based on the remainder obtained by dividing the ID number included in the received operation information by the number of user management servers in the node, determine the user management server number and transfer the operation information to the user management server (S 14). The user management server 43 obtains the array position based on the quotient obtained by dividing the ID number of the received operation information by the number of user management servers in the node, and records the user information (S15).
- operation information such as information on the button pressed by the user is recorded in the second user data of the array together with time information (elapsed time from the start of collection in milliseconds).
- the user management server 43 When the recording of the information is completed, the user management server 43 notifies the completion to the user proxy server, and the user proxy server 42 transmits an operation page to the terminal (S16). The operation page is displayed again on the terminal (S17). If the user performs an operation multiple times during the collection time, the operation information or the like may be overwritten, or the operation information after the second time may be ignored.
- the status management server 51 instructs the “aggregation” state based on the aggregation (acceptance end) instruction from the studio terminal 15 (S26).
- the terminal device In the “aggregate” state, even if the terminal device transmits the operation information, the terminal device simply returns the same operation page to the user proxy server, and no processing is performed.
- the user management server 43 sets, for example, a user's operation information and time information power score, generates user information array power as shown in FIG. 7, and transmits it to a predetermined numbering server 53 (S 18).
- sequence data is collected from a plurality of user management servers, the score is converted into a ranking by a method described later, and the ranking information is distributed to the user management server 43 again (S19). .
- a plurality of numbering servers 53 are described. This is for distributing a plurality of ordering processes such as a total score and a score of each question in a distributed manner. Need to be done by one numbering server.
- the user management server 43 assigns a ranking to the users based on the distributed ranking information, and transmits information in a predetermined range, such as personal information of the top 10 persons, to the ranking integration server 52. (S20).
- the order integration server 52 integrates (combines) the order tables based on the information received from the plurality of user management servers 3 and transmits them to the studio terminal or an external Web server function for public disclosure. Also, the completion of the ordering is notified to the status management server. (S21)
- FIG. 5 discloses an example in which tallying is not performed during “collection”, all user management servers are periodically or aperiodically, such as every second, during collection. By executing the processing of S18, it is also possible to perform an interim aggregation. Interim tabulation reveals information on top users and the number of respondents up to the present in almost real time.
- FIG. 6 is a flowchart showing details of the operation information collecting process of the present invention.
- FIGS. 9A and 9B are explanatory diagrams showing an example of a process of collecting operation information.
- the server of index 1 stores the user information array in the user information array. It is assumed that three users having array indexes 0, 1, and 2 are registered.
- the load balancer transfers the call to an arbitrary user proxy server in the order of arrival.
- the user proxy server converts the data input in S30 into a user management server format and unifies the data. This is necessary because the data format differs for each terminal ( Figure 10).
- the user management server 43 obtains an array position (array index) based on a quotient obtained by dividing the ID number of the operation information received in S33 by the number of user management servers.
- the user management server 43 notifies the user proxy server of the completion.
- the load balancer merely distributes the call to an arbitrary proxy server, so that high-speed processing can be performed and expansion can be easily performed.
- the user proxy server can identify the user management server to which the ID number is to be transferred by a simple operation, so high-speed processing is possible and expansion is easy.
- the user management server can determine the position of the user information array in which data is to be stored by a simple operation, so that high-speed processing is possible and expansion is easy.
- the present inventor can use this system in cooperation with a TV program, and can normally accept and respond to tens of thousands of access Z seconds during peak hours and tens of thousands of accesses in about 10 seconds, and order the access. did it.
- FIG. 8 is a flowchart showing details of the tabulation Z ranking process of the present invention.
- the information array of the n-th user is acquired. Then, a score is set for each user.
- the operation information “3” is the correct answer
- the reception time information which is the elapsed time from the start of collection in milliseconds, is given to the correct answerer (by the deduction method).
- the original score information to assign the order in addition to the operation time information of the correct answer for each question, the number of correct answers, the total operation time of the correct answers of multiple questions, a combination of these, etc. can be calculated as necessary It is.
- FIG. 13 and FIG. 15 are explanatory diagrams illustrating a processing example of S40.
- FIG. 7 is an explanatory diagram showing the data configuration of the delivery array of the present invention.
- the score (reception time) information is a force that is the elapsed time information of the collection start force in milliseconds.This is regarded as 64-bit score information, and the number of people for each score specified by the 64-bit is Numerical data indicating the ranking
- the lowest layer is a numerical unit 77 with 256 numerical values (8 bits). Therefore, for example, the numerical value unit 77 in the upper right of FIG. 7 stores the data of the number of users who answered correctly between 0 ms and 255 ms after the collection was started.
- S45 1 is calculated for the number of people data at the position corresponding to the score information in the numerical value unit.
- S46 it is determined whether or not the processing is completed for all the correct user data. If the determination result is negative, the processing returns to S40. If the determination is affirmative, the processing shifts to S47. In S47, the generated transfer array data is output to the numbering server.
- FIGS. 14 and 16 are explanatory diagrams showing processing examples of S41 to S45.
- the downward arrow in the transfer array in the figure indicates the pointer, and the X indicates that the pointer is not set.
- “referencing” means setting a pointer to a lower unit in a higher pointer unit.
- the least significant array unit of the next order is generated, and 1 is added to the number data of the address 0.
- transfer sequence data is input from the user management server.
- S51 it is determined whether or not the input has been completed from all the sanoes. If the determination result is negative, the force shifts to S50. If the determination is positive, the process shifts to S52.
- S52 a plurality of delivery arrays are combined by summing the number of people data having the same score.
- S53 it is determined whether or not the synthesis of all the transfer sequences has been completed. If the determination result is negative, the process proceeds to S52, but if the determination result is positive, the process proceeds to S54.
- FIG. 17 is an explanatory diagram showing the processing f-th column in S50 and S51.
- 18 and FIG. 19 are explanatory diagrams showing processing examples of S52 and S53.
- synthesizing an array add the value of the other numerical unit at the same scoring position to the numerical value of the user management server with the lowest index among the numerical data units that exist in the collected array.
- the index is the youngest among the arrays collected by the pointers to the numerical units, and the index is registered in the array.
- the numerical unit with index 1 is registered in the array with index 0, and the numerical unit with the same score position at index 2 is registered.
- the data at address 255 is added.
- the data of address 0 of the numerical unit at the same score position of index 2 is added to address 0 of the next numerical unit. Create a new array and receive it All the numerical data of the array may be added to the same score position of the new array.
- FIG. 20 to FIG. 27 are explanatory diagrams showing processing examples of S55 to S59.
- the first process is the process of S55
- the second process is the process of S56
- the third process is the process of S57.
- the position of interest is +1 during the transition from FIG. 21 to FIG.
- FIG. 27 shows a state in which the ordering process has been completed. Numerical units connected by pointers are set with a numerical value of 18 indicating the order.
- the sequence is input in S70.
- S71 the n-th user information array is acquired.
- S72 order data is also obtained for the correct answer based on the score information based on the score information, and written in the user information array.
- S73 it is determined whether or not the ordering process has been completed for all users. If the determination result is negative, the process proceeds to S71, but if the determination result is affirmative, the process ends. By the above processing, the ranking is written in the user information of each user management server.
- FIG. 28 is an explanatory diagram showing a processing example of S70.
- FIG. 29 is an explanatory diagram showing a processing example of S71. In this example, information about user 2 (index 0) is obtained.
- FIG. 30 is an explanatory diagram showing a processing example of S72. In this example, the numbering array is traced based on the score (255) of the user 2, the ranking data “2” is acquired, and set in the user information array.
- FIG. 31 is an explanatory diagram showing a state where the ordering process is completed in all the user management servers.
- the processing capability is easily expanded by dispersing and processing the calorie calculation synthesis and the order data generation processing in the plurality of user management servers 43.
- FIG. 32 is a flowchart showing exchanges between respective devices according to the second embodiment of the present invention.
- the number management server 43 is not provided, and the Generate The only difference from the first embodiment is the part of S27.
- FIG. 33 is an explanatory diagram showing the tabulation Z ordering process of S27 in the second embodiment of the present invention.
- the number of the user management servers 43 is three, but this number can be arbitrarily increased or decreased.
- Each user management server 0 (80) -2 (82) has reception data 80-82, which is user information storing user operation information.
- Each user management server divides the received data and generates a transfer array for the number of management servers. The structure of this sequence is identical to that shown in FIG. In order to equalize the data amount of each array, the data is distributed by the lower value of the score. (Details will be described later)
- Each user management server acquires the transfer sequence to be synthesized by another server, and distributes the transfer sequence to be synthesized by another server to another server.
- user management server 0 80
- the transfer arrays to be synthesized by the user are all prepared, the arrays are added and synthesized.
- the user management server 0 (80) adds and synthesizes three arrays A-0 (83), B-0 (86), and C0 (89) force arrays ABC-0 (92). Since addition processing is distributed by a plurality of servers, the processing capacity can be easily increased or decreased by increasing or decreasing the number of servers.
- the addition-synthesized array stores the number-of-person data for each score (elapsed time).
- the head data is added to the head data and converted into order data ABC-0 (95), ABC-1 (96), and ABC-2 (97).
- This process is performed in each user management server in parallel. Note that one user management server may convert the data into order data and distribute the result to all user management servers, but the time required for ordering can be made almost the same.
- the same arrays ABC-0 (95), ABC-1 (96), ABC-2 (97) storing order data are held in each user management server! .
- each user management server manages and assigns an order to the user information (acceptance data).
- FIG. 34 is a flowchart showing the order assigning process in S27 according to the second embodiment of the present invention. This process is started in each user management server 3 in accordance with a tally instruction from the status management server 51.
- S80 transfer arrays for the number of user management servers are prepared, and in S81, an array generation process described later is called. Here, transfer arrays for the number of user management servers are generated.
- S82 0 is substituted for the variable a.
- S83 as soon as the transfer sequence data is prepared, the transfer sequence data to be added by the own server is acquired from the ath server.
- S84 it is determined whether or not a is equal to or more than the user management server number max. If the determination result is negative, the process proceeds to S85. If the determination is affirmative, the process proceeds to S86. In S85, 1 is added to a, and the flow shifts to S83. In S86, the contents of all the transfer arrays to be processed by the own server are added and synthesized.
- the synthesizing method is the same as the processing in S52 and S53 of the first embodiment.
- the order conversion process is called. By this processing, the data on the number of people in the array is integrated and converted into order data.
- the order addition process is called. By this processing, the order is given to the user information (acceptance data) managed by each user management server.
- FIG. 35 is a flowchart showing the contents of the array generation processing (S81) according to the second embodiment of the present invention.
- the transfer of user information divided into the number of user management servers This is the process of generating an array.
- the score information is calculated from the unprocessed user information (acceptance data) and written into the user information.
- the remainder obtained by dividing the score of the user by the preset number of management servers is assigned to a variable b.
- a quotient obtained by dividing the user's score by the number of management servers is substituted for the variable c.
- the b-th transfer sequence is selected.
- the transfer array is followed in the order of higher power based on the value of the variable c. Specifically, c is divided into the number of layers corresponding to the number of bits (for example, 8 bits) corresponding to the hierarchy, and a value obtained by dividing c in the higher-order array unit and an address corresponding to the lower-order array unit to the corresponding address are valid. Check if the pointer exists.
- S 105 it is determined whether or not a lower-order array exists. If the determination result is negative, the process proceeds to S 106. If the determination is affirmative, the process proceeds to S 107. In S106, a lower-order array unit and a pointer pointing to it are newly generated. In S107, it is determined whether or not the lowest alignment force is present. If the determination result is negative, the process proceeds to S104. If the force is positive, the process proceeds to S108.
- S108 1 is added to the head count data corresponding to the lower-order predetermined bit of c in the lowest-order array unit.
- S109 it is determined whether or not the process is completed. If the determination result is negative, the process proceeds to S100. If the determination is positive, the process ends.
- a transfer array divided into the number of user management servers is generated. Since the information amount of each array is distributed by the lower value (b) of the score information, the number of people information included in each array is almost equal, and the load of the addition and combining process in each user management server is also reduced. It can be expected to be almost even.
- FIG. 36 is a flowchart showing the contents of the order conversion process (S91) according to the second embodiment of the present invention.
- S121 it is checked whether the ⁇ th pointer of the uppermost array unit is valid (exists).
- S122 it is determined whether it is valid or not. If the determination result is negative, the process proceeds to S124, but if it is affirmative, the process proceeds to S123.
- the lower layer routine is called (called) using the layer value (L + l) and the valid pointer information in S121 as arguments.
- 1 is added to P.
- S125 it is determined whether P is equal to or greater than 256. If the determination result is negative, the process proceeds to S121. If the determination is positive, the process ends.
- FIG. 37 is a flowchart showing a lower hierarchical routine according to the second embodiment.
- This processing routine is called recursively for each hierarchy.
- the variables used in the power routine are independent for each hierarchy.
- the processing in the lowest hierarchy and the processing in the middle hierarchy are separated.
- S130 it is determined whether or not it is the lowest layer. If the determination result is negative, the process proceeds to S131. If the result is positive, the process proceeds to S137.
- P P
- the lower layer routine is called using the layer value (L + 1) and the valid pointer information in S132 as arguments.
- 1 is added to P.
- P it is determined whether or not P is 256 or more. If the determination result is negative, the force shifts to S132. If the determination is affirmative, the process ends and returns to the original routine.
- P is initialized to 0.
- the upper routine power also initializes the power counter Q of the number of valid arrays passed to one.
- the Pth number data of the Qth array unit is read.
- S140 it is determined whether or not the number of persons is one or more. If the determination result is negative, the process proceeds to S144. If the result is positive, the process proceeds to S141. In S141, the number data is substituted into variable # ⁇ to temporarily hold the data. In S142, the order ⁇ is written to the ⁇ th of the Qth array unit. In S143, the ranking is updated by substituting J + ⁇ for ranking ⁇ .
- FIG. 38 is a flowchart showing the contents of the order adding process (S92) according to the second embodiment of the present invention.
- S150 unprocessed score information of the user information arrangement power is acquired.
- S151 the remainder obtained by dividing the score of the user by the number of management servers is substituted for the variable b.
- S152 the quotient obtained by dividing the score of the user by the number of management servers is substituted for the variable c.
- the b-th transfer sequence is selected.
- the transfer array is followed based on the value of variable c.
- the order data is read from the least significant array unit based on the value of the variable c, and is written to the corresponding user information.
- the portable terminal has been disclosed.
- a general PC terminal connected to the Internet may be used.
- it may be assigned to a plurality of user management servers in the order of acceptance to the registration server.
- the ordering process is performed such that the user with the highest number of correct answers is ranked higher by one ordering process, and if the number of correct answers is the same, the user with the shorter average answer time is ranked higher. For example, if Mr. A has 3 correct answers, average time of correct answer is 13 seconds, Mr. B has 2 correct answers, average time of correct answer is 13 seconds, and Mr. C has 2 correct answers, average time of correct answer is 5 seconds. Find the score using the formula.
- Score (OxFFFFFFFFFFFFFFFF—Number of correct answers * 0 ⁇ 100000000 + Average time of correct answer)
- the meaning of this formula is the maximum number that can be represented in the array minus the half of the maximum number that can be represented in the array (32 bits) + the average time of the correct answer.
- the system of the present invention is ordered from the smallest value, so Mr. A ranks first, Mr. B ranks third,
- data such as operation information, accumulated information, reception time, and the like within a range that can be represented by an array can be handled in various orderings by bit shifting and exchanging or combining + and-. .
- the data can be expressed only by using 13 arrays of 2 elements under OxFFFFFF (upper 3 rows), one each for the following, and convenient array of 256 elements.
- the transfer array of the present invention is characterized in that the data compression effect is maximized when a large number of approximate values exist.
- the number of correct answers falls within the range of 1 to 255 (0xFF) seconds for 11 ⁇ ( ⁇ ) questions.
- the ability to disclose an example of receiving and processing button information with a user's button operation as a trigger is applied to the following combinations of trigger and information. And flexible information collection is possible. For example, the following can be considered as a method of generating operation information (trigger).
- the following can be considered as the operation information.
- the system of the present invention executes the ordering process in a short time, such as a system in which answer information and the like operated by the user in association with the television viewer-participating program are totaled and reflected in the program. It can be applied to the use of the system that needs it Further, the order assignment system of the present invention is not limited to a system linked to a television program, but can be used in a limited amount of time, such as in ticket sales, gambling and game odds counting, auctions, and rankings of network participating games. Applicable to any system where access is concentrated and ordering is required.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005515276A JP3957220B2 (ja) | 2003-11-10 | 2004-10-29 | 集計システム |
EP04793217A EP1684220A4 (en) | 2003-11-10 | 2004-10-29 | compilation |
US10/553,422 US7430603B2 (en) | 2003-11-10 | 2004-10-29 | Aggregation system |
CN200480007643.3A CN1762141B (zh) | 2003-11-10 | 2004-10-29 | 合计系统 |
US12/155,044 US7987265B2 (en) | 2003-11-10 | 2008-05-29 | Aggregation system |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003379466 | 2003-11-10 | ||
JP2003-379467 | 2003-11-10 | ||
JP2003-379466 | 2003-11-10 | ||
JP2003379467 | 2003-11-10 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/155,044 Continuation US7987265B2 (en) | 2003-11-10 | 2008-05-29 | Aggregation system |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2005045719A1 true WO2005045719A1 (ja) | 2005-05-19 |
Family
ID=34575940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2004/016109 WO2005045719A1 (ja) | 2003-11-10 | 2004-10-29 | 集計システム |
Country Status (4)
Country | Link |
---|---|
US (2) | US7430603B2 (ja) |
EP (1) | EP1684220A4 (ja) |
JP (1) | JP3957220B2 (ja) |
WO (1) | WO2005045719A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107886255A (zh) * | 2017-12-05 | 2018-04-06 | 北京粉笔蓝天科技有限公司 | 一种成绩排名方法和系统 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2879385A1 (fr) * | 2004-12-09 | 2006-06-16 | Thomson Licensing Sa | Methode d'agregation de decouverte de service dans un reseau local et appareil implementant la methode |
US7905777B2 (en) | 2005-08-04 | 2011-03-15 | Igt | Methods and apparatus for auctioning an item via a gaming device |
US8216065B2 (en) | 2005-09-09 | 2012-07-10 | Igt | Gaming system having multiple adjacently arranged gaming machines which each provide a component for a multi-component game |
US7857699B2 (en) | 2006-11-01 | 2010-12-28 | Igt | Gaming system and method of operating a gaming system having a bonus participation bidding sequence |
US7885932B2 (en) | 2006-11-01 | 2011-02-08 | Ab Initio Technology Llc | Managing storage of individually accessible data units |
US8229902B2 (en) | 2006-11-01 | 2012-07-24 | Ab Initio Technology Llc | Managing storage of individually accessible data units |
US8423604B2 (en) * | 2008-08-29 | 2013-04-16 | R. Brent Johnson | Secure virtual tape management system with balanced storage and multi-mirror options |
US20100057790A1 (en) * | 2008-08-29 | 2010-03-04 | Johnson R Brent | Secure virtual tape management system with console and catalog monitoring and updating |
US9462029B2 (en) * | 2008-08-29 | 2016-10-04 | Red Hat, Inc. | Invoking serialized data streams |
US8214584B2 (en) * | 2008-08-29 | 2012-07-03 | Johnson R Brent | Secure virtual tape management system with early read support options |
US20130013605A1 (en) * | 2011-07-08 | 2013-01-10 | Stanfill Craig W | Managing Storage of Data for Range-Based Searching |
US10652318B2 (en) * | 2012-08-13 | 2020-05-12 | Verisign, Inc. | Systems and methods for load balancing using predictive routing |
US9602616B2 (en) * | 2013-11-06 | 2017-03-21 | Neustar, Inc. | System and method for facilitating routing |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11306068A (ja) * | 1998-04-24 | 1999-11-05 | Sony Corp | 送信装置および送信方法、受信装置および受信方法、並びに送受信システムおよび送受信方法 |
JP2000315200A (ja) * | 1998-09-24 | 2000-11-14 | Alteon Web Systems Inc | 分散されたロード平衡インターネットサーバ |
JP2001229151A (ja) * | 2000-02-15 | 2001-08-24 | Sharp Corp | 回答収集システム、回答収集方法、コンピュータを回答依頼装置として機能させるためのコンピュータ読取可能な記録媒体およびコンピュータを回答収集装置として機能させるためのコンピュータ読取可能な記録媒体 |
JP2002163241A (ja) * | 2000-11-29 | 2002-06-07 | Ntt Data Corp | クライアントサーバシステム |
JP2002344928A (ja) * | 2001-05-15 | 2002-11-29 | Hitachi Ltd | 双方向型放送視聴システムおよびその制御方法 |
JP2003209570A (ja) * | 2002-01-11 | 2003-07-25 | Fujitsu Ltd | 中継方法そのクライアント、サーバ、中継装置 |
JP2003256392A (ja) * | 2002-03-04 | 2003-09-12 | Ntt Comware Corp | ロードバランス制御装置及びロードバランス制御方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09147029A (ja) | 1995-11-27 | 1997-06-06 | Matsushita Electric Ind Co Ltd | 電子投票システム |
JP3872909B2 (ja) | 1998-11-04 | 2007-01-24 | 株式会社東芝 | クラスタシステム |
JP4189076B2 (ja) | 1999-03-26 | 2008-12-03 | 株式会社東芝 | 耐障害コンピュータシステム |
US6587866B1 (en) * | 2000-01-10 | 2003-07-01 | Sun Microsystems, Inc. | Method for distributing packets to server nodes using network client affinity and packet distribution table |
JP2002057645A (ja) * | 2000-08-10 | 2002-02-22 | Ntt Docomo Inc | データ転送方法および移動体サーバー |
AU2001288650A1 (en) * | 2000-08-31 | 2002-03-13 | Mixed Signals Technologies, Inc. | Systems and method for interacting with users over a communications network |
US7139792B1 (en) * | 2000-09-29 | 2006-11-21 | Intel Corporation | Mechanism for locking client requests to a particular server |
US20020077885A1 (en) * | 2000-12-06 | 2002-06-20 | Jared Karro | Electronic voting system |
US20020169756A1 (en) * | 2001-05-10 | 2002-11-14 | Biddulph David L. | Voting system and method for secure voting with increased voter confidence |
US7143169B1 (en) * | 2002-04-04 | 2006-11-28 | Cisco Technology, Inc. | Methods and apparatus for directing messages to computer systems based on inserted data |
US7774473B2 (en) * | 2002-07-31 | 2010-08-10 | Oracle America, Inc. | System and method for sticky routing of requests within a server farm |
US7860975B2 (en) * | 2002-07-31 | 2010-12-28 | Oracle America, Inc. | System and method for secure sticky routing of requests within a server farm |
US7379988B2 (en) * | 2003-04-23 | 2008-05-27 | International Business Machines Corporation | Autonomic performance tuning of a distributed virtual storage server |
-
2004
- 2004-10-29 JP JP2005515276A patent/JP3957220B2/ja not_active Expired - Fee Related
- 2004-10-29 US US10/553,422 patent/US7430603B2/en not_active Expired - Fee Related
- 2004-10-29 WO PCT/JP2004/016109 patent/WO2005045719A1/ja active Application Filing
- 2004-10-29 EP EP04793217A patent/EP1684220A4/en not_active Withdrawn
-
2008
- 2008-05-29 US US12/155,044 patent/US7987265B2/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11306068A (ja) * | 1998-04-24 | 1999-11-05 | Sony Corp | 送信装置および送信方法、受信装置および受信方法、並びに送受信システムおよび送受信方法 |
JP2000315200A (ja) * | 1998-09-24 | 2000-11-14 | Alteon Web Systems Inc | 分散されたロード平衡インターネットサーバ |
JP2001229151A (ja) * | 2000-02-15 | 2001-08-24 | Sharp Corp | 回答収集システム、回答収集方法、コンピュータを回答依頼装置として機能させるためのコンピュータ読取可能な記録媒体およびコンピュータを回答収集装置として機能させるためのコンピュータ読取可能な記録媒体 |
JP2002163241A (ja) * | 2000-11-29 | 2002-06-07 | Ntt Data Corp | クライアントサーバシステム |
JP2002344928A (ja) * | 2001-05-15 | 2002-11-29 | Hitachi Ltd | 双方向型放送視聴システムおよびその制御方法 |
JP2003209570A (ja) * | 2002-01-11 | 2003-07-25 | Fujitsu Ltd | 中継方法そのクライアント、サーバ、中継装置 |
JP2003256392A (ja) * | 2002-03-04 | 2003-09-12 | Ntt Comware Corp | ロードバランス制御装置及びロードバランス制御方法 |
Non-Patent Citations (1)
Title |
---|
See also references of EP1684220A4 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107886255A (zh) * | 2017-12-05 | 2018-04-06 | 北京粉笔蓝天科技有限公司 | 一种成绩排名方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
US20080235377A1 (en) | 2008-09-25 |
JPWO2005045719A1 (ja) | 2007-05-17 |
EP1684220A1 (en) | 2006-07-26 |
US7430603B2 (en) | 2008-09-30 |
US7987265B2 (en) | 2011-07-26 |
US20060230158A1 (en) | 2006-10-12 |
EP1684220A4 (en) | 2012-02-15 |
JP3957220B2 (ja) | 2007-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7987265B2 (en) | Aggregation system | |
CN1764916B (zh) | 用于频率计数的方法和装置 | |
CN110602514B (zh) | 一种直播频道的推荐方法、装置、电子设备及存储介质 | |
TWI419000B (zh) | 開放式搜尋輔助 | |
JP2004206517A (ja) | ホットキーワード提示方法及びホットサイト提示方法 | |
CN101578603A (zh) | 事件搜索 | |
CN100442732C (zh) | 关联控制设备、关联控制方法及服务关联系统 | |
CN101031060B (zh) | 一种生成电子节目指南的系统及方法 | |
JP6603645B2 (ja) | リソース検索装置およびリソース検索方法 | |
CN110099284A (zh) | 一种快捷发言的生成方法、装置及服务器 | |
JP4708383B2 (ja) | 集計システム | |
US11063887B2 (en) | Information processing apparatus, user terminal apparatus, and control method | |
CN109145608A (zh) | 一种基于区块链的数据处理方法及装置 | |
US20060212308A1 (en) | Information posting system and information posting method | |
Mizzaro et al. | Retrieval of context-aware applications on mobile devices: how to evaluate? | |
CN110188277A (zh) | 一种资源的推荐方法及装置 | |
KR102169916B1 (ko) | 정보를 제시하는 방법 및 디바이스 | |
CN1762141B (zh) | 合计系统 | |
CN115174974A (zh) | 基于未来网络的智慧影院系统 | |
CN105868367A (zh) | 一种清理安卓设备中的根路径的方法、服务器和系统 | |
KR100476485B1 (ko) | 랭킹 정보 통합 관리 시스템및 방법 | |
CN112825179A (zh) | 一种医疗信息处理方法和相关装置 | |
WO2004102424A1 (ja) | 相互リンクシステム、情報処理装置、相互リンク方法、及び、その方法をコンピュータに実行させるプログラム | |
JP2022188486A (ja) | 人気順位を決定するシステム | |
CN116116013A (zh) | 卡组推荐处理方法及其装置、设备、介质、产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 20048076433 Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2006230158 Country of ref document: US Ref document number: 10553422 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2004793217 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2005515276 Country of ref document: JP |
|
WWP | Wipo information: published in national office |
Ref document number: 2004793217 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 10553422 Country of ref document: US |