WO2014192641A1 - 計算機システム及び障害特定方法 - Google Patents

計算機システム及び障害特定方法 Download PDF

Info

Publication number
WO2014192641A1
WO2014192641A1 PCT/JP2014/063634 JP2014063634W WO2014192641A1 WO 2014192641 A1 WO2014192641 A1 WO 2014192641A1 JP 2014063634 W JP2014063634 W JP 2014063634W WO 2014192641 A1 WO2014192641 A1 WO 2014192641A1
Authority
WO
WIPO (PCT)
Prior art keywords
log
data
unit
data store
message
Prior art date
Application number
PCT/JP2014/063634
Other languages
English (en)
French (fr)
Inventor
衣津美 水谷
木下 雅文
直規 原口
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to US14/893,247 priority Critical patent/US9852031B2/en
Publication of WO2014192641A1 publication Critical patent/WO2014192641A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Definitions

  • the subject matter disclosed in the present specification relates to a system and method capable of specifying a failure range at high speed in a messaging system.
  • a large amount of data (big data) is transmitted and received through a network, and the importance of messaging technology for efficiently processing big data is increasing.
  • a message for example, sensor data
  • a messaging system including a message receiving server, a sending server, and a backup storage for storing the message.
  • the messaging system performs the following processing in message relay processing.
  • the receiving server receives a message from the sending terminal, stores the received message in the backup storage, and responds to the sending terminal. Thereafter, the transmission server acquires a message from the backup storage, relays the acquired message to the transmission destination server, and then deletes the message on the backup storage.
  • the in-memory KVS is a data store that stores data in which a key and value are paired in a volatile memory, can achieve high scalability, and can realize high processing performance because the data is stored in the memory. . Further, in-memory KVS can prevent data loss that is a concern in an in-memory environment by replicating data between a plurality of servers.
  • processing for storing data in which a key and value are paired into a volatile memory is stored, processing for reading a value corresponding to the key from the volatile memory is obtained, and key and value are paired.
  • the process of deleting data from volatile memory is referred to as deletion.
  • Patent Document 1 The technique described in Patent Document 1 is known as a method for preventing a service failure by restoring data.
  • Patent Document 1 is a technique generally known as preceding log writing (WAL: Write Ahead Logging) which is a DB technique.
  • Prior log writing is a technique that is also used in in-memory DBs and the like represented by Hbase.
  • Hbase in-memory DBs and the like represented by Hbase.
  • the preceding log writing every time the receiving server and the sending server perform processing on the in-memory KVS, the in-memory KVS records a processing log including the contents of the stored data in a nonvolatile storage medium.
  • Patent Document 2 As a method for preventing a service failure by making it possible to specify a failure range, a technique described in Patent Document 2 is known.
  • session information correspondence table “session information included in log information held by the server and given to each process by log information is recorded in the session information management table, and the correspondence of session information between different log information
  • the session information correspondence table is recursively searched from the session information instructed by the user through the display location input unit, so that a series of sessions related to the process that the user is paying attention to.
  • the corresponding information is collected from the log information, integrated according to the date and time when the log is recorded, and the processing flow is shaped so that it can be easily understood and presented to the user. It is described.
  • the present invention has been made to solve the above problems. That is, it is to provide a system and method capable of preventing a performance degradation due to log writing to the in-memory KVS and identifying a failure range at high speed.
  • a typical example of the present invention is as follows. That is, a computer system including a plurality of computers connected via a network, receiving a message from a terminal, and transmitting the message to a destination device, wherein each of the plurality of computers includes a processor and the processor A memory interface connected to the processor; and a network interface connected to the processor, wherein the computer system outputs a message reception unit that receives the message from the terminal and a reception log that is a log of the received message.
  • a first computer having a log output unit and a first storage unit for storing reception log data including a plurality of the reception logs, the message being stored using the storage area of the memory
  • a data store management unit for managing the data store to be stored, and the message stored in the data store.
  • a first search unit that searches for a message that matches a predetermined condition from a page, a second log output unit that outputs a data store log that is a log of the searched message, and a plurality of the data stores
  • a second storage unit for storing data store log data including a log; a message transmission for acquiring the message stored in the data store and transmitting the message to the destination device
  • a third log output unit that outputs a transmission log that is a log of the message transmitted to the destination device, and a third storage unit that stores transmission log data including a plurality of the transmission logs
  • a first monitoring unit that monitors the state of the data store, and when the occurrence of a failure in the data store is detected, the first storage
  • a first log collection unit that obtains the reception log data, the data store log data, and the transmission log data from each of the second storage unit and the third storage unit;
  • a second search unit for searching for the message lost due to the failure of the data store by comparing the reception log data, the data store log data, and
  • the failure range can be specified at high speed.
  • performance degradation due to log writing can be prevented.
  • the fault range can be specified at high speed.
  • FIG. 2 is a block diagram illustrating an example of a configuration of a data store server in Embodiment 1.
  • FIG. 3 is a block diagram illustrating an example of a configuration of a collection / search server in Embodiment 1.
  • FIG. It is explanatory drawing which shows an example of the content of the reception log data stored on the collection and search server in Example 1.
  • FIG. It is explanatory drawing which shows an example of the content of the transmission log data stored on the collection and search server in Example 1.
  • FIG. 10 is an explanatory diagram illustrating log data used when the collection / search server in the first embodiment specifies a failure range.
  • FIG. 6 is an explanatory diagram illustrating an example of a terminal screen used by an operator when operating the collection / search server according to the first embodiment.
  • 10 is a flowchart for explaining mail data search processing executed by a data search processing unit of a data store server in a modification of the first embodiment. It is explanatory drawing which shows an example of a structure of the message system in Example 2.
  • FIG. 10 is a block diagram illustrating an example of a configuration of a log management server according to a second embodiment. It is a sequence diagram explaining the process performed when a failure generate
  • a mail system that is a typical example of a messaging system is used.
  • FIG. 1 is an explanatory diagram illustrating an example of the configuration of the mail system according to the first embodiment.
  • the mail system includes a mobile terminal 101, a transmission destination server 105, a mail reception server 106, a mail transmission server 107, a data store server 108, and a collection / search server 109. Further, the mobile network 102, the carrier equipment network 103, and the Internet 104 are included as networks for connecting the devices constituting the mail system.
  • the mobile terminal 101 is a terminal handled by a user or the like, and is connected to the carrier equipment network 103 via the mobile network 102.
  • the mobile network 102 is a wireless network that connects the mobile terminal 101 and the carrier equipment network 103.
  • the carrier equipment network 103 is a network that connects the mobile network 102, the Internet 104, the mail reception server 106, the mail transmission server 107, the data store server 108, and the collection / search server 109.
  • the transmission destination server 105 is connected to the carrier equipment network 103 via the Internet 104, and transmits / receives mail to / from the mail transmission server 107.
  • the mail receiving server 106 is connected to the carrier equipment network 103, receives mail transmitted from the portable terminal 101 via the carrier equipment network 103, and stores the mail in the data store server 108. Although only one mail receiving server 106 is shown in FIG. 1, a plurality of mail receiving servers 106 may exist.
  • the mail transmission server 107 is connected to the carrier equipment network 103, acquires mail from the data store server 108, and transmits the mail to the transmission destination server 105. Although only one mail transmission server 107 is shown in FIG. 1, a plurality of mail transmission servers 107 may exist.
  • the data store server 108 is connected to the carrier equipment network 103 and holds the mail stored by the mail receiving server 106.
  • the data store server 108 is a message store represented by an in-memory KVS or the like. Although only one data store server 108 is shown in FIG. 1, a plurality of data store servers 108 may exist.
  • the collection / search server 109 is connected to the carrier equipment network 103 and monitors the status of the data store server 108. Further, the collection / search server 109 collects logs on the mail reception server 106, the mail transmission server 107, and the data store server 108, and specifies a failure range using the collected logs.
  • the mail reception server 106, the mail transmission server 107, the data store server 108, and the collection / search server 109 are realized as different devices, but the present embodiment is not limited to this.
  • the functions of two or more servers may be realized using a single device.
  • the functions of the mail reception server 106 and the mail transmission server 107 may be realized on one device, and the mail reception server 106, the mail transmission server 107, the data store server 108, and The functions of the collection / search server 109 may be realized.
  • the mail reception server 106, the mail transmission server 107, the data store server 108, and the collection / search server 109 may be realized using a virtualization technology.
  • a method of generating virtual computers corresponding to the mail receiving server 106, the mail transmitting server 107, the data store server 108, and the collection / search server 109 on one computer is conceivable.
  • FIG. 2 is a block diagram illustrating an example of the configuration of the mail receiving server 106 according to the first embodiment.
  • the mail receiving server 106 is realized using an information processing apparatus.
  • the mail receiving server 106 includes a processor 201, a volatile memory 202, a nonvolatile memory 203, and a network I / F 204 as hardware configurations, and each configuration is connected to each other via an internal communication line such as a bus.
  • the processor 201 executes a program stored in the volatile memory 202.
  • the processor 201 executes a program stored in the volatile memory 202, the function of the mail receiving server 106 is realized.
  • the processor 201 executes a program stored in the volatile memory 202.
  • the volatile memory 202 stores a program executed by the processor 201, and includes a storage area for temporarily storing data necessary for executing the program. Specifically, the volatile memory 202 stores a program for realizing the mail reception processing unit 210 and includes a volatile storage unit 220.
  • the mail reception processing unit 210 includes a plurality of program modules, and controls reception processing for receiving mail from the mobile terminal 101.
  • the mail reception processing unit 210 includes a mail reception unit 211, a data store server I / F unit 212, and a log output unit 213.
  • the mail receiving unit 211 executes a process for receiving mail transmitted from the mobile terminal 101.
  • the data store server I / F unit 212 executes storage processing for storing the received mail in the data store server 108.
  • the log output unit 213 When the received mail is stored in the data store server 108, the log output unit 213 outputs a reception log in a data format including information for specifying the stored mail.
  • the output reception log is stored in the reception log data 231 of the nonvolatile storage unit 230.
  • the function of the data store server I / F unit 212 may be included in the mail receiving unit 211.
  • the volatile storage unit 220 stores data managed by the mail reception processing unit 210.
  • the nonvolatile memory 203 includes a nonvolatile storage unit 230 that stores data permanently.
  • the nonvolatile storage unit 230 stores data managed by the mail reception processing unit 210 and also stores reception log data 231.
  • the reception log data 231 is data including one or more reception logs output by the log output unit 213.
  • the network I / F 204 is an interface for connecting to other devices via the network.
  • the network I / F 204 is connected to the carrier equipment network 103.
  • the program stored in the volatile memory 202 may be stored in the nonvolatile memory 203.
  • the processor 201 reads the program from the nonvolatile memory 203 and loads the read program into the volatile memory 202.
  • FIG. 3 is a block diagram illustrating an example of the configuration of the mail transmission server 107 according to the first embodiment.
  • the mail transmission server 107 is realized using an information processing apparatus.
  • the mail transmission server 107 includes a processor 301, a volatile memory 302, a nonvolatile memory 303, and a network I / F 304 as hardware configurations, and each configuration is connected to each other via an internal communication line such as a bus.
  • the processor 301 executes a program stored in the volatile memory 302.
  • the processor 301 executes a program stored in the volatile memory 302
  • the function of the mail transmission server 107 is realized.
  • a process is described mainly with a program, it indicates that the program is being executed by the processor 301.
  • the volatile memory 302 stores a program executed by the processor 301, and includes a storage area for temporarily storing data necessary for executing the program. Specifically, the volatile memory 302 stores a program for realizing the mail transmission processing unit 310, and includes a volatile storage unit 320.
  • the mail transmission processing unit 310 includes a plurality of program modules, and controls transmission processing for transmitting mail to the transmission destination server 105.
  • the mail transmission processing unit 310 includes a mail transmission unit 311, a data store server I / F unit 312, and a log output unit 313.
  • the mail transmission unit 311 executes transmission processing of the mail acquired from the data store server 108 to the transmission destination server 105.
  • the data store server I / F unit 312 executes an acquisition process for acquiring mail from the data store server 108.
  • the log output unit 313 outputs a transmission log in a data format including information for specifying the transmitted mail when the transmission of the mail to the transmission destination server 105 is completed.
  • the output transmission log is stored in the transmission log data 331 of the nonvolatile storage unit 330.
  • the volatile storage unit 320 stores data managed by the mail transmission processing unit 310.
  • the function of the data store server I / F unit 312 may be included in the mail transmission unit 311.
  • the nonvolatile memory 303 includes a nonvolatile storage unit 330 that stores data permanently.
  • the nonvolatile storage unit 330 stores data managed by the mail transmission processing unit 310 and stores transmission log data 331.
  • the transmission log data 331 is data including one or more transmission logs output by the log output unit 313.
  • the network I / F 304 is an interface for connecting to other devices via the network.
  • the network I / F 304 is connected to the carrier equipment network 103.
  • the program stored in the volatile memory 302 may be stored in the nonvolatile memory 303.
  • the processor 301 reads the program from the nonvolatile memory 303 and loads the read program into the volatile memory 302.
  • FIG. 4 is a block diagram illustrating an example of the configuration of the data store server 108 according to the first embodiment.
  • the data store server 108 is realized using an information processing apparatus.
  • the data store server 108 includes a processor 401, a volatile memory 402, a nonvolatile memory 403, and a network I / F 404 as hardware configurations, and each configuration is connected to each other via an internal communication line such as a bus.
  • the processor 401 executes a program stored in the volatile memory 402.
  • the processor 401 executes a program stored in the volatile memory 402
  • the function of the data store server 108 is realized.
  • processing is described mainly with a program, it indicates that the program is being executed by the processor 401.
  • the volatile memory 402 stores a program executed by the processor 401 and includes a storage area for temporarily storing data necessary for executing the program. Specifically, the volatile memory 402 stores a program for realizing the data store management unit 410 and the data search processing unit 420, and includes a volatile storage unit 430.
  • the data store management unit 410 controls each process of the data store.
  • the data store process includes a process for storing a pair of Key and Value received from the mail receiving server 106 or the mail transmitting server 107 in the volatile storage unit 430, and a Key received from the mail receiving server 106 or the mail transmitting server 107. Or a process for deleting a value corresponding to the key received from the mail receiving server 106 or the mail transmitting server 107.
  • the data search processing unit 420 is composed of a plurality of program modules, and controls processing for searching mail data output as a data store log. Specifically, the data search processing unit 420 includes a data search unit 421 and a log output unit 422.
  • the data search unit 421 executes processing for searching the mail data 431 satisfying a specific condition from the mail data 431 stored in the volatile storage unit 430.
  • the log output unit 422 outputs the data store log of the mail data 431 searched by the data search unit 421.
  • the output data store log is stored in the data store log data 441 of the nonvolatile storage unit 440.
  • the volatile storage unit 430 stores data managed by the data store management unit 410.
  • One or more mail data 431 is stored in the volatile storage unit 430 of the present embodiment.
  • the mail data 431 is mail data stored by the data store management unit 410.
  • the data store management unit 410 manages the mail data 431 (Value) by setting the transmission date / time, unique ID, domain name, and the like included in the header of the mail data 431 to Key.
  • the nonvolatile memory 403 includes a nonvolatile storage unit 440 that stores data permanently.
  • Nonvolatile storage unit 440 stores data managed by data store management unit 410 and data search processing unit 420.
  • the nonvolatile storage unit 440 stores data store log data 441.
  • the data store log data 441 is data including one or more data store logs output by the log output unit 422.
  • the network I / F 404 is an interface for connecting to other devices via the network.
  • the network I / F 404 is connected to the carrier equipment network 103.
  • the program stored in the volatile memory 402 may be stored in the nonvolatile memory 403.
  • the processor 401 reads the program from the nonvolatile memory 403 and loads the read program into the volatile memory 402.
  • FIG. 5 is a block diagram illustrating an example of the configuration of the collection / search server 109 according to the first embodiment.
  • the collection / search server 109 is realized using an information processing apparatus.
  • the collection / search server 109 includes a processor 501, a volatile memory 502, a nonvolatile memory 503, and a network I / F 504 as hardware configurations, and each configuration is connected to each other via an internal communication line such as a bus.
  • the processor 501 executes a program stored in the volatile memory 502.
  • the processor 501 executes the program stored in the volatile memory 502
  • the functions of the collection / search server 109 are realized.
  • processing is described mainly with a program, it indicates that the program is being executed by the processor 501.
  • the volatile memory 502 stores a program to be executed by the processor 501, and includes a storage area for temporarily storing data necessary for executing the program. Specifically, the volatile memory 502 stores a program that implements the failure monitoring unit 510, the log collection unit 520, and the failure range search unit 530, and includes a volatile storage unit 540.
  • the failure monitoring unit 510 executes a process for monitoring a failure of the data store server 108 or the like. Specifically, the failure monitoring unit 510 determines whether or not a loss of the mail data 431 stored in the volatile storage unit 430 of the data store server 108 has occurred.
  • the log collection unit 520 acquires a log from each server and executes a process for storing the acquired log in the nonvolatile memory 503.
  • the log collection unit 520 includes reception log data 231 stored in the nonvolatile storage unit 230 of the mail reception server 106, transmission log data 331 stored in the nonvolatile storage unit 330 of the mail transmission server 107, and Data store log data 441 stored in the nonvolatile storage unit 440 of the data store server 108 is acquired.
  • the log collection unit 520 stores the acquired logs in the reception log data 551, transmission log data 552, and data store log data 553 in the nonvolatile storage unit 550 of the nonvolatile memory 503.
  • the failure range search unit 530 identifies the mail lost due to the failure of the data store server 108 based on the reception log data 551, the transmission log data 552, and the data store log data 553 stored in the nonvolatile storage unit 550. Execute the process.
  • the volatile storage unit 540 stores data managed by the failure monitoring unit 510, the log collection unit 520, and the failure range search unit 530.
  • the nonvolatile memory 503 includes a nonvolatile storage unit 550 that stores data permanently.
  • the nonvolatile storage unit 550 stores data managed by the failure monitoring unit 510, the log collection unit 520, and the failure range search unit 530.
  • the nonvolatile storage unit 550 stores reception log data 551, transmission log data 552, and data store log data 553.
  • the reception log data 551 includes a plurality of reception logs acquired from the mail reception server 106 by the log collection unit 520.
  • the transmission log data 552 includes a plurality of transmission logs acquired from the mail transmission server 107 by the log collection unit 520.
  • the data store log data 553 includes a plurality of data store logs acquired from the data store server 108 by the log collection unit 520.
  • the network I / F 504 is an interface for connecting to other devices via the network.
  • the network I / F 504 is connected to the carrier equipment network 103.
  • the program stored in the volatile memory 502 may be stored in the nonvolatile memory 503.
  • the processor 501 reads the program from the nonvolatile memory 503 and loads the read program into the volatile memory 502.
  • FIG. 6A is an explanatory diagram illustrating an example of the contents of the reception log data 551 stored on the collection / search server 109 according to the first embodiment.
  • FIG. 6B is an explanatory diagram illustrating an example of the content of the transmission log data 552 stored on the collection / search server 109 according to the first embodiment.
  • FIG. 6C is an explanatory diagram illustrating an example of the contents of the data store log data 553 stored on the collection / search server 109 according to the first embodiment.
  • the log stored in each of the reception log data 551, the transmission log data 552, and the data store log data 553 includes a plurality of log-format data including the date and time, the unique ID, the sender mail address, and the mail subject. Including.
  • the unique ID must be a value uniquely determined for each mail. By using the unique ID, it is possible to link the contents of the mail included in the reception log data 551, the transmission log data 552, and the data store log data 553.
  • each log is not limited to the above-described log format, and for example, in addition to the log format described above, a mail text may be included in the log.
  • a mail text may be included in the log.
  • each log may include information related to the handling process at the time of failure in addition to the above log format. For example, information regarding correspondence processing (such as “transmission of non-delivery notification to portable terminal” and “restore and transmission to destination server”) can be considered.
  • correspondence processing such as “transmission of non-delivery notification to portable terminal” and “restore and transmission to destination server”
  • each server executes a response process based on the above information, so that a flexible failure response is possible.
  • FIG. 7 is a diagram showing processing executed when the mail receiving server 106 receives mail.
  • FIG. 8 is a diagram illustrating processing executed when the mail transmission server 107 transmits mail.
  • the data actually transmitted and received between the mail receiving server 106 or the mail transmitting server 107 and the data store server 108 has a data format including header information or a payload indicating the data body.
  • FIG. 7 is a sequence diagram illustrating an example of a mail reception process according to the first embodiment.
  • the mobile terminal 101 transmits a mail to the mail receiving server 106 (step S701).
  • the mail receiving unit 211 of the mail receiving server 106 receives the mail transmitted from the mobile terminal 101 (step S702), and stores the mail (mail data) in the volatile storage unit 220 (step S703).
  • the data store server I / F unit 212 of the mail receiving server 106 transmits a mail storage request and mail to the data store server 108 (step S704).
  • the mail receiving server 106 sends the mail to the mobile terminal 101. Notify that was not successfully sent.
  • the data store management unit 410 of the data store server 108 receives the mail storage request and the mail (step S705), and stores the received mail (mail data 431) in the volatile storage unit 430 according to the mail storage request. (Step S706). After the mail (mail data 431) is stored in the volatile storage unit 430, the data store management unit 410 of the data store server 108 transmits a mail storage completion notification to the mail receiving server 106 (step S707).
  • step S ⁇ b> 706 when storing of mail (mail data 431) fails in step S ⁇ b> 706, the data store management unit 410 does not store mail (mail data 431) in the mail receiving server 106. Notify that. At this time, the mail receiving server 106 notifies the mobile terminal 101 that the mail has not been transmitted normally.
  • the data store server I / F unit 212 of the mail receiving server 106 receives the mail storage completion notification (step S708).
  • the log output unit 213 of the mail receiving server 106 outputs a reception log in a data format including information for specifying the mail transmitted to the data store server 108 (step S709).
  • the output reception log is stored in the reception log data 231 of the nonvolatile storage unit 230.
  • the mail receiving unit 211 of the mail receiving server 106 transmits a mail transmission completion notification to the mobile terminal 101 (step S710).
  • the mobile terminal 101 receives a mail transmission completion notification (step S711).
  • step S710 the mail receiving unit 211 of the mail receiving server 106 deletes the mail (mail data) transmitted from the volatile storage unit 220 to the data store server 108 (step S712).
  • 8A and 8B are sequence diagrams for explaining an example of the mail transmission process according to the first embodiment.
  • the data store server I / F unit 312 of the mail transmission server 107 transmits a mail acquisition request to the data store server 108 (step S801).
  • the email acquisition request includes a key for specifying the email.
  • the data store management unit 410 of the data store server 108 Upon receiving the mail acquisition request (step S802), the data store management unit 410 of the data store server 108 searches for a predetermined mail (mail data 431) from the volatile storage unit 430 according to the mail acquisition request (step S803). ). After the mail (mail data 431) is searched, the data store management unit 410 of the data store server 108 transmits an acquisition completion notification and mail to the mail transmission server 107 (step S804).
  • the data store server I / F unit 312 of the mail transmission server 107 receives the acquisition completion notification and the retrieved mail (step S805), and stores the received mail in the volatile storage unit 320 (step S806). .
  • the mail transmitting unit 311 of the mail transmitting server 107 transmits the received mail to the destination server 105 after the received mail is stored in the volatile storage unit 320 (step S807).
  • the transmission destination server 105 when the transmission destination server 105 receives the mail transmitted from the mail transmission server 107 (step S808), the transmission destination server 105 transmits a mail transmission completion notification to the mail transmission server 107 (step S809).
  • the mail transmission unit 311 of the mail transmission server 107 receives a mail transmission completion notification from the transmission destination server 105 (step S810).
  • the log output unit 313 of the mail transmission server 107 outputs a transmission log in a data format including information for specifying the mail transmitted to the transmission destination server 105 (step S811).
  • the output transmission log is stored in the transmission log data 331 of the nonvolatile storage unit 330.
  • the log output unit 313 of the mail transmission server 107 deletes the mail (mail data) transmitted from the volatile storage unit 320 to the transmission destination server 105 (step S812).
  • the data store server I / F unit 312 of the mail transmission server 107 transmits a mail deletion request to the data store server 108 (step S813).
  • step S814 when receiving the mail deletion request (step S814), the data store management unit 410 of the data store server 108 deletes the mail (mail data 431) from the volatile storage unit 430 (step S815), and the mail transmission server 107. A deletion completion notification is transmitted to (step S816).
  • the data store server I / F unit 312 of the mail transmission server 107 receives the deletion completion notification transmitted from the data store server 108 (step S817).
  • FIG. 9 is a flowchart illustrating mail data search processing executed by the data search processing unit 420 of the data store server 108 in the first embodiment.
  • predetermined data is searched from the mail data stored in the volatile storage unit 430.
  • the data search processing unit 420 executes processing described below when a predetermined condition is satisfied, for example, periodically or when an instruction from an operator is received.
  • the data search unit 421 of the data search processing unit 420 starts a loop process for the mail data 431 stored in the volatile storage unit 430 (step S901).
  • the data search unit 421 selects one mail data 431 to be processed from the mail data 431 stored in the volatile storage unit 430 at the start of processing, and stores the mail data 431 in the mail data 431.
  • the processing from step S902 to step S904 is executed. Therefore, in the loop processing for the mail data 431, the processing from step S902 to step S904 is repeatedly executed for each of the plurality of mail data 431 stored in the volatile storage unit 430.
  • the data search unit 421 determines whether or not the mail data 431 to be processed has stayed for a certain period of time (step S902). Specifically, the following processing is executed.
  • the data search unit 421 calculates the residence time of the mail data 431 using the current time and the date / time information included in the mail data 431 to be processed.
  • the date and time information of the mail data 431 can calculate the difference between the current time and the time included in the Key by including the date and time information in the Key.
  • the data search unit 421 determines whether or not the calculated residence time is a certain time or more. When the calculated residence time is equal to or longer than a certain time, the data search unit 421 determines that the mail data 431 to be processed is retained for a certain time. In addition, what is necessary is just to set fixed time according to a system requirement.
  • the certain time is also referred to as the first time width.
  • the data search unit 421 determines whether or not the data store log of the mail data 431 to be processed has been written in the data store log data 441. Determination is made (step S903).
  • the data search unit 421 stores the data store log data 441 based on the unique ID included in the key.
  • a method for searching the data store log of the mail data 431 to be processed can be considered.
  • the data search unit 421 When it is determined that the data store log of the processing target mail data 431 is not written in the data store log data 441, the data search unit 421 performs processing target mail data as an addition target to the data store log data 441. Information 431 is recorded in the volatile storage unit 430 (step S904).
  • the data search unit 421 records the key of the mail data 431 to be added in the volatile storage unit 430.
  • the data search unit 421 may generate a key list of the mail data 431 to be added in the volatile storage unit 430.
  • the data search unit 421 determines whether or not the processing has been completed for all the mail data 431 stored in the volatile storage unit 430 (step S905).
  • step S902 selects new mail data 431, and executes the processing from step S902 to step S904.
  • the log output unit 422 of the data search processing unit 420 is recorded in the volatile storage unit 430.
  • the data store log of the mail data 431 to be added is added to the data store log data 441 of the nonvolatile storage unit 440 (step S906), and the process ends.
  • the log output unit 422 writes the data store log including the date and time and the unique ID in the data store log data 441.
  • the data store log write process of the mail data 431 to be added is not executed, but the data store log write process is executed collectively after the loop process is completed. As a result, a delay in data store processing due to the writing processing can be prevented.
  • FIG. 10 is a sequence diagram illustrating processing executed when a failure occurs in the data store server 108 in the first embodiment.
  • FIG. 11 is an explanatory diagram illustrating log data used when the collection / search server 109 according to the first embodiment specifies a failure range.
  • the failure monitoring unit 510 of the collection / search server 109 transmits a status confirmation request to the data store server 108 (step S1001).
  • the failure monitoring unit 510 may periodically transmit a state confirmation request, or may transmit a state confirmation request when receiving an instruction from an operator.
  • step S1001 is a process for detecting the occurrence of a failure in the data store server 108.
  • the collection / search server 109 confirms whether or not the mail data 431 stored in the volatile storage unit 430 of the data store server 108 is lost.
  • the data store management unit 410 of the data store server 108 Upon receiving the status confirmation request (step S1002), the data store management unit 410 of the data store server 108 confirms the operating status of the data store server 108 and transmits the confirmation result to the collection / search server 109 as status information ( Step S1003).
  • the status information can determine whether or not the mail data 431 is lost, such as configuration information of the plurality of data store servers 108 and life / death information of each data store server 108. Any information can be used.
  • the failure monitoring unit 510 of the collection / search server 109 receives the state information and determines whether or not a loss of the mail data 431 occurs based on the state information (step S1004). For example, when two or more data store servers 108 are stopped, the collection / search server 109 determines that the mail data 431 is lost.
  • the collection / search server 109 terminates the process without executing the subsequent processes.
  • Step S1005 When it is determined that the mail data 431 has been lost, the log collection unit 520 of the collection / search server 109 transmits a log acquisition request to the mail reception server 106, the mail transmission server 107, and the data store server 108.
  • the process of step S1005 can be realized by using an scp command or the like.
  • the mail receiving server 106, the mail transmitting server 107, and the data store server 108 transmit log data to the collection / search server 109, respectively (steps S1006, S1007, and S1008).
  • the log collection unit 520 of the collection / search server 109 receives the log data transmitted from each server, and stores the received log data in the nonvolatile storage unit 550 (step S1009).
  • log data received from the mail receiving server 106 is received log data 551
  • log data received from the mail sending server 107 is sent log data 552
  • log data received from the data store server 108 is data store log data 553. Is stored as
  • the failure range search unit 530 of the collection / search server 109 identifies the failure range using the received log data (step S1010).
  • a method for identifying the fault range will be described with reference to FIG.
  • the data store log data 553 is as shown in FIG. Further, the number of logs stored in the data store log data 553 is sufficiently smaller than the number of logs included in the reception log data 551 or the transmission log data 552.
  • the failure range can be specified at high speed based on the characteristics of the data store log data 553 as described above.
  • the failure range search unit 530 extracts, from the reception log data 551, a log included between the current time and the time that is back from the current time by the first time width. Further, the failure range search unit 530 extracts, from the transmission log data 552, a log included between the current time and a time that is back from the current time by the first time width.
  • the time going back from the current time by the first time width is also described as the first time.
  • a log included in the hatched portion of the reception log data 551 and a log included in the hatched portion of the transmission log data 552 are extracted.
  • the failure range search unit 530 extracts, from the transmission log data 552, a log that is included between the first time and the time that goes back from the first time to specify the failure. In addition, the failure range search unit 530 extracts a log included between the first time from the data store log data 553 and the time that goes back from the first time to specify the failure.
  • a period in which a fault is desired to be specified is also described as a second time width, and a time that goes back from the first time by the second time width is also described as a second time.
  • the second time may be set according to the system requirements.
  • a log included in the black portion of the transmission log data 552 and a log included in the black portion of the data store log data 553 are extracted.
  • the log included in the shaded part and the log included in the blacked part do not overlap. This is because the log of the mail data 431 included in the range from the current time to the first time is not output.
  • step S1009 Note that the above-described log extraction processing may be executed when a log is stored in step S1009.
  • the failure range search unit 530 compares the reception log included between the current time and the first time with the transmission log included between the current time and the first time, and is included in the transmission log data 552. Search for no incoming logs. For example, the failure range search unit 530 may consider a method of comparing the unique ID of the reception log with the unique ID of the transmission log.
  • the failure range search unit 530 compares the transmission log included between the first time and the second time with the data store log included between the first time and the second time, Search for data store logs not included in the transmission log.
  • the failure range search unit 530 may consider a method of comparing the unique ID of the transmission log with the unique ID of the data store log.
  • the failure range search unit 530 can notify information related to the failure range based on the information included in the searched log.
  • the failure range search unit 530 of the collection / search server 109 transmits information regarding the specified failure range to the mail receiving server 106 as failure range information (step S1011). For example, a method of transmitting the retrieved log itself as failure range information can be considered.
  • the mail receiving unit 211 of the mail receiving server 106 When the mail receiving unit 211 of the mail receiving server 106 receives the failure range information transmitted from the collection / search server 109 (step S1012), the mail receiving unit 211 generates an unreached notification to be transmitted to the mobile terminal 101, and the generated unreached notification Is transmitted to the portable terminal 101 (step S1013).
  • a method of transmitting a list in which a sender address and a mail subject are associated with each other as a non-delivery notification is conceivable.
  • the mobile terminal 101 receives the non-delivery notification transmitted from the mail receiving server 106 (step S1014). Thereby, the mail sender who is the holder of the portable terminal 101 can know that the mail transmitted by himself / herself has not reached the destination device.
  • the mail receiving server 106 transmits a non-delivery notification as a response when a failure occurs, but the present embodiment is not limited to this.
  • the failure range search unit 530 outputs the searched log and information related to the response processing at the time of the failure in step S1011 and outputs the output when the failure occurs.
  • the mail (mail data) may be restored based on the information regarding the corresponding processing, and the restored mail may be transmitted to the destination server 105.
  • the collection / search server 109 transmits failure range information including the restored mail to the mail transmission server 107, and the mail transmission server 107 transmits the lost mail to the destination server 105 again. do it.
  • non-delivery notification transmission to mobile terminal and “restore mail data and send mail data to destination server” can be considered as a response process when a failure occurs.
  • the collection / search server 109 automatically identifies the failure range (step S1010) and transmits failure range information (step S1011).
  • the present embodiment is not limited to this, and the processing may be executed based on the operation of the operator.
  • FIG. 12 is an explanatory diagram illustrating an example of a terminal screen used by the operator when operating the collection / search server 109 according to the first embodiment.
  • the terminal screen 1201 is a terminal screen that is operated during the execution of steps S1010 and S1011 in FIG.
  • the terminal screen 1201 is a screen that is displayed by a terminal program that is normally installed in a general information processing apparatus.
  • the operator can obtain the difference between various logs by, for example, inputting a UNIX DIFF command.
  • the failure range search unit 530 executes processing as shown in step S1010 and displays the processing result on the terminal screen.
  • the failure range information can be transmitted to the mail receiving server 106 by the operator performing an operation of inputting the log searched using the DIFF command to the failure range search unit 530.
  • the nonvolatile storage unit 440 in the data store server 108 Accordingly, since the number of logs to be written is reduced as compared with the prior art, it is possible to suppress the deterioration of the performance of the data store such as the in-memory KVS.
  • the failure range search unit 530 compares the reception log data included in the predetermined time range with the transmission log data, and compares the transmission log data included in the predetermined time range with the data store log data.
  • the failure range can be specified by
  • the failure range can be specified by comparing the data in a limited time range.
  • the fault range can be specified at high speed. Further, since only the log of mail data satisfying a predetermined condition is stored in the data store log, the above-described comparison process can be speeded up.
  • the mail data 431 to be added to the data store log data 441 is specified based on the residence time, but the present embodiment is not limited to this.
  • the mail data 431 to be added to the data store log data 441 may be specified based on the following processing.
  • FIG. 13 is a flowchart for explaining mail data search processing executed by the data search processing unit 420 of the data store server 108 in the modification of the first embodiment.
  • the data search unit 421 determines whether the transmission destination domain of the mail data 431 to be processed is a search target domain (step S1302). Note that the search target domain is set in advance.
  • the data search unit 421 performs processing on the mail data 431 to be processed based on the domain name included in the key. It is determined whether or not.
  • step S1301, step S1303, step S1304, step S1305, and step S1306 is the same as the processing of step S901, step S903, step S904, step S905, and step S906, the description thereof is omitted.
  • the collection / search server 109 of another carrier facility network identifies the failure range.
  • FIG. 14 is an explanatory diagram illustrating an example of the configuration of the mail system according to the second embodiment.
  • the mail system of Example 2 includes two carrier equipment networks A103 and a carrier equipment network B103.
  • the mail system according to the second embodiment includes a log management server 1400.
  • the log management server 1400 is connected to the carrier equipment network A 103 and the carrier equipment network B 103 and manages logs for each carrier equipment network 103.
  • a mail reception server 106, a mail transmission server 107, a data store server 108, and a collection / search server 109 are connected to the carrier facility network A103 and the carrier facility network B103, respectively.
  • the portable terminal 101 is connected to the carrier equipment network A103 and the carrier equipment network B103 via the mobile network 102.
  • the transmission destination server 105 of the second embodiment is connected to the carrier equipment network A103 and the carrier equipment network B103 via the Internet 104. Further, the transmission destination server 105 according to the second embodiment transmits / receives mail to / from the mail transmission server 107 connected to the carrier equipment network A103, and transmits / receives mail to / from the mail transmission server 107 connected to the carrier equipment network B103.
  • the description of the configuration of each server is omitted.
  • FIG. 15 is a block diagram illustrating an example of the configuration of the log management server 1400 according to the second embodiment.
  • the log management server 1400 is realized using an information processing apparatus.
  • the log management server 1400 includes a processor 1501, a volatile memory 1502, a nonvolatile memory 1503, and a network I / F 1504 as hardware configurations, and each configuration is connected to each other via an internal communication line such as a bus.
  • the processor 1501 executes a program stored in the volatile memory 1502.
  • the processor 1501 executes a program stored in the volatile memory 1502
  • the function of the log management server 1400 is realized.
  • processing is described mainly with a program, it indicates that the program is being executed by the processor 1501.
  • the volatile memory 1502 stores a program executed by the processor 1501, and includes a storage area for temporarily storing data necessary for executing the program. Specifically, the volatile memory 1502 stores a program for realizing the failure monitoring unit 1510 and the log collection unit 1520, and includes a volatile storage unit 1530.
  • the failure monitoring unit 1510 executes a process for monitoring a failure for each carrier equipment network 103.
  • the log collection unit 1520 acquires a log from the collection / search server 109 of the carrier facility network 103 and executes a process for storing the acquired log in the nonvolatile memory 503.
  • the log collection unit 1520 stores reception log data 1541, transmission log data 1542, and data store log data 1543 in the nonvolatile storage unit 1540 for each carrier equipment network 103.
  • the volatile storage unit 1530 stores data managed by the failure monitoring unit 1510 and the log collection unit 1520.
  • the non-volatile memory 1503 includes a non-volatile storage unit 1540 that permanently stores data.
  • the non-volatile storage unit 1540 stores data managed by the failure monitoring unit 1510 and the log collection unit 1520.
  • the nonvolatile storage unit 1540 stores reception log data 1541, transmission log data 1542, and data store log data 1543 for each carrier equipment network 103.
  • the reception log data 1541, the transmission log data 1542, and the data store log data 1543 are the same as the reception log data 551, the transmission log data 552, and the data store log data 553.
  • the network I / F 1504 is an interface for connecting to other devices via the network.
  • the network I / F 1504 is connected to the carrier equipment network A103 and the carrier equipment network B103.
  • FIG. 16 is a sequence diagram for explaining processing executed when a failure occurs in the carrier equipment network in the second embodiment.
  • the log collection unit 1520 of the log management server 1400 transmits a log acquisition request to the collection / search server 109 of each of the carrier equipment network A103 and the carrier equipment network B103 (step S1601).
  • the log management server 1400 transmits a log acquisition request by broadcast transmission.
  • the log collection unit 1520 may periodically transmit a status confirmation request, or may transmit a log acquisition request when receiving an operator instruction.
  • the log collection unit 520 of the collection / search server 109 of the carrier facility network B103 receives the log acquisition request, stores the reception log data 551, the transmission log data 552, and the data store log data 553 stored in the nonvolatile storage unit 550.
  • the log is transmitted to the log management server 1400 (step S1602).
  • the log collection unit 520 may acquire log data by transmitting a log acquisition request to the mail reception server 106, the mail transmission server 107, and the data store server 108 connected to the carrier equipment network B103.
  • the log collection unit 1520 of the log management server 1400 When the log collection unit 1520 of the log management server 1400 receives the log data, the log collection unit 1520 stores the log data in the nonvolatile storage unit 1540 as the log data of the carrier equipment network B (step S1603). For example, the log collection unit 1520 stores the identifier of the carrier equipment network B and the log data in the nonvolatile storage unit 1540 in association with each other.
  • the failure monitoring unit 1510 of the log management server 1400 determines whether or not a failure has occurred in each carrier facility network 103 based on the response to the log acquisition request (step S1604).
  • the failure monitoring unit 1510 is connected to the carrier facility network 103 to which the collection / search server 109 is connected. It is determined that a failure has occurred.
  • the failure monitoring unit 1510 determines that a failure has occurred in the carrier equipment network A103.
  • the failure monitoring unit 1510 of the log management server 1400 transmits failure information to the collection / search server 109 of the other carrier facility network 103 (step S1605).
  • the failure information includes identification information of the carrier facility network 103 in which the occurrence of the failure is detected, and log data of the carrier facility network 103.
  • the failure monitoring unit 1510 acquires log data corresponding to the carrier facility network 103 from the nonvolatile storage unit 1540 based on the identification information of the carrier facility network 103 in which the occurrence of the failure is detected.
  • the log collection unit 520 of the collection / search server 109 receives the failure information (step S1606), the log collection unit 520 stores the log data stored in the failure information in the nonvolatile storage unit 550 in association with the identification information of the carrier facility network 103. (Step S1607).
  • the failure range search unit 530 of the collection / search server 109 identifies the failure range using the log data stored in the nonvolatile storage unit 550 (step S1608). Since the process in step S1608 is the same as that in step S1010, the description thereof is omitted.
  • the failure range search unit 530 of the collection / search server 109 transmits information regarding the specified failure range to the mail receiving server 106 as failure range information (step S1609).
  • the processing in step S1609 is the same as that in step S1011 and will not be described.
  • step S1610 When the mail receiving unit 211 of the mail receiving server 106 receives the failure range information transmitted from the collection / search server 109 (step S1610), the mail receiving unit 211 generates an unreached notification to be transmitted to the mobile terminal 101, and the generated unreached notification Is transmitted to the portable terminal 101 (step S1611). Since the processes in steps S1610 and S1611 are the same as those in steps S1012 and S1013, the description thereof is omitted.
  • the mobile terminal 101 receives the non-delivery notification transmitted from the mail receiving server 106 (step S1612). Thereby, the mail sender who is the holder of the portable terminal 101 can know that the mail transmitted by himself / herself did not reach the destination. Note that the process of step S1612 is the same process as step S1014.
  • the mail receiving server 106 transmits a non-delivery notification as a response when a failure occurs, but the present embodiment is not limited to this.
  • the log collection unit 1520 outputs the retrieved log and information related to the handling process at the time of failure in step S1609, and outputs the output at the time of failure occurrence.
  • the mail (mail data) may be restored based on the information regarding the handling process, and the restored mail may be transmitted to the destination server 105.
  • the collection / search server 109 transmits failure range information including the restored mail to the mail transmission server 107, and the mail transmission server 107 transmits the lost mail to the destination server 105 again. do it.
  • non-delivery notification transmission to mobile terminal and “restore mail data, send mail data to destination server” can be considered.
  • the log management server 1400 transmits a log acquisition request to the collection / search server 109 of each carrier equipment network 103, but the present embodiment is not limited to this.
  • the logs may be transmitted to the log management server 1400, respectively.
  • the log management server 1400 may transmit a status confirmation request to the collection / search server 109 instead of the log acquisition request.
  • the collection / search server 109 of another carrier facility network 103 may specify the failure range. it can.
  • the various software exemplified in this embodiment can be stored in various recording media such as electromagnetic, electronic, and optical, and can be downloaded to a computer through a communication network such as the Internet.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

メッセージングシステムにおける障害範囲特定の高速化を実現する計算機システムであって、メッセージ受信部と、第1のログ出力部と、受信ログデータを格納する第1の記憶部と、を有する第1の計算機、データストアを管理するデータストア管理部と、データストアに格納されるメッセージの中から所定の条件に一致するメッセージを検索する第1の検索部と、第2のログ出力部と、データストアログデータを格納する第2の記憶部と、を有する第2の計算機、メッセージ送信部と、第3のログ出力部と、送信ログデータを格納する第3の記憶部と、を有する第3の計算機、並びに、監視部と、ログ収集部と、損失した前記メッセージを検索する第2の検索部と、を有する第4の計算機、を備える。

Description

計算機システム及び障害特定方法 参照による取り込み
 本出願は、2013年5月27日に出願された日本特許出願第2013-110830号の優先権を主張し、その内容を、参照により本出願に取り込む。
 本明細書で開示される主題は、メッセージングシステムにおいて、高速に障害範囲を特定可能なシステム及び方法に関する。
 ネットワークを介して数多くのデータ(ビッグデータ)が送受信されるようになり、ビッグデータを効率的に処理するメッセージング技術の重要性が高まりつつある。一般的なメッセージング技術では、送信先サーバへのメッセージ(例えば、センサデータ等)の中継処理は、メッセージの受信サーバ、送信サーバ、及びメッセージを格納するバックアップストレージから構成されるメッセージングシステムを用いて行う。
 メッセージングシステムは、メッセージの中継処理では、以下の処理を行う。
 まず、受信サーバが送信端末からメッセージを受信し、受信したメッセージをバックアップストレージに記憶した上で、送信端末へ応答する。この後、送信サーバがバックアップストレージからメッセージを取得し、送信先サーバへ取得されたメッセージの中継を行った後、バックアップストレージ上のメッセージを削除する。
 前述した処理手順を踏むことによって、バックアップストレージへの格納が済んだ時点で送信端末に応答を返すことができ、応答性能の向上することができる。また、バックアップストレージへメッセージを格納することによって、格納されたメッセージの永続性を保障することができる。
 近年、インメモリKVS(Key Value Store)を利用することによって、大量のデータを効率的、かつ、高速に処理することが可能なメッセージングシステムが普及しつつある。
 インメモリKVSは、KeyとValueとが組となったデータを揮発性メモリに記憶するデータストアであり、高いスケーラビリティを実現でき、また、データがメモリ上に記憶されるため高い処理性能を実現できる。また、インメモリKVSでは、複数サーバ間でデータのレプリケーション(複製)を行うことによって、インメモリ環境において心配されるデータの損失を防ぐことができる。
 以下の説明では、KeyとValueとが組となったデータを揮発性メモリに記憶する処理を格納、Keyに対応するValueを揮発性メモリから読み出す処理を取得、KeyとValueとが組となったデータを揮発性メモリから消去する処理を削除と表記する。
 前述のインメモリKVSを利用したメッセージングシステムでは、高速処理のためインメモリ(揮発性メモリ)上にデータを管理されているが、多重障害が発生した場合、データが完全に損失してしまう可能性がある。さらに、データの損失が発生した場合、受信サーバ、送信サーバ、及びインメモリKVSがそれぞれ分担してメッセージの処理を行っているため、当該損失したデータを特定することが困難である。従って、障害範囲(何人・何件分のメッセージが損失したか等)を把握することが難しいという問題がある。
 一般的に、メッセージングシステムでは、データの損失が発生し、かつ、データの損失による送信失敗を送信側に通知できない場合、サービス障害として扱われる。そのため、インメモリKVSを用いたメッセージングシステムでは、データの復旧し、又は障害範囲を特定し、送信端末にエラーを応答するなどの対応ができない場合、サービス障害を引き起こす可能性があることから、安定したメッセージングシステムを提供することができない。
 データを復旧することによってサービス障害を防止する方法として、特許文献1に記載の技術が知られている。
 特許文献1に記載の技術は、DB技術である先行ログ書き込み(WAL:Write Ahead Logging)として一般的に知られている技術である。先行ログ書き込みは、Hbaseに代表されるインメモリDB等でも利用されている技術であり、データを書き込む際に、処理内容を不揮発性の記憶媒体にログとして残しておき、ログに記載された処理をやりなおすことでデータを復旧させるものである。先行ログ書き込みでは、受信サーバ及び送信サーバがインメモリKVSに対して処理を行うたびに、インメモリKVSでは格納したデータの内容までを含む処理のログを不揮発性の記憶媒体に記録する。そして、インメモリKVSに障害が発生した際には、インメモリKVSを再起動し、ログに記載された処理を実行し、障害前の状態まで復旧する。先行ログ書き込みでは、これらの手順を踏むことでデータが損失する前の状態に戻すことができるため、データ損失によるサービス障害を防ぐことが可能となる。
 また、障害範囲を特定可能とすることによってサービス障害を防止する方法として、特許文献2に記載の技術が知られている。
 特許文献2には、「サーバが保持するログ情報中に含まれる、ログ情報で処理毎に付与されるセッション情報をセッション情報管理テーブルに記録し、また異なるログ情報間でのセッション情報の対応関係についてセッション情報対応テーブルに記録する。利用者が表示箇所入力部によって指示したセッション情報から、セッション情報対応テーブルを再帰的に検索することにより、利用者が注目している処理に関連する一連のセッション情報を特定できる。関連する一連のセッション情報のそれぞれについて、対応する情報をログ情報より収集し、ログの記録された日時に従って統合し、処理の流れが理解し易い形に整形し利用者に提示する」ことが記載されている。
