CN105426308A - 一种线下数据的构建方法及装置 - Google Patents

一种线下数据的构建方法及装置 Download PDF

Info

Publication number
CN105426308A
CN105426308A CN201510765251.3A CN201510765251A CN105426308A CN 105426308 A CN105426308 A CN 105426308A CN 201510765251 A CN201510765251 A CN 201510765251A CN 105426308 A CN105426308 A CN 105426308A
Authority
CN
China
Prior art keywords
entity
forest
simple relation
relation
complex relationship
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN201510765251.3A
Other languages
English (en)
Inventor
王国强
陈宇哲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201510765251.3A priority Critical patent/CN105426308A/zh
Publication of CN105426308A publication Critical patent/CN105426308A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3676Test management for coverage analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种线下数据的构建方法及装置,其中的方法包括:确定预定资源中的实体、简单关系和复杂关系,所述简单关系为两个实体间的联系,所述复杂关系为至少两个实体与至少一个实体间的联系;根据所述简单关系和其所联系的实体构建有向无环的简单关系森林;根据所述复杂关系和其所联系的实体构建预定高度的复杂关系森林;通过所述简单关系森林和复杂关系森林读取线上数据构建成线下数据。该方法通过构建简单关系森林和复杂关系森林形成与线上数据相同的架构,并通过该架构读取线上数据使得线下数据与线上数据保持一致,故保证了线下测试的全面性,提升了测试效率。

Description

