Information processing apparatus
By storing only the information index of the log data in the information processing device and acquiring the log data using the bit sequence list of the space fill curve, the problem of high storage cost in the prior art is solved, and efficient and low-cost data acquisition is achieved.
Patent Information
- Application Number
- CN202411527647.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-11-16
- Filing Date
- 2024-10-30
- Publication Date
- 2025-05-16
AI Technical Summary
When sending data such as communication quality data logs from vehicles to cloud servers, the prior art requires large-capacity storage devices, resulting in high costs.
By storing only the information index related to the log data in the information processing device, and using a bit sequence list based on the spatial fill curve to express the location information representing the log data, the required log data is obtained each time.
It reduces the storage capacity and cost required when responding to data acquisition requests, and improves the efficiency and flexibility of data acquisition.
Smart Images

Figure CN120011596A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to a device for acquiring data logs. Background Art
[0002] There is known a technology for sending various data such as a data log indicating communication quality from a vehicle to a cloud server and storing the data in a storage device on the cloud server. Regarding this technology, for example, International Publication No. 2019 / 220630 discloses an information collection device that generates a link that associates acquired data with stored data based on the similarity between the acquired data and the stored data, generates a link that associates the stored data generated when the stored data is read, infers future requests for the stored data, and determines the storage period of the stored data in link units. Summary of the invention
[0003] An object of the present invention is to reduce the storage capacity and cost required when responding to a request to obtain data.
[0004] One embodiment of the present invention is an information processing device, which includes a control unit, which performs the following processing: causing a storage unit to store an information index related to log data collected by a vehicle and a storage destination of the log data associated with the information index; referring to the storage unit, extracting the storage destination of the first log data of the log data to be acquired, that is, a first storage device according to the information index; and requesting the first log data from a device having the first storage device, the information index including information indicating a location where the log data is collected, the information indicating the location where the log data is collected being expressed by a bit sequence based on a space filling curve.
[0005] Furthermore, as another aspect, there may be mentioned a method executed by the above-mentioned apparatus, a program for causing a computer to execute the method, or a computer-readable storage medium storing the program in a non-transitory manner.
[0006] According to the present invention, it is possible to reduce the storage capacity and cost required when responding to a data acquisition request. BRIEF DESCRIPTION OF THE DRAWINGS
[0007] Features, advantages, and technical and industrial significance of exemplary embodiments of the present invention are described below with reference to the accompanying drawings, in which like reference numerals represent like elements, and in which:
[0008] Figure 1 This is a diagram showing an overview of processing executed by a server device according to the embodiment.
[0009] Figure 2It is a diagram for explaining the components of a system including a server device according to an embodiment.
[0010] Figure 3A This is a flowchart of a series of processes such as obtaining an information index among processes executed by a control unit of a server device according to an embodiment.
[0011] Figure 3B This is a flowchart of a series of processes for determining a storage destination of log data to be acquired and acquiring the log data, among processes executed by a control unit of a server device according to an embodiment.
[0012] Figure 4A This is a diagram for explaining an example of coding expression of position information based on a space-filling curve.
[0013] Figure 4B This is a diagram for explaining an example of coding expression of position information based on a space-filling curve.
[0014] Figure 5 A diagram illustrating the specification of an area of an arbitrary shape expressed by a code based on a space-filling curve.
[0015] Figure 6 This is a flowchart of a process of specifying first log data executed by a control unit of a server device according to an embodiment. DETAILED DESCRIPTION
[0016] summary
[0017] It is assumed that various data such as data logs indicating communication quality are obtained from a vehicle as a mobile communication terminal, and the data is analyzed and used in various services. In such a system, various data are sent from the vehicle to the cloud server of the system and stored. However, if such a structure is adopted, a large-capacity storage device is required to store the data, which requires a huge cost. Therefore, the system preferably stores only an index for referencing the data, etc., rather than the data itself. Moreover, the system preferably obtains the data itself from a storage device provided in the vehicle or inside or near the vehicle each time as needed.
[0018] A system involved in one embodiment of the present invention comprises a control unit, which performs the following processing: causing a storage unit to store an information index related to log data collected by a vehicle and a storage destination of the log data associated with the information index; extracting the storage destination of the first log data, i.e., the first storage device, of the log data to be acquired based on the information index with reference to the storage unit; and requesting the first log data from a device having the first storage device, wherein the information index includes information indicating a location where the log data is collected, and the information indicating the location where the log data is collected is expressed by a bit sequence based on a space filling curve.
[0019] The log data is, for example, data indicating the communication quality when the vehicle communicates with the base station. The log data is not limited to data indicating the communication quality, and may be various data obtained as a result of processing performed by the vehicle or some system including the vehicle.
[0020] The information index is information related to the log data collected by the vehicle. The information index is various parameters used to identify the log data. For example, the information index may include the date and time when the log data was collected, information indicating the location where the log data was collected (location information, for example, including latitude and longitude information, etc.), the vehicle identifier of the vehicle where the log data was collected, etc.
[0021] In addition, the "position" in the present invention is a concept including a point and an area of any shape. A point may include a specified uncertainty, and the uncertainty may be, for example, a circle, an ellipse, or a rectangle. An example of an area of any shape may be a polygon (including any quadrilateral such as a rectangle, a parallelogram, a trapezoid, and a polygon with a triangle or more than a pentagon), a circle, an ellipse, and a combination of at least a part thereof. In the present invention, at least any one of the information representing these positions and the information related to the position is equivalent to the "position information".
[0022] Furthermore, the location information represents an area and may have a number of bits corresponding to the width of the area. Typically, the wider the area (i.e., the coarser the granularity), the shorter the number of bits can be used to express the location information, and the narrower the area (i.e., the finer the granularity), the longer the number of bits can be used to express the location information.
[0023] The position information can be expressed by a bit sequence in which a first bit sequence for determining a first direction and a second bit sequence for determining a second direction are alternately arranged every predetermined number of bits (for example, every 1 bit). Here, the first direction and the second direction are different directions. As an example, the first direction and the second direction are orthogonal. For example, the first direction may be a latitude direction, and the second direction may be a longitude direction.
[0024] The storage unit is a storage device provided in the information processing device according to the present invention. The storage unit is composed of a memory. The storage unit stores information indexes acquired from the vehicle and information indicating a storage destination of log data.
[0025] The first storage device refers to a storage device located outside the information processing device involved in the present invention. The first storage device generally refers to a storage device provided by a vehicle. Alternatively, the first storage device may be a server device provided inside or near the vehicle. The first storage device stores log data collected by the vehicle.
[0026] The first log data is target log data that the control unit acquires from the first storage device. The first log data can be identified by an acquisition request from an external device.
[0027] A space-filling curve is a curve whose range is two-dimensional and contains the entire unit square.
[0028] Thus, the information processing device of the present invention only stores information indexes and can refer to external storage devices to obtain the desired log data each time. Therefore, the information processing device of the present invention can reduce the storage capacity and cost required when responding to data acquisition requests.
[0029] Furthermore, the information indicating the location where the log data is collected may be expressed by a bit sequence based on a Hilbert curve or a z-order curve.
[0030] The space filling curve can be, for example, a Hilbert curve or a Z-order curve. Therefore, the position information included in the information index can be expressed by a bit sequence based on the Hilbert curve or the Z-order curve.
[0031] Thus, the information processing device according to the present invention can quickly determine the inclusion relationship between the position indicated by the information included in the information index and the position for specifying the first log data by using the expression based on the space filling curve.
[0032] Furthermore, the control unit can receive a request from an external device to obtain the first log data that meets specified specified conditions including a specified area, compare a bit sequence based on a space filling curve representing the specified area with a bit sequence of information represented by the position contained in the information index, and when the position is within the specified area, obtain log data corresponding to the information index including the information represented by the position from the first storage device as the first log data, and send the obtained first log data to the external device.
[0033] Thus, the information processing device of the present invention can quickly determine the first log data requested by the external device and efficiently obtain it from the first storage device. Therefore, the information processing device of the present invention can reduce the cost of searching for the first log data. That is, the information processing device of the present invention can effectively perform the process of obtaining the first log data and sending it to the external device.
[0034] Furthermore, the information index may also include at least any one of the following as parameters included in the conditions for specifying the first log data: information indicating whether an event related to the driving speed of the vehicle or the driving state of the vehicle, i.e., a vehicle safety incident, has occurred, and a log level indicating the severity of the content represented by the log data.
[0035] Thus, the information processing device according to the present invention can provide log data determined by a plurality of division methods to an external device.
[0036] Furthermore, the control unit may cause the storage unit to store a vehicle identification number (VIN) as information indicating the storage destination of the log data, the vehicle identification number (VIN) being a parameter included in the condition for specifying the first log data.
[0037] Thus, the information processing device according to the present invention can identify the vehicle as the storage destination of the first log data.
[0038] The following will describe specific embodiments of the present invention with reference to the accompanying drawings. Unless otherwise specified, the hardware structure, module structure, functional structure, etc. described in each embodiment are not intended to limit the disclosed technical scope to these contents.
[0039] Implementation
[0040] Overview of server device processing
[0041] refer to Figure 1 An overview of processing performed by the server device according to the embodiment will be described. Figure 1 A diagram showing an overview of processing performed by a server device 100 according to an embodiment is shown. Here, the server device 100 is an example of an information processing device according to the present invention. The server device 100 performs wireless communication with a plurality of vehicles 200. The plurality of vehicles 200 are mobile communication terminals having a communication function, and perform stable communication with various communication devices or other vehicles via a base station or directly.
[0042] First, the plurality of vehicles 200 collect log data indicating the communication quality of the communication performed by each vehicle 200. Then, the plurality of vehicles 200 store the collected log data in a storage unit mounted on each vehicle 200. Alternatively, the plurality of vehicles 200 store the collected log data in a storage device such as a server device installed inside or near each vehicle 200.
[0043] Next, the server device 100 communicates with each of the multiple vehicles 200, obtains the information index of the log data collected by each vehicle 200 and the information indicating the storage destination of the log data associated with the information index, and records it in the storage unit of the server device 100. The information index is information containing various parameters for determining the log data. For example, the information index contains information related to the date and time when the corresponding log data is collected, information related to the location where the corresponding log data is collected (for example, latitude and longitude information), and the vehicle identifier of the vehicle 200 where the corresponding log data is collected. That is, the server device 100 only records the information index whose data volume is smaller than the log data itself and the information indicating the storage destination of the corresponding log data in the storage unit, rather than recording the log data itself in the storage unit.
[0044] Next, the server device 100 receives an acquisition request from the external device, which is information requesting to acquire specific log data (hereinafter referred to as target log data). The external device uses at least one of the parameters included in the information index to determine the target log data, and instructs the server device 100 to acquire the target log data.
[0045] Next, the server device 100 checks the parameters used to determine the object log data with the parameters contained in the information index recorded in the storage unit. Then, the storage destination of the object log data is determined by extracting the storage destination of the log data associated with the information index containing the parameters consistent with the parameters used to determine the object log data. That is, the server device 100 determines the log data corresponding to the object log data from the information index, and also determines the storage destination of the log data associated with the information index. Specifically, the server device 100 determines the vehicle 200 storing the object log data or a storage device provided inside or near the vehicle 200 as the storage destination of the log data associated with the information index.
[0046] Then, the server device 100 requests and obtains the object log data from the determined storage destination of the object log data. Specifically, the server device 100 requests the vehicle 200 storing the object log data to send the object log data to the server device 100, and obtains the object log data. Furthermore, in the case where the object log data is stored in a storage device provided inside or near the vehicle 200 but not stored in the vehicle 200, the server device 100 requests the storage device to send the object log data to the server device 100, and obtains the object log data.
[0047] Finally, the server device 100 transmits the acquired target log data to the external device.
[0048] In this way, the server device 100 only records the information index but not the log data itself in the storage unit, and refers to the external storage device each time to obtain the desired log data. Therefore, compared with the case where the log data itself is directly recorded in the storage unit, the server device 100 can respond to the log data acquisition request with less storage capacity.
[0049] According to this configuration, the information processing device according to the present invention can reduce the storage capacity and cost required when responding to a data acquisition request.
[0050] Server device and vehicle structure
[0051] Figure 2 1 is a diagram for explaining the components of a system including a server device 100 according to an embodiment. Figure 2 In the embodiment, the server device 100 may be a collection of one or more computers (cloud).
[0052] The server device 100 according to the present embodiment includes a control unit 110 , a storage unit 120 , and a communication unit 130 .
[0053] The control unit 110 is implemented by a processor such as a central processing unit (CPU) or a graphics processing unit (GPU) and a memory. The control unit 110 includes an acquisition unit 111, a recording unit 112, a receiving unit 113, an extraction unit 114, and a request unit 115 as functional modules. These functional modules can be implemented by executing a program by the control unit 110.
[0054] The acquisition unit 111 acquires information indexes related to log data collected by the vehicle 200 and information indicating storage destinations of log data associated with the information indexes from the vehicle 200. The acquisition unit 111 communicates with the communication unit 230 of the vehicle 200 via the communication unit 130 to acquire the above data.
[0055] The recording unit 112 records the information index acquired by the acquisition unit 111 and the information indicating the storage destination of the log data in the storage unit 120. The recording unit 112 associates the information index with the information indicating the storage destination of the log data corresponding to the information index, and records it in the storage unit 120. In addition, the recording unit 112 converts the information (position information) related to the location where the log data is collected contained in the information index from the form represented by the latitude and longitude information, etc. into the position code form, and records it in the storage unit 120. For example, the recording unit 112 can convert the location information of the place where the log data is collected contained in the information index into a bit sequence using a space filling curve (for example, a Hilbert curve, etc.).
[0056] The receiving unit 113 receives a request for obtaining the first log data from an external device. Here, the first log data refers to log data of an object specified by the external device and obtained from a storage device or the like provided in the vehicle 200 or inside or near the vehicle 200. The request for obtaining the first log data may include, as a condition for specifying the first log data, the specification of a prescribed area in which the first log data is collected.
[0057] The extracting unit 114 refers to the storage unit 120 and extracts the storage destination of the first log data, that is, the first storage device, based on the parameter included in the recorded information index and the parameter for determining the first log data included in the acquisition request. The extracting unit 114 performs the above-mentioned processing based on the acquisition request for the first log data received by the receiving unit 113. The extracting unit 114 extracts the first storage device from the plurality of storage destinations included in the plurality of information indicating the storage destinations of the log data.
[0058] When the request to obtain the first log data includes the designation of a prescribed area in which the first log data is collected, the extraction unit 114 may compare the bit sequence based on the space filling curve representing the prescribed area with the bit sequence of the positions included in the plurality of information indexes stored in the storage unit 120. Then, when the position included in the information index is within the prescribed area as a result of the comparison, the extraction unit 114 determines that the log data corresponding to the information index including the position is the first log data. Then, the extraction unit 114 may extract the storage destination of the log data associated with the information index including the position as the first storage device.
[0059] The request unit 115 requests and obtains the first log data from the device having the first storage device extracted by the extraction unit 114. For example, when the first storage device is the storage unit 220 provided in the vehicle 200, the request unit 115 transmits information requesting that the first log data be transmitted to the server device 100 to the vehicle 200, and obtains the first log data. Furthermore, when the first storage device is a storage device provided inside or near the vehicle 200, for example, information requesting that the first log data be transmitted to the server device 100 is transmitted to the storage device, and the first log data is obtained.
[0060] Then, the request unit 115 transmits the acquired first log data to the external device that transmits the acquisition request of the first log data to the server device 100. The request unit 115 communicates with the external device via the communication unit 130 and transmits the first log data.
[0061] The storage unit 120 is a main storage device such as RAM or ROM, an auxiliary storage device such as EPROM, a hard disk drive, and a removable medium. The auxiliary storage device stores an operating system (OS), various programs, various tables, etc., and by executing the programs stored therein, various functions consistent with the prescribed purposes of each part of the control unit 110 can be realized. However, some or all of the functions can also be realized by hardware circuits such as ASIC or FPGA.
[0062] The storage unit 120 stores data used or generated in the process of the control unit 110 and the like. The storage unit 120 also stores information indicating an information index received from the vehicle 200 and the like and a storage location of log data.
[0063] The communication unit 130 is composed of a communication circuit for performing wireless communication. The communication unit 130 may be, for example, a communication circuit for performing wireless communication using 4G (4th Generation) or a communication circuit for performing wireless communication using 5G (5th Generation). Furthermore, the communication unit 130 may be a communication circuit for performing wireless communication using Long Term Evolution (LTE) or a communication circuit for performing communication based on Low Power Wide Area (LPWA). Furthermore, the communication unit 130 may be a communication circuit for performing wireless communication using Wi-Fi (registered trademark).
[0064] Next, the vehicle 200 that communicates with the server device 100 will be described.
[0065] The vehicle 200 is a vehicle such as a car. The vehicle 200 may be a truck or a bus. The vehicle 200 includes a control unit 210, a storage unit 220, a communication unit 230, and a drive unit 240. The vehicle 200 periodically communicates with a base station or other vehicles or communication devices. In addition, the vehicle 200 periodically sends information indexes and information indicating a storage destination of log data to the server device 100, and sends the log data stored in itself when requested by the server device 100.
[0066] The control unit 210 controls an electronic control unit (ECU) and the like mounted on the vehicle 200. The control unit 210 is implemented by a processor such as a CPU or a GPU and a memory. The control unit 210 includes a data collection unit 211 as a software module. The control unit 210 can control the storage unit 220, the communication unit 230, and the drive unit 240 by executing a program.
[0067] The data collection unit 211 collects log data indicating the quality of communication performed by the vehicle 200. The data collection unit 211 includes information such as the date and time of collection, the location of collection (for example, indicated by latitude and longitude information), and the vehicle identifier of the vehicle 200 for each piece of log data collected.
[0068] The storage unit 220 is a main storage device such as RAM or ROM, an auxiliary storage device such as EPROM, a hard disk drive, and a removable medium. The auxiliary storage device stores an operating system (OS), various programs, various tables, etc., and by executing the programs stored therein, various functions consistent with the prescribed purposes of each part of the control unit 210 can be realized. However, some or all of the functions can also be realized by hardware circuits such as ASIC or FPGA.
[0069] The storage unit 220 stores data used or generated in the process of the control unit 210 and the like. The storage unit 220 may store log data.
[0070] The communication unit 230 is composed of a communication circuit that performs wireless communication. The communication unit 230 may be, for example, a communication circuit that performs wireless communication using 4G, or a communication circuit that performs wireless communication using 5G. Furthermore, the communication unit 230 may be a communication circuit that performs wireless communication using LTE, or a communication circuit that performs communication based on LPWA. Furthermore, the communication unit 230 may also be a wireless communication circuit that uses Wi-Fi (registered trademark).
[0071] The driving unit 240 is a mechanism for driving the vehicle 200. The driving unit 240 may include, for example, a motor for driving wheels, an inverter, a brake, and a steering mechanism. The driving unit 240 may be operated by power supplied from a battery.
[0072] Operation of the server device
[0073] Next, the specific content of the processing performed by the server device 100 is described. Figure 3A and Figure 3B This is a flowchart of a process executed by the control unit 110 of the server device 100 according to the embodiment.
[0074] First, the processing of acquiring the information index and the like performed by the server device 100 will be described. Figure 3A This shows a series of processing such as obtaining an information index among the processing performed by the server device 100 .
[0075] First, in S10, the acquisition unit 111 acquires information indexes and information indicating storage destinations of log data from a plurality of vehicles 200. In addition, the information indicating storage destinations of log data is associated with the information indexes corresponding to the log data. The acquisition unit 111 communicates with the communication unit 230 of the vehicle 200 via the communication unit 130 and acquires the above data.
[0076] The information index may include information indicating whether a vehicle safety event related to the driving speed of the vehicle 200 and the driving state of the vehicle 200 has occurred, a vehicle identification number (VIN), and at least one of a log level indicating the severity of the content represented by the log data. These are parameters included in the conditions for specifying the first log data. Here, the vehicle safety event may be, for example, a sudden acceleration or sudden braking. Whether a vehicle safety event has occurred is detected by various sensors such as an acceleration sensor or a gravity sensor mounted on the vehicle 200.
[0077] The information indicating the storage destination of the log data may include a vehicle identification number (VIN).
[0078] Next, in S11, the recording unit 112 encrypts the information index and the information indicating the storage destination of the log data acquired by the acquisition unit 111. For example, the recording unit 112 can encrypt the information index and the information indicating the storage destination of the log data using encryption algorithms such as RSA encryption, Data Encryption Standard (DES), Triple DES, Advanced Encryption Standard (AES), and Twofish.
[0079] Next, in S12, the recording unit 112 records the information index encrypted in S11 and the information indicating the storage destination of the log data in the storage unit 120. The recording unit 112 associates the information index with the information indicating the storage destination of the log data corresponding to the information index, and records it in the storage unit 120. In addition, the recording unit 112 can convert the location of the corresponding log data collected contained in the information index from the latitude and longitude information into an expression through a bit sequence based on a space filling curve and record it. Specifically, the location of the corresponding log data collected contained in the information index can be expressed by a bit sequence based on a Hilbert curve or a z-order curve.
[0080] Next, a description will be given of a process performed by the server device 100 to determine a storage location of log data to be acquired and to acquire the log data. Figure 3B 1 shows a series of processes performed by the server device 100 to determine the storage destination of the log data to be acquired and acquire the log data. Figure 3B The processing described in Figure 3A The processing is executed continuously in time. Figure 3A It can be executed after the processing.
[0081] First, in S20, the receiving unit 113 receives a request to obtain first log data as log data to be obtained from an external device. Here, the request to obtain first log data is information from the external device instructing the server device 100 to send the first log data to the external device.
[0082] Next, in S21, the extraction unit 114 determines the information index of the log data that is consistent with the first log data. Specifically, the extraction unit 114 checks the parameters used in the conditions for determining the first log data with the parameters contained in the multiple information indexes recorded in the storage unit 120. Then, the extraction unit 114 extracts the information index of the log data that is consistent with the first log data. For example, the information index includes information indicating the location where the log data is collected. The information indicating the location where the log data is collected is expressed by a bit sequence based on a space filling curve. The method of expressing the information indicating the location where the log data is collected by a bit sequence based on a space filling curve will be described later.
[0083] Next, in S22, the extracting unit 114 extracts the first storage device which is the storage destination of the first log data. The extracting unit 114 refers to the information indicating the storage destination of the log data associated with the information index identified in S21, and extracts the storage destination as the first storage device.
[0084] Next, in S23, the request unit 115 obtains the first log data from the first storage device extracted in S22. The request unit 115 sends information requesting the device having the first storage device to send the first log data to the server device 100, and obtains the first log data by communicating with the device.
[0085] Next, in S24, the request unit 115 transmits the first log data acquired in S23 to the external device. The request unit 115 communicates with the external device via the communication unit 130 and transmits the first log data to the external device.
[0086] Thus, the server device 100 can provide the log data collected by the vehicle 200 to the external device upon request even if it does not have a large storage capacity. Therefore, the server device 100 can reduce the storage capacity and cost required to respond to the data acquisition request.
[0087] Expression of location information
[0088] Next, the bit sequence expression of the position information based on the space filling curve is described.
[0089] Figure 4A and Figure 4B This is a diagram for explaining the bit sequence expression of position information based on a space filling curve (in other words, the method of generating a position code). The position code expresses the position as a rectangle with a specified range. Specifically, a first bit sequence for determining the position in the latitude direction (first direction) and a second bit sequence for determining the position in the longitude direction (second direction) are defined, and a rectangular area is specified by a combination of these bits.
[0090] Figure 4A The example of is an example of dividing the entire area 50 into two parts along the latitude and longitude directions respectively, and defining a total of four areas. Since the latitude direction and the longitude direction are divided into two parts, the bit sequence representing the position in the latitude direction and the longitude direction is 1 bit long. For example, the area 51 is expressed by 2 bits "00" by combining the bit "0" representing the position in the latitude direction and the bit "0" in the longitude direction.
[0091] Figure 4B The example is an example in which the entire area 50 is divided into four parts along the latitude and longitude directions, and a total of 16 areas are defined. Since the latitude and longitude directions are divided into four parts, the bit sequence representing the position in the latitude and longitude directions is 2 bits long. Figure 4B In the subdivision Figure 4A Therefore, the bit sequence in the latitude and longitude directions is determined by Figure 4A It is created by appending 1 bit to the bit sequence in . Figure 4B Each area 52 to 55 in is expressed by a bit sequence that alternately configures a bit sequence indicating the latitude direction and a bit sequence indicating the longitude direction. For example, area 53 is expressed as "0001" by alternately configuring a bit sequence "00" that determines the longitude direction and a bit sequence "01" that determines the latitude direction. Figure 4A and Figure 4B In FIG. 1 , for the sake of explanation, the bit sequence that determines the latitude direction is indicated by an underline.
[0092] The position code is determined according to this rule, so the width of the area (rectangle) represented by the position code becomes the width corresponding to the number of bits of the position code. Specifically, the smaller the number of bits, the wider the area, and the larger the number of bits, the narrower the area. In addition, every time the segmentation level increases by one level, the width of the area becomes 1 / 4, and the position code increases by 2 bits. The area of the upper level (for example, area 51) is equal to the total of the areas of the lower level (for example, areas 52 to 55).
[0093] In addition, here, the two-dimensional position code is described, but the position and area in the three-dimensional space can be expressed according to the three-dimensional space filling curve with increased height. In the present invention, the three-dimensional position of the UE can be expressed in the form of a position code, or the three-dimensional position of the UE can be expressed in the form of a combination of a two-dimensional position code and a height.
[0094] Furthermore, regarding the position code of the area of the lower level contained in the area of the upper level, the upper bits are the same as the position code of the area of the upper level. For example, the upper 2 bits of each area of areas 52 to 55 are equal to the position code "00" of area 51 of the upper level containing these areas. Therefore, according to this code expression, the inclusion relationship between areas can be easily confirmed by comparing only the bit sequence, in other words, by bit logic operation. In addition, this confirmation of the inclusion relationship based on the consistency judgment of the upper bits can be applied to the comparison of areas between any levels.
[0095] Figure 5 As one example of expressing an area of an arbitrary shape in a position code, a diagram is provided to illustrate an example of expressing a circular area 80 in the form of a position code. In this example, the following situation is shown: the circular area 80 represented by the dotted line can be expressed by a combination of 4 rectangular areas 81 expressed by 4 bits and 8 rectangular areas 82 expressed by 6 bits. In this way, an area of an arbitrary shape can be expressed by listing a plurality of bit sequences representing rectangular areas. In addition, Figure 5 The description only shows an outline, and the bit sequence representing each rectangular area can be larger.
[0096] Thus, in order to determine the inclusion relationship between the area represented by the position code format specifying the first log data and the position code included in the information index, the inclusion relationship between each rectangular area constituting the area and the position code of the information index is confirmed by comparing the upper bits, and it is sufficient to determine whether the position represented by the position code of the information index is included in any rectangular area. Since it is a simple process of comparing the bit sequence (bit logical OR operation), even if the number of rectangles constituting the area is large, a fast determination process can be performed.
[0097] Details of the server device's operation
[0098] Next, the details of the first log data acquisition process performed by the control unit 110 of the server device 100 will be described. Figure 6 This is a flowchart of a process of determining first log data executed by the control unit 110 of the server device 100 according to the embodiment. When the server device 100 receives a request to obtain the first log data from an external device, it is necessary to determine the corresponding information index based on the location information specifying the first log data, and extract the storage destination of the first log data associated with the information index. Figure 6 This shows a process in which the server device 100 compares the position information specifying the first log data for which an acquisition request has been received from the external device with the position information included in the information index.
[0099] First, in S30, the extracting unit 114 compares a bit sequence based on a space filling curve indicating a predetermined region of the first log data with a bit sequence of position information included in the information index. Here, the bit sequence of position information included in the information index is also represented by a bit sequence based on a space filling curve.
[0100] Next, in S31, the extraction unit 114 determines whether the position represented by the bit sequence of the position information included in the information index is included in the specified area. Specifically, the extraction unit 114 determines whether the bit sequence representing the position information for specifying the specified area of the first log data is consistent with the bit sequence of the position information included in the information index. Here, "consistent" not only includes overlap in a strict sense, but also includes another one included in an area with a specified width. For example, consider a case where the area represented by the bit sequence representing the position information for specifying the specified area of the first log data is wider than the area represented by the bit sequence of the position information included in the information index. In this case, the extraction unit 114 can determine whether the upper bits of the bit sequence of the position information included in the information index are consistent with the bit sequence representing the position information for specifying the specified area of the first log data.
[0101] In this step, when the extraction unit 114 determines that the position indicated by the bit string of the position information included in the information index is included in the predetermined area, it is a positive determination.
[0102] When an affirmative determination is made in this step, the process proceeds to S32.
[0103] If a negative determination is made in this step, the processing ends.
[0104] When the process moves to S32 , the extracting unit 114 determines that the log data corresponding to the information index is the first log data to be acquired.
[0105] Thus, the server device 100 can easily extract the log data collected within the specified area (typically, the first log data to be acquired) by managing the location information indicating the location where the log data is collected in the form of a location code. Therefore, the server device 100 can quickly provide the log data collected within the specified area to the external device.
[0106] As described above, in the present embodiment, the server device 100 records only the information index having a smaller amount of data than the log data and the information indicating the storage destination of the log data in its own storage unit 120. The server device 100 does not record the log data itself in its own storage unit 120. Then, based on the information index recorded in its own storage unit 120 and the information indicating the storage destination of the log data, the storage destination of the specific log data, i.e., the first storage device, is determined, and the specific log data is obtained from the first storage device. Thus, the server device 100 can obtain the log data requested from the external device with less storage capacity than when the log data itself is recorded in its own storage unit 120, and provide it to the external device.
[0107] Other variations
[0108] The above-described embodiment is merely an example, and the present invention can be implemented with appropriate modifications without departing from the gist of the invention.
[0109] In the above embodiment, the server device 100 converts the location information indicating the location where the log data is collected from the latitude and longitude information into a location code format, but the present invention is not limited thereto. The data collection unit 211 of the vehicle 200 may represent the location information indicating the location where the log data is collected as a bit sequence using a space filling curve (e.g., a Hilbert curve, etc.), and include it in the log data.
[0110] In the above embodiment, log data indicating communication quality is used as the acquisition object, but the acquisition object is not limited to log data, and other data such as image data may also be used as the acquisition object. In addition, the information index may include parameters related to the capability of the types of data that can be collected.
[0111] The present invention can also be implemented by supplying a computer program that installs the functions described in the above embodiment to a computer, and reading and executing the program by one or more processors of the computer. Such a computer program can be provided to the computer via a non-temporary computer-readable storage medium that can be connected to the system bus of the computer, or it can be provided to the computer via a network. Non-temporary computer-readable storage media include, for example, any type of disk (floppy disk (registered trademark), hard disk drive (HDD)), optical disk (CD-ROM, DVD optical disk, Blu-ray disk, etc.), read-only memory (ROM), random access memory (RAM), EPROM, EEPROM, magnetic card, flash memory, optical card, and any type of medium suitable for storing electronic instructions.
Claims
1. An information processing device, characterized in that Equipped with a control unit, The control unit performs the following processing: causing a storage unit to store an information index related to log data collected by the vehicle and a storage destination of the log data associated with the information index; referring to the storage unit, and extracting a first storage device which is a storage destination of first log data of the log data to be acquired according to the information index; and requesting the first log data from a device having the first storage device, The information index includes information indicating a location where the log data is collected. The information indicating the location where the log data is collected is expressed by a bit sequence based on a space filling curve.
2. The information processing device according to claim 1, characterized in that The information indicating the position where the log data is collected is expressed by a bit sequence based on a Hilbert curve or a z-order curve.
3. The information processing device according to claim 1 or 2, characterized in that: The control unit receives a request from an external device to obtain the first log data that meets specified conditions, wherein the specified conditions include the designation of a specified area. The control unit compares a bit sequence based on a space filling curve representing the specified area with a bit sequence of information representing the position contained in the information index, and when the position is within the specified area, obtains the log data corresponding to the information index containing the information representing the position from the first storage device as the first log data, and sends the obtained first log data to the external device.
4. The information processing device according to claim 1, characterized in that The information index also includes at least one of the following as parameters included in the conditions for specifying the first log data: information indicating whether an event related to the vehicle's driving speed or the vehicle's driving state, i.e., a vehicle safety incident, has occurred, and a log level indicating the severity of the content represented by the log data.
5. The information processing device according to claim 1, characterized in that The control unit causes the storage unit to store a vehicle identification number as information indicating the storage destination of the log data, the vehicle identification number being a parameter included in the condition for specifying the first log data.