米国特許第4159517号明細書 特開2004-227360号公報
 しかし、特許文献1に記載の技術では、格納される全てのデータに対して、処理毎にインメモリKVS上にログが書き込まれるため、インメモリKVSの性能が低下する。従って、高速な処理が可能なインメモリKVSの利点が損なわれる。
 また、特許文献2に記載の技術では、全ての受信サーバ、全ての送信サーバの台数だけ、何時間分ものログをチェックする必要があり、障害範囲の特定に時間がかかる。
 本発明は上記課題を解決するためになされた発明である。すなわち、インメモリKVSへのログの書き込みによる性能低下を防止し、かつ、高速に障害範囲を特定可能なシステム及び方法を提供することである。
 本発明の代表的な一例を示せば以下の通りである。すなわち、ネットワークを介して接続される複数の計算機を備え、端末からメッセージを受信し、宛先の装置に当該メッセージを送信する計算機システムであって、前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続されるメモリ、及び前記プロセッサに接続されるネットワークインタフェースを有し、前記計算機システムは、前記端末から前記メッセージを受信するメッセージ受信部と、前記受信したメッセージのログである受信ログを出力する第1のログ出力部と、複数の前記受信ログが含まれる受信ログデータを格納する第1の記憶部と、を有する第1の計算機、前記メモリの記憶領域を用いて構築され、前記メッセージを格納するデータストアを管理するデータストア管理部と、前記データストアに格納される前記メッセージの中から所定の条件に一致するメッセージを検索する第1の検索部と、前記検索されたメッセージのログであるデータストアログを出力する第2のログ出力部と、複数の前記データストアログが含まれるデータストアログデータを格納する第2の記憶部と、を有する第2の計算機、前記データストアに格納される前記メッセージを取得し、前記宛先の装置に前記メッセージを送信するメッセージ送信部と、前記宛先の装置に送信された前記メッセージのログである送信ログを出力する第3のログ出力部と、複数の前記送信ログが含まれる送信ログデータを格納する第3の記憶部と、を有する第3の計算機、並びに、前記データストアの状態を監視する第1の監視部と、前記データストアの障害発生が検知された場合に、前記第1の記憶部、前記第2の記憶部、及び前記第3の記憶部のそれぞれから、前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを取得する第1のログ収集部と、前記取得された受信ログデータ、前記データストアログデータ、及び前記送信ログデータを比較することによって、前記データストアの障害発生によって損失した前記メッセージを検索する第2の検索部と、前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを格納する第4の記憶部と、を有する第4の計算機、を備えることを特徴とする。
 上記態様によれば、所定の条件を満たすメッセージのデータストアログのみが記憶部に書き込まれるため、データストアへのログの書き込みによる性能低下を防止することができる。また、書き込まれるログの数が少ないため、障害範囲を高速に特定することができる。
 開示によれば、ログの書き込みによる性能低下を防止することができる。また、障害範囲を高速に特定することができる。
 上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
