WO2016206605A1 - 一种客户端数据的采集方法和装置 - Google Patents

一种客户端数据的采集方法和装置 Download PDF

Info

Publication number
WO2016206605A1
WO2016206605A1 PCT/CN2016/086895 CN2016086895W WO2016206605A1 WO 2016206605 A1 WO2016206605 A1 WO 2016206605A1 CN 2016086895 W CN2016086895 W CN 2016086895W WO 2016206605 A1 WO2016206605 A1 WO 2016206605A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
length
value
feature
character
Prior art date
Application number
PCT/CN2016/086895
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 北京奇虎科技有限公司
Publication of WO2016206605A1 publication Critical patent/WO2016206605A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques

Definitions

  • the present invention relates to the technical field of computer processing, and in particular, to a method for collecting client data and a device for collecting client data.
  • Application developers often further improve the design of third-party applications to enhance the user experience by collecting data related to third-party applications.
  • the present invention has been made in order to provide a client data collecting method and a corresponding client data collecting device that overcome the above problems or at least partially solve the above problems.
  • a method for collecting client data including:
  • the uploading request includes the identifier information, and the first data having a length of the first string length;
  • the feature information includes a second feature value and a second string length
  • a device for collecting client data including:
  • the data uploading request receiving module is adapted to receive a data uploading request sent by the client; the uploading request includes the identifier information and the first data whose length is the length of the first character string;
  • a first feature value calculation module configured to calculate a first feature value for the first data
  • a feature information search module configured to: search for feature information generated based on the second data corresponding to the identifier information; the feature information includes a second feature value and a second string length;
  • a string length judging module configured to determine, when the feature information is found, whether the length of the first string is equal to the length of the string
  • the feature value judging module is configured to determine whether the first feature value and the second feature value are the same when the first character string length is equal to the second character string length; if yes, the reject module is invoked, If not, the first write module is called;
  • a first write module adapted to write the first data to cover the second data.
  • a program comprising readable code that, when executed on a computing device, causes the computing device to perform a client according to any of the embodiments of the present invention The method of collecting end data.
  • a readable medium in which a program as described in an embodiment of the present invention is stored.
  • the character string is weighted by the double check mechanism, and the feature value is stitched on the basis of the length of the string.
  • the length of the string is the same.
  • the first data is It may be the same as or different from the second data. Therefore, it is verified whether the feature values are the same again. If the feature values are the same, it may indicate that the first data is the same as the second data. If the feature values are different, it may indicate that the first data is different from the second data, first parsing a simple string length, and then parsing the complex feature values, and compressing the data resolution level, thereby greatly improving the string verification efficiency. .
  • the embodiment of the invention refuses to write the first data, which greatly reduces the read and write operations of the database, reduces the pressure on the server, and ensures the normal operation of the server.
  • the embodiment of the present invention calculates the hash value based on the logic of adding the jump value, and guarantees the efficiency of the operation by sacrificing a small part of the collision rate, thereby ensuring the real-time performance of the data analysis and ensuring the operational stability of the parsing operation.
  • FIG. 1 is a flow chart showing the steps of a method for collecting client data according to an embodiment of the present invention
  • FIG. 2 shows an architectural diagram of a user session system in accordance with one embodiment of the present invention
  • FIG. 3 is a diagram showing an example of calculation of a hash value according to an embodiment of the present invention.
  • FIG. 4 is a flow chart showing the steps of a method for collecting client data according to another embodiment of the present invention.
  • FIG. 5 is a structural block diagram of an embodiment of a device for collecting client data according to an embodiment of the present invention
  • Figure 6 is a schematic block diagram of a computing device for performing a method in accordance with an embodiment of the present invention.
  • Fig. 7 schematically shows a storage unit for holding or carrying program code implementing a method according to an embodiment of the invention.
  • FIG. 1 is a flow chart showing the steps of a method for collecting client data according to an embodiment of the present invention, which may specifically include the following steps:
  • Step 101 Receive a data upload request sent by a client.
  • the user session (session) system is an independent back-end asynchronous system that provides business entities such as games and so on.
  • the Presentation Layer in the user session system is user-oriented and is characterized by an APP (Application) such as a browser, an instant messaging tool, a game application, and the like.
  • APP Application
  • the App Server API (application service interface) is provided in the external business layer of the user session system, and the user can log in in the APP, and send a data upload request by calling the App Server API of the user session system in the operation of the APP.
  • the uploading request may include identification information, first data having a length of the first string length, and requesting to upload the first data, for example, an installed application name, a version number, a channel number, an account information, and the like.
  • the identifier information may include a user identifier (such as a user account) and a terminal identifier (such as an International Mobile Equipment Identity (IMEI) code) for identifying the user and the terminal.
  • a user identifier such as a user account
  • a terminal identifier such as an International Mobile Equipment Identity (IMEI) code
  • the Service Layer in the user session system provides a Common Service. When receiving a processing request from the App Server API, it can perform corresponding processing.
  • Step 102 Calculate a first feature value for the first data.
  • the first feature value may be data representing the first data feature, and may be obtained by various encryption methods.
  • step 102 may include the following sub-steps:
  • Sub-step S11 when the first character string length is less than or equal to a preset length threshold, calculating a hash value for each character in the first data;
  • Sub-step S12 the hash values of each character are accumulated to obtain a first feature value.
  • the repetition rate of the characters in the first data is high, and each character can be operated to obtain a hash value, that is, in the present invention.
  • the jump value is 1.
  • the hash value may be calculated using time33, that is, the iteration is multiplied by 33 for each character in the first data.
  • the first character string has a length of 16 bits, which is equal to the preset length threshold value 16.
  • the jump value is kept at 1, and each character is multiplied by 33. Accumulate to obtain the first eigenvalue.
  • step 102 may include the following sub-steps:
  • Sub-step S21 when the first character string length is greater than a preset length threshold, calculating a jump value according to the first character string length
  • the preset length threshold such as 16 bits
  • the repetition rate of the characters in the first data is lower, and the partial values of the characters may be selected according to the jump value to perform the operation to obtain the hash value.
  • the remainder obtained by dividing the length of the first string by the preset value may be set to a jump value.
  • Sub-step S22 calculating a hash value for the character matching the jump value in the first data
  • Sub-step S23 the hash value of the character with the jump value is accumulated to obtain a first feature value.
  • the character matching the jump value is a character whose offset from the 0th character is a jump value.
  • time33 to calculate the hash value, as shown in Figure 3, in memory.
  • the calendar addressing shifts the value to the left by 5 bits plus itself, then continues addressing and repeats the previous calculation to accumulate until the end of the traversal, obtaining the first feature.
  • the first character string has a length of 26 bits, which is greater than a preset length threshold of 16, and the length of the first character string is 26 bits divided by a preset value of 8, resulting in an integer of 3, as Jump value.
  • the characters of the 0th, 3rd, 6th, 9th, 12th, 15th, 21st, and 24th bits are multiplied by 33 to obtain the first feature value.
  • the logic for taking the jump value of 8 bits is added to the calculation of the hash value in the manner of time 33 or the like, mainly because the service-oriented service scenario is a fast weighting of the user uploading the variable length string. Judging whether the user currently uploads the data and the stored data are compared, the collision rate for the hash value calculation is not high. When the user frequently uploads the same data or uploads the length of the unconventional string, the weight can be quickly determined. Therefore, by sacrificing a small part of the collision rate to ensure the efficiency of the operation, both the real-time performance of the data analysis and the operational stability of the parsing operation are guaranteed.
  • the jump value is calculated by taking a preset value such as 8 bits, thereby preventing a high collision rate of the short character string.
  • Step 103 it is found whether the feature information generated based on the second data corresponding to the identifier information is stored; when the feature information is found, step 104 is performed;
  • the user center (User Center SDK) can be accessed through the data layer (Database Layer), and the user-related information is stored in the user center, and if the APP is previously uploaded based on the APP, The second data generation feature information can then be stored at the user center.
  • Data Layer Data layer
  • the feature information may include a second feature value and a second string length.
  • Step 104 determining whether the length of the first character string is equal to the length of the second character string; when the length of the first character string is equal to the length of the character string, step 105 is performed;
  • Step 105 it is determined whether the first feature value and the second feature value are the same; if yes, step 106 is performed; if not, step 107 is performed;
  • the string is weighted by the double check mechanism, and the string is The splicing feature values are based on the length.
  • the length of the simple string is parsed first, and then the complex feature values are parsed. Data parsing is compressed, which greatly improves the efficiency of string verification.
  • Step 106 refusing to write the first data
  • Step 107 Write the first data to cover the second data.
  • the embodiment of the invention refuses to write the first data, which greatly reduces the read and write operations of the database, reduces the pressure on the server, and ensures the normal operation of the server.
  • the first data is written to overwrite the second data.
  • an event queue (Async) can be called asynchronously, and an event task is pushed to the task queue (Event Queue).
  • the daemons deploying different servers can periodically obtain event tasks from the task queue.
  • the event mediation (Eevnt Mediator) calls the daemon's child process (Event Process) to perform different operations according to the data type of the first data.
  • Different data types are stored in different locations, such as APP-related information can be stored in the APP Info database, and user-related information can be stored in the User information database.
  • FIG. 4 a flow chart of a method for collecting client data according to another embodiment of the present invention is shown, which may specifically include the following steps:
  • Step 401 Receive a data upload request sent by a client.
  • the uploading request may include the identifier information and the first data whose length is the length of the first string;
  • Step 402 Calculate a first feature value for the first data.
  • Step 403 Search for the feature information generated based on the second data corresponding to the identifier information; when the feature information is not found, perform step 404, when the feature information is found, Performing step 406;
  • the feature information includes a second feature value and a second string length
  • Step 404 writing the first data
  • Step 405 Set the first feature value and the first character string length as feature information.
  • the feature information When the feature information is found, it may indicate that the previous APP has not uploaded the data, and the current first data is the first upload, and there is no duplicate situation. Therefore, the first data may be directly written, and the first feature value is directly written. And the first string length is set as the initial feature information for the weight of the data to be uploaded later.
  • the feature information can be stored in the Redis database in INT code, and multiple identical INT values will point to the same memory area, saving server resources through the shared memory mechanism of the Redis database, and supporting high concurrent read and write, with double The verification mechanism can realize the requirement of quickly judging the reported data.
  • Step 406 Determine whether the length of the first string is equal to the length of the string; when the length of the first string is equal to the length of the second string, perform step 407; when the first string When the length is not equal to the length of the second string, step 411 is performed;
  • Step 407 it is determined whether the first feature value and the second feature value are the same; if yes, step 408 is performed, and if not, step 410 is performed;
  • Step 408 refusing to write the first data
  • Step 409 writing the first data to cover the second data
  • Step 410 Overwrite the feature information by the first feature value and the first string length.
  • the first feature value and the first character string length may be overwritten with the original feature information as new feature information for the weight of the data to be uploaded later.
  • Step 411 writing the first data
  • Step 412 Overwrite the feature information by the first feature value and the first character string length.
  • the length of the first character string is not equal to the length of the second character string, it may indicate that the first data is different from the second data, and the first data may be directly written, and the first feature value and the first character string are long. The degree is overwritten with the original feature information as new feature information for the weight of the data uploaded later.
  • the eigenvalue calculation is performed on the data stored by the user, and the string is weighted and the newly uploaded data is weighted by the double check mechanism.
  • the MD5 Message- is applied. Digest Algorithm 5, information digest algorithm 5
  • the calculation amount per second is about 180,000 times.
  • the embodiment of the present invention can calculate more than 50 million times per second, which greatly improves the efficiency of the weight determination.
  • FIG. 5 is a structural block diagram of an embodiment of a device for collecting client data according to an embodiment of the present invention, which may specifically include the following modules:
  • the data uploading request receiving module 501 is adapted to receive a data uploading request sent by the client; the uploading request includes the identifier information, and the first data of the length of the first character string;
  • the first feature value calculation module 502 is configured to calculate a first feature value for the first data
  • the feature information searching module 503 is configured to: search for feature information generated based on the second data corresponding to the identifier information, where the feature information includes a second feature value and a second string length;
  • the string length determining module 504 is configured to determine, when the feature information is found, whether the length of the first string is equal to the length of the string;
  • the feature value judging module 505 is adapted to be long in the first character string length and the second character string When the degrees are equal, determining whether the first feature value and the second feature value are the same; if yes, calling the rejection module 506, if not, calling the first write module 507;
  • Rejection module 506 adapted to refuse to write the first data
  • the first writing module 507 is adapted to write the first data to cover the second data.
  • the first feature value calculation module 502 is further adapted to:
  • the hash value of each character is accumulated to obtain a first feature value.
  • the first feature value calculation module 502 is further adapted to:
  • a hash value of the character of the jump value is accumulated to obtain a first feature value.
  • the first feature value calculation module 502 is further adapted to:
  • the remainder obtained by dividing the length of the first character string by the preset value is set as a jump value.
  • the character matching the skip value is a character whose offset from the 0th character is an integer multiple of the jump value.
  • the device may further comprise the following modules:
  • a second writing module configured to write the first data when the feature information is not found
  • the feature information setting module is adapted to set the first feature value and the first character string length as feature information.
  • the device may further comprise the following modules:
  • a third writing module configured to write the first data when the length of the first string is not equal to the length of the second string.
  • the device may further comprise the following modules:
  • the feature information covering module is adapted to cover the feature information by the first feature value and the first character string length.
  • the description is relatively simple, and the relevant parts can be referred to the description of the method embodiment.
  • modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment.
  • the modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components.
  • any combination of the descriptions may be employed All the features disclosed in the book (including the accompanying claims, abstract and drawings) and all processes or units of any method or device disclosed herein are combined.
  • Each feature disclosed in this specification including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose.
  • the various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof.
  • a microprocessor or digital signal processor may be used in practice to implement some or all of the functionality of some or all of the components of the client data acquisition device in accordance with embodiments of the present invention.
  • the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
  • a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
  • FIG. 6 illustrates a computing device that can implement a method of collecting client data in accordance with an embodiment of the present invention.
  • the computing device e.g., server, etc.
  • the computing device conventionally includes a processor 610 and a computer program product or computer readable medium in the form of a memory 620.
  • the memory 620 may be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM.
  • Memory 620 has a memory space 630 for program code 631 for performing any of the method steps described above.
  • storage space 630 for program code may include various program code 631 for implementing various steps in the above methods, respectively.
  • the program code can be read from or written to one or more computer program products.
  • These computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks.
  • the computer program product is typically a portable or fixed storage unit as described with reference to FIG.
  • the storage unit may have storage segments, storage spaces, and the like that are similarly arranged to memory 620 in the computing device of FIG.
  • the program code can be compressed, for example, in an appropriate form.
  • the storage unit includes computer readable code 631', ie, code readable by a processor, such as 610, that when executed by a computing device causes the computing device to perform each of the methods described above step.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computational Linguistics (AREA)