一种线下数据的构建方法及装置
技术领域
本发明涉及计算机领域,尤其涉及一种线下数据的构建方法及装置。
背景技术
目前的线下数据多是拥有一套相对独立的数据体系,针对互联网产品而言,线上的数据要比该独立的数据体系中的线下数据丰富,故当通过线下数据进行测试时,导致测试不全面或产品出问题时无法及时复现的问题,并且随着存活时间的增加,线下数据也会一直增加,导致真正可用的数据在整个数据体系中的占比很低,造成资源的浪费。
发明内容
本发明解决的技术问题之一是现有方法并不能保持线下数据与线上的数据一致,导致测试不全面、复现难以及资源浪费的问题。
根据本发明的一个方面,提供了一种线下数据的构建方法,包括:
确定预定资源中的实体、简单关系和复杂关系,所述简单关系为两个实体间的联系,所述复杂关系为至少两个实体与至少一个实体间的联系;
根据所述简单关系和其所联系的实体构建有向无环的简单关系森林;
根据所述复杂关系和其所联系的实体构建预定高度的复杂关系森林;
通过所述简单关系森林和复杂关系森林读取线上数据构建成线下数据。
根据本发明的另一个方面,提供了一种线下数据的构建装置,包括:
用于确定预定资源中的实体、表示两个实体间的联系的简单关系和表示至少两个实体与至少一个实体间联系的复杂关系的装置;
用于根据所述简单关系和其所联系的实体构建有向无环的简单关系森林的装置;
用于根据所述复杂关系和其所联系的实体构建预定高度的复杂关系森林的装置;
用于通过所述简单关系森林和复杂关系森林读取线上数据构建成线下数据的装置。
由于本实施例的线下数据的构建方法及装置,通过构建简单关系森林和复杂关系森林形成与线上数据相同的架构,并通过该架构读取线上数据使得线下数据与线上数据保持一致,保证了线下测试的全面性,提升了测试效率。
本领域普通技术人员将了解,虽然下面的详细说明将参考图示实施例、附图进行,但本发明并不仅限于这些实施例。而是,本发明的范围是广泛的,且意在仅通过后附的权利要求限定本发明的范围。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出了根据本发明实施例一线下数据的构建方法的流程图。
图2示出了根据本发明实施例一线下数据的构建方法中步骤S120的具体流程图。
图3示出了根据本发明实施例一线下数据的构建方法中步骤S140的一具体流程图。
图4示出了根据本发明实施例一线下数据的构建方法中步骤S140的又一具体流程图。
图5示出了根据本发明实施例一线下数据的构建方法中构建简单关系森林的流程图。
图6示出了根据本发明实施例一线下数据的构建方法中构建简单关系森林的步骤S510确定的示意图。
图7示出了根据本发明实施例一线下数据的构建方法中构建简单关系森林的步骤S520确定的示意图。
图8示出了根据本发明实施例一线下数据的构建方法中构建简单关系森林的步骤S530确定的示意图。
图9示出了根据本发明实施例一线下数据的构建方法中构建复杂关系森林的流程图。
图10示出了根据本发明实施例一线下数据的构建方法中构建复杂关系森林的步骤S920确定的示意图。
图11示出了根据本发明实施例一线下数据的构建装置的框图。
图12示出了根据本发明实施例又一线下数据的构建装置的框图。
附图中文字下面的“—”表示内嵌链接形式,附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
在上下文中所称“计算机终端”,也称为“电脑”,是指可以通过运行预定程序或指令来执行数值计算和/或逻辑计算等预定处理过程的智能电子终端,其可以包括处理器与存储器,由处理器执行在存储器中预存的存续指令来执行预定处理过程,或是由ASIC、FPGA、DSP等硬件执行预定处理过程,或是由上述二者组合来实现。计算机终端包括但不限于服务器、个人电脑、笔记本电脑、平板电脑、智能手机等。
所述计算机终端包括用户终端与网络终端。其中,所述用户终端包括但不限于电脑、智能手机、PDA等;所述网络终端包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(CloudComputing)的由大量计算机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述计算机终端可单独运行来实现本发明,也可接入网络并通过与网络中的其他计算机终端的交互操作来实现本发明。其中,所述计算机终端所处的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。
需要说明的是,所述用户终端、网络终端和网络等仅为举例,其他现有的或今后可能出现的计算机终端或网络如可适用于本发明,也应包含在本发明保护范围以内,并以引用方式包含于此。
后面所讨论的方法(其中一些通过流程图示出)可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或者其任意组合来实施。当用软件、固件、中间件或微代码来实施时,用以实施必要任务的程序代码或代码段可以被存储在机器或计算机可读介质(比如存储介质)中。(一个或多个)处理器可以实施必要的任务。
这里所公开的具体结构和功能细节仅仅是代表性的,并且是用于描述本发明的示例性实施例的目的。但是本发明可以通过许多替换形式来具体实现,并且不应当被解释成仅仅受限于这里所阐述的实施例。
应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中一个或更多所列出的相关联项目的任意和所有组合。
应当理解的是,当一个单元被称为“连接”或“耦合”到另一单元时,其可以直接连接或耦合到所述另一单元,或者可以存在中间单元。与此相对,当一个单元被称为“直接连接”或“直接耦合”到另一单元时,则不存在中间单元。应当按照类似的方式来解释被用于描述单元之间的关系的其他词语(例如“处于...之间”相比于“直接处于...之间”,“与...邻近”相比于“与...直接邻近”等等)。
这里所使用的术语仅仅是为了描述具体实施例而不意图限制示例性实施例。除非上下文明确地另有所指,否则这里所使用的单数形式“一个”、“一项”还意图包括复数。还应当理解的是,这里所使用的术语“包括”和/或“包含”规定所陈述的特征、整数、步骤、操作、单元和/或组件的存在,而不排除存在或添加一个或更多其他特征、整数、步骤、操作、单元、组件和/或其组合。
还应当提到的是,在一些替换实现方式中,所提到的功能/动作可以按照不同于附图中标示的顺序发生。举例来说,取决于所涉及的功能/动作,相继示出的两幅图实际上可以基本上同时执行或者有时可以按照相反的顺序来执行。
下面结合附图对本发明作进一步详细描述。
图1是根据本发明一个实施例的线下数据的构建方法的流程图。
结合图1中所示,本实施例所述的线下数据的构建方法,包括如下步骤:
S110、确定预定资源中的实体、简单关系和复杂关系,所述简单关系为两个实体间的联系,所述复杂关系为至少两个实体与至少一个实体间的联系;
S120、根据所述简单关系和其所联系的实体构建有向无环的简单关系森林;
S130、根据所述复杂关系和其所联系的实体构建预定高度的复杂关系森林;
S140、通过所述简单关系森林和复杂关系森林读取线上数据构建成线下数据。
下面对各步骤做进一步详细介绍。
步骤S110中,预定资源可以通过配置平台配置的环境数据配置管理的资源信息,也可以是通过日志分析得出的资源信息。实体一般是不依赖于其它资源而在预定资源中独立存在(例如:屏幕、CPU、显卡、内存、主板、电源或硬盘等)。简单关系为两个实体间的联系,例如:显卡驱动屏幕显示,显卡连接主板,那么显卡的简单关系就包括与屏幕的驱动和与主板的连接。复杂关系为至少两个实体与至少一个实体间的联系,例如:CPU通过主板和内存读取内容,那么复杂关系就包括主板和内存与CPU的读取联系。
结合图2所示,步骤S120中,根据所述简单关系和其所联系的实体构建有向无环的简单关系森林可以包括如下步骤:
S1201、根据所述实体的重要程度将所述简单关系和其所联系的实体进行有向化处理。具体可以包括以下任一种情况:
1、若所述简单关系中的关联字段有指定入度字段,则将所述指定入度字段对应的实体作为所述关系的入度,与所述关系关联的其它实体作为所述关系的出度。
具体地,简单关系通过关联字段表示为一个实体与至少一个实体间的联系,例如:若实体1的身份信息为A,实体2的身份信息为B,两个实体间的联系为C,则实体1与其它实体的简单关系的关联字段为ACB,若指定A为入度字段,则实体1作为简单关系的入度,实体2作为简单关系的出度。
再例如:若实体1的身份信息为A,实体2的身份信息为B,实体3的身份信息为C,实体1和实体2间的联系为D,实体1和实体3的联系为E,实体1与其它实体的简单关系的关联字段为ADB和AEC,若指定B为入度字段,则实体2作为简单关系的入度,实体1和实体3作为简单关系的出度。
2、若所述简单关系中的关联字段没有指定入度字段,则将优先级最高的关联字段对应的实体作为所述关系的入度,与所述关系关联的其它实体作为所述关系的出度。
例如:若实体1的身份信息为A,实体2的身份信息为B,两个实体间的联系为C,则实体1与其它实体的简单关系的关联字段为ACB,若A和B均不是指定入度字段,但B的优先级比A高,则实体2作为简单关系的入度,实体1作为简单关系的出度。
再例如:若实体1的身份信息为A,实体2的身份信息为B,实体3的身份信息为C,实体1和实体2间的联系为D,实体1和实体3的联系为E,实体1与其它实体的简单关系的关联字段为ADB和AEC,若A、B和C均不是指定入度字段,优先级由高到低分别为B、A和C,则实体2作为简单关系的入度,实体1和实体3作为简单关系的出度。
S1202、将有向化处理后的所述简单关系和其所联系的实体根据所述简单关系中的关联字段进行去环处理后构成简单关系森林。具体可以包括以下步骤:
一、若第一简单关系中存在第一实体对应的指定入度字段优先级高于与所述第一实体对应联系第二实体对应的关联字段的优先级,则检测所述第一实体是否存在第一路径到所述第二实体。
二、若所述第一实体存在连接所述第二实体的第一路径,则忽略所述第一路径中最后一个连接到所述第二实体的路径。
例如:实体1的身份信息为A,实体2的身份信息为B,实体3的身份信息为C,则实体1与其它实体的简单关系的关联字段为ADB,实体2与其它实体的简单关系的关联字段为BEC,实体3与其它实体的简单关系为CFA,若关联字段ADB中的B为指定入度字段,关联字段的优先级由高到低为B、C和A,由于关联字段ADB中B为指定入度字段且B的优先级高于A,则检测到从实体2到实体1存在路径BECFA,则忽略实体3到实体1的路径。
步骤S130中,以复杂关系为根节点,所述复杂关系所联系的实体为叶节点的构建高度为2的至少一颗数组成复杂关系森林。
具体地,复杂关系表示至少两个实体与至少一个实体间的联系,例如:实体1的身份信息为A,实体2的身份信息为B,实体3的身份信息为C,复杂关系表示实体1和实体2与实体3之间的联系,其需保证实体1和实体2作为一个整体与实体3之间联系。
结合图3所示,步骤S140中,可以根据读取的线上数据中的预定请求遍历所述简单关系森林构建形成线下数据。具体可以包括以下步骤:
S1401、根据所述预定请求确定起点实体。
具体地,线上数据中的预定请求可以是统一资源定位符(URL,UniformResourceLocator)请求,也可以是资源类别的请求。
S1402、根据起点实体对应的简单关系遍历下游实体,直到没有下游实体或下游实体没有对应的简单关系停止遍历,遍历的过程完成线下数据的构建。
结合图4所示,步骤S140中,可以根据读取的线上数据中的预定请求遍历所述复杂关系森林构建形成线下数据。具体可以包括以下步骤:
S1403、根据所述预定请求确定复杂关系森林中所有的复杂关系。
S1404、将所述复杂关系中的关联字段按照预定算法实现与所述读取的线上数据的同步。
具体地,对复杂关系中的关联字段的值通过笛卡尔积实现所述读取的线上数据的同步,由于高度为2,故无需对结果再进行进一步的解析。
结合图5中所示,本发明实施例所述的又一线下数据的构建方法,一般会确定用户指定的维度,针对每个维度建立对应的简单关系森林的步骤包括:
S510、确定预定资源中的实体A、实体B、实体C和实体D,简单关系a、简单关系b、简单关系c和简单关系d。
具体可以如图6所示,简单关系a为实体A与实体B以及实体A与实体C之间的联系;简单关系b为实体A与实体B之间的联系;简单关系c为实体B与实体C之间的联系;简单关系d为实体C与实体D之间的联系。
S520、根据所述实体的重要程度将所述简单关系和其所联系的实体进行有向化处理。
具体地,简单关系a的关联字段为AaB和AaC,简单关系b的关联字段为AbB,简单关系c的关联字段为BcC,简单关系d的关联字段为CdD。若关联字段简单关系a中关联字段B和C为指定入度,关联字段的优先级由高到低分别为C、B、A和D,由于只有简单关系a中的关联字段中有指定入度,故简单关系b、c和d中均从优先级高的关联字段对应的实体到优先级低的关联字段对应的实体,具体有向处理后如图7所示。
S530、将有向化处理后的所述简单关系和其所联系的实体根据所述简单关系中的关联字段进行去环处理后构成简单关系森林。
具体地,由于关联字段AaB中B为指定入度字段且B的优先级高于A,故检测到实体B到实体A的路径BbA,则忽略实体B到实体A的路径;由于关联字段AaC中C为指定入度字段且C的优先级高于A,故检测到实体C到实体A的路径CcBbA,则忽略实体B到实体A的路径。具体去环处理后构成的简单关系森林如图8所示。
S540、根据所述一个URL请求确定起点实体A为起点实体。
S550、根据起点实体对应的简单关系遍历下游实体,直到没有下游实体或下游实体没有对应的简单关系停止遍历,遍历的过程完成线下数据的构建。
具体地,根据起点实体A对应的简单关系a遍历下游实体B和实体C,通过实体B对应的简单关系b找不到下游实体,故停止遍历;通过实体C对应的简单关系c找到下游实体B,通过实体B对应的简单关系b找不到下游实体,故停止遍历,完成了线下数据的构建。
结合图9中所示,本发明实施例所述的又一线下数据的构建方法,一般会确定用户指定的维度,针对每个维度建立对应的复杂关系森林的步骤包括:
S910、确定预定资源中的实体A、实体B、实体C和实体D,复杂关系e和复杂关系f。
具体地,复杂关系e为实体A和实体B与实体C之间的联系;复杂关系f为实体A和实体B与实体C和实体D之间的联系。
S920、以复杂关系为根节点,所述复杂关系所联系的实体为叶节点的构建高度为2的至少一颗数组成复杂关系森林。
具体地,实体A、实体B、实体C、实体D、复杂关系e和复杂关系f组成的复杂关系森林可以如图10所示。
结合图11中所示,本实施例所述的线下数据的构建装置,包括如下装置:
用于确定预定资源中的实体、表示两个实体间的联系的简单关系和表示至少两个实体与至少一个实体间联系的复杂关系的装置(以下简称“确定单元”)110。
用于根据所述简单关系和其所联系的实体构建有向无环的简单关系森林的装置(以下简称“简单关系森林构建单元”)120。
用于根据所述复杂关系和其所联系的实体构建预定高度的复杂关系森林的装置(以下简称“复杂关系森林构建单元”)130。
用于通过所述简单关系森林和复杂关系森林读取线上数据构建成线下数据的装置(以下简称“数据填充单元)140。
下面对各步骤做进一步详细介绍。
确定单元110中,预定资源可以通过配置平台配置的环境数据配置管理的资源信息,也可以是通过日志分析得出的资源信息。实体一般是不依赖于其它资源而在预定资源中独立存在(例如:屏幕、CPU、显卡、内存、主板、电源或硬盘等)。简单关系为两个实体间的联系,例如:显卡驱动屏幕显示,显卡连接主板,那么显卡的简单关系就包括与屏幕的驱动和与主板的连接。复杂关系为至少两个实体与至少一个实体间的联系,例如:CPU通过主板和内存读取内容,那么复杂关系就包括主板和内存与CPU的读取联系。
结合图12所示,简单关系森林构建单元120可以包括如下装置:
用于根据所述实体的重要程度将所述简单关系和其所联系的实体进行有向化处理的装置(以下简称“有向处理子单元”)1201。
有向处理子单元1201中,具体可以包括以下任一装置:
用于若所述简单关系中的关联字段有指定入度字段,则将所述指定入度字段对应的实体作为所述关系的入度,与所述关系关联的其它实体作为所述关系的出度的装置(以下简称“指定入度子单元”)12011。
指定入度子单元12011中,简单关系通过关联字段表示为一个实体与至少一个实体间的联系,例如:若实体1的身份信息为A,实体2的身份信息为B,两个实体间的联系为C,则实体1与其它实体的简单关系的关联字段为ACB,若指定A为入度字段,则实体1作为简单关系的入度,实体2作为简单关系的出度。
再例如:若实体1的身份信息为A,实体2的身份信息为B,实体3的身份信息为C,实体1和实体2间的联系为D,实体1和实体3的联系为E,实体1与其它实体的简单关系的关联字段为ADB和AEC,若指定B为入度字段,则实体2作为简单关系的入度,实体1和实体3作为简单关系的出度。
用于若所述简单关系中的关联字段没有指定入度字段,则将优先级最高的关联字段对应的实体作为所述关系的入度,与所述关系关联的其它实体作为所述关系的出度的装置(以下简称“优先级入度子单元”)12012。
例如:若实体1的身份信息为A,实体2的身份信息为B,两个实体间的联系为C,则实体1与其它实体的简单关系的关联字段为ACB,若A和B均不是指定入度字段,但B的优先级比A高,则实体2作为简单关系的入度,实体1作为简单关系的出度。
再例如:若实体1的身份信息为A,实体2的身份信息为B,实体3的身份信息为C,实体1和实体2间的联系为D,实体1和实体3的联系为E,实体1与其它实体的简单关系的关联字段为ADB和AEC,若A、B和C均不是指定入度字段,优先级由高到低分别为B、A和C,则实体2作为简单关系的入度,实体1和实体3作为简单关系的出度。
用于将有向化处理后的所述简单关系和其所联系的实体根据所述简单关系中的关联字段进行去环处理后构成简单关系森林的装置(以下简称“去环处理子单元”)1202。
去环处理子单元1202中,具体可以包括以下装置:
用于若第一简单关系中存在第一实体对应的指定入度字段优先级高于与所述第一实体对应联系第二实体对应的关联字段的优先级,则检测所述第一实体是否存在第一路径到所述第二实体的装置(以下简称“环检测子单元”)12021。
用于若所述第一实体存在第一路径到所述第二实体,则忽略所述第一路径中最后一个实体到所述第二实体的路径的装置(以下简称“忽略子单元”)12022。
例如:实体1的身份信息为A,实体2的身份信息为B,实体3的身份信息为C,则实体1与其它实体的简单关系的关联字段为ADB,实体2与其它实体的简单关系的关联字段为BEC,实体3与其它实体的简单关系为CFA,若关联字段ADB中的B为指定入度字段,关联字段的优先级由高到低为B、C和A,由于关联字段ADB中B为指定入度字段且B的优先级高于A,则检测到从实体2到实体1存在路径BECFA,则忽略实体3到实体1的路径。
复杂关系森林的构建单元130,具体可以包括:
用于以复杂关系为根节点,所述复杂关系所联系的实体为叶节点的构建高度为2的至少一颗数组成复杂关系森林(以下简称“森林构建子单元”)1301。
具体地,复杂关系表示至少两个实体与至少一个实体间的联系,例如:实体1的身份信息为A,实体2的身份信息为B,实体3的身份信息为C,复杂关系表示实体1和实体2与实体3之间的联系,其需保证实体1和实体2作为一个整体与实体3之间联系。
结合图12所示,数据填充单元140,可以包括:用于根据读取的线上数据中的预定请求遍历所述简单关系森林构建形成线下数据的装置(以下简称“简单关系森林填充子单元”)1401。具体可以包括以下装置:
用于根据所述预定请求确定起点实体的装置(以下简称“起点实体确定子单元”)14011。
具体地,线上数据中的预定请求可以是URL请求,也可以是资源类别的请求。
用于根据起点实体对应的简单关系遍历下游实体,直到没有下游实体或下游实体没有对应的简单关系停止遍历,遍历的过程完成线下数据的构建的装置(以下简称“遍历子单元”)14012。
结合图12所示,数据填充单元140中,可以包括:用于根据读取的线上数据中的预定请求遍历所述复杂关系森林构建形成线下数据的装置(以下简称“复杂关系森林填充子单元”)1402。具体可以包括以下装置:
用于根据所述预定请求确定复杂关系森林中所有的复杂关系的装置(以下简称“复杂关系集合子单元”)14021。
用于将所述复杂关系中的关联字段按照预定算法实现与所述读取的线上数据的同步的装置(以下简称“同步子单元”)14022。
具体地,对复杂关系中的关联字段的值通过笛卡尔积实现所述读取的线上数据的同步,由于高度为2,故无需对结果再进行进一步的解析。
本发明实施例所述的线下数据的构建方法及装置,通过构建简单关系森林和复杂关系森林形成与线上数据相同的架构,并通过该架构读取线上数据使得线下数据与线上数据保持一致,保证了线下测试的全面性,使得线下测试和线上测试具有相同的稳定性和相同的测试结果,从而提升了测试效率。
需要注意的是,本发明可在软件和/或软件与硬件的组合体中被实施,例如,本发明的各个装置可采用专用集成电路(ASIC)或任何其他类似硬件终端来实现。在一个实施例中,本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似终端。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。***权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
虽然前面特别示出并且描述了示例性实施例,但是本领域技术人员将会理解的是,在不背离权利要求书的精神和范围的情况下,在其形式和细节方面可以有所变化。这里所寻求的保护在所附权利要求书中做了阐述。