実施例1におけるメッセージシステムの構成の一例を示す説明図である。 実施例1におけるメール受信サーバの構成の一例を説明するブロック図である。 実施例1におけるメール送信サーバの構成の一例を説明するブロック図である。 実施例1におけるデータストアサーバの構成の一例を説明するブロック図である。 実施例1における収集・検索サーバの構成の一例を説明するブロック図である。 実施例1における収集・検索サーバ上に格納される受信ログデータの内容の一例を示す説明図である。 実施例1における収集・検索サーバ上に格納される送信ログデータの内容の一例を示す説明図である。 実施例1における収集・検索サーバ上に格納されるデータストアログデータの内容の一例を示す説明図である。 実施例1のメール受信処理の一例を説明するシーケンス図である。 実施例1のメール送信処理の一例を説明するシーケンス図である。 実施例1のメール送信処理の一例を説明するシーケンス図である。 実施例1におけるデータストアサーバのデータ検索処理部によって実行されるメールデータの検索処理を説明するフローチャートである。 実施例1におけるデータストアサーバの障害発生時に実行される処理を説明するシーケンス図である。 実施例1における収集・検索サーバが障害範囲を特定する場合に用いるログデータを示す説明図である。 実施例1の収集・検索サーバの操作時にオペレータが用いるターミナル画面の一例を示す説明図である。 実施例1の変形例におけるデータストアサーバのデータ検索処理部によって実行されるメールデータの検索処理を説明するフローチャートである。 実施例2におけるメッセージシステムの構成の一例を示す説明図である。 実施例2におけるログ管理サーバの構成の一例を説明するブロック図である。 実施例2におけるキャリア設備網に障害が発生した場合に実行される処理を説明するシーケンス図である。
 以下、本発明の実施例を添付図面に基づいて説明する。
 実施例を説明するにあたり、メッセージングシステムの代表例であるメールシステムを用いる。
 図1は、実施例1におけるメールシステムの構成の一例を示す説明図である。
 本実施例のメールシステム、すなわち、メッセージングシステムは、携帯端末101、送信先サーバ105、メール受信サーバ106、メール送信サーバ107、データストアサーバ108、及び収集・検索サーバ109から構成される。また、メールシステムを構成する装置を接続するネットワークとして、モバイルネットワーク102、キャリア設備網103、及びインターネット104を含む。
 携帯端末101は、ユーザ等が扱う端末であり、モバイルネットワーク102を介してキャリア設備網103と接続される。モバイルネットワーク102は、携帯端末101とキャリア設備網103とを接続する無線ネットワークである。キャリア設備網103は、モバイルネットワーク102、インターネット104、メール受信サーバ106、メール送信サーバ107、データストアサーバ108、及び収集・検索サーバ109を接続するネットワークである。
 送信先サーバ105は、インターネット104を介してキャリア設備網103と接続され、メール送信サーバ107とメールの送受信を行う。
 メール受信サーバ106は、キャリア設備網103と接続され、携帯端末101からキャリア設備網103を介して送信されたメールを受信し、データストアサーバ108にメールを格納する。図1では、メール受信サーバ106は1台のみとしているが、複数台存在してもよい。
 メール送信サーバ107は、キャリア設備網103と接続され、データストアサーバ108からメールを取得し、送信先サーバ105にメールを送信する。図1では、メール送信サーバ107は1台のみとしているが、複数台存在してもよい。
 データストアサーバ108は、キャリア設備網103と接続され、メール受信サーバ106によって格納されたメールを保持する。データストアサーバ108はインメモリKVS等に代表されるメッセージストアである。図1では、データストアサーバ108は1台のみとしているが、複数台存在してもよい。
 収集・検索サーバ109は、キャリア設備網103と接続され、データストアサーバ108の状況を監視する。また、収集・検索サーバ109は、メール受信サーバ106、メール送信サーバ107、及びデータストアサーバ108上のログを収集し、収集されたログを用いて障害範囲を特定する。
 なお、図1に示す例では、メール受信サーバ106、メール送信サーバ107、データストアサーバ108、及び収集・検索サーバ109をそれぞれ異なる装置として実現しているが、本実施例はこれに限定されない。二つ以上のサーバの機能を一つの装置を用いて実現してもよい。例えば、一つの装置上にメール受信サーバ106及びメール送信サーバ107が有する機能を実現してもよいし、また、一つの装置上にメール受信サーバ106、メール送信サーバ107、データストアサーバ108、及び収集・検索サーバ109が有する機能を実現してもよい。
 また、メール受信サーバ106、メール送信サーバ107、データストアサーバ108、及び収集・検索サーバ109は、仮想化技術を用いて実現されてもよい。例えば、一つの計算機上に、メール受信サーバ106、メール送信サーバ107、データストアサーバ108、及び収集・検索サーバ109に対応する仮想計算機を生成する方法が考えられる。
 図2は、実施例1におけるメール受信サーバ106の構成の一例を説明するブロック図である。
 メール受信サーバ106は、情報処理装置を用いて実現される。メール受信サーバ106は、ハードウェア構成として、プロセッサ201、揮発性メモリ202、不揮発性メモリ203、及びネットワークI/F204を備え、各構成はバスなどの内部通信線を介して互いに接続される。
 プロセッサ201は、揮発性メモリ202に格納されるプログラムを実行する。プロセッサ201が揮発性メモリ202に格納されるプログラムを実行することによって、メール受信サーバ106が備える機能が実現される。以下の説明では、プログラムを主体に処理を記載する場合、プロセッサ201によって当該プログラムが実行されていることを示す。
 揮発性メモリ202は、プロセッサ201によって実行されるプログラムを格納し、また、当該プログラムの実行に必要なデータを一時的に格納する記憶領域を含む。具体的には、揮発性メモリ202は、メール受信処理部210を実現するプログラムを格納し、また、揮発性記憶部220を含む。
 メール受信処理部210は、複数のプログラムモジュールから構成され、携帯端末101からのメールの受信するための受信処理を制御する。具体的には、メール受信処理部210は、メール受信部211、データストアサーバI/F部212、及びログ出力部213を含む。
 メール受信部211は、携帯端末101から送信されたメールの受信処理を実行する。
 データストアサーバI/F部212は、データストアサーバ108に、受信したメールを格納するための格納処理を実行する。
 ログ出力部213は、データストアサーバ108に受信したメールが格納された場合、格納されたメールを特定するための情報を含むデータ形式の受信ログを出力する。本実施例では、出力された受信ログは、不揮発性記憶部230の受信ログデータ231に格納される。
 なお、メール受信部211に、データストアサーバI/F部212の機能を含めるようにしてもよい。
 揮発性記憶部220は、メール受信処理部210が管理するデータを格納する。
 不揮発性メモリ203は、永続的にデータを格納する不揮発性記憶部230を含む。
 不揮発性記憶部230は、メール受信処理部210が管理するデータを格納し、また、受信ログデータ231を格納する。受信ログデータ231は、ログ出力部213によって出力された一つ以上の受信ログを含むデータである。
 ネットワークI/F204は、ネットワークを介して他の装置と接続するためのインタフェースである。本実施例では、ネットワークI/F204は、キャリア設備網103と接続される。
 なお、揮発性メモリ202に格納されるプログラムは、不揮発性メモリ203に格納されてもよい。この場合、プロセッサ201は、不揮発性メモリ203からプログラムを読み出し、揮発性メモリ202に読み出されたプログラムをロードする。
 図3は、実施例1におけるメール送信サーバ107の構成の一例を説明するブロック図である。
 メール送信サーバ107は、情報処理装置を用いて実現される。メール送信サーバ107は、ハードウェア構成として、プロセッサ301、揮発性メモリ302、不揮発性メモリ303、及びネットワークI/F304を備え、各構成はバスなどの内部通信線を介して互いに接続される。
 プロセッサ301は、揮発性メモリ302に格納されるプログラムを実行する。プロセッサ301が揮発性メモリ302に格納されるプログラムを実行することによって、メール送信サーバ107が備える機能が実現される。以下の説明では、プログラムを主体に処理を記載する場合、プロセッサ301によって当該プログラムが実行されていることを示す。
 揮発性メモリ302は、プロセッサ301によって実行されるプログラムを格納し、また、当該プログラムの実行に必要なデータを一時的に格納する記憶領域を含む。具体的には、揮発性メモリ302は、メール送信処理部310を実現するプログラムを格納し、また、揮発性記憶部320を含む。
 メール送信処理部310は、複数のプログラムモジュールから構成され、送信先サーバ105にメールを送信するための送信処理を制御する。具体的には、メール送信処理部310は、メール送信部311、データストアサーバI/F部312、及びログ出力部313を含む。
 メール送信部311は、送信先サーバ105へデータストアサーバ108から取得されたメールの送信処理を実行する。
 データストアサーバI/F部312は、データストアサーバ108からメールを取得するための取得処理を実行する。
 ログ出力部313は、送信先サーバ105へのメールの送信が完了した場合、送信されたメールを特定するための情報を含むデータ形式の送信ログを出力する。本実施例では、出力された送信ログは、不揮発性記憶部330の送信ログデータ331に格納される。
 揮発性記憶部320は、メール送信処理部310が管理するデータを格納する。
 なお、メール送信部311に、データストアサーバI/F部312の機能を含めるようにしてもよい。
 不揮発性メモリ303は、永続的にデータを格納する不揮発性記憶部330を含む。
 不揮発性記憶部330は、メール送信処理部310が管理するデータを格納し、また、送信ログデータ331を格納する。送信ログデータ331は、ログ出力部313によって出力された一つ以上の送信ログを含むデータである。
 ネットワークI/F304は、ネットワークを介して他の装置と接続するためのインタフェースである。本実施例では、ネットワークI/F304は、キャリア設備網103と接続される。
 なお、揮発性メモリ302に格納されるプログラムは、不揮発性メモリ303に格納されてもよい。この場合、プロセッサ301は、不揮発性メモリ303からプログラムを読み出し、揮発性メモリ302に読み出されたプログラムをロードする。
 図4は、実施例1におけるデータストアサーバ108の構成の一例を説明するブロック図である。
 データストアサーバ108は、情報処理装置を用いて実現される。データストアサーバ108は、ハードウェア構成として、プロセッサ401、揮発性メモリ402、不揮発性メモリ403、及びネットワークI/F404を備え、各構成はバスなどの内部通信線を介して互いに接続される。
 プロセッサ401は、揮発性メモリ402に格納されるプログラムを実行する。プロセッサ401が揮発性メモリ402に格納されるプログラムを実行することによって、データストアサーバ108が備える機能が実現される。以下の説明では、プログラムを主体に処理を記載する場合、プロセッサ401によって当該プログラムが実行されていることを示す。
 揮発性メモリ402は、プロセッサ401によって実行されるプログラムを格納し、また、当該プログラムの実行に必要なデータを一時的に格納する記憶領域を含む。具体的には、揮発性メモリ402は、データストア管理部410、及びデータ検索処理部420を実現するプログラムを格納し、また、揮発性記憶部430を含む。
 データストア管理部410は、データストアの各処理を制御する。データストアの処理には、メール受信サーバ106若しくはメール送信サーバ107から受信したKeyとValueの組を揮発性記憶部430へ格納するための処理、メール受信サーバ106若しくはメール送信サーバ107から受信したKeyに対応するValueを応答するための処理、又はメール受信サーバ106若しくはメール送信サーバ107から受信したKeyに対応するValueを削除するための処理が含まれる。
 データ検索処理部420は、複数のプログラムモジュールから構成され、データストアログとして出力するメールデータを検索するための処理を制御する。具体的には、データ検索処理部420は、データ検索部421、及びログ出力部422を含む。
 データ検索部421は、揮発性記憶部430に格納されるメールデータ431の中から、特定の条件を満たすメールデータ431を検索するための処理を実行する。
 ログ出力部422は、データ検索部421によって検索されたメールデータ431のデータストアログを出力する。本実施例では、出力されたデータストアログは、不揮発性記憶部440のデータストアログデータ441に格納される。
 揮発性記憶部430は、データストア管理部410が管理するデータを格納する。本実施例の揮発性記憶部430には、一つ以上のメールデータ431が格納される。ここで、メールデータ431は、データストア管理部410によって格納されたメールのデータである。本実施例では、データストア管理部410は、メールデータ431のヘッダ等に含まれる送信日時、固有ID、ドメイン名などをKeyとし、メールデータ431(Value)を管理するものとする。
 不揮発性メモリ403は、永続的にデータを格納する不揮発性記憶部440を含む。
 不揮発性記憶部440は、データストア管理部410及びデータ検索処理部420が管理するデータを格納する。また、不揮発性記憶部440は、データストアログデータ441を格納する。データストアログデータ441は、ログ出力部422によって出力された一つ以上のデータストアログを含むデータである。
 ネットワークI/F404は、ネットワークを介して他の装置と接続するためのインタフェースである。本実施例では、ネットワークI/F404は、キャリア設備網103と接続される。
 なお、揮発性メモリ402に格納されるプログラムは、不揮発性メモリ403に格納されてもよい。この場合、プロセッサ401は、不揮発性メモリ403からプログラムを読み出し、揮発性メモリ402に読み出されたプログラムをロードする。
 図5は、実施例1における収集・検索サーバ109の構成の一例を説明するブロック図である。
 収集・検索サーバ109は、情報処理装置を用いて実現される。収集・検索サーバ109は、ハードウェア構成として、プロセッサ501、揮発性メモリ502、不揮発性メモリ503、及びネットワークI/F504を備え、各構成はバスなどの内部通信線を介して互いに接続される。
 プロセッサ501は、揮発性メモリ502に格納されるプログラムを実行する。プロセッサ501が揮発性メモリ502に格納されるプログラムを実行することによって、収集・検索サーバ109が備える機能が実現される。以下の説明では、プログラムを主体に処理を記載する場合、プロセッサ501によって当該プログラムが実行されていることを示す。
 揮発性メモリ502は、プロセッサ501によって実行されるプログラムを格納し、また、当該プログラムの実行に必要なデータを一時的に格納する記憶領域を含む。具体的には、揮発性メモリ502は、障害監視部510、ログ収集部520、障害範囲検索部530を実現するプログラムを格納し、また、揮発性記憶部540を含む。
 障害監視部510は、データストアサーバ108等の障害を監視するための処理を実行する。具体的には、障害監視部510は、データストアサーバ108の揮発性記憶部430に格納されるメールデータ431の損失が発生しているか否かを判定する。
 ログ収集部520は、各サーバからログを取得し、取得されたログを不揮発性メモリ503に格納するための処理を実行する。本実施例では、ログ収集部520は、メール受信サーバ106の不揮発性記憶部230に格納される受信ログデータ231、メール送信サーバ107の不揮発性記憶部330に格納される送信ログデータ331、及びデータストアサーバ108の不揮発性記憶部440に格納されるデータストアログデータ441を取得する。また、ログ収集部520は、不揮発性メモリ503の不揮発性記憶部550に、取得された各ログをそれぞれ受信ログデータ551、送信ログデータ552、及びデータストアログデータ553に格納する。
 障害範囲検索部530は、不揮発性記憶部550に格納される受信ログデータ551、送信ログデータ552、及びデータストアログデータ553に基づいて、データストアサーバ108の障害によって損失したメールを特定するための処理を実行する。
 揮発性記憶部540は、障害監視部510、ログ収集部520、障害範囲検索部530が管理するデータを格納する。
 不揮発性メモリ503は、永続的にデータを格納する不揮発性記憶部550を含む。
 不揮発性記憶部550は、障害監視部510、ログ収集部520、及び障害範囲検索部530が管理するデータを格納する。また、不揮発性記憶部550は、受信ログデータ551、送信ログデータ552、データストアログデータ553を格納する。
 受信ログデータ551は、ログ収集部520によってメール受信サーバ106から取得された複数の受信ログを含む。送信ログデータ552は、ログ収集部520によってメール送信サーバ107から取得された複数の送信ログを含む。データストアログデータ553は、ログ収集部520によってデータストアサーバ108から取得された複数のデータストアログを含む。
 ネットワークI/F504は、ネットワークを介して他の装置と接続するためのインタフェースである。本実施例では、ネットワークI/F504は、キャリア設備網103と接続される。
 なお、揮発性メモリ502に格納されるプログラムは、不揮発性メモリ503に格納されてもよい。この場合、プロセッサ501は、不揮発性メモリ503からプログラムを読み出し、揮発性メモリ502に読み出されたプログラムをロードする。
 図6Aは、実施例1における収集・検索サーバ109上に格納される受信ログデータ551の内容の一例を示す説明図である。図6Bは、実施例1における収集・検索サーバ109上に格納される送信ログデータ552の内容の一例を示す説明図である。図6Cは、実施例1における収集・検索サーバ109上に格納されるデータストアログデータ553の内容の一例を示す説明図である。
 受信ログデータ551、送信ログデータ552、及びデータストアログデータ553のそれぞれに格納されるログは、日時、固有ID、送信者のメールアドレス、及びメールの件名が含まれたログ形式のデータを複数含む。
 ここで、固有IDは一つのメールに対し必ず一意に決まる値とする。固有IDを利用することによって、受信ログデータ551、送信ログデータ552、及びデータストアログデータ553に含まれるメールの内容を紐付けることが可能となる。
 なお、各ログは、上記のログ形式に限定されず、例えば、上記ログ形式に加えてメールの本文がログに含まれてもよい。この場合、ログ出力時の処理による負荷は増大するが、障害発生によって、送信先サーバ105に送信されていないメールデータが損失した場合であっても、ログに含まれるメールの本文を用いてメールを復元し、送信先サーバ105に復元されたメールを送信することが可能となる。
 また、各ログは、上記のログ形式に加えて、障害発生時の対応処理に関する情報を含んでもよい。例えば、「携帯端末へ未達通知送信」及び「復元して送信先サーバに送信」など)対応処理に関する情報が考えられる。障害発生時に、各サーバが上記情報に基づいた対応処理を実行することによって、柔軟な障害対応が可能となる。
 次に、本実施例における各処理の内容について説明する。
 図7は、メール受信サーバ106がメールを受信する場合に実行される処理を示す図である。また、図8は、メール送信サーバ107がメールを送信する場合に実行される処理を示す図である。
 メールの受信処理では、メール受信サーバ106のデータストアサーバI/F部212とデータストアサーバ108との間、又は、メール送信サーバ107のデータストアサーバI/F部312とデータストアサーバ108との間で、メール、各種要求及び通知が送受信される。
 しかし、メール受信サーバ106又はメール送信サーバ107とデータストアサーバ108との間で実際に送受信されるデータは、ヘッダ情報又はデータ本体を示すペイロードなどを含むデータ形式となる。
 以下の説明では、メールの受信処理及び送信処理に特化したシーケンスを説明するために、実際に送受信されるデータではなく、当該データのペイロード部分となるメール、各種要求、及び各種通知を用いる。
 なお、携帯端末101とメール受信サーバ106のメール受信部211との間で送受信されるメール及び各種通知、並びに、メール送信サーバ107のメール送信部311と送信先サーバ105との間で送受信されるメール及び各種通知についても同様であるものとする。
 また、データストアサーバ108の揮発性記憶部430に対するメールの格納、取得、削除に関する処理の実行時には、メール受信サーバ106のデータストアサーバI/F部212とデータストアサーバ108との間、又は、メール送信サーバ107のデータストアサーバI/F部312とデータストアサーバ108との間で、メール以外に各種管理情報の送受信が必要となる場合がある。
 しかし、以下の説明では、メールの受信処理及び送信処理に特化したシーケンスを説明するため、メールの格納、取得、又は削除に関する処理では、前述した管理情報の送受信に関する記載は省略し、1リクエスト1レスポンスの形で説明する。
 図7は、実施例1のメール受信処理の一例を説明するシーケンス図である。
 最初に、携帯端末101は、メール受信サーバ106にメールを送信する(ステップS701)。
 メール受信サーバ106のメール受信部211は、携帯端末101から送信されたメールを受信し(ステップS702)、揮発性記憶部220に当該メール(メールデータ)を格納する(ステップS703)。
 次に、メール受信サーバ106のデータストアサーバI/F部212は、データストアサーバ108にメール格納要求及びメールを送信する(ステップS704)。
 なお、図7には記載していないが、データストアサーバ108にメール格納要求及びメールが正しく受信されないためにこの後の処理が実行されなかった場合、メール受信サーバ106は、携帯端末101にメールが正常に送信されなかった旨を通知する。
 次に、データストアサーバ108のデータストア管理部410は、メール格納要求及びメールを受信し(ステップS705)、メール格納要求に従って、揮発性記憶部430に受信したメール(メールデータ431)を格納する(ステップS706)。データストアサーバ108のデータストア管理部410は、揮発性記憶部430にメール(メールデータ431)が格納された後、メール受信サーバ106にメール格納完了通知を送信する(ステップS707)。
 なお、図7には記載していないが、ステップS706においてメール(メールデータ431)の格納に失敗した場合、データストア管理部410は、メール受信サーバ106にメール(メールデータ431)が格納されなかった旨を通知する。このとき、メール受信サーバ106は、携帯端末101にメールが正常に送信されなかった旨を通知する。
 次に、メール受信サーバ106のデータストアサーバI/F部212は、メール格納完了通知を受信する(ステップS708)。メール受信サーバ106のログ出力部213は、データストアサーバ108に送信されたメールを特定するための情報を含むデータ形式の受信ログを出力する(ステップS709)。出力された受信ログは、不揮発性記憶部230の受信ログデータ231に格納される。
 次に、メール受信サーバ106のメール受信部211は、携帯端末101にメール送信完了通知を送信する(ステップS710)。携帯端末101は、メール送信完了通知を受信する(ステップS711)。
 ステップS710の後、メール受信サーバ106のメール受信部211は、揮発性記憶部220からデータストアサーバ108に送信されたメール(メールデータ)を削除する(ステップS712)。
 図8A及び図8Bは、実施例1のメール送信処理の一例を説明するシーケンス図である。
 最初に、メール送信サーバ107のデータストアサーバI/F部312は、メール取得要求をデータストアサーバ108に送信する(ステップS801)。メール取得要求には、メールを特定するためのKeyが含まれる。
 データストアサーバ108のデータストア管理部410は、メール取得要求を受信すると(ステップS802)、メール取得要求に従って、揮発性記憶部430の中から所定のメール(メールデータ431)を検索する(ステップS803)。データストアサーバ108のデータストア管理部410は、メール(メールデータ431)が検索された後、取得完了通知及びメールをメール送信サーバ107に送信する(ステップS804)。
 次に、メール送信サーバ107のデータストアサーバI/F部312は、取得完了通知及び検索されたメールを受信し(ステップS805)、揮発性記憶部320に受信したメールを格納する(ステップS806)。メール送信サーバ107のメール送信部311は、受信したメールが揮発性記憶部320に格納された後、送信先サーバ105に当該メールを送信する(ステップS807)。
 次に、送信先サーバ105は、メール送信サーバ107から送信されたメールを受信すると(ステップS808)、メール送信サーバ107にメール送信完了通知を送信する(ステップS809)。
 次に、メール送信サーバ107のメール送信部311は、送信先サーバ105からメール送信完了通知を受信する(ステップS810)。メール送信サーバ107のログ出力部313は、送信先サーバ105に送信されたメールを特定するための情報を含むデータ形式の送信ログを出力する(ステップS811)。出力された送信ログは、不揮発性記憶部330の送信ログデータ331に格納される。
 次に、メール送信サーバ107のログ出力部313は、揮発性記憶部320から送信先サーバ105に送信されたメール(メールデータ)を削除する(ステップS812)。メール送信サーバ107のデータストアサーバI/F部312は、データストアサーバ108にメール削除要求を送信する(ステップS813)。
 次に、データストアサーバ108のデータストア管理部410は、メール削除要求を受信すると(ステップS814)、揮発性記憶部430からメール(メールデータ431)を削除し(ステップS815)、メール送信サーバ107に削除完了通知を送信する(ステップS816)。
 メール送信サーバ107のデータストアサーバI/F部312は、データストアサーバ108から送信された削除完了通知を受信する(ステップS817)。
 図9は、実施例1におけるデータストアサーバ108のデータ検索処理部420によって実行されるメールデータの検索処理を説明するフローチャートである。
 メールデータの検索処理では、揮発性記憶部430に格納されているメールデータの中から所定のデータが検索される。
 データ検索処理部420は、周期的、又は、オペレータからの指示を受け付けた場合など、所定の条件を満たした場合に以下で説明する処理を実行される。
 データ検索処理部420のデータ検索部421は、揮発性記憶部430に格納されるメールデータ431に対するループ処理を開始する(ステップS901)。
 具体的には、データ検索部421は、処理の開始時点において、揮発性記憶部430に格納されているメールデータ431の中から処理対象のメールデータ431を一つ選択し、当該メールデータ431に対してステップS902からステップS904の処理を実行する。従って、メールデータ431に対するループ処理では、揮発性記憶部430に格納されている複数のメールデータ431のそれぞれに対して、ステップS902からステップS904の処理を繰り返し実行される。
 データ検索部421は、処理対象のメールデータ431が一定時間以上滞留しているか否かを判定する(ステップS902)。具体的には、以下のような処理が実行される。
 データ検索部421は、現時点の時刻と処理対象のメールデータ431に含まれる日時の情報とを用いて、メールデータ431の滞留時間を算出する。
 例えば、処理開始時点の時刻とメールの送信日時との差を滞留時間として算出する方法が考えられる。なお、メールデータ431の日時の情報は、日時の情報をKeyに含めることによって、現時点の時刻とKeyに含まれる時刻との差を算出することができる。
 データ検索部421は、算出された滞留時間が一定時間以上であるか否かを判定する。算出された滞留時間が一定時間以上である場合、データ検索部421は、処理対象のメールデータ431が一定時間以上滞留していると判定する。なお、一定時間はシステム要件に応じて設定すればよい。
 以下の説明では、当該一定時間を第1の時間幅とも記載する。
 以上がステップS902の処理の説明である。
 処理対象のメールデータが一定時間以上滞留していないと判定された場合、データ検索部421は、ステップS905に進む。
 処理対象のメールデータが一定時間以上滞留していると判定された場合、データ検索部421は、処理対象のメールデータ431のデータストアログがデータストアログデータ441に書き出されているか否かを判定する(ステップS903)。
 例えば、メールデータ431のKeyに含まれる固有IDがデータストアログの一部の情報として利用されている場合、データ検索部421は、Keyに含まれる固有IDに基づいて、データストアログデータ441の中から、処理対象のメールデータ431のデータストアログを検索する方法が考えられる。
 処理対象のメールデータ431のデータストアログがデータストアログデータ441に書き出されていると判定された場合、データ検索部421は、ステップS905に進む。
 処理対象のメールデータ431のデータストアログがデータストアログデータ441に書き出されていないと判定された場合、データ検索部421は、データストアログデータ441への追加対象として、処理対象のメールデータ431の情報を揮発性記憶部430に記録する(ステップS904)。
 例えば、データ検索部421は、揮発性記憶部430に追加対象のメールデータ431のKeyを記録する。なお、追加対象のメールデータ431が複数存在する場合、データ検索部421は、揮発性記憶部430に、追加対象のメールデータ431のKeyのリストを生成してもよい。
 次に、データ検索部421は、揮発性記憶部430に格納されている全てのメールデータ431に対して処理が完了したか否かを判定する(ステップS905)。
 揮発性記憶部430に格納されている全てのメールデータ431に対して処理が完了していないと判定された場合、すなわち、処理対象のメールデータ431が存在すると判定された場合、データ検索部421は、ステップS902に戻り、新たなメールデータ431を選択し、ステップS902からステップS904の処理を実行する。
 揮発性記憶部430に格納されている全てのメールデータ431に対して処理が完了していると判定された場合、データ検索処理部420のログ出力部422は、揮発性記憶部430に記録されたメールデータ431の情報に基づいて、不揮発性記憶部440のデータストアログデータ441に、追加対象のメールデータ431のデータストアログを追加し(ステップS906)、処理を終了する。
 本実施例では、ログ出力部422は、日時及び固有IDを含むデータストアログをデータストアログデータ441に書き込むものとする。
 本実施例では、ループ処理毎に、追加対象のメールデータ431のデータストアログの書込処理を実行するではなく、ループ処理が終了した後に一括してデータストアログの書込処理を実行する。これによって、書込処理によるデータストアの処理の遅延を防ぐことができる。
 図10は、実施例1におけるデータストアサーバ108の障害発生時に実行される処理を説明するシーケンス図である。図11は、実施例1における収集・検索サーバ109が障害範囲を特定する場合に用いるログデータを示す説明図である。
 収集・検索サーバ109の障害監視部510は、データストアサーバ108に状態確認要求を送信する(ステップS1001)。なお、障害監視部510は、周期的に状態確認要求を送信してもよいし、また、オペレータの指示を受けた場合に状態確認要求を送信してもよい。
 ステップS1001の処理は、データストアサーバ108における障害の発生を検知するための処理である。データストアサーバ108における障害の発生が検知された場合、収集・検索サーバ109は、データストアサーバ108の揮発性記憶部430に格納されるメールデータ431の損失の有無を確認する。
 データストアサーバ108のデータストア管理部410は、状態確認要求を受信すると(ステップS1002)、データストアサーバ108の稼働状態等を確認し、確認結果を状態情報として収集・検索サーバ109に送信する(ステップS1003)。
 ここで、状態情報は、例えば、複数のデータストアサーバ108が存在する場合、複数のデータストアサーバ108の構成情報、各データストアサーバ108の生死情報など、メールデータ431の損失の有無を判定できる情報であればよい。
 次に、収集・検索サーバ109の障害監視部510は、状態情報を受信し、当該状態情報に基づいて、メールデータ431の損失が発生するか否かを判定する(ステップS1004)。例えば、二つ以上のデータストアサーバ108が停止している場合、収集・検索サーバ109は、メールデータ431の損失が発生すると判定する。
 メールデータ431の損失が発生しないと判定された場合には、障害範囲を特定する必要がないため、収集・検索サーバ109は、これ以降の処理を実行することなく、処理を終了する。
 メールデータ431の損失が発生していると判定された場合、収集・検索サーバ109のログ収集部520は、メール受信サーバ106、メール送信サーバ107、及びデータストアサーバ108にログ取得要求を送信する(ステップS1005)。例えば、メール受信サーバ106上でUNIX系(UNIXは登録商標、以下同じ。)のOSが稼働する場合、scpコマンド等を用いることによってステップS1005の処理を実現することができる。
 メール受信サーバ106、メール送信サーバ107、及びデータストアサーバ108は、それぞれ、収集・検索サーバ109にログデータを送信する(ステップS1006、S1007、S1008)。
 収集・検索サーバ109のログ収集部520は、各サーバから送信されたログデータを受信し、受信したログデータを不揮発性記憶部550に格納する(ステップS1009)。ここで、メール受信サーバ106から受信したログデータは受信ログデータ551として、メール送信サーバ107から受信したログデータは送信ログデータ552として、データストアサーバ108から受信したログデータはデータストアログデータ553として格納される。
 収集・検索サーバ109の障害範囲検索部530は、受信したログデータを用いて、障害範囲を特定する(ステップS1010)。ここで、図11を用いて障害範囲の特定方法について説明する。
 図9で説明したように、メールデータの検索処理では、一定時間(第1の時間幅)以上滞留しているメールデータ431のログのみがデータストアログデータ441に格納される。より具体的には、処理の開始時の時刻(現時刻)から第1の時間幅分だけさかのぼった時刻より古い時刻のメールデータ431のデータストアログのみが格納される。
 そのため、図9の処理と図10の処理とが並列に実行された場合を想定すると、データストアログデータ553は、図11に示すようになる。また、データストアログデータ553に格納されるログの数は、受信ログデータ551又は送信ログデータ552に含まれるログの数より十分少ない。
 本実施例では、前述したようなデータストアログデータ553の特徴に基づいて、高速に障害範囲を特定することができる。
 まず、障害範囲検索部530は、受信ログデータ551から、現時刻と、現時刻から第1の時間幅分さかのぼった時刻との間に含まれるログを抽出する。また、障害範囲検索部530は、送信ログデータ552から、現時刻と、現時刻から第1の時間幅分さかのぼった時刻との間に含まれるログを抽出する。
 以下の説明では、現時刻から第1の時間幅分さかのぼった時刻を第1の時刻とも記載する。
 図11に示す例では、受信ログデータ551の斜線部分に含まれるログ、及び送信ログデータ552の斜線部分に含まれるログが抽出される。
 次に、障害範囲検索部530は、送信ログデータ552から、第1の時刻と、第1の時刻から障害を特定したい期間さかのぼった時刻との間に含まれるログを抽出する。また、障害範囲検索部530は、データストアログデータ553から第1の時刻と、第1の時刻から障害を特定したい期間さかのぼった時刻との間に含まれるログを抽出する。
 以下の説明では、障害を特定したい期間を第2の時間幅とも記載し、また、第1の時刻から第2の時間幅分さかのぼった時刻を第2の時刻とも記載する。なお、第2の時刻(障害範囲を特定したい期間)は、システム要件に応じて設定すればよい。
 図11に示す例では、送信ログデータ552の黒塗り部分に含まれるログ、及びデータストアログデータ553の黒塗り部分に含まれるログが抽出される。
 図11に示すように、斜線部分に含まれるログと、黒塗り部分に含まれるログは重複しない。これは、現時刻から第1の時刻まで範囲に含まれるメールデータ431のログは出力されないためである。
 なお、前述した各ログの抽出処理は、ステップS1009においてログを格納する場合に実行されてもよい。
 障害範囲検索部530は、現時刻から第1の時刻の間に含まれる受信ログと、現時刻から第1の時刻の間に含まれる送信ログとを比較して、送信ログデータ552に含まれない受信ログを検索する。例えば、障害範囲検索部530は、受信ログの固有IDと、送信ログの固有IDとを比較する方法が考えられる。
 また、障害範囲検索部530は、第1の時刻から第2の時刻の間に含まれる送信ログと、第1の時刻から第2の時刻の間に含まれるデータストアログとを比較して、送信ログに含まれないデータストアログを検索する。例えば、障害範囲検索部530は、送信ログの固有IDと、データストアログの固有IDとを比較する方法が考えられる。
 以上の処理によって、損失したメールデータ431の数、メールデータの損失によって影響を受ける人数等の障害範囲を特定することができる。すなわち、検索されたログには、図6A、図6B及び図6Cに示すように、送信元のアドレス及びメールの件名が含まれる。従って、障害範囲検索部530は、検索されたログに含まれる情報に基づいて、障害範囲に関する情報を通知することができる。
 以上が、ステップS1010の処理の説明である。
 次に、収集・検索サーバ109の障害範囲検索部530は、特定された障害範囲に関する情報を障害範囲情報としてメール受信サーバ106に送信する(ステップS1011)。例えば、検索されたログそのものを障害範囲情報として送信する方法が考えられる。
 メール受信サーバ106のメール受信部211は、収集・検索サーバ109から送信された障害範囲情報を受信すると(ステップS1012)、携帯端末101に送信する未達通知を生成し、生成された未達通知を携帯端末101に送信する(ステップS1013)。例えば、送信元のアドレス及びメールの件名が対応づけられたリストを未達通知として送信する方法が考えられる。
 携帯端末101は、メール受信サーバ106から送信された未達通知を受信する(ステップS1014)。これによって、携帯端末101の保持者であるメール送信者は、自身が送信したメールが送信先の装置に届いていないことを知ることができる。
 前述した処理では、メール受信サーバ106は、障害発生時の対応として未達通知を送信するが、本実施例はこれに限定されない。
 例えば、メールの本文がログとして出力されている場合、障害範囲検索部530は、ステップS1011において、検索されたログと、障害発生時の対応処理に関する情報とを出力し、出力された障害発生時の対応処理に関する情報に基づいてメール(メールデータ)を復元し、送信先サーバ105に復元されたメールを送信してもよい。
 前述した処理の実現方法としては、収集・検索サーバ109が、復元されたメールを含む障害範囲情報をメール送信サーバ107に送信し、メール送信サーバ107が送信先サーバ105に損失したメールを再度送信すればよい。
 なお、障害発生時の対応処理としては、例えば、「携帯端末への未達通知送信」、及び「メールデータを復元、送信先サーバへのメールデータの送信」などが考えられる。
 また、前述した処理では、収集・検索サーバ109は、自動的に障害範囲の特定し(ステップS1010)、また、障害範囲情報を送信する(ステップS1011)。しかし、本実施例はこれに限定されず、オペレータの操作に基づいて処理が実行されてもよい。
 図12は、実施例1の収集・検索サーバ109の操作時にオペレータが用いるターミナル画面の一例を示す説明図である。
 ターミナル画面1201は、図10のステップS1010及びステップS1011の実行時に操作されるターミナル画面である。ターミナル画面1201は、一般的な情報処理装置に標準的に搭載されるターミナルプログラムによって表示される画面である。
 オペレータは、例えば、UNIXのDIFFコマンドを入力することによって、各種ログの差分を求めることができる。障害範囲検索部530は、所定のコマンドを受け付けると、ステップS1010に示すような処理を実行し、処理結果をターミナル画面上に表示する。
 また、オペレータが、DIFFコマンドを用いて検索されたログを、障害範囲検索部530に入力する操作を行うことによって、メール受信サーバ106に障害範囲情報が送信することができる。
 以上説明したように、実施例1によれば、データストアサーバ108において、所定の条件を満たすメールのログのみが不揮発性記憶部440に書き込まれる。従って、従来技術と比較して、書き込まれるログの数が減少するため、インメモリKVS等のデータストアの性能の低下を抑止することができる。
 また、障害範囲検索部530は、所定の時間範囲に含まれる受信ログデータと送信ログデータとを比較し、また、所定の時間範囲に含まれる送信ログデータとデータストアログデータとを比較することによって、障害範囲を特定できる。
 従来技術では、膨大なデータ量の受信ログデータと送信ログデータとを比較する必要があったが、本実施例では、限られた時間範囲のデータを比較することによって障害範囲を特定できるため、高速に障害範囲を特定することができる。また、データストアログには、所定の条件を満たすメールデータのログのみが格納されるため、前述した比較処理の高速化が可能となる。
 (変形例)
 実施例1では、滞留時間に基づいて、データストアログデータ441に追加するメールデータ431を特定していたが、本実施例はこれに限定されない。例えば、以下のような処理に基づいてデータストアログデータ441に追加するメールデータ431を特定してもよい。
 図13は、実施例1の変形例におけるデータストアサーバ108のデータ検索処理部420によって実行されるメールデータの検索処理を説明するフローチャートである。
 変形例1では、データ検索部421は、処理対象のメールデータ431の送信先ドメインが検索対象のドメインであるか否かを判定する(ステップS1302)。なお、検索対象のドメインは、予め設定されているものとする。
 例えば、メールデータ431のKeyに含まれるドメイン名がデータストアログの一部の情報として利用されている場合、データ検索部421は、Keyに含まれるドメイン名に基づいて、処理対象のメールデータ431であるか否かを判定する。
 ステップS1301、ステップS1303、ステップS1304、ステップS1305、及びステップS1306の処理は、ステップS901、ステップS903、ステップS904、ステップS905、及びステップS906の処理と同一の処理であるため説明を省略する。
 図13に示すデータ検索処理を実行することによって、特定のドメインに特化した高速な障害範囲の特定が可能となる。
 実施例2は、複数のキャリア設備網を有するメールシステムにおいて、一つのキャリア設備網に障害が発生した場合、他のキャリア設備網の収集・検索サーバ109が障害範囲を特定する。
 以下、実施例1との差異を中心に実施例2について説明する。
 図14は、実施例2におけるメールシステムの構成の一例を示す説明図である。
 実施例2のメールシステムは、二つのキャリア設備網A103、キャリア設備網B103を含む。また、実施例2のメールシステムは、ログ管理サーバ1400を含む。ログ管理サーバ1400は、キャリア設備網A103及びキャリア設備網B103に接続され、キャリア設備網103毎にログを管理する。
 キャリア設備網A103及びキャリア設備網B103には、それぞれ、メール受信サーバ106、メール送信サーバ107、データストアサーバ108、収集・検索サーバ109が接続される。
 実施例2の携帯端末101は、モバイルネットワーク102を介してキャリア設備網A103及びキャリア設備網B103と接続される。
 実施例2の送信先サーバ105は、インターネット104を介して、キャリア設備網A103及びキャリア設備網B103と接続される。また、実施例2の送信先サーバ105は、キャリア設備網A103に接続されるメール送信サーバ107とメールの送受信を行い、キャリア設備網B103に接続されるメール送信サーバ107とメールの送受信を行う。
 なお、メール受信サーバ106、メール送信サーバ107、データストアサーバ108、収集・検索サーバ109は実施例1と同一のものであるため、各サーバの構成については説明を省略する。
 図15は、実施例2におけるログ管理サーバ1400の構成の一例を説明するブロック図である。
 ログ管理サーバ1400は、情報処理装置を用いて実現される。ログ管理サーバ1400は、ハードウェア構成として、プロセッサ1501、揮発性メモリ1502、不揮発性メモリ1503、及びネットワークI/F1504を備え、各構成はバスなどの内部通信線を介して互いに接続される。
 プロセッサ1501は、揮発性メモリ1502に格納されるプログラムを実行する。プロセッサ1501が揮発性メモリ1502に格納されるプログラムを実行することによって、ログ管理サーバ1400が備える機能が実現される。以下の説明では、プログラムを主体に処理を記載する場合、プロセッサ1501によって当該プログラムが実行されていることを示す。
 揮発性メモリ1502は、プロセッサ1501によって実行されるプログラムを格納し、また、当該プログラムの実行に必要なデータを一時的に格納する記憶領域を含む。具体的には、揮発性メモリ1502は、障害監視部1510、及びログ収集部1520を実現するプログラムを格納し、また、揮発性記憶部1530を含む。
 障害監視部1510は、キャリア設備網103毎の障害を監視するための処理を実行する。
 ログ収集部1520は、キャリア設備網103の収集・検索サーバ109からログを取得し、取得されたログを不揮発性メモリ503に格納するための処理を実行する。本実施例では、ログ収集部1520は、キャリア設備網103毎に、受信ログデータ1541、送信ログデータ1542、及びデータストアログデータ1543を不揮発性記憶部1540に格納する。
 揮発性記憶部1530は、障害監視部1510、及びログ収集部1520が管理するデータを格納する。
 不揮発性メモリ1503は、永続的にデータを格納する不揮発性記憶部1540を含む。
 不揮発性記憶部1540は、障害監視部1510、及びログ収集部1520が管理するデータを格納する。また、不揮発性記憶部1540は、キャリア設備網103毎に受信ログデータ1541、送信ログデータ1542、データストアログデータ1543を格納する。
 なお、受信ログデータ1541、送信ログデータ1542、及びデータストアログデータ1543は、受信ログデータ551、送信ログデータ552、及びデータストアログデータ553と同一のものである。
 ネットワークI/F1504は、ネットワークを介して他の装置と接続するためのインタフェースである。本実施例では、ネットワークI/F1504は、キャリア設備網A103及びキャリア設備網B103と接続される。
 図16は、実施例2におけるキャリア設備網に障害が発生した場合に実行される処理を説明するシーケンス図である。
 以下の説明では、キャリア設備網A103の障害が発生したものとして説明する。
 ログ管理サーバ1400のログ収集部1520は、キャリア設備網A103及びキャリア設備網B103のそれぞれの収集・検索サーバ109にログ取得要求を送信する(ステップS1601)。例えば、ログ管理サーバ1400は、ブロードキャスト送信にてログ取得要求を送信する。なお、ログ収集部1520は、周期的に状態確認要求を送信してもよいし、また、オペレータの指示を受けた場合にログ取得要求を送信してもよい。
 キャリア設備網B103の収集・検索サーバ109のログ収集部520は、ログ取得要求を受信すると、不揮発性記憶部550に格納される受信ログデータ551、送信ログデータ552、及びデータストアログデータ553をログ管理サーバ1400に送信する(ステップS1602)。
 なお、ログ収集部520は、キャリア設備網B103に接続されるメール受信サーバ106、メール送信サーバ107、及びデータストアサーバ108にログ取得要求を送信することによって、ログデータを取得してもよい。
 ログ管理サーバ1400のログ収集部1520は、ログデータを受信すると、キャリア設備網Bのログデータとして不揮発性記憶部1540に格納する(ステップS1603)。例えば、ログ収集部1520は、キャリア設備網Bの識別子と、ログデータとを対応づけて不揮発性記憶部1540に格納する。
 ログ管理サーバ1400の障害監視部1510は、ログ取得要求の応答に基づいて、各キャリア設備網103における障害発生の有無を判定する(ステップS1604)。
 例えば、障害監視部1510は、ログ取得要求を送信してから一定時間経過しても、収集・検索サーバ109からログデータが送信されない場合、当該収集・検索サーバ109が接続されるキャリア設備網103に障害発生したものと判定する。
 本実施例では、キャリア設備網A103の収集・検索サーバ109からログデータが送信されないため、障害監視部1510は、キャリア設備網A103に障害が発生したものと判定する。
 キャリア設備網103における障害発生が検知された場合、ログ管理サーバ1400の障害監視部1510は、他のキャリア設備網103の収集・検索サーバ109に障害情報を送信する(ステップS1605)。
 障害情報には、障害の発生が検知されたキャリア設備網103の識別情報、及びキャリア設備網103のログデータが含まれる。例えば、障害監視部1510は、障害の発生が検知されたキャリア設備網103の識別情報に基づいて、不揮発性記憶部1540から当該キャリア設備網103に対応するログデータを取得する。
 収集・検索サーバ109のログ収集部520は、障害情報を受信すると(ステップS1606)、キャリア設備網103の識別情報と対応づけて、障害情報に格納されるログデータを不揮発性記憶部550に格納する(ステップS1607)。
 収集・検索サーバ109の障害範囲検索部530は、不揮発性記憶部550に格納されるログデータを用いて、障害範囲を特定する(ステップS1608)。ステップS1608の処理は、ステップS1010と同一の処理であるため説明を省略する。
 次に、収集・検索サーバ109の障害範囲検索部530は、特定された障害範囲に関する情報を、障害範囲情報としてメール受信サーバ106に送信する(ステップS1609)。ステップS1609の処理は、ステップS1011と同一であるため説明を省略する。
 メール受信サーバ106のメール受信部211は、収集・検索サーバ109から送信された障害範囲情報を受信すると(ステップS1610)、携帯端末101に送信する未達通知を生成し、生成された未達通知を携帯端末101に送信する(ステップS1611)。ステップS1610及びステップS1611の処理は、ステップS1012及びステップS1013と同一の処理であるため説明を省略する。
 携帯端末101は、メール受信サーバ106から送信された未達通知を受信する(ステップS1612)。これによって、携帯端末101の保持者であるメール送信者は、自身が送信したメールが送信先に届かなかったことを知ることができる。なお、ステップS1612の処理は、ステップS1014と同一の処理である。
 前述した処理では、メール受信サーバ106は、障害発生時の対応として未達通知を送信するが、本実施例はこれに限定されない。
 例えば、メールの本文がログとして出力されている場合、ログ収集部1520は、ステップS1609において、検索されたログと、障害発生時の対応処理に関する情報とを出力し、出力された障害発生時の対応処理に関する情報に基づいてメール(メールデータ)を復元し、送信先サーバ105に復元されたメールを送信してもよい。
 前述した処理の実現方法としては、収集・検索サーバ109が、復元されたメールを含む障害範囲情報をメール送信サーバ107に送信し、メール送信サーバ107が送信先サーバ105に損失したメールを再度送信すればよい。
 障害発生時の対応処理としては、例えば、「携帯端末への未達通知送信」、及び「メールデータを復元、送信先サーバへのメールデータの送信」などが考えられる。
 前述した処理では、ログ管理サーバ1400が各キャリア設備網103の収集・検索サーバ109にログ取得要求を送信したが、本実施例はこれに限定されない。
 例えば、メール受信サーバ106、メール送信サーバ107、及びデータストアサーバ108が、ログを出力する場合に(ステップS709、S811、S906)、それぞれがログ管理サーバ1400にログを送信してもよい。この場合、ログ管理サーバ1400は、ログ取得要求の代わりに、収集・検索サーバ109に状態確認要求を送信すればよい。
 以上説明したように、実施例2によれば、キャリア設備網103全体に障害が発生した場合であっても、他のキャリア設備網103の収集・検索サーバ109が、障害範囲を特定することができる。
 なお、本実施例で例示した種々のソフトウェアは、電磁的、電子的及び光学式等の種々の記録媒体に格納可能であり、インターネット等の通信網を通じて、コンピュータにダウンロード可能である。
 さらに、本実施例では、ソフトウェアによる制御を用いた例について説明したが、その一部をハードウェアによって実現することも可能である。
 以上、実施例を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。