Abstract

一种客户端数据的采集方法和装置,对数据解析量级进行压缩,大大提高了字符串的校验效率,该方法包括:接收客户端发送的数据上传请求(101);对所述第一数据计算第一特征值(102);查找是否存储有,基于所述标识信息对应的第二数据生成的特征信息(103);当查找到特征信息时,判断所述第一字符串长度与所述字符串长度是否相等(104);当所述第一字符串长度与所述第二字符串长度相等时,判断所述第一特征值与所述第二特征值是否相同(105);若是,则拒绝写入所述第一数据(106);若否,则写入所述第一数据,以覆盖所述第二数据(107)。

Description

一种客户端数据的采集方法和装置 技术领域
本发明涉及计算机处理的技术领域,特别是涉及一种客户端数据的采集方法和一种客户端数据的采集装置。
背景技术
随着网络科技的快速发展,越来越多的企业将产品以第三方应用程序(Application,App)的方式移植至各种操作平台上,例如即时通讯工具、电子邮箱、浏览器等等。
应用程序的开发者通常通过采集与第三方应用程序相关的数据进行分析,进一步改进第三方应用程序的设计,以增强用户体验。
在很多情况中,当用户打开应用或进行一些操作时,会进行一些数据的上报,上传信息的频率是比较高的。
若用户未对终端进行调整,如增加应用程序、升级操作系统等等,则可能上报了大量的重复信息,可能会出现在很短的时间内进行多条相同数据的上报情况,使得数据库频繁读取,造成服务器压力过大、解析服务异常等不可控情况,甚至宕机。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种客户端数据的采集方法和相应的一种客户端数据的采集装置。
依据本发明的一个方面,提供了一种客户端数据的采集方法,包括:
接收客户端发送的数据上传请求;所述上传请求中包括标识信息、长度为第一字符串长度的第一数据;
对所述第一数据计算第一特征值;
查找是否存储有,基于所述标识信息对应的第二数据生成的特征信息;所述特征信息包括第二特征值、第二字符串长度;
当查找到特征信息时,判断所述第一字符串长度与所述字符串长度是否相等;
当所述第一字符串长度与所述第二字符串长度相等时,判断所述第一特征值与所述第二特征值是否相同;若是,则拒绝写入所述第一数据;若否,则写入所述第一数据,以覆盖所述第二数据。
根据本发明的另一方面,提供了一种客户端数据的采集装置,包括:
数据上传请求接收模块,适于接收客户端发送的数据上传请求;所述上传请求中包括标识信息、长度为第一字符串长度的第一数据;
第一特征值计算模块,适于对所述第一数据计算第一特征值;
特征信息查找模块,适于查找是否存储有,基于所述标识信息对应的第二数据生成的特征信息;所述特征信息包括第二特征值、第二字符串长度;
字符串长度判断模块,适于在查找到特征信息时,判断所述第一字符串长度与所述字符串长度是否相等;
特征值判断模块,适于在所述第一字符串长度与所述第二字符串长度相等时,判断所述第一特征值与所述第二特征值是否相同;若是,则调用拒绝模块,若否,则调用第一写模块;
拒绝模块,适于拒绝写入所述第一数据
第一写模块,适于写入所述第一数据,以覆盖所述第二数据。
根据本发明的另一个方面,提供了一种程序,包括可读代码,当所述可读代码在计算设备上运行时,导致所述计算设备执行根据本发明实施例中任一个所述的客户端数据的采集方法。
根据本发明的另一个方面,提供了一种可读介质,其中存储了如本发明实施例所述的程序。
在本发明实施例中,通过二重校验机制对字符串进行判重,在字符串长度的基础上拼接特征值,首先校验字符串长度是否相同,当字符串长度相同时,第一数据与第二数据可能相同,也可能不相同,因此,再次校验特征值是否相同,若特征值相同,则可以表示第一数据与第二数据相同, 若特征值不同,则可以表示第一数据与第二数据不相同,先解析简单的字符串长度,再解析复杂的特征值,对数据解析量级进行压缩,大大提高了字符串的校验效率。
本发明实施例在第一数据与第二数据相同时,拒绝写入第一数据,大大减少了数据库的读写操作,减少了服务器的压力,保证服务器的正常运行。
本发明实施例计算散列值的基础上加上跳跃值的逻辑,通过牺牲少部分的碰撞率来保证运算的效率,既保证了数据解析的实时性又保证了解析操作的运行稳定性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种客户端数据的采集方法的步骤流程图;
图2示出了根据本发明一个实施例的一种用户session系统的架构图;
图3示出了根据本发明一个实施例的一种散列值的计算示例图;
图4示出了根据本发明另一个实施例的一种客户端数据的采集方法的步骤流程图;
图5示出了根据本发明一个实施例的一种客户端数据的采集装置实施例的结构框图;
图6示意性地示出了用于执行根据本发明实施例的方法的计算设备的框图;以及
图7示意性地示出了用于保持或者携带实现根据本发明实施例的方法的程序代码的存储单元。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了根据本发明一个实施例的一种客户端数据的采集方法的步骤流程图,具体可以包括如下步骤:
步骤101,接收客户端发送的数据上传请求;
如图2所示,用户session(会话)系统是一个独立的后台异步系统,对外提供业务实体,如游戏等等。
在用户session系统中的表现层(Preseentation Layer)面向用户,其表征为APP(Application,应用程序),如浏览器、即时通讯工具、游戏应用等等。
在用户session系统中的对外业务层(Business Layer)提供App Server API(应用服务接口),用户可以在APP中登录,通过在APP的操作,调用用户session系统的App Server API,发送数据上传请求,该上传请求中可以包括标识信息、长度为第一字符串长度的第一数据,请求上传第一数据,例如,安装的应用名称、版本号、渠道号、账号信息等等。
其中,标识信息可以包括用户标识(如用户账号)、终端标识(如国际移动设备标识(International Mobile Equipment Identity,IMEI)码),用于标识用户、终端。
在用户session系统中的服务层(Service Layer)提供Common Service(公共服务),当接收到来自App Server API的处理请求时,则可以进行相应的处理。
步骤102,对所述第一数据计算第一特征值;
第一特征值可以为表示第一数据特征的数据,可以通过多种的加密方式计算获得。
在本发明的一种可选实施例中,步骤102可以包括如下子步骤:
子步骤S11,当所述第一字符串长度小于或等于预设的长度阈值时,对所述第一数据中的每个字符计算散列值;
子步骤S12,将每个字符的散列值累加,获得第一特征值。
当上报的第一数据小于或等于预设的长度阈值(如16位)时,第一数据中的字符的重复率较高,可以对每一位字符进行运算取散列值,即在本发明实施例中,跳跃值为1。
在具体实现中,可以采用time33计算散列值,即对第一数据中的每个字符,迭代的乘以33。
time33的原型为:hash(i)=hash(i-1)*33+str[i]。
例如,对于第一数据“abcdefghizklmnop”,第一字符串长度为16位,与预设的长度阈值16相等,进行散列值计算时,保持跳跃值为1,对每一个字符乘以33后进行累加,获得第一特征值。
在本发明的另一种可选实施例中,步骤102可以包括如下子步骤:
子步骤S21,当所述第一字符串长度大于预设的长度阈值时,按照所述第一字符串长度计算跳跃值;
当上报的第一数据大于预设的长度阈值(如16位)时,第一数据中的字符的重复率较低,可以按照跳跃值选取部分字符进行运算取散列值。
在一个示例中,可以将第一字符串长度除以预设的值获得的余数设置为跳跃值。
子步骤S22,对所述第一数据中、与所述跳跃值匹配的字符计算散列值;
子步骤S23,将与所述跳跃值的字符的散列值累加,获得第一特征值。
其中,与跳跃值匹配的字符为,从第0位字符开始、位置的偏移量为跳跃值的字符。
在具体实现中,可以采用time33计算散列值,如图3所示,在内存上遍 历寻址对值向左移5位加上自身,然后继续寻址并重复上一步计算进行累加直至遍历结束,获得第一特征。
例如,对于第一数据“abcdefghizklmnopqrstuvwxyz”,第一字符串长度为26位,大于预设的长度阈值16,对第一字符串长度为26位除以预设的值8,得出整数3,作为跳跃值。
即对第0、3、6、9、12、15、18、21、24位的字符进行乘以33累加得到第一特征值。
需要说明的是,本发明实施例在time33等方式计算散列值的基础上加上了取8位等跳跃值的逻辑,主要因为面向的业务场景是用户上传不定长字符串的快速判重,判断用户当前上传的数据和已存储的数据比对,对散列值计算的碰撞率要求不高,当出现用户频繁上传相同数据或上传非常规量级的字符串长度也可以快速进行判重,所以通过牺牲少部分的碰撞率来保证运算的效率,既保证了数据解析的实时性又保证了解析操作的运行稳定性。
此外,当第一字符串长度大于16位等预设的长度阈值时,取8位等预设的值计算跳跃值,可以防止短字符串的高碰撞率。
步骤103,查找是否存储有,基于所述标识信息对应的第二数据生成的特征信息;当查找到特征信息时,执行步骤104;
如图2所示,在用户session系统中,可以通过数据访问层(Database Layer)访问用户中心(User Center SDK),在用户中心存储了与用户相关的信息,若基于该APP在先已经上传了第二数据生成特征信息,则可以存储在该用户中心处。
其中,该特征信息可以包括第二特征值、第二字符串长度。
步骤104,判断所述第一字符串长度与所述第二字符串长度是否相等;当所述第一字符串长度与所述字符串长度相等时,执行步骤105;
步骤105,判断所述第一特征值与所述第二特征值是否相同;若是,则执行步骤106;若否,则执行步骤107;
在本发明实施例中,通过二重校验机制对字符串进行判重,在字符串 长度的基础上拼接特征值,首先校验字符串长度是否相同,当字符串长度相同时,第一数据与第二数据可能相同,也可能不相同,因此,再次校验特征值是否相同,若特征值相同,则可以表示第一数据与第二数据相同,若特征值不同,则可以表示第一数据与第二数据不相同,先解析简单的字符串长度,再解析复杂的特征值,对数据解析量级进行压缩,大大提高了字符串的校验效率。
步骤106,拒绝写入所述第一数据;
步骤107,写入所述第一数据,以覆盖所述第二数据。
本发明实施例在第一数据与第二数据相同时,拒绝写入第一数据,大大减少了数据库的读写操作,减少了服务器的压力,保证服务器的正常运行。
当第一数据与第二数据不相同时,则写入第一数据,覆盖第二数据。
如图2所示,在用户session系统中,可以异步调用(Async)任务队列(Event Queue),向任务队列(Event Queue)推送一个事件任务。
部署不同服务器的守护进程可以定时从任务队列中获取事件任务,由事件中介(Eevnt Mediator)根据第一数据的数据类型(Data Type),调用守护进程的子线程(Event Process)执行不同的操作,对不同的数据类型存储在不同的位置,如与APP相关的信息可以存储在APP Info(应用信息)数据库中,与用户相关的信息可以存储在User(用户信息)数据库中。
参照图4,示出了根据本发明另一个实施例的一种客户端数据的采集方法的步骤流程图,具体可以包括如下步骤:
步骤401,接收客户端发送的数据上传请求;
其中,上传请求中可以包括标识信息、长度为第一字符串长度的第一数据;
步骤402,对所述第一数据计算第一特征值;
步骤403,查找是否存储有,基于所述标识信息对应的第二数据生成的特征信息;当未查找到特征信息时,执行步骤404,当查找到特征信息时, 执行步骤406;
其中,特征信息包括第二特征值、第二字符串长度;
步骤404,写入所述第一数据;
步骤405,将所述第一特征值和所述第一字符串长度设置为特征信息;
当为查找到特征信息时,可以表示在先APP并未上传过数据,当前的第一数据为首次上传,并不存在重复的情形,因此,可以直接写入第一数据,将第一特征值和第一字符串长度设置为初始的特征信息,用于以后上传的数据的判重。
进一步而言,特征信息可以以INT编码存储于Redis数据库中,多个相同的INT数值会指向同一块内存区域,通过Redis数据库的共享内存机制节约服务器资源,同时支持高并发读写,配合二重校验机制可以实现快速判重上报数据的需求。
步骤406,判断所述第一字符串长度与所述字符串长度是否相等;当所述第一字符串长度与所述第二字符串长度相等时,执行步骤407;当所述第一字符串长度与所述第二字符串长度不相等时,执行步骤411;
步骤407,判断所述第一特征值与所述第二特征值是否相同;若是,则执行步骤408,若否,则执行步骤410;
步骤408,拒绝写入所述第一数据;
步骤409,写入所述第一数据,以覆盖所述第二数据;
步骤410,将所述第一特征值和所述第一字符串长度覆盖所述特征信息。
若写入第一数据,则相应地,可以将第一特征值和第一字符串长度覆盖原有的特征信息,作为新的特征信息,用于以后上传的数据的判重。
步骤411,写入所述第一数据;
步骤412,将所述第一特征值和所述第一字符串长度覆盖所述特征信息。
若第一字符串长度与第二字符串长度不相等,则可以表示第一数据与第二数据不相同,可以直接写入第一数据,将第一特征值和第一字符串长 度覆盖原有的特征信息,作为新的特征信息,用于以后上传的数据的判重。
APP上传的数据中一般存在大量、重复的数据,如果简单从用户存储的数据取出后和当前的数据进行判重,这样数据库的读取容易造成数据解析的瓶颈。
本发明实施例是通过对用户存储的数据进行特征值计算,通过二重校验机制对字符串进行判重与新上传的数据进行判重,对于长度为1000的字符串,应用MD5(Message-Digest Algorithm 5,信息摘要算法5)等传统方式每秒的计算量是18万次左右,相同情况下,应用本发明实施例每秒可以计算5000万次以上,大大提高了判重的效率。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图5,示出了根据本发明一个实施例的一种客户端数据的采集装置实施例的结构框图,具体可以包括如下模块:
数据上传请求接收模块501,适于接收客户端发送的数据上传请求;所述上传请求中包括标识信息、长度为第一字符串长度的第一数据;
第一特征值计算模块502,适于对所述第一数据计算第一特征值;
特征信息查找模块503,适于查找是否存储有,基于所述标识信息对应的第二数据生成的特征信息;所述特征信息包括第二特征值、第二字符串长度;
字符串长度判断模块504,适于在查找到特征信息时,判断所述第一字符串长度与所述字符串长度是否相等;
特征值判断模块505,适于在所述第一字符串长度与所述第二字符串长 度相等时,判断所述第一特征值与所述第二特征值是否相同;若是,则调用拒绝模块506,若否,则调用第一写模块507;
拒绝模块506,适于拒绝写入所述第一数据
第一写模块507,适于写入所述第一数据,以覆盖所述第二数据。
在本发明的一种可选实施例中,所述第一特征值计算模块502还可以适于:
当所述第一字符串长度小于或等于预设的长度阈值时,对所述第一数据中的每个字符计算散列值;
将每个字符的散列值累加,获得第一特征值。
在本发明的一种可选实施例中,所述第一特征值计算模块502还可以适于:
当所述第一字符串长度大于预设的长度阈值时,按照所述第一字符串长度计算跳跃值;
对所述第一数据中、与所述跳跃值匹配的字符计算散列值;
将与所述跳跃值的字符的散列值累加,获得第一特征值。
在本发明的一种可选实施例中,所述第一特征值计算模块502还可以适于:
将所述第一字符串长度除以预设的值获得的余数设置为跳跃值。
在本发明实施例的一种可选示例中,与所述跳跃值匹配的字符为,从第0位字符开始、位置的偏移量为所述跳跃值整数倍的字符。
在本发明的一种可选实施例中,该装置还可以包括如下模块:
第二写模块,适于在未查找到特征信息时,写入所述第一数据;
特征信息设置模块,适于将所述第一特征值和所述第一字符串长度设置为特征信息。
在本发明的一种可选实施例中,该装置还可以包括如下模块:
第三写模块,适于在所述第一字符串长度与所述第二字符串长度不相等时,写入所述第一数据。
在本发明的一种可选实施例中,该装置还可以包括如下模块:
特征信息覆盖模块,适于将所述第一特征值和所述第一字符串长度覆盖所述特征信息。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明 书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的客户端数据的采集设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
例如,图6示出了可以实现根据本发明实施例的客户端数据的采集方法的计算设备。该计算设备(如服务器等)传统上包括处理器610和以存储器620形式的计算机程序产品或者计算机可读介质。存储器620可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器620具有用于执行上述方法中的任何方法步骤的程序代码631的存储空间630。例如,用于程序代码的存储空间630可以包括分别用于实现上面的方法中的各种步骤的各个程序代码631。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样 的计算机程序产品通常为如参考图7所述的便携式或者固定存储单元。该存储单元可以具有与图6的计算设备中的存储器620类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括计算机可读代码631’,即可以由例如诸如610之类的处理器读取的代码,这些代码当由计算设备运行时,导致该计算设备执行上面所描述的方法中的各个步骤。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (18)

  1. 一种客户端数据的采集方法,包括:
    接收客户端发送的数据上传请求;所述上传请求中包括标识信息、长度为第一字符串长度的第一数据;
    对所述第一数据计算第一特征值;
    查找是否存储有,基于所述标识信息对应的第二数据生成的特征信息;所述特征信息包括第二特征值、第二字符串长度;
    当查找到特征信息时,判断所述第一字符串长度与所述字符串长度是否相等;
    当所述第一字符串长度与所述第二字符串长度相等时,判断所述第一特征值与所述第二特征值是否相同;若是,则拒绝写入所述第一数据;若否,则写入所述第一数据,以覆盖所述第二数据。
  2. 如权利要求1所述的方法,其特征在于,所述对所述第一数据计算第一特征值的步骤包括:
    当所述第一字符串长度小于或等于预设的长度阈值时,对所述第一数据中的每个字符计算散列值;
    将每个字符的散列值累加,获得第一特征值。
  3. 如权利要求1或2所述的方法,其特征在于,所述对所述第一数据计算第一特征值的步骤包括:
    当所述第一字符串长度大于预设的长度阈值时,按照所述第一字符串长度计算跳跃值;
    对所述第一数据中、与所述跳跃值匹配的字符计算散列值;
    将与所述跳跃值的字符的散列值累加,获得第一特征值。
  4. 如权利要求3所述的方法,其特征在于,所述按照所述第一字符串长度计算跳跃值的步骤包括:
    将所述第一字符串长度除以预设的值获得的余数设置为跳跃值。
  5. 如权利要求3所述的方法,其特征在于,与所述跳跃值匹配的字符为,从第0位字符开始、位置的偏移量为所述跳跃值整数倍的字符。
  6. 如权利要求1或2或4或5所述的方法,其特征在于,还包括:
    当未查找到特征信息时,写入所述第一数据;
    将所述第一特征值和所述第一字符串长度设置为特征信息。
  7. 如权利要求1所述的方法,其特征在于,还包括:
    当所述第一字符串长度与所述第二字符串长度不相等时,写入所述第一数据。
  8. 如权利要求1或7所述的方法,其特征在于,还包括:
    将所述第一特征值和所述第一字符串长度覆盖所述特征信息。
  9. 一种客户端数据的采集装置,包括:
    数据上传请求接收模块,适于接收客户端发送的数据上传请求;所述上传请求中包括标识信息、长度为第一字符串长度的第一数据;
    第一特征值计算模块,适于对所述第一数据计算第一特征值;
    特征信息查找模块,适于查找是否存储有,基于所述标识信息对应的第二数据生成的特征信息;所述特征信息包括第二特征值、第二字符串长度;
    字符串长度判断模块,适于在查找到特征信息时,判断所述第一字符串长度与所述字符串长度是否相等;
    特征值判断模块,适于在所述第一字符串长度与所述第二字符串长度相等时,判断所述第一特征值与所述第二特征值是否相同;若是,则调用拒绝模块,若否,则调用第一写模块;
    拒绝模块,适于拒绝写入所述第一数据
    第一写模块,适于写入所述第一数据,以覆盖所述第二数据。
  10. 如权利要求9所述的装置,其特征在于,所述第一特征值计算模块还适于:
    当所述第一字符串长度小于或等于预设的长度阈值时,对所述第一数据中的每个字符计算散列值;
    将每个字符的散列值累加,获得第一特征值。
  11. 如权利要求9或10所述的装置,其特征在于,所述第一特征值计 算模块还适于:
    当所述第一字符串长度大于预设的长度阈值时,按照所述第一字符串长度计算跳跃值;
    对所述第一数据中、与所述跳跃值匹配的字符计算散列值;
    将与所述跳跃值的字符的散列值累加,获得第一特征值。
  12. 如权利要求11所述的装置,其特征在于,所述第一特征值计算模块还适于:
    将所述第一字符串长度除以预设的值获得的余数设置为跳跃值。
  13. 如权利要求11所述的装置,其特征在于,与所述跳跃值匹配的字符为,从第0位字符开始、位置的偏移量为所述跳跃值整数倍的字符。
  14. 如权利要求9或10或12或13所述的装置,其特征在于,还包括:
    第二写模块,适于在未查找到特征信息时,写入所述第一数据;
    特征信息设置模块,适于将所述第一特征值和所述第一字符串长度设置为特征信息。
  15. 如权利要求9所述的装置,其特征在于,还包括:
    第三写模块,适于在所述第一字符串长度与所述第二字符串长度不相等时,写入所述第一数据。
  16. 如权利要求9或15所述的装置,其特征在于,还包括:
    特征信息覆盖模块,适于将所述第一特征值和所述第一字符串长度覆盖所述特征信息。
  17. 一种程序,包括可读代码,当所述可读代码在计算设备上运行时,导致所述计算设备执行根据权利要求1-8中的任一个所述的客户端数据的采集方法。
  18. 一种可读介质,其中存储了如权利要求17所述的程序。