Claims (16)

1.一种线下数据的构建方法,包括:
确定预定资源中的实体、简单关系和复杂关系,所述简单关系为一个实体与至少一个实体间的联系,所述复杂关系为至少两个实体与至少一个实体间的联系;
根据所述简单关系和其所联系的实体构建有向无环的简单关系森林;
根据所述复杂关系和其所联系的实体构建预定高度的复杂关系森林;
通过所述简单关系森林和复杂关系森林读取线上数据构建成线下数据。
2.根据权利要求1所述的构建方法,所述根据所述简单关系和其所联系的实体构建有向无环的简单关系森林的步骤包括:
根据所述实体的重要程度将所述简单关系和其所联系的实体进行有向化处理;
将有向化处理后的所述简单关系和其所联系的实体根据所述简单关系中的关联字段进行去环处理后构成简单关系森林。
3.根据权利要求2所述的构建方法,所示根据所述实体的重要程度将所述简单关系和其所联系的实体进行有向化处理的步骤包括:
若所述简单关系中的关联字段有指定入度字段,则将所述指定入度字段对应的实体作为所述关系的入度,与所述关系关联的其它实体作为所述关系的出度;
若所述简单关系中的关联字段没有指定入度字段,则将优先级最高的关联字段对应的实体作为所述关系的入度,与所述关系关联的其它实体作为所述关系的出度。
4.根据权利要求3所述的构建方法,所述将有向化处理后的所述简单关系和其所联系的实体根据所述简单关系中的关联字段进行去环处理后构成简单关系森林的步骤包括:
若第一简单关系中存在第一实体对应的指定入度字段优先级高于与所述第一实体对应联系第二实体对应的关联字段的优先级,则检测所述第一实体是否存在第一路径到所述第二实体;
若所述第一实体存在连接所述第二实体的第一路径,则忽略所述第一路径中最后一个连接到所述第二实体的路径。
5.根据权利要求1所述的构建方法,所述根据所述复杂关系和其所联系的实体构建预定高度的复杂关系森林的步骤包括:
以复杂关系为根节点,所述复杂关系所联系的实体为叶节点的构建高度为2的至少一颗数组成复杂关系森林。
6.根据权利要求1所述的构建方法,所述通过所述简单关系森林和复杂关系森林读取线上数据构建成线下数据的步骤包括:
根据读取的线上数据中的预定请求遍历所述简单关系森林和复杂关系森林构建形成线下数据。
7.根据权利要求6所述的构建方法,所述根据读取的线上数据中的预定请求遍历所述简单关系森林构建形成线下数据的步骤包括:
根据所述预定请求确定起点实体;
根据起点实体对应的简单关系遍历下游实体,直到没有下游实体或下游实体没有对应的简单关系停止遍历,遍历的过程完成线下数据的构建。
8.根据权利要求6所述的构建方法,所述根据读取的线上数据中的预定请求遍历所述复杂关系森林构建形成线下数据的步骤包括:
根据所述预定请求确定复杂关系森林中所有的复杂关系;
将所述复杂关系中的关联字段按照预定算法实现与所述读取的线上数据的同步。
9.一种线下数据的构建装置,包括:
用于确定预定资源中的实体、表示两个实体间的联系的简单关系和表示至少两个实体与至少一个实体间联系的复杂关系的装置;
用于根据所述简单关系和其所联系的实体构建有向无环的简单关系森林的装置;
用于根据所述复杂关系和其所联系的实体构建预定高度的复杂关系森林的装置;
用于通过所述简单关系森林和复杂关系森林读取线上数据构建成线下数据的装置。
10.根据权利要求9所述的构建装置,所述根据所述简单关系和其所联系的实体构建有向无环的简单关系森林的装置包括:
用于根据所述实体的重要程度将所述简单关系和其所联系的实体进行有向化处理的装置;
用于将有向化处理后的所述简单关系和其所联系的实体根据所述简单关系中的关联字段进行去环处理后构成简单关系森林的装置。
11.根据权利要求10所述的构建装置,所示根据所述实体的重要程度将所述简单关系和其所联系的实体进行有向化处理的装置包括:
用于若所述简单关系中的关联字段有指定入度字段,则将所述指定入度字段对应的实体作为所述关系的入度,与所述关系关联的其它实体作为所述关系的出度的装置;
用于若所述简单关系中的关联字段没有指定入度字段,则将优先级最高的关联字段对应的实体作为所述关系的入度,与所述关系关联的其它实体作为所述关系的出度的装置。
12.根据权利要求11所述的构建装置,所述将有向化处理后的所述简单关系和其所联系的实体根据所述简单关系中的关联字段进行去环处理后构成简单关系森林的装置包括:
用于若第一简单关系中存在第一实体对应的指定入度字段优先级高于与所述第一实体对应联系第二实体对应的关联字段的优先级,则检测所述第一实体是否存在第一路径到所述第二实体的装置;
用于若所述第一实体存在连接所述第二实体的第一路径,则忽略所述第一路径中最后一个连接到所述第二实体的路径的装置。
13.根据权利要求9所述的构建装置,所述根据所述复杂关系和其所联系的实体构建预定高度的复杂关系森林的装置包括:
用于以复杂关系为根节点,所述复杂关系所联系的实体为叶节点的构建高度为2的至少一颗数组成复杂关系森林的装置。
14.根据权利要求9所述的构建装置,所述通过所述简单关系森林和复杂关系森林读取线上数据构建成线下数据的装置包括:
用于根据读取的线上数据中的预定请求遍历所述简单关系森林和复杂关系森林构建形成线下数据的装置。
15.根据权利要求14所述的构建装置,所述根据读取的线上数据中的预定请求遍历所述简单关系森林构建形成线下数据的装置包括:
用于根据所述预定请求确定起点实体的装置;
用于根据起点实体对应的简单关系遍历下游实体,直到没有下游实体或下游实体没有对应的简单关系停止遍历,遍历的过程完成线下数据的构建的装置。
16.根据权利要求14所述的构建装置,所述根据读取的线上数据中的预定请求遍历所述复杂关系森林构建形成线下数据的装置包括:
用于根据所述预定请求确定复杂关系森林中所有的复杂关系的装置;
用于将所述复杂关系中的关联字段按照预定算法实现与所述读取的线上数据的同步的装置。
CN201510765251.3A 2015-11-11 2015-11-11 一种线下数据的构建方法及装置 Pending CN105426308A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510765251.3A CN105426308A (zh) 2015-11-11 2015-11-11 一种线下数据的构建方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510765251.3A CN105426308A (zh) 2015-11-11 2015-11-11 一种线下数据的构建方法及装置