101:携帯端末、102:モバイルネットワーク、103:キャリア設備網、104:インターネット、105:送信先サーバ、106:メール受信サーバ、107:メール送信サーバ、108:データストアサーバ、109:収集・検索サーバ、201:プロセッサ、202:揮発性メモリ、203:不揮発性メモリ、204:ネットワークI/F、210:メール受信処理部、211:メール受信部、212:データストアサーバI/F部、213:ログ出力部、220:揮発性記憶部、230:不揮発性記憶部、231:受信ログデータ、301:プロセッサ、302:揮発性メモリ、303:不揮発性メモリ、304:ネットワークI/F、310:メール送信処理部、311:メール送信部、312:データストアサーバI/F部、313:ログ出力部、320:揮発性記憶部、330:不揮発性記憶部、331:送信ログデータ、401:プロセッサ、402:揮発性メモリ、403:不揮発性メモリ、404:ネットワークI/F、410:データストア管理部、420:データ検索処理部、421:データ検索部、422:ログ出力部、430:揮発性記憶部、431:メールデータ、440:不揮発性記憶部、441:データストアログデータ、501:プロセッサ、502:揮発性メモリ、503:不揮発性メモリ、504:ネットワークI/F、510:障害監視部、520:ログ収集部、530:障害範囲検索部、540:揮発性記憶部、550:不揮発性記憶部、551:受信ログデータ、552:送信ログデータ、553:データストアログデータ、1201:ターミナル画面、1400:ログ管理サーバ、1501:プロセッサ、1502:揮発性メモリ、1503:不揮発性メモリ、1504:ネットワークI/F、1510:障害監視部、1520:ログ収集部、1530:揮発性記憶部、1540:不揮発性記憶部、1541:受信ログデータ、1542:送信ログデータ、1543:データストアログデータ。