PCT/CN2016/086895 2015-06-26 2016-06-23 一种客户端数据的采集方法和装置 WO2016206605A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510369507.9A CN105095367B (zh) 2015-06-26 2015-06-26 一种客户端数据的采集方法和装置
CN201510369507.9 2015-06-26

Publications (1)

Publication Number Publication Date
WO2016206605A1 true WO2016206605A1 (zh) 2016-12-29

Family

ID=54575804

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/086895 WO2016206605A1 (zh) 2015-06-26 2016-06-23 一种客户端数据的采集方法和装置

Country Status (2)

Country Link
CN (1) CN105095367B (zh)
WO (1) WO2016206605A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095367B (zh) * 2015-06-26 2018-12-28 北京奇虎科技有限公司 一种客户端数据的采集方法和装置
CN107122683A (zh) * 2017-04-27 2017-09-01 郑州云海信息技术有限公司 一种数据存储方法、数据完整性校验方法及应用服务器
CN110058952B (zh) * 2018-01-18 2022-08-19 株洲中车时代电气股份有限公司 一种嵌入式设备文件的校验方法及系统
CN108828169A (zh) * 2018-04-12 2018-11-16 澳门培正中学 一种水下探测器的数据采集方法及系统
CN111078672B (zh) * 2019-12-20 2023-06-02 中国建设银行股份有限公司 数据库的数据对比方法及装置
CN111563073B (zh) * 2020-04-20 2023-07-07 杭州市质量技术监督检测院 Nqi信息共享的方法、平台、服务器及可读存储介质
CN112416257A (zh) * 2020-12-02 2021-02-26 北京中指讯博数据信息技术有限公司 资源存储方法及装置
CN117076509B (zh) * 2023-10-18 2024-04-09 卓望数码技术(深圳)有限公司 数据查重方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010047683A1 (en) * 2008-10-20 2010-04-29 Qiang Wang Fast signature scan
CN103198004A (zh) * 2013-04-25 2013-07-10 北京搜狐新媒体信息技术有限公司 一种信息处理方法和装置
CN104063377A (zh) * 2013-03-18 2014-09-24 联想(北京)有限公司 信息处理方法和使用其的电子设备
CN105095367A (zh) * 2015-06-26 2015-11-25 北京奇虎科技有限公司 一种客户端数据的采集方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102831127B (zh) * 2011-06-17 2015-04-22 阿里巴巴集团控股有限公司 重复数据处理方法、装置及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010047683A1 (en) * 2008-10-20 2010-04-29 Qiang Wang Fast signature scan
CN104063377A (zh) * 2013-03-18 2014-09-24 联想(北京)有限公司 信息处理方法和使用其的电子设备
CN103198004A (zh) * 2013-04-25 2013-07-10 北京搜狐新媒体信息技术有限公司 一种信息处理方法和装置
CN105095367A (zh) * 2015-06-26 2015-11-25 北京奇虎科技有限公司 一种客户端数据的采集方法和装置