Publications (1)

Publication Number Publication Date
CN105426308A true CN105426308A (zh) 2016-03-23

Family

ID=55504526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510765251.3A Pending CN105426308A (zh) 2015-11-11 2015-11-11 一种线下数据的构建方法及装置

Country Status (1)

Country Link
CN (1) CN105426308A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107967204A (zh) * 2017-11-21 2018-04-27 百度在线网络技术(北京)有限公司 线下压测的方法、***及终端设备
CN108427638A (zh) * 2018-01-19 2018-08-21 口碑(上海)信息技术有限公司 地域相关网络营销活动测试方法及装置
CN111290948A (zh) * 2020-01-19 2020-06-16 腾讯科技(深圳)有限公司 测试数据获取方法、装置、计算机设备及可读存储介质
CN112989137A (zh) * 2021-04-21 2021-06-18 军事科学院***工程研究院网络信息研究所 一种用于复杂网络信息***构建的实体关系分析方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452462A (zh) * 2007-11-28 2009-06-10 日电(中国)有限公司 用于自动建立网络上信息对象之间层次结构的方法和***
CN101625685A (zh) * 2008-07-08 2010-01-13 鈊象电子股份有限公司 具有线上数据与网页数据的数据处理***及方法
CN102073706A (zh) * 2010-12-30 2011-05-25 北京锐安科技有限公司 分布式文件存储***和关系数据库的结合应用方法
US20110313844A1 (en) * 2010-06-17 2011-12-22 Microsoft Corporation Real-time-ready behavioral targeting in a large-scale advertisement system
US20140101186A1 (en) * 2012-10-08 2014-04-10 Linkedln Corporation Methods and systems for identifying similar schools
CN103902542A (zh) * 2012-12-25 2014-07-02 百度在线网络技术(北京)有限公司 一种测试环境中数据库的运维方法及***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452462A (zh) * 2007-11-28 2009-06-10 日电(中国)有限公司 用于自动建立网络上信息对象之间层次结构的方法和***
CN101625685A (zh) * 2008-07-08 2010-01-13 鈊象电子股份有限公司 具有线上数据与网页数据的数据处理***及方法
US20110313844A1 (en) * 2010-06-17 2011-12-22 Microsoft Corporation Real-time-ready behavioral targeting in a large-scale advertisement system
CN102073706A (zh) * 2010-12-30 2011-05-25 北京锐安科技有限公司 分布式文件存储***和关系数据库的结合应用方法
US20140101186A1 (en) * 2012-10-08 2014-04-10 Linkedln Corporation Methods and systems for identifying similar schools
CN103902542A (zh) * 2012-12-25 2014-07-02 百度在线网络技术(北京)有限公司 一种测试环境中数据库的运维方法及***

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107967204A (zh) * 2017-11-21 2018-04-27 百度在线网络技术(北京)有限公司 线下压测的方法、***及终端设备
CN107967204B (zh) * 2017-11-21 2020-12-25 百度在线网络技术(北京)有限公司 线下压测的方法、***及终端设备
CN108427638A (zh) * 2018-01-19 2018-08-21 口碑(上海)信息技术有限公司 地域相关网络营销活动测试方法及装置
CN111290948A (zh) * 2020-01-19 2020-06-16 腾讯科技(深圳)有限公司 测试数据获取方法、装置、计算机设备及可读存储介质
CN112989137A (zh) * 2021-04-21 2021-06-18 军事科学院***工程研究院网络信息研究所 一种用于复杂网络信息***构建的实体关系分析方法