Claims (14)

  1.  ネットワークを介して接続される複数の計算機を備え、端末からメッセージを受信し、宛先の装置に当該メッセージを送信する計算機システムであって、
     前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続されるメモリ、及び前記プロセッサに接続されるネットワークインタフェースを有し、
     前記計算機システムは、
     前記端末から前記メッセージを受信するメッセージ受信部と、前記受信したメッセージのログである受信ログを出力する第1のログ出力部と、複数の前記受信ログが含まれる受信ログデータを格納する第1の記憶部と、を有する第1の計算機、
     前記メモリの記憶領域を用いて構築され、前記メッセージを格納するデータストアを管理するデータストア管理部と、前記データストアに格納される前記メッセージの中から所定の条件に一致するメッセージを検索する第1の検索部と、前記検索されたメッセージのログであるデータストアログを出力する第2のログ出力部と、複数の前記データストアログが含まれるデータストアログデータを格納する第2の記憶部と、を有する第2の計算機、
     前記データストアに格納される前記メッセージを取得し、前記宛先の装置に前記メッセージを送信するメッセージ送信部と、前記宛先の装置に送信された前記メッセージのログである送信ログを出力する第3のログ出力部と、複数の前記送信ログが含まれる送信ログデータを格納する第3の記憶部と、を有する第3の計算機、並びに、
     前記データストアの状態を監視する第1の監視部と、前記データストアの障害発生が検知された場合に、前記第1の記憶部、前記第2の記憶部、及び前記第3の記憶部のそれぞれから、前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを取得する第1のログ収集部と、前記取得された受信ログデータ、前記データストアログデータ、及び前記送信ログデータを比較することによって、前記データストアの障害発生によって損失した前記メッセージを検索する第2の検索部と、前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを格納する第4の記憶部と、を有する第4の計算機、を備える
    ことを特徴とする計算機システム。
  2.  請求項1に記載の計算機システムであって、
     前記第1の検索部は、
     前記データストアに格納される前記メッセージの中から処理対象のメッセージを選択し、
     現在の時刻、及び前記選択されたメッセージに含まれる日時の情報に基づいて、当該メッセージの滞留時間を算出し、
     前記算出された滞留時間が第1の時間幅より大きい場合、前記選択されたメッセージを前記データストアログの出力対象に決定し、
     前記出力対象のメッセージの識別情報のリストを前記メモリ上に生成し、
     前記第2のログ出力部は、
     前記リストに基づいて、前記出力対象のメッセージのデータストアログを生成し、
     前記生成されたデータストアログを前記第2の記憶部に格納される前記データストアログデータに追加する
    ことを特徴とする計算機システム。
  3.  請求項2に記載の計算機システムであって、
     前記第1の監視部は、
     前記第2の計算機から当該第2の計算機の稼働状態を示す状態情報を取得し、
     前記取得された状態情報に基づいて、前記メッセージの損失が発生したか否かを判定し、
     前記メッセージの損失が発生したと判定された場合、前記第1の計算機、前記第2の計算機、及び前記第3の計算機に、ログ取得要求を送信し、
     前記第1の計算機、前記第2の計算機、及び前記第3の計算機のそれぞれから受信した前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを前記第4の記憶部に格納し、
     前記第2の検索部は、
     前記取得された受信ログデータから、現在の時刻と、前記現在の時刻から前記第1の時間幅分さかのぼった時刻である第1の時刻との間に含まれる受信ログを抽出し、
     前記取得された送信ログデータから、前記現在の時刻と、前記第1の時刻との間に含まれる第1の送信ログを抽出し、
     前記取得されたデータストアログデータから、前記第1の時刻と、前記第1の時刻から第2の時間幅分さかのぼった時刻である第2の時刻との間に含まれるデータストアログを抽出し、
     前記取得された送信ログデータから、前記第1の時刻と、前記第2の時刻との間に含まれる第2の送信ログを抽出し、
     前記抽出された受信ログと前記抽出された第1の送信ログとを比較し、さらに、前記抽出されたデータストアログと前記抽出された第2の送信ログとを比較し、
     前記比較の結果に基づいて、前記データストアの障害発生によって損失したメッセージを特定し、
     前記特定されたメッセージに関する情報を前記第1の計算機に送信する
    ことを特徴とする計算機システム。
  4.  請求項2に記載の計算機システムであって、
     前記第2のログ出力部は、前記出力対象のメッセージそのもの、又は前記出力対象のメッセージから生成される検索キーのいずれか一方を前記データストアログとして出力すること特徴とする計算機システム。
  5.  請求項3に記載の計算機システムであって、
     前記メッセージ受信部は、
     前記第2の検索部から前記特定されたメッセージに関する情報を受信した場合に、前記損失したメッセージを通知するための通知情報を生成し、
     前記生成された通知情報を前記端末に送信する
    ことを特徴とする計算機システム。
  6.  請求項2に記載の計算機システムであって、
     前記計算機システムは、
     前記端末を接続する第1のネットワークと、前記宛先となる装置を接続する第2のネットワークと、前記第1のネットワーク及び前記第2のネットワークを接続する複数の第3のネットワークと、を含み、
     前記複数の第3のネットワークの各々には、前記第1の計算機、前記第2の計算機、前記第3の計算機、及び前記第4の計算機が接続され、
     前記計算機システムは、
     前記複数の第3のネットワークと接続され、かつ、前記複数の第3のネットワークの各々の障害を監視する第2の監視部と、前記複数の第3のネットワークの各々から前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを取得する第2のログ収集部と、前記複数の第3のネットワーク毎に、取得された前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを格納する第5の記憶部とを有する第5の計算機を備え、
     前記第2のログ収集部は、
     前記複数の第3のネットワークの各々の前記第4の計算機に対して、ログ取得要求を送信し、
     受信した前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを前記第5の記憶部に格納し、
     前記第2の監視部は、
     前記ログ取得要求に対する応答がない前記第4の計算機が存在するか否かを判定し、
     前記ログ取得要求に対する応答がない前記第4の計算機が存在する場合、当該第4の計算機が接続される前記第3のネットワークの障害と判定し、
     前記第5の記憶部から、前記障害が発生した第3のネットワークに対応する前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを読み出し、
     障害が発生していない前記第3のネットワークに接続される前記第4の計算機に、読み出された前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを含む障害情報を送信し、
     前記第2の検索部は、前記障害情報を受信した場合、当該障害情報に基づいて、前記障害が発生した第3のネットワークにおいて損失したメッセージを検索する
    ことを特徴とする計算機システム。
  7.  請求項2に記載の計算機システムであって、
     前記第1の計算機、前記第2の計算機、前記第3の計算機、及び前記第4の計算機は、同一の前記計算機の計算機資源を用いて実現される
    ことを特徴とする計算機システム。
  8.  ネットワークを介して接続される複数の計算機を備え、端末からメッセージを受信し、宛先の装置に当該メッセージを送信する計算機システムにおける障害特定方法であって、
     前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続されるメモリ、及び前記プロセッサに接続されるネットワークインタフェースを有し、
     前記計算機システムは、
     メッセージ受信部と、第1のログ出力部と、複数の受信ログが含まれる受信ログデータを格納する第1の記憶部と、を有する第1の計算機、
     前記メモリの記憶領域を用いて構築され、前記メッセージを格納するデータストアを管理するデータストア管理部と、第1の検索部と、第2のログ出力部と、複数のデータストアログが含まれるデータストアログデータを格納する第2の記憶部と、を有する第2の計算機、
     メッセージ送信部と、第3のログ出力部と、複数の送信ログが含まれる送信ログデータを格納する第3の記憶部と、を有する第3の計算機、及び、
     第1の監視部と、第1のログ収集部と、第2の検索部と、第4の記憶部と、を有する第4の計算機、を備え、
     前記方法は、
     前記メッセージ受信部が、前記端末からメッセージを受信する第1のステップと、
     前記メッセージ受信部が、前記受信したメッセージを含むメッセージ格納要求を前記データストア管理部に送信する第2のステップと、
     前記データストア管理部は、前記メッセージ格納要求に含まれる前記メッセージを前記データストアに格納する第3のステップと、
     前記第1のログ出力部が、前記データストア管理部から前記メッセージ格納要求に対する応答である第1の通知を受信した後に、前記受信したメッセージの受信ログを、前記第1の記憶部の前記受信ログデータに追加する第4のステップと、
     前記メッセージ送信部が、前記データストア管理部にメール取得要求を送信する第5のステップと、
     前記メッセージ送信部が、前記データストア管理部から前記メール取得要求に対応する応答である第2の通知、及びメールを受信する第6のステップと、
     前記メッセージ送信部が、前記受信したメールを前記宛先の装置に送信する第7のステップと、
     前記第3のログ出力部が、前記宛先の装置から、前記取得されたメールを受信したことを示す第3の通知を受信した後、前記取得されたメールの送信ログを、前記第3の記憶部の前記送信ログデータに追加する第8のステップと、
     前記第1の検索部が、前記データストアに格納される前記メッセージの中から所定の条件に一致するメッセージを検索する第9のステップと、
     前記第2のログ出力部が、前記検索されたメッセージのデータストアログを、前記第2の記憶部に格納される前記データストアログデータに追加する第10のステップと、
     前記第1の監視部が、前記データストアの状態を監視する第11のステップと、
     前記第1のログ収集部が、前記第1の監視部によって前記データストアの障害発生が検知された場合、前記第1の記憶部、前記第2の記憶部、及び前記第3の記憶部のそれぞれから、前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを取得する第12のステップと、
     前記第1のログ収集部が、前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを前記第4の記憶部に格納する第13のステップと、
     前記第2の検索部が、取得された前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを比較することによって、前記データストアの障害発生によって損失した前記メッセージを検索する第14のステップと、を含む
    ことを特徴とする障害特定方法。
  9.  請求項8に記載の障害特定方法であって、
     前記第9のステップは、
     前記データストアに格納される前記メッセージの中から処理対象のメッセージを選択するステップと、
     現在の時刻、及び前記選択されたメッセージに含まれる日時の情報に基づいて、当該メッセージの滞留時間を算出するステップと、
     前記算出された滞留時間が第1の時間幅より大きい場合、前記選択されたメッセージを前記データストアログの出力対象に決定するステップと、
     前記出力対象のメッセージの識別情報のリストを前記メモリ上に生成するステップと、を含み、
     前記第10のステップは、
     前記リストに基づいて、前記出力対象のメッセージのデータストアログを生成するステップと、
     前記生成されたデータストアログを前記第2の記憶部に格納される前記データストアログデータに追加するステップと、を含む
    ことを特徴とする障害特定方法。
  10.  請求項9に記載の障害特定方法であって、
     前記第11のステップは、
     前記第2の計算機から当該第2の計算機の稼働状態を示す状態情報を取得するステップと、
     前記取得された状態情報に基づいて、前記メッセージの損失が発生したか否かを判定するステップと、を含み、
     前記第12のステップは、前記メッセージの損失が発生したと判定された場合、前記第1の計算機、前記第2の計算機、及び前記第3の計算機に、ログ取得要求を送信するステップと、
     前記第1の計算機、前記第2の計算機、及び前記第3の計算機のそれぞれから受信した前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを前記第4の記憶部に格納するステップと、を含み、
     前記第14のステップは、
     前記取得された受信ログデータから、現在の時刻と、前記現在の時刻から前記第1の時間幅分さかのぼった時刻である第1の時刻との間に含まれる受信ログを抽出するステップと、
     前記取得された送信ログデータから、前記現在の時刻と、前記第1の時刻との間に含まれる第1の送信ログを抽出するステップと、
     前記取得されたデータストアログデータから、前記第1の時刻と、前記第1の時刻から第2の時間幅分さかのぼった時刻である第2の時刻との間に含まれるデータストアログを抽出するステップと、
     前記取得された送信ログデータから、前記第1の時刻と、前記第2の時刻との間に含まれる第2の送信ログを抽出するステップと、
     前記抽出された受信ログと前記抽出された第1の送信ログとを比較し、さらに、前記抽出されたデータストアログと前記抽出された第2の送信ログとを比較するステップと、
     前記比較の結果に基づいて、前記データストアの障害発生によって損失したメッセージを特定するステップと、
     前記特定されたメッセージに関する情報を前記メッセージ受信部に送信するステップと、を含むことを特徴とする
    ことを特徴とする障害特定方法。
  11.  請求項9に記載の障害特定方法であって、
     前記第10のステップでは、前記出力対象のメッセージそのもの、又は前記出力対象のメッセージから生成される検索キーのいずれか一方を前記データストアログとして出力される
    こと特徴とする障害特定方法。
  12.  請求項10に記載の障害特定方法であって、
     前記方法は、さらに、
     前記メッセージ受信部が、前記第2の検索部から前記特定されたメッセージに関する情報を受信した場合に、前記損失したメッセージを通知するための通知情報を生成するステップと、
     前記メッセージ受信部が、前記生成された通知情報を前記端末に送信するステップと、を含む
    ことを特徴とする障害特定方法。
  13.  請求項9に記載の障害特定方法であって、
     前記計算機システムは、
     前記端末を接続する第1のネットワークと、前記宛先となる装置を接続する第2のネットワークと、前記第1のネットワーク及び前記第2のネットワークを接続する複数の第3のネットワークと、を含み、
     前記複数の第3のネットワークの各々には、前記第1の計算機、前記第2の計算機、前記第3の計算機、及び前記第4の計算機が接続され、
     前記計算機システムは、
     前記複数の第3のネットワークと接続され、かつ、第2の監視部と、第2のログ収集部と、前記複数の第3のネットワーク毎に、前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを格納する第5の記憶部とを有する第5の計算機を備え、
     前記方法は、
     前記第2のログ収集部が、前記複数の第3のネットワークの各々の前記第4の計算機に対して、ログ取得要求を送信するステップと、
     前記第2のログ収集部が、受信した前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを前記第5の記憶部に格納するステップと、
     前記第2の監視部が、前記ログ取得要求に対する応答がない前記第4の計算機が存在するか否かを判定するステップと、
     前記第2の監視部が、前記ログ取得要求に対する応答がない前記第4の計算機が存在する場合、当該第4の計算機が接続される前記第3のネットワークの障害と判定するステップと、
     前記第2の監視部が、前記第5の記憶部から、前記障害が発生した第3のネットワークに対応する前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを読み出すステップと、
     前記第2の監視部が、障害が発生していない前記第3のネットワークに接続される前記第4の計算機に、読み出された前記受信ログデータ、前記データストアログデータ、及び前記送信ログデータを含む障害情報を送信するステップと、
     前記第2の検索部が、前記障害情報を受信した場合に、当該障害情報に基づいて、前記障害が発生した第3のネットワークにおいて前記損失したメッセージを検索するステップと、を含む
    ことを特徴とする障害特定方法。
  14.  請求項9に記載の障害特定方法であって、
     前記第1の計算機、前記第2の計算機、前記第3の計算機、及び前記第4の計算機は、同一の前記計算機の計算機資源を用いて実現される
    ことを特徴とする障害特定方法。
PCT/JP2014/063634 2013-05-27 2014-05-23 計算機システム及び障害特定方法 WO2014192641A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/893,247 US9852031B2 (en) 2013-05-27 2014-05-23 Computer system and method of identifying a failure

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013110830A JP5913196B2 (ja) 2013-05-27 2013-05-27 計算機システム及び障害特定方法
JP2013-110830 2013-05-27

Publications (1)

Publication Number Publication Date
WO2014192641A1 true WO2014192641A1 (ja) 2014-12-04

Family

ID=51988674

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/063634 WO2014192641A1 (ja) 2013-05-27 2014-05-23 計算機システム及び障害特定方法

Country Status (3)

Country Link
US (1) US9852031B2 (ja)
JP (1) JP5913196B2 (ja)
WO (1) WO2014192641A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6438871B2 (ja) * 2015-09-29 2018-12-19 東芝テック株式会社 情報処理装置及びプログラム
JP6328595B2 (ja) * 2015-09-29 2018-05-23 東芝テック株式会社 情報処理装置及びプログラム
KR102183582B1 (ko) * 2018-11-29 2020-11-26 동서대학교 산학협력단 비공개 데이터셋의 데이터 무결성 보장을 위한 블록체인 솔루션 제공 시스템, 그리고 이의 처리 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05316166A (ja) * 1992-05-11 1993-11-26 Oki Electric Ind Co Ltd 通信データ判定装置
JP2002278853A (ja) * 2001-03-21 2002-09-27 Hitachi Information Systems Ltd 分散オブジェクト環境における通信障害監視システムと通信障害監視方法およびプログラム
JP2004227360A (ja) * 2003-01-24 2004-08-12 Hitachi Ltd 統合ログ表示方法及びシステム
JP2007257288A (ja) * 2006-03-23 2007-10-04 Hitachi Ltd メッセージ回復システムおよび回復方法
JP2008181299A (ja) * 2007-01-24 2008-08-07 Fujitsu Ltd 通信エラー情報出力プログラム、通信エラー情報出力方法および通信エラー情報出力装置
JP2012088815A (ja) * 2010-10-15 2012-05-10 Toshiba Corp マイクロプロセッサ動作監視システム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1505603A (en) 1976-07-07 1978-03-30 Ibm Data processing systems
US20030110224A1 (en) * 2001-12-12 2003-06-12 Cazier Robert Paul Message auto-routing for electronic mail
US20070233789A1 (en) * 2006-03-31 2007-10-04 Microsoft Corporation Determining failed delivery of email messages using email notifications
US8239458B2 (en) * 2006-03-31 2012-08-07 Microsoft Corporation Determining failed delivery of email messages using email notifications
ES2896059T3 (es) * 2011-12-22 2022-02-23 Amadeus Método y sistema para el seguimiento y la verificación de mensajes

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05316166A (ja) * 1992-05-11 1993-11-26 Oki Electric Ind Co Ltd 通信データ判定装置
JP2002278853A (ja) * 2001-03-21 2002-09-27 Hitachi Information Systems Ltd 分散オブジェクト環境における通信障害監視システムと通信障害監視方法およびプログラム
JP2004227360A (ja) * 2003-01-24 2004-08-12 Hitachi Ltd 統合ログ表示方法及びシステム
JP2007257288A (ja) * 2006-03-23 2007-10-04 Hitachi Ltd メッセージ回復システムおよび回復方法
JP2008181299A (ja) * 2007-01-24 2008-08-07 Fujitsu Ltd 通信エラー情報出力プログラム、通信エラー情報出力方法および通信エラー情報出力装置
JP2012088815A (ja) * 2010-10-15 2012-05-10 Toshiba Corp マイクロプロセッサ動作監視システム