Also Published As

Publication number Publication date
CN105095367B (zh) 2018-12-28
CN105095367A (zh) 2015-11-25

Similar Documents

Publication Publication Date Title
WO2016206605A1 (zh) 一种客户端数据的采集方法和装置
WO2016201819A1 (zh) 检测恶意文件的方法和装置
US8380680B2 (en) Piecemeal list prefetch
CN105701122B (zh) 一种日志收集方法、装置及系统
US11503070B2 (en) Techniques for classifying a web page based upon functions used to render the web page
US10042732B2 (en) Dynamic data collection pattern for target device
US20130238574A1 (en) Cloud system and file compression and transmission method in a cloud system
KR101719500B1 (ko) 캐싱된 플로우들에 기초한 가속
CN112154420B (zh) 自动智能云服务测试工具
US9355250B2 (en) Method and system for rapidly scanning files
CN107506256B (zh) 一种崩溃数据监控的方法和装置
US9612873B2 (en) Dynamically scalable data collection and analysis for target device
US10015253B2 (en) System and method for preemptive request processing
US10540325B2 (en) Method and device for identifying junk picture files
US10313219B1 (en) Predictive intelligent processor balancing in streaming mobile communication device data processing
US10509641B2 (en) Optimizing feature deployment based on usage pattern
US10609206B1 (en) Auto-repairing mobile communication device data streaming architecture
US11457090B2 (en) Proxy callback interface supporting multiple webhook channels
CN105681380A (zh) 客户端离线化方法及其系统
CN112597020A (zh) 接口测试方法、装置、计算机设备及存储介质
CN104580109A (zh) 生成点选验证码的方法及装置
US20190354455A1 (en) Skew detector for data storage system
US20230236922A1 (en) Failure Prediction Using Informational Logs and Golden Signals
JP7157200B1 (ja) 分析装置、分析方法及び分析プログラム
US20210336973A1 (en) Method and system for detecting malicious or suspicious activity by baselining host behavior

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: 16813721

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16813721

Country of ref document: EP

Kind code of ref document: A1