Similar Documents

Publication Publication Date Title
US10387292B2 (en) Determining application test results using screenshot metadata
CN107273280B (zh) 一种日志处理方法、装置、电子设备和存储介质
CN105426308A (zh) 一种线下数据的构建方法及装置
CN106657192B (zh) 一种用于呈现服务调用信息的方法与设备
CN111125555B (zh) 企业信息获取方法以及装置
CN105183882A (zh) 一种应用软件推荐方法和装置
CN104899136A (zh) 一种用于生成测试用例的方法和装置
CN108111364B (zh) 一种业务***的测试方法及装置
EP3179370A1 (en) Webpage automatic test method and apparatus
CN112905441A (zh) 测试用例生成方法、测试方法、装置及设备
CN103152212B (zh) 一种告警相关性分析方法、装置及网络管理***
KR20210040310A (ko) 지도 검색 테스트 방법, 장치, 기기, 저장매체 및 프로그램
CN104615737A (zh) 一种基于搜索框的计算方法及装置
CN104808995A (zh) 一种用于跨应用收藏应用内容的方法和装置
CN110059122B (zh) 一种基于云端Web的野生动物资源数据入库方法
CN115291773B (zh) 树形结构数据展示方法及装置
CN113255769B (zh) 化合物属性预测模型训练方法和化合物属性预测方法
CN116225690A (zh) 基于docker的内存多维数据库计算负载均衡方法及***
EP3828722A2 (en) Method and apparatus of constructing a fused relationship network, electronic device and medium
CN105224394A (zh) 一种应用程序的分类方法及装置
CN105843826A (zh) 一种查找方法和装置
CN109491699B (zh) 应用程序的资源检查方法、装置、设备及存储介质
CN115373831A (zh) 数据处理方法、装置以及计算机可读存储介质
CN113051510A (zh) 交互处理方法、装置、前端设备、后端设备及存储介质
CN111030863A (zh) 一种节点拓扑信息确定方法、装置、设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160323