Also Published As

Publication number Publication date
US9852031B2 (en) 2017-12-26
US20160085638A1 (en) 2016-03-24
JP2014229249A (ja) 2014-12-08
JP5913196B2 (ja) 2016-04-27

Similar Documents

Publication Publication Date Title
CN109040252B (zh) 文件传输方法、系统、计算机设备和存储介质
US8275752B2 (en) Data backup method through distributed network, involves generating data segment copies to transmit to peer storage servers based on metadata with segment distribution matrix by calculating redundancy corresponding to data segments
CN108289034B (zh) 一种故障发现方法和装置
US11218541B2 (en) Data storage method, storage server, and storage medium and system
CN107040563B (zh) 异步服务处理方法及服务器
US9858152B2 (en) Collaborative information source recovery
CN110569085A (zh) 配置文件加载方法及系统
JP5517417B2 (ja) 監視装置及びその制御方法、並びに、プログラム
CN112925759B (zh) 数据文件的处理方法和装置、存储介质、电子装置
JP5913196B2 (ja) 計算機システム及び障害特定方法
CN109726039B (zh) 用于管理虚拟机的方法和设备
KR20170068533A (ko) 가상 카드 처리 방법 및 장치
CN111342986B (zh) 分布式节点管理方法及装置、分布式系统、存储介质
US8055991B2 (en) Error detection and recovery using an asynchronous transaction journal
JP4600324B2 (ja) ポリシー管理システム、ポリシーマネージャ、ポリシーエージェント、ルール生成方法及びプログラム
JP6697101B2 (ja) 情報処理システム
CN111182047B (zh) 用于在跨网络的大数据平台之间转移文件的方法和系统
CN114327563A (zh) 数据同步方法及装置、系统、存储介质、计算机系统
JP5939053B2 (ja) リモートバックアップ装置、リモートバックアップシステム、方法およびプログラム
US20150074265A1 (en) Transmission apparatus, transmission method, computer-readable storage medium storing transmission program, and relay system
US20230370959A1 (en) Systems and methods for retrieving ran information
US20240098629A1 (en) Systems and methods for retrieving ran information
CN116723159A (zh) 信息查询方法和相关设备
US9270522B2 (en) Replica deployment method and relay apparatus
US9223666B2 (en) Disaster recovery for databases

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14804190

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14893247

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14804190

Country of ref document: EP

Kind code of ref document: A1