CN111615699B - 用于统一资源标识符(uri)合并的系统和方法 - Google Patents
用于统一资源标识符(uri)合并的系统和方法 Download PDFInfo
- Publication number
- CN111615699B CN111615699B CN201880084152.0A CN201880084152A CN111615699B CN 111615699 B CN111615699 B CN 111615699B CN 201880084152 A CN201880084152 A CN 201880084152A CN 111615699 B CN111615699 B CN 111615699B
- Authority
- CN
- China
- Prior art keywords
- uri
- segment
- segments
- extracted
- database
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 230000004044 response Effects 0.000 claims abstract description 25
- 230000001052 transient effect Effects 0.000 claims description 16
- 230000003068 static effect Effects 0.000 claims description 12
- 230000006870 function Effects 0.000 description 18
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 239000012634 fragment Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9562—Bookmark management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (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)
- Information Transfer Between Computers (AREA)
Abstract
提供了用于URI(统一资源标识符)合并的系统和方法。一种用于URI合并的示例性方法可以包括接收在从左到右的字符串中包括一个或多个URI段的URI,解析所述URI以确定是否所述URI段中的任一个与URI数据库中的多个URI段记录中的任一个相匹配,以及响应于确定一个或多个URI段分别与所述URI段记录中的一个或多个相匹配,使用接收到的URI的一部分来表示所述接收到的URI,所述接收到的URI的一部分直到并包括与所述URI数据库中的URI段记录相匹配的最右边URI段。
Description
相关申请的交叉引用
本申请要求于2017年12月26日提交的名称为“System and Method for UniformResource Identifier(URI)Consolidation(用于统一资源标识符(URI)合并的系统和方法)”的美国临时申请号62/610,371的优先权权益,所述美国临时申请的内容通过引用以其全文并入本文。
技术领域
本公开总体上涉及用于统一资源标识符(URI)合并的方法和设备。
背景技术
大规模在线平台的日常操作通常涉及数百万个或更多个URI。庞大的数量对有效控制和监视这些URI以及与平台相关联的在线资源提出了重大挑战。因此,为了改善URI管理和简化平台操作,需要有效地合并URI。
发明内容
本公开的各种实施例可以包括用于URI合并的系统、方法和非暂态计算机可读介质。根据一方面,一种用于URI合并的示例性方法可以包括:接收在从左到右的字符串中包括一个或多个URI段的URI,解析所述URI以确定是否所述URI段中的任一个与URI数据库中的多个URI段记录中的任一个相匹配,以及响应于确定一个或多个URI段分别与所述URI段记录中的一个或多个相匹配,使用接收到的URI的一部分来表示所述接收到的URI,所述接收到的URI的一部分直到并包括与所述URI数据库中的URI段记录相匹配的最右边URI段。
在一些实施例中,在接收所述在从左到右的字符串中包括一个或多个URI段的URI之前,所述方法可以进一步包括:获得用于在线平台的操作的多个URI,提取所述多个URI的所有URI段,以及根据一个或多个规则,获得提取的URI段的至少一部分作为所述URI段记录以存储在所述URI数据库中。
在一些实施例中,所述一个或多个规则可以包括响应于获得包括以下各项中的至少一项的提取的URI段:(1)一个或多个单词或(2)多个单词的首字母缩略词,将所述提取的URI段存储为所述URI段记录。所述一个或多个单词可以包括以下各项中的至少一项:一个或多个英文单词或一个或多个拼音形式的中文单词。多个单词的首字母缩略词可以包括以下各项中的至少一项:多个英文单词的首字母缩略词或多个拼音形式的中文单词的首字母缩略词。
在一些实施例中,所述一个或多个规则可以包括响应于在一天内获得提取的URI段的频率超过阈值频率,将所述提取的URI段存储为所述URI段记录。
在一些实施例中,所述一个或多个规则可以包括响应于在预设的天数内获得提取的URI段的频率超过阈值频率,将所述提取的URI段存储为所述URI段记录。
在一些实施例中,所述一个或多个规则可以包括从所述URI段记录中排除表示静态资源的URI段。
在一些实施例中,每个URI段可以包括一个或多个字母、数字和/或符号。所述URI字符串中相邻URI段中的每两个可以由反斜杠(“/”)分隔。
在一些实施例中,接收到的URI可以包括一个或多个瞬时URI段,所述一个或多个瞬时URI段位于与所述URI数据库中的所述URI段记录相匹配的最右边URI段右边;所述瞬时URI段可以是动态且临时生成的;并且所述瞬时URI段可以包括以下各项中的至少一项:随机文本字符串、电话号码、标识号或MD5编码。
根据另一方面,一种用于URI(统一资源标识符)合并的系统可以包括处理器和存储指令的非暂态计算机可读存储介质,所述指令在由所述处理器执行时使所述系统执行用于URI合并的方法。所述方法可以包括:接收在从左到右的字符串中包括一个或多个URI段的URI,解析所述URI以确定是否所述URI段中的任一个与URI数据库中的多个URI段记录中的任一个相匹配,以及响应于确定一个或多个URI段分别与所述URI段记录中的一个或多个相匹配,使用接收到的URI的一部分来表示所述接收到的URI,所述接收到的URI的一部分直到并包括与所述URI数据库中的URI段记录相匹配的最右边URI段。
根据另一方面,一种非暂态计算机可读存储介质可以存储指令,所述指令在由所述处理器执行时使所述处理器执行用于URI(统一资源标识符)合并的方法。所述方法可以包括:接收在从左到右的字符串中包括一个或多个URI段的URI,解析所述URI以确定是否所述URI段中的任一个与URI数据库中的多个URI段记录中的任一个相匹配,以及响应于确定一个或多个URI段分别与所述URI段记录中的一个或多个相匹配,使用接收到的URI的一部分来表示所述接收到的URI,所述接收到的URI的一部分直到并包括与所述URI数据库中的URI段记录相匹配的最右边URI段。
在参考附图考虑以下描述和所附权利要求时,本文所公开的系统、方法和非暂态计算机可读介质的这些和其他特征、以及相关结构元素的操作方法和功能以及制造的部件与经济性的组合将变得更加显而易见,所有附图形成本说明书的一部分,其中,相似的附图标记指示各个附图中的对应部分。然而,将明确理解的是,附图仅出于说明和描述的目的,而不旨在作为对本发明的限制的限定。
附图说明
本技术的各种实施例的某些特征在所附权利要求中具体阐述。通过参考阐述利用了本发明的原理的说明性实施例的以下详细描述以及附图,将获得对所述技术的特征和优点的更好理解,在附图中:
图1图示了根据各种实施例的用于URI合并的示例性环境。
图2图示了根据各种实施例的用于URI合并的另一个示例性环境。
图3图示了根据各种实施例的用于URI合并的示例性方法的流程图。
图4图示了根据各种实施例的经合并的URI的示例性表。
图5图示了可以在其中实施本文所描述的任何实施例的示例性计算机系统的框图。
具体实施方式
URI是用于标识资源的字符串,所述资源可以是例如静态文件或动态功能(例如,应用程序编程接口(API))。指向网络位置处源的URI也可以被称为统一资源定位符(URL)。这样的标识使得能够使用特定协议通过网络、通常是万维网与资源的表示进行交互。
在一些实施例中,URI可以包括两个部分:表示主机的字符串和到资源的路径。这两个部分可以由反斜杠“/”符号分隔。URI可以可选地进一步包括一个或多个其他部分,比如方案、用户信息、端口、查询、片段等。路径和查询可以由“?”符号分隔并且查询和片段可以由“#”符号分隔。所述部分中的每一个可以具有各种表示。下文给出了三个示例性URI/URL。
1.https://example.org/absolute/URI/with/absolute/path/to/resource.txt
这是静态资源URI。方案为“https”,主机为“example.org”,并且路径为“/absolute/URI/with/absolute/path/to/resource.txt”。
2.https://example.org/absolute/URI/with/absolute/path/to/function/show_my_name?name=David
这是API函数URI。方案为“https”,主机为“example.org”,路径为“/absolute/URI/with/absolute/path/to/function/show_my_name”,并且查询为“name=David”。
3.abc://username:password@example.com:123/path/data?key=value&key2=value2#fragid1
这也是API函数URI。方案为“abc”,用户信息为“username:password”,主机为“example.com”,端口为“123”,路径为“/path/data”,查询为“key=value&key2=value2”,并且片段为“fragid1”。用户信息、主机和端口可以被称为授权,并且授权和路径可以被称为分层部分。
URI可以指定各种网络资源或信息的位置,并且对于在线平台的操作至关重要。通常,在线平台可能需要在其操作中创建或管理数百万个或更多个URI。对于上文描述的静态资源URI,在类似的路径中可能有成千上万的静态资源,不同之处仅在于路径末端的资源名称(例如,resouce.txt)。对于上文描述的API URI,甚至会生成更多URI,因为每条路径可能都包含出于现有使用而临时生成的瞬时信息,比如唯一数字、随机序列、令牌、密码编码等。因此,随着不断生成新的URI,当前技术缺乏有效的措施来跟踪URI。
所公开的用于URI合并的系统和方法至少降低了一致地监视和管理URI的巨大困难。在各种实施例中,所公开的系统可以获得用于在线平台的操作的多个URI,提取所述多个URI的所有URI段,并且根据一个或多个规则,获得提取的URI段的至少一部分作为URI段记录以存储在URI数据库中。进一步,为了在URI合并中应用URI数据库,系统可以接收在从左到右的字符串中包括一个或多个URI段的URI,解析所述URI以确定是否所述URI段中的任一个与URI数据库中的多个URI段记录中的任一个相匹配,以及响应于确定一个或多个URI段分别与所述URI段记录中的一个或多个相匹配,使用接收到的URI的一部分来表示所述接收到的URI,所述接收到的URI的一部分直到并包括与所述URI数据库中的URI段记录相匹配的最右边URI段。因此,根据URI的主要功能或路径,可以将无数URI合并为显著更小的且可管理的大小。
在一些实施例中,所述一个或多个规则可以包括响应于获得包括以下各项中的至少一项的提取的URI段:(1)一个或多个单词或(2)多个单词的首字母缩略词,将所述提取的URI段存储为所述URI段记录。所述一个或多个单词可以包括以下各项中的至少一项:一个或多个英文单词或一个或多个拼音形式的中文单词。多个单词的首字母缩略词可以包括以下各项中的至少一项:多个英文单词的首字母缩略词或多个拼音形式的中文单词的首字母缩略词。在一些实施例中,所述一个或多个规则可以包括响应于在一天内获得提取的URI段的频率超过阈值频率,将所述提取的URI段存储为所述URI段记录。在一些实施例中,所述一个或多个规则可以包括响应于在预设的天数内获得提取的URI段的频率超过阈值频率,将所述提取的URI段存储为所述URI段记录。在一些实施例中,所述一个或多个规则可以包括从所述URI段记录中排除表示静态资源的URI段。
这样,所公开的技术解决方案使用用于合并URI的特定且非常规的规则,即用于检测和修整URI的动态和瞬时部分的规则。计算机系统可以自动解析接收到的URI,自动识别冗余URI部分,并且自动丢弃冗余部分以获得经合并的URI。总体而言,这允许计算机系统显著减少要监视的URI的数量,从而提高计算机功能,节省存储资源并提高管理系统资源的效率。在一个示例中,对于URI的大小过大的大型计算机平台,URI合并可以提供更清晰且更直观的途径来跟踪对网络上系统资源的访问,并且允许更快地检测任何异常使用。
图1图示了根据各种实施例的用于URI合并的示例性环境100。如图1所示,示例性系统100可以包括至少一个计算系统102,所述至少一个计算系统包括一个或多个处理器104、存储器106和网络设备103。存储器106可以是非暂态的并且是计算机可读的。存储器106可以存储在由一个或多个处理器104执行时使一个或多个处理器104执行本文所描述的各种操作的指令。可以以各种形式来实施网络设备,比如路由器或引导因特网流量的另一个设备。系统102可以在比如移动电话、平板电脑、服务器、计算机、可穿戴设备(智能手表)等各种设备上实施或作为所述各种设备实施。系统102可以安装有适当的软件(例如,数据传递程序等)和/或硬件(例如,有线连接、无线连接等)以访问系统100的其他设备。
系统100可以包括系统102可访问的一个或多个数据存储装置(例如,数据存储装置105或108)和一个或多个计算设备(例如,计算设备107或109)。在一些实施例中,系统102可以被配置成从数据存储装置(例如,云数据库)和/或计算设备(例如,服务器、移动电话、车辆计算机、平板电脑、可穿戴设备(智能手表))获得数据。
在一些实施例中,数据存储装置108、计算设备109和系统102可以彼此耦接并实施在线平台111(例如,用于经由因特网呼叫车辆的车辆平台),如此图中的虚线所指示的。因此,平台111内的系统和设备可以在系统102的“内部”,并且平台111外的系统和设备可以在系统102的“外部”。在一些实施方式中,平台111可以利用、提供或以其他方式接触各种在线资源(例如,所存储的文件、信息等)。可以将在线资源存储在环境中的任何位置(例如,数据存储装置108、数据存储装置105、计算设备109、计算设备107、存储器106等)。在一些实施例中,网络设备103可以记录各种资源的URI。例如,当用户使用计算设备107(例如,移动电话)来投诉特定驾驶员——驾驶员的信息存储在数据存储装置108中的“driverinfo”表中——时,当存储投诉时,网络设备103可以记录指向“driverinfo”表的URI。所记录的URI和其他URI可以由系统102合并。
在一些实施例中,系统102和一个或多个计算设备(例如,计算设备109)可以集成在单个设备或系统中。替代性地,系统102和一个或多个计算设备可以作为单独的设备来操作。一个或多个数据存储装置(例如,数据存储装置108)可以是系统102可访问的任何地方,例如,在存储器106中、在计算设备109中、在耦接到系统102的另一个设备(例如,网络存储设备)中、或者在另一个存储位置(例如,基于云的存储系统、网络文件系统等)等。系统102可以被实施为彼此耦接的单个系统或多个系统。通常,系统102、计算设备109、数据存储装置108、计算设备107和数据存储装置105可以能够通过可以传送数据的一个或多个有线或无线网络(例如,因特网)彼此通信。
图2图示了根据各种实施例的用于URI合并的另一个示例性环境200。图2中示出的和下文呈现的操作旨在是说明性的。图2中的各种系统和设备及其功能类似于上文参考图1描述的系统和设备及其功能,除了网络设备103被布置在系统102外部。除了此图中所图示的地方之外,网络设备103还可以被布置在环境200中的任何地方。例如,网络设备103可以被并入到计算设备109或计算设备107中。如上文所描述的,各种系统和设备可以跨网络访问或提供资源,并且网络设备103可以记录与资源相对应的URI。系统102可以耦接到网络设备103,并且可以获得并合并URI。
图3图示了根据本公开的各种实施例的用于URI合并的示例性方法300的流程图。方法300可以在各种环境中实施,包括例如图1的环境100或图2的环境200。示例性方法300可以由系统102的一个或多个部件(例如,处理器104、存储器106)来实施。系统102可以在服务器、计算机、路由器等上实施。示例性方法300可以由类似于系统102(例如,计算机)的多个系统来实施。下文呈现的方法300的操作旨在是说明性的。取决于实施方式,示例性方法300可以包括以各种顺序或并行地执行的附加的、更少的、或替代性的步骤。
在一些实施例中,框302至306可以表示用于获得URI数据库的步骤,并且框308至312可以表示用于合并URI的步骤。框302至306可以是可选的。在框302处,可选地,可以获得用于在线平台的操作的多个URI。例如,可以收集数天内出现在平台操作中的所有URI。在框304处,可选地,可以提取多个URI中的所有URI段。在框306处,可选地,根据一个或多个规则,可以获得提取的URI段的至少一部分作为URI段记录以存储在URI数据库中。在框308处,可以接收在从左到右的字符串中包括一个或多个URI段的URI(例如,从网络设备103或访问平台111的另一个设备)。在框310处,可以解析URI以确定是否URI段中的任一个与URI数据库中的多个URI段记录中的任一个相匹配。在框312处,响应于确定一个或多个URI段分别与所述URI段记录中的一个或多个相匹配,可以使用接收到的URI的一部分来表示所述接收到的URI,所述接收到的URI的一部分直到并包括与所述URI数据库中的URI段记录相匹配的最右边URI段。也就是说,可以丢弃其余的接收到的URI(位于与URI数据库中的URI段记录相匹配的最右边URI段的右边)。如果找不到与任何URI段记录的匹配,则URI中的主机可用于表示接收到的URI。
如上文所描述的,URI可以包括包含各种URI段的路径。每个URI段可以包括一个或多个字母、数字和/或符号(例如,#、@)。进一步,所述URI字符串中相邻URI段中的每两个可以由反斜杠(“/”)分隔。在一个示例中,对于URI https://example.org/absolute8/URI/123/...,“absolute8”、“URI”和“123”是主机“example.org”之后的从左到右的字符串中的URI段,并由反斜杠“/”分隔。
在一些实施例中,接收到的URI可以包括一个或多个瞬时URI段,所述一个或多个瞬时URI段位于与所述URI数据库中的所述URI段记录相匹配的最右边URI段右边。出于比如信息保护的目的,可以动态且临时地生成瞬时URI段。可以根据所公开的方法来检测和修整瞬时URI段。所述瞬时URI段可以包括以下各项中的至少一项:随机文本字符串、电话号码、标识号或MD5编码。在此,文本可以包括字母(或各种语言的替代表示)、数字和/或符号。
例如,下文列出了两个URI。
(1)aapi-sec-epp.xiaojukeji.com/aapi/v1/cdbFile/proxy-vt/04fe2c17c2e9df01859 18bfd144aa4f7a5111db0589fb615af46bd2c2beef01c
(2)aapi-sec-epp.xiaojukeji.com/aapi/v1/cdbFile/proxy-vt/05bf66bf7cfba48d7730 c4d962ea65c9f089cc374ca9a9325212807c7c207c3e
在这两个URI中,每个URI包括在最右边URI段位置处在随机生成的数字和字母的字符串中的MD5编码。因此,可以将这两个URI合并为一个:aapi-sec-epp.xiaojukeji.com/aapi/v1/cdbFile/proxy-vt。
步骤306中的一个或多个规则可以包括规则的组合,其中一些规则在下文提供,以确定URI段记录。也就是说,规则可以帮助从随机URI段中确定有意义的URI段。可以在所述确定中为以下文描述的规则中的每一个分配权重。
在一些实施例中,步骤306中的所述一个或多个规则可以包括响应于获得包括以下各项中的至少一项的提取的URI段:(1)一个或多个单词或(2)多个单词的首字母缩略词,将提取的URI段存储为URI段记录。一个或多个单词可以包括以下各项中的至少一项:一个或多个英文单词(例如,get、detail2、pGetDetail)或一个或多个拼音形式的中文单词(例如,weixin、dache)。多个单词的首字母缩略词包括以下各项中的至少一项:多个英文单词的首字母缩略词(例如,CNN)或多个拼音形式的中文单词的首字母缩略词(例如,DDCX-v5)。可以替代性地或另外地使用各种其他语言和表示。系统102可以确定URI段的组成,例如,是否URI段仅包括字母,或包括数字、字母和符号的混合。对于每个组成类别,系统102可以维护所识别的单词(例如,词典单词、位置名称、商品名称、常用短语)、其首字母缩略词、或手动生成的字符串(字母、数字和/或符号)的数据库以执行确定。
在一些实施例中,步骤306中的一个或多个规则可以包括响应于在一天内获得提取的URI段的频率超过阈值频率,将提取的URI段存储为URI段记录。例如,诸如“9f089cc374ca9a932521”的随机字符串可以是瞬时的,并且在所有URI中最多出现2次或3次,而字符串“v2-1”一天可以在各种URI中重复出现数百次,并且应作为URI段记录被包括在内。
在一些实施例中,步骤306中的一个或多个规则可以包括响应于在预设的天数内获得提取的URI段的频率超过阈值频率,将提取的URI段存储为URI段记录。例如,如果平台实施被称为“buy1get5”的促销活动,则与促销有关的一些关键字符串(比如“b1g5”)可能会重复出现在每日URI流量中,并且应作为URI段记录包括在内。
在一些实施例中,一个或多个规则可以包括从URI段记录中排除表示静态资源的URI段。例如,以“.txt”(文本文件)、“.png”(图形)、“.xls”(Excel)和“.pdf”(PDF文件)结尾的段可以表示各种文档并且应被排除在外。系统102可以维护被标识为静态资源的格式的列表。例如,在https://example.org/absolute/URI/with/absolute/path/resource.txt中,“absolute”、“URI”、“with”、“absolute”以及“path”可以用作URI段记录,但“resource.txt”不可以。
方法300可以应用于多个接收到的URI,比如平台111的每日URI流量中的URI,以获得经合并的URI。参考图4,图4图示了根据各种实施例的经合并的URI的示例性表。图4中示出的和下文呈现的操作旨在是说明性的。如此图所示,搜索关键字“driverinfo”,并在表中示出相匹配的URI。每个URI被分为主机和路径,并且与累积出现、活动索引、首次出现的一天和最近出现的最近一天相关联。如此表中所预期的,没有路径以瞬时URI段结尾,瞬时URI段已经根据所公开的方法被修整。
因此,每天数百万个或更多个唯一URI可以合并到数千个或更少,从而大大减轻了URI监视的负担。进一步,经合并的URI可以在轻量级数据库中维护,以供内部参考和使用。与诸如首次出现日期、最近出现日期、累积出现和活动索引的其他信息一起,可以轻松地取得并按顺序组织经合并的URI。
本文所描述的技术由一个或多个专用计算设备实施。专用计算设备可以是桌面型计算机系统、服务器计算机系统、便携式计算机系统、手持设备、联网设备或任何其他设备或结合了硬接线和/或程序逻辑来实施技术的设备的组合。(多个)计算设备通常由操作系统软件控制和协调。传统的操作系统控制并调度用于执行的计算机进程,执行存储器管理,提供文件系统、联网、I/O服务并提供用户接口功能,比如图形用户接口(“GUI”)等等。
图5是图示了可以在其上实施本文所描述的任何实施例的计算机系统500的框图。系统500可以对应于上文描述的系统102。计算机系统500包括总线502或用于传送信息的其他通信机制、与总线502耦接以处理信息的一个或多个硬件处理器504。(多个)硬件处理器504可以是例如一个或多个通用微处理器。(多个)处理器504可以对应于上文描述的处理器104。
计算机系统500还包括耦接到总线502以用于存储要由处理器504执行的信息和指令的主存储器506,比如随机存取存储器(RAM)、缓存和/或其他动态存储设备。主存储器506还可以用于存储在执行要由处理器504执行的指令期间的临时变量或其他中间信息。这些指令当存储在处理器504可访问的存储介质中时使计算机系统500成为被自定义为执行指令中指定的操作的专用机器。计算机系统500进一步包括只读存储器(ROM)508或耦接到总线502以用于存储处理器504的静态信息和指令的其他静态存储设备。比如磁盘、光盘或USB拇指驱动器(闪存驱动器)等存储设备510被提供并耦接到总线502,用于存储信息和指令。主存储器506、ROM 508和/或存储设备510可以对应于上文描述的存储器106。
计算机系统500可以使用定制的硬接线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑来实施本文所描述的技术,定制的硬接线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑与计算机系统相结合使计算机系统500成为专用机器或者将其编程为专用机器。根据一个实施例,本文的技术由计算机系统500响应于(多个)处理器504执行主存储器506中包含的一个或多个指令的一个或多个序列而执行。这样的指令可以从另一个存储介质比如存储设备510读取到主存储器506中。主存储器506中包含的指令序列的执行使(多个)处理器504执行本文所描述的过程步骤。在替代性实施例中,可以使用硬接线电路代替软件指令或与软件指令组合。
主存储器506、ROM 508和/或存储设备510可以包括非暂态存储介质。如本文所使用的术语“非暂态介质(non-transitory media)”及类似术语是指存储使机器以特定方式操作的数据和/或指令的任何介质。这种非暂态介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘或者磁盘,比如存储设备510。易失性介质包括动态存储器,比如主存储器506。非暂态介质的常见形式例如包括软盘、软磁盘、硬盘、固态驱动器、磁带或者任何其他磁性数据存储介质、CD-ROM、任何其他光学数据存储介质、具有孔图案的任何物理介质、RAM、PROM和EPROM、闪速EPROM、NVRAM、任何其他存储器芯片或者盒、以及上述各项的联网版本。
计算机系统500还包括耦接到总线502的网络接口518。网络接口518提供耦接到一个或多个网络链路的双向数据通信,一个或多个网络链路连接到一个或多个本地网络。例如,网络接口518可以是综合业务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或调制解调器,以向对应类型的电话线提供数据通信连接。作为另一个示例,网络接口518可以是用于提供与兼容LAN(或用于与WAN进行通信的WAN部件)的数据通信连接的局域网(LAN)卡。还可以实施无线链路。在任何这种实施方式中,网络接口518发送和接收携载表示各种类型信息的数字数据流的电信号、电磁信号或光信号。网络接口518可以对应于上文参考图1所描述的网络设备103。
计算机系统500可以通过(多个)网络、网络链路和网络接口518发送消息和接收数据(包括程序代码)。在因特网示例中,服务器可以通过因特网、ISP、本地网络和网络接口518传输应用程序的请求代码。
接收到的代码可以在被接收到时由处理器504执行,和/或存储在存储设备510、或其他非易失性存储设备中以供稍后执行。
在前面章节中所描述的每个过程、方法和算法均可以在由包括计算机硬件的一个或多个计算机系统或计算机处理器所执行的代码模块中实施并由所述代码模块全部或部分地进行自动化。所述过程和算法可以在专用电路中部分地或全部地实施。
上文所描述的各种特征和过程可以彼此独立地使用,或者可以以各种方式进行组合。所有可能的组合和子组合都旨在落入本公开的范围内。此外,在一些实施方式中,可以省略某些方法或过程框。本文所描述的方法和过程也不限于任何特定的顺序,并且与方法和过程相关的框或状态可以以适当的其他顺序进行。例如,所描述的框或状态可以以不同于具体公开的顺序来执行,或者多个框或状态可以组合在单个框或状态中。示例性框或状态可以串行、并行或以某种其他方式执行。可以向所公开的示例性实施例中添加框或状态或从中移除框或状态。本文所描述的示例性系统和部件可以不同于所描述的那样来配置。例如,与所公开的示例性实施例相比,元素可以被添加、移除或重新排列。
本文所描述的示例性方法的各种操作可以至少部分地通过算法来执行。算法可以包含在存储在存储器(例如,上文描述的非暂态计算机可读存储介质)中的程序代码或指令中。这种算法可以包括机器学习算法。在一些实施例中,机器学习算法可以不显式地对计算机进行编程来执行功能,而是可以从训练数据中学习来做出执行功能的预测模型。
本文所描述的示例性方法的各种操作可以至少部分地由临时配置(例如,通过软件)或永久配置成执行相关操作的一个或多个处理器来执行。无论是临时配置还是永久配置,这种处理器都可以构成处理器实施的引擎,所述引擎操作以执行本文所描述的一个或多个操作或功能。
类似地,本文所描述的方法可以至少部分由处理器实施,一个或多个特定处理器是硬件的示例。例如,方法的至少一些操作可以由一个或多个处理器或处理器实施的引擎来执行。此外,所述一个或多个处理器还可以在“云计算”环境中操作或者作为“软件即服务”(SaaS)操作来支持相关操作的执行。例如,操作中的至少一些操作可以由一组计算机(作为包括处理器的机器的示例)来执行,这些操作可以经由网络(例如,因特网)和经由一个或多个适当的接口(例如,应用程序接口(API))来访问。
可以将某些操作的执行分配到多个处理器之中,使其不是仅驻留在单个机器内,而是跨多个机器部署。在一些示例性实施例中,处理器或处理器实施的引擎可以位于单个地理位置(例如,在家庭环境、办公室环境、或服务器群内)。在其他示例性实施例中,处理器或处理器实施的引擎可以跨多个地理位置分布。
在整个说明书中,多个实例可以实施被描述为单个实例的部件、操作或结构。尽管一种或多种方法的逐个操作被说明和描述为单独的操作,但是逐个操作中的一个或多个可以同时执行,并且不要求操作以所说明的顺序执行。在示例性配置中作为独立部件呈现的结构和功能可以实施为组合的结构或部件。类似地,作为单个部件呈现的结构和功能可以实施为独立的部件。这些和其他变化、修改、添加和改进落入本文主题的范围内。
尽管已经参考特定示例性实施例描述了主题的概述,但是在不脱离本公开的实施例的更宽范围的情况下,可以对这些实施例进行各种修改和改变。主题的这些实施例在本文中可以仅出于方便目的而单独地或共同地通过术语“发明”来指代,并且如果实际上公开了一个以上的公开内容或概念,则不旨在将本申请的范围自动地限制为任何单个公开内容或概念。
以足以使得本领域技术人员能够实践所公开的教导的细节描述了本文所示的实施例。可以使用并从本文所示的实施例得到其他实施例,从而使得可以在不脱离本公开的范围的情况下做出结构和逻辑替换和改变。因此,具体实施方式不应被视为具有限制意义,并且各种实施例的范围仅由所附权利要求以及这些权利要求所授权的等同物的全部范围来限定。
本文所描述的和/或附图中描绘的流程图中的任何过程描述、元素或框应该被理解为潜在地表示包括用于实施过程中的特定逻辑功能或步骤的一个或多个可执行指令的代码模块、段或部分。如本领域技术人员所理解的,替代实施方式包括在本文所描述的实施例的范围内,其中,根据所涉及的功能,元素或功能可以被删除、被与所示出或讨论的顺序不同地、包括基本上同时地或以相反的顺序执行。
如本文所使用的,术语“或”可以以包括性或排他性的意义来解释。此外,可以为本文描述为单个实例的资源、操作或结构提供多个实例。另外,各种资源、操作、引擎和数据存储装置之间的边界在某种程度上是任意的,并且在特定说明性配置的上下文中说明了特定操作。可以设想功能的其他分配,并且其可以落入本公开的各种实施例的范围内。通常,在示例性配置中作为单独资源呈现的结构和功能可以被实施为组合的结构或资源。类似地,呈现为单个资源的结构和功能可以实施为单独的资源。这些和其他变化、修改、添加和改进落入由所附权利要求表示的本公开的实施例的范围内。因此,应当从说明性而非限制性意义上看待说明书和附图。
除非另外具体规定,或在如所使用的环境内以其他方式被理解,否则除其他外诸如“可(can)”、“可以(could)”、“可能(might)”、或“会(may)”的条件语言一般地旨在传达某些实施例包括而其他实施例不包括某些特征、元素和/或步骤。因此,这种条件语言通常不旨在暗示一个或多个实施例以任何方式需要特征、元素和/或步骤或者一个或多个实施例必须包括用于在有或没有用户输入或提示的情况下决定是否在任何特定实施例中包括或者是否将在任何特定实施例中执行这些特征、元素和/或步骤的逻辑。
Claims (17)
1.一种用于URI(统一资源标识符)合并的方法,所述方法包括:
获得用于在线平台的操作的多个URI;
提取所述多个URI的至少一部分URI段;
根据多个规则,获得提取的URI段的至少一部分作为URI段记录以存储在URI数据库中;所述多个规则分别具有权重;所述规则用于从随机URI段中确定有意义的URI段,所述有意义的URI段作为所述URI数据库中的所述URI段记录;
接收在从左到右的字符串中包括一个或多个URI段的URI;
解析所述URI以确定是否所述URI段中的任一个与URI数据库中的多个URI段记录中的任一个相匹配;以及
响应于确定一个或多个URI段分别与所述URI段记录中的一个或多个相匹配,使用接收到的URI的一部分来表示所述接收到的URI,所述接收到的URI的一部分直到并包括与所述URI数据库中的URI段记录相匹配的最右边URI段,并丢弃所述URI中位于所述相匹配的最右边URI段右侧的URI段。
2.如权利要求1所述的方法,其中,所述多个规则包括:
响应于获得包括以下各项中的至少一项的提取的URI段:(1) 一个或多个单词或 (2)多个单词的首字母缩略词,将所述提取的URI段存储为所述URI段记录。
3.如权利要求2所述的方法,其中:
所述一个或多个单词包括以下各项中的至少一项:一个或多个英文单词或一个或多个拼音形式的中文单词;并且
所述多个单词的首字母缩略词包括以下各项中的至少一项:多个英文单词的首字母缩略词或多个拼音形式的中文单词的首字母缩略词。
4.如权利要求1所述的方法,其中,所述多个规则包括:
响应于在一天内获得提取的URI段的频率超过阈值频率,将所述提取的URI段存储为所述URI段记录。
5.如权利要求1所述的方法,其中,所述多个规则包括:
响应于在预设的天数内获得提取的URI段的频率超过阈值频率,将所述提取的URI段存储为所述URI段记录。
6.如权利要求1所述的方法,其中:
所述多个规则包括从所述URI段记录中排除表示静态资源的URI段。
7.如权利要求1所述的方法,其中:
每个URI段包括一个或多个字母、数字和/或符号;并且
URI字符串中相邻URI段中的每两个URI段由反斜杠(“/”)分隔。
8.如权利要求1所述的方法,其中:
所述接收到的URI包括一个或多个瞬时URI段,所述一个或多个瞬时URI段位于与所述URI数据库中的所述URI段记录相匹配的最右边URI段右边;
所述瞬时URI段是动态且临时生成的;并且
所述瞬时URI段包括以下各项中的至少一项:随机文本字符串、电话号码、标识号或MD5编码。
9.一种用于URI(统一资源标识符)合并的系统,所述系统包括处理器和存储指令的非暂态计算机可读存储介质,所述指令在由所述处理器执行时使所述系统执行用于URI合并的方法,所述方法包括:
获得用于在线平台的操作的多个URI;
提取所述多个URI的至少一部分URI段;
根据多个规则,获得提取的URI段的至少一部分作为URI段记录以存储在URI数据库中;所述多个规则分别具有权重;所述规则用于从随机URI段中确定有意义的URI段,所述有意义的URI段作为所述URI数据库中的所述URI段记录;
接收在从左到右的字符串中包括一个或多个URI段的URI;
解析所述URI以确定是否所述URI段中的任一个与URI数据库中的多个URI段记录中的任一个相匹配;以及
响应于确定一个或多个URI段分别与所述URI段记录中的一个或多个相匹配,使用接收到的URI的一部分来表示所述接收到的URI,所述接收到的URI的一部分直到并包括与所述URI数据库中的URI段记录相匹配的最右边URI段,并丢弃所述URI中位于所述相匹配的最右边URI段右侧的URI段。
10.如权利要求9所述的系统,其中,所述多个规则包括:
响应于获得包括以下各项中的至少一项的提取的URI段:(1) 一个或多个单词或 (2)多个单词的首字母缩略词,将所述提取的URI段存储为所述URI段记录。
11.如权利要求10所述的系统,其中:
所述一个或多个单词包括以下各项中的至少一项:一个或多个英文单词或一个或多个拼音形式的中文单词;并且
多个单词的首字母缩略词包括以下各项中的至少一项:多个英文单词的首字母缩略词或多个拼音形式的中文单词的首字母缩略词。
12.如权利要求9所述的系统,其中,所述多个规则包括:
响应于在一天内获得提取的URI段的频率超过阈值频率,将所述提取的URI段存储为所述URI段记录。
13.如权利要求9所述的系统,其中,所述多个规则包括:
响应于在预设的天数内获得提取的URI段的频率超过阈值频率,将所述提取的URI段存储为所述URI段记录。
14.如权利要求9所述的系统,其中:
所述多个规则包括从所述URI段记录中排除表示静态资源的URI段。
15.如权利要求9所述的系统,其中:
每个URI段包括一个或多个字母、数字和/或符号;并且
URI字符串中相邻URI段中的每两个URI段由反斜杠(“/”)分隔。
16.如权利要求9所述的系统,其中:
所述接收到的URI包括一个或多个瞬时URI段,所述一个或多个瞬时URI段位于与所述URI数据库中的所述URI段记录相匹配的最右边URI段右边;
所述瞬时URI段是动态且临时生成的;并且
所述瞬时URI段包括以下各项中的至少一项:随机文本字符串、电话号码、标识号或MD5编码。
17.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储指令,所述指令在由处理器执行时使所述处理器执行用于URI(统一资源标识符)合并的方法,所述方法包括:
获得用于在线平台的操作的多个URI;
提取所述多个URI的至少一部分URI段;
根据多个规则,获得提取的URI段的至少一部分作为URI段记录以存储在URI数据库中;所述多个规则分别具有权重;所述规则用于从随机URI段中确定有意义的URI段,所述有意义的URI段作为所述URI数据库中的所述URI段记录;
接收在从左到右的字符串中包括一个或多个URI段的URI;
解析所述URI以确定是否所述URI段中的任一个与URI数据库中的多个URI段记录中的任一个相匹配;以及
响应于确定一个或多个URI段分别与所述URI段记录中的一个或多个相匹配,使用接收到的URI的一部分来表示所述接收到的URI,所述接收到的URI的一部分直到并包括与所述URI数据库中的URI段记录相匹配的最右边URI段,并丢弃所述URI中位于所述相匹配的最右边URI段右侧的URI段。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762610371P | 2017-12-26 | 2017-12-26 | |
US62/610,371 | 2017-12-26 | ||
PCT/US2018/065694 WO2019133294A1 (en) | 2017-12-26 | 2018-12-14 | System and method for uniform resource identifier (uri) consolidation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111615699A CN111615699A (zh) | 2020-09-01 |
CN111615699B true CN111615699B (zh) | 2024-01-19 |
Family
ID=66948915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880084152.0A Active CN111615699B (zh) | 2017-12-26 | 2018-12-14 | 用于统一资源标识符(uri)合并的系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11086957B2 (zh) |
CN (1) | CN111615699B (zh) |
WO (1) | WO2019133294A1 (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015043308A1 (zh) * | 2013-09-30 | 2015-04-02 | 北京奇虎科技有限公司 | Url中无效参数的识别设备、识别无效参数的设备及方法 |
CN105721427A (zh) * | 2016-01-14 | 2016-06-29 | 湖南大学 | 一种从Web日志中挖掘攻击频繁序列模式的方法 |
CN107103233A (zh) * | 2011-11-02 | 2017-08-29 | 微软技术许可有限责任公司 | 用于基于动态域的隔离的技术 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3664917B2 (ja) * | 1999-08-06 | 2005-06-29 | シャープ株式会社 | ネットワーク情報の表示方法およびその方法をプログラムとして格納した記憶媒体ならびにそのプログラムを実行するコンピュータ |
US20010047404A1 (en) * | 2000-05-24 | 2001-11-29 | Takashi Suda | Apparatus for managing web site addresses |
US6910071B2 (en) * | 2001-04-02 | 2005-06-21 | The Aerospace Corporation | Surveillance monitoring and automated reporting method for detecting data changes |
US9438683B2 (en) * | 2005-04-04 | 2016-09-06 | Aol Inc. | Router-host logging |
US7945556B1 (en) | 2008-01-22 | 2011-05-17 | Sprint Communications Company L.P. | Web log filtering |
US20110040769A1 (en) * | 2009-08-13 | 2011-02-17 | Yahoo! Inc. | Query-URL N-Gram Features in Web Ranking |
US9037585B2 (en) * | 2010-03-12 | 2015-05-19 | Kristopher Kubicki | Method and system for generating prime uniform resource identifiers |
US20140149574A1 (en) * | 2012-11-28 | 2014-05-29 | Hewlett-Packard Development Company, L.P. | Generating a generalized uniform resource identifier |
CN103605704B (zh) * | 2013-11-08 | 2017-02-01 | 深圳大学 | 大量url数据任意字段索引及检索方法 |
CN106233296B (zh) * | 2013-12-10 | 2019-09-06 | 日本电信电话株式会社 | Url匹配装置以及url匹配方法 |
US9571435B2 (en) * | 2014-09-04 | 2017-02-14 | International Business Machines Corporation | Automated spam filter updating by tracking user navigation |
-
2018
- 2018-12-14 CN CN201880084152.0A patent/CN111615699B/zh active Active
- 2018-12-14 WO PCT/US2018/065694 patent/WO2019133294A1/en active Application Filing
- 2018-12-14 US US16/220,429 patent/US11086957B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107103233A (zh) * | 2011-11-02 | 2017-08-29 | 微软技术许可有限责任公司 | 用于基于动态域的隔离的技术 |
WO2015043308A1 (zh) * | 2013-09-30 | 2015-04-02 | 北京奇虎科技有限公司 | Url中无效参数的识别设备、识别无效参数的设备及方法 |
CN105721427A (zh) * | 2016-01-14 | 2016-06-29 | 湖南大学 | 一种从Web日志中挖掘攻击频繁序列模式的方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2019133294A1 (en) | 2019-07-04 |
US11086957B2 (en) | 2021-08-10 |
US20190197076A1 (en) | 2019-06-27 |
CN111615699A (zh) | 2020-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10565077B2 (en) | Using cognitive technologies to identify and resolve issues in a distributed infrastructure | |
US11681944B2 (en) | System and method to generate a labeled dataset for training an entity detection system | |
US10037435B2 (en) | Providing secure indexes for searching encrypted data | |
WO2021218143A1 (zh) | 数据同步方法、装置、服务器及存储介质 | |
US10178156B2 (en) | Extraction and capture of information from customizable header | |
US9973521B2 (en) | System and method for field extraction of data contained within a log stream | |
US11567812B2 (en) | Utilizing a natural language model to determine a predicted activity event based on a series of sequential tokens | |
US10783200B2 (en) | Systems and methods of de-duplicating similar news feed items | |
US8996725B2 (en) | Programmatic redirect management | |
US12008065B2 (en) | Utilizing machine-learning models to generate identifier embeddings and determine digital connections between digital content items | |
JP4237813B2 (ja) | 構造化文書管理システム | |
US11222131B2 (en) | Method for a secure storage of data records | |
CN111615699B (zh) | 用于统一资源标识符(uri)合并的系统和方法 | |
US20160085877A1 (en) | Correcting resource descriptive framework statements based on similarity of terms to web ontology | |
CN113688240B (zh) | 威胁要素提取方法、装置、设备及存储介质 | |
WO2024013902A1 (ja) | 類似度算出装置、類似度算出方法および類似度算出プログラム | |
JP4304226B2 (ja) | 構造化文書管理システム、構造化文書管理方法及びプログラム | |
US20240037157A1 (en) | Increasing security of a computer program using unstructured text | |
US10110441B2 (en) | Network identifier translation | |
US10713254B2 (en) | Attribute value information for a data extent | |
KR101886526B1 (ko) | 응용 트래픽 분류에 정교한 페이로드 시그니쳐 생성 방법 및 시스템 | |
CN104298684A (zh) | 一种查询方法、装置及服务器 | |
CN118250349A (zh) | 一种协议文本差异识别方法、装置、设备及存储介质 | |
CN114186150A (zh) | Url相似度检测方法、装置、设备及存储介质 | |
JP2013210862A (ja) | 文書のバージョン間の差異情報に対する検索方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200916 Address after: Building 34, yard 8, Dongbeiwang Road West, Haidian District, Beijing Applicant after: BEIJING DIDI INFINITY TECHNOLOGY AND DEVELOPMENT Co.,Ltd. Address before: 2 / F, Hong Kong offshore centre, 28 Austin Road, Tsim Sha Tsui, Kowloon, Hong Kong, China Applicant before: Droplet (Hong Kong) Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |