CN106547914B - 一种数据采集管理系统及其方法 - Google Patents
一种数据采集管理系统及其方法 Download PDFInfo
- Publication number
- CN106547914B CN106547914B CN201611055774.XA CN201611055774A CN106547914B CN 106547914 B CN106547914 B CN 106547914B CN 201611055774 A CN201611055774 A CN 201611055774A CN 106547914 B CN106547914 B CN 106547914B
- Authority
- CN
- China
- Prior art keywords
- database
- data
- state
- basic
- controller
- 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
Images
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/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- 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/951—Indexing; Web crawling techniques
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)
Abstract
本发明提供一种数据采集管理系统及其方法。所述系统包括控制器、若干个爬行器和数据库,所述爬行器用于爬取网页数据并将采集的数据发送给所述控制器,所述控制器控制所述若干个爬行器爬取和/或终止爬取数据,并为每个爬行器分配统一资源定位符URL,以及将所采集的数据存入所述数据库中,其中,所述爬行器基于Ajax动态抓取技术来爬取网页数据,所述数据库采用采用分布式基础架构,包括元数据库、原始数据库、基础数据库、综合数据库、共享数据库和发布数据库。本发明能够动态深层次的进行网页抓取并能以低成本存储海量数据。
Description
技术领域
本发明涉及一种数据采集管理系统及其方法,尤其涉及一种能够深度爬取网页数据并能以低成本对爬取的海量数据进行存储的数据采集管理系统及其方法。
背景技术
随着网络技术的大力发展,通过互联网获取数据已成为当前人们获取信息资源的重要途径。采用网络爬虫获取数据已成为主流的获取手段,然而,爬取的网页数据是海量的,这些数据需要采用具有高容量的存储器来进行存储,这样的存储器需要大量的成本支撑,这给运行商造成很大的经济负担。此外,传统的网络爬取技术是基于静态页面进行的,并不能很好的对动态页面进行爬取。
因此,需要提供一种能够降低成本且具有高储存能力的存储系统以及能够深度进行网页爬取的采集系统出现。
发明内容
针对上述技术问题,本发明提供一种能够以低成本存储数据且能够深度爬取网页数据的数据采集管理系统。
本发明采用的技术方案为:
本发明的一实施例提供一种数据采集管理系统,包括控制器、若干个爬行器和数据库,所述爬行器用于爬取网页数据并将采集的数据发送给所述控制器,所述控制器控制所述若干个爬行器爬取和/或终止爬取数据,并为每个爬行器分配统一资源定位符URL,以及将所采集的数据存入所述数据库中,其中,所述爬行器基于Ajax动态抓取技术来爬取网页数据,所述数据库采用采用分布式基础架构,包括元数据库、原始数据库、基础数据库、综合数据库、共享数据库和发布数据库。
可选地,所述元数据库为原始数据库、基础数据库、综合数据库、共享数据库和发布数据库提供数据服务支撑,用于集中存放所有元数据,包括指标体系、业务分类编码、系统分类编码、数据存储结构、报表、业务规则、数据抽取转换模型、数据分析模型、服务组件。
可选地,所述原始数据库和基础数据库构成数据生产数据库,所述控制器将所采集的数据存入所述原始数据库中,同时复制一份存入所述基础数据库中,其中,所述基础数据库中的数据经整合加工后存入所述综合数据库中,所述共享数据库包括从所述基础数据库和所述综合数据库中的筛选出的一部分数据,所述发布数据库包括从所述综合数据库和所述共享数据库中筛选出的一部分数据。
可选地,所述共享数据库中存储的数据包括不同安全级别的非公开、半公开和全公开数据,所述全公开数据发送至所述发布数据库进行发布。
可选地,所述爬行器基于Ajax动态抓取技术来爬取网页数据包括:
(1)所述控制器为所述爬行器分配相适配的初始页面的URL链接,所述爬行器从初始页面中提取初始状态,并加入到状态标识库中,同时设置初始状态的深度值为0,建立最初的待抓取Ajax页面状态队列;
(2)对于每一个待抓取的页面状态,所述爬行器探测其中所包含的可点击元素以及能够产生状态转换的事件列表;
(3)触发可点击元素上的事件,跳转到新的页面状态,获取页面状态内容后再进行重复状态检测以判断该状态是否有效;
(4)将新的有效页面状态进行标识,并将该标识存贮于状态标识库中,并且将状态内容存储于状态内容库中;
(5)重复步骤(1)至(4),直到当前页面状态的爬行深度大于指定值,所述控制器控制所述爬行器停止爬取操作。
本发明的另一实施例提供一种数据采集管理方法,包括以下步骤:
S1:控制器为若干个爬行器分配相适配的网页统一资源定位符URL,并发送指令控制所述爬行器进行和/或停止网页爬取;
S2:所述爬行器接收所述控制器发送的指令,基于Ajax动态抓取技术来爬取网页数据,并将爬取的网页数据发送给所述控制器;
S3:所述控制器将爬取的网页数据发送给数据库,所述数据库基于采用分布式基础架构来将存储所述网页数据;
其中,步骤S2具体包括:
S210:所述控制器为所述爬行器分配相适配的初始页面的URL链接,所述爬行器从初始页面中提取初始状态,并加入到状态标识库中,同时设置初始状态的深度值为0,建立最初的待抓取Ajax页面状态队列;
S220:对于每一个待抓取的页面状态,所述爬行器探测其中所包含的可点击元素以及能够产生状态转换的事件列表;
S230:触发可点击元素上的事件,跳转到新的页面状态,获取页面状态内容后再进行重复状态检测以判断该状态是否有效;
S240:将新的有效页面状态进行标识,并将该标识存贮于状态标识库中,并且将状态内容存储于状态内容库中;
S250:重复步骤S210至S240,直到当前页面状态的爬行深度大于指定值,所述控制器控制所述爬行器停止爬取操作。
可选地,所述数据库包括元数据库、原始数据库、基础数据库、综合数据库、共享数据库和发布数据库,所述元数据库为原始数据库、基础数据库、综合数据库、共享数据库和发布数据库提供数据服务支撑,用于集中存放所有元数据,包括指标体系、业务分类编码、系统分类编码、数据存储结构、报表、业务规则、数据抽取转换模型、数据分析模型、服务组件。
可选地,所述原始数据库和基础数据库构成数据生产数据库,所述控制器将所采集的数据存入所述原始数据库中,同时复制一份存入所述基础数据库中,其中,所述基础数据库中的数据经整合加工后存入所述综合数据库中,所述共享数据库包括从所述基础数据库和所述综合数据库中的筛选出的一部分数据,所述发布数据库包括从所述综合数据库和所述共享数据库中筛选出的一部分数据。
可选地,所述共享数据库中存储的数据包括不同安全级别的非公开、半公开和全公开数据,所述全公开数据发送至所述发布数据库进行发布。
本发明的数据采集管理系统与传统关系型数据库体系架构不同,采用了基于采用分布式基础架构的数据库来存储数据,不仅可以低成本存储大量的数据,还可以用TPCC远高于小型机的计算能力来处理用户的海量、数据。此外,采用基于Ajax动态抓取技术来爬取网页数据,因此能够实现动态深层次的网页抓取。
附图说明
图1为本发明实施例提供的数据采集管理系统的结构示意图。
图2是本发明的数据库架构示意图。
图3为本发明实施例提供的数据采集管理方法的结构示意图。
具体实施方式
以下结合附图对本发明的数据采集管理系统及其方法的具体实施方式进行介绍。
图1为本发明实施例提供的数据采集管理系统的结构示意图。图2是本发明的数据库架构示意图。图3为本发明实施例提供的数据采集管理方法的结构示意图。
首先,结合图1和图2对本发明的数据采集管理系统进行介绍。
【实施例一:数据采集管理系统】
如图1和2所示,本发明的数据采集管理系统包括控制器2、若干个爬行器1和数据库3。所述爬行器1用于爬取网页数据并将采集的数据发送给所述控制器2,所述控制器控制所述若干个爬行器爬取和/或终止爬取数据,并为每个爬行器分配统一资源定位符(URL),以及将所采集的数据存入所述数据库3中,其中,所述爬行器基于Ajax动态抓取技术来爬取网页数据,所述数据库采用采用分布式基础架构,包括元数据库、原始数据库、基础数据库、综合数据库、共享数据库和发布数据库。控制器2和若干个爬行器构成爬取网络。
具体地,控制器2用于整体控制所有爬行器1的运行状态,监控各个爬行器1的运行状态,向所有爬行器1发送同步和中止指令,同时负责分配URL,保证整个爬取网络各节点的负载均衡。各爬行器1接收控制器发送的指令,负责信息的采集,并将拓扑信息和内容信息反馈给控制器2,对互联网数据的爬取,获得原始数据,通过元数据存储系统的接口将数据保存在数据库3中。
在本发明中,数据库3基于分布式系统基础架(Hadoop)来进行数据存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。它具有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(highthroughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算框架服务,其主要扮演三个较色:NameNode、DataNode和Client。NameNode可以看作是分布式文件系统中的管理者,主要负责管理文件系统的命名空间、集群配置信息和存储块的复制等。NameNode会将文件系统的Meta-data存储在内存中,这些信息主要包括了文件信息、每一个文件对应的文件块的信息和每一个文件块在DataNode的信息等。DataNode是文件存储的基本单元,它将Block存储在本地文件系统中,保存了Block的Meta-data,同时周期性地将所有存在的Block信息发送给NameNode。Client就是需要获取分布式文件系统文件的应用程序。爬取的数据在HDFS上的存储是按路径来组织的,配合HDFS基于POSIX模型的权限管理机制,能为使用数据的每个用户划分权限边界。Hadoop得以在大数据处理应用中广泛应用得益于其自身在数据提取、变形和加载(ETL)方面上的天然优势。Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储,对例如像ETL这样的批处理操作相对合适,因为类似这样操作的批处理结果可以直接走向存储。Hadoop的MapReduce功能实现了将单个任务打碎,并将碎片任务(Map)发送到多个节点上,之后再以单个数据集的形式加载(Reduce)到数据仓库里。MapReduce是一种基于Hadoop离线的分布式计算模型,用于大规模数据集的它能极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。MapReduce适用于处理数据量巨大,离线的计算方式的批处理场景。MapReduce通过把对数据集的大规模操作分发给网络上的每个节点实现可靠性;每个节点会周期性的返回它所完成的工作和最新的状态。如果一个节点保持沉默超过一个预设的时间间隔,主节点(类同Google File System中的主服务器)记录下这个节点状态为死亡,并把分配给这个节点的数据发到别的节点。每个操作使用命名文件的原子操作以确保不会发生并行线程间的冲突;当文件被改名的时候,系统可能会把他们复制到任务名以外的另一个名字上去。MapReduce提供了以下的主要功能:
(1)数据划分和计算任务调度
系统自动将一个作业(Job)待处理的大数据划分为很多个数据块,每个数据块对应于一个计算任务(Task),并自动调度计算节点来处理相应的数据块。作业和任务调度功能主要负责分配和调度计算节点(Map节点或Reduce节点),同时负责监控这些节点的执行状态,并负责Map节点执行的同步控制。
(2)数据/代码互定位
为了减少数据通信,一个基本原则是本地化数据处理,即一个计算节点尽可能处理其本地磁盘上所分布存储的数据,这实现了代码向数据的迁移;当无法进行这种本地化数据处理时,再寻找其他可用节点并将数据从网络上传送给该节点(数据向代码迁移),但将尽可能从数据所在的本地机架上寻找可用节点以减少通信延迟。
(3)系统优化
为了减少数据通信开销,中间结果数据进入Reduce节点前会进行一定的合并处理;一个Reduce节点所处理的数据可能会来自多个Map节点,为了避免Reduce计算阶段发生数据相关性,Map节点输出的中间结果需使用一定的策略进行适当的划分处理,保证相关性数据发送到同一个Reduce节点;此外,系统还进行一些计算性能优化处理,如对最慢的计算任务采用多备份执行、选最快完成者作为结果。
(4)出错检测和恢复
以低端商用服务器构成的大规模MapReduce计算集群中,节点硬件(主机、磁盘、内存等)出错和软件出错是常态,因此MapReduce需要能检测并隔离出错节点,并调度分配新的节点接管出错节点的计算任务。同时,系统还将维护数据存储的可靠性,用多备份冗余存储机制提高数据存储的可靠性,并能及时检测和恢复出错的数据。
如图2所示,本发明的数据库3可包括元数据库、原始数据库、基础数据库、综合数据库、共享数据库和发布数据库。其中,所述元数据库为原始数据库、基础数据库、综合数据库、共享数据库和发布数据库提供数据服务支撑,用于集中存放所有元数据,包括指标体系、业务分类编码、系统分类编码、数据存储结构、报表、业务规则、数据抽取转换模型、数据分析模型、服务组件。所述原始数据库用于存放从外部获取的各类数据资源的原貌数据,即未经任何加工,数据内容、颗粒度与数据来源系统完全一致的业务数据,作为一种可溯源的原始资料备份保留。原始数据是未经梳理整合与资源化的原生态数据,不宜直接对外提供使用。所述基础数据库是对原始数据进行必要的清洗、辨识、整合加工后,形成了逻辑一致、条理有序的数据资源体系,完成了资源化过程,可以做为有一定权威性的标准数据对外提供服务,但其内容仍然是底层业务数据,并未在数据中心产生新数据。所述综合数据库是对基础数据进一步进行以应用为目的的加工处理,从中产生出新的数据,如统计汇总、派生指标计算、分析模型运算等等,产生的是基础数据之上的二次、三次数据,也是真正实现数据资源价值化的地方。所述共享数据库是面向具有一定级别和权限的特定用户(如各级领导机关、政府管理部门),提供各种查询分析服务的出口,具体提供的数据颗粒度,视原业务系统的数据颗粒度而定,在原有业务系统数据支持的情况下,可以提供最细粒度的数据;共享数据库是按用户需求对综合数据库的结果数据进行封装和分发,包括不同安全级别的非公开、半公开和全公开数据,在严格的安全权限控制下,将特定的结果数据提交给特定的用户,其中全公开数据发送至发布数据库中,供使用者免费查阅,非公开数据和半公开数据需要通过预设的授权指令进行访问并发送至指定位置,预设的授权指令可根据实际情况来确定,例如,一些政府部门定制的敏感信息,可通过赋予给相关政府部门的授权来进行访问,并将相关信息发送给相关政府部门。共享数据库与安全级别较高、具有一定封闭性的网络环境连接,如政府部门办公环境的政务网络。所述发布数据库是面向社会公众提供无差别公共信息服务的系统出口,与互联网连接,只包含全公开数据,可作为政府信息公开的渠道,面向全社会发布权威性政府数据。
此外,数据库3按照功能划分可分为生产区、共享区和发布区,以下对这3个区进行介绍。
(1)生成区
生成区包括原始数据库和基础数据库,具体地,所述控制器将各爬行器所采集的数据存入所述原始数据库中,同时复制一份存入所述基础数据库中。原始数据库保存原貌资料,数据资源中心的业务人员对资料的审核、评估、验收工作仅在被复制到基础数据库中的原始数据进行,验收后成为正式的原始基础数据;在已验收的基础数据基础上,根据业务需要,经过筛选、整合、转换、加工等操作,形成其它形态的基础资料保存在基础数据库中。形成可供对外共享和发布的基础数据,可以转到共享区的基础数据库数据镜像中。基础数据库中的数据生产共享区基础主题数据库和各专项主题数据库数据的基础。综合数据库是在所有可用的基础数据和所有指标基础上,根据主题分析需要而将数据重新组织的一个大而全主题数据库。各专项主题的生成可以有两种方式:一是在基础主题数据库基础上经过筛选形成,类似于基础主题数据库的数据集市;二是在基础数据库基础上,按主题的需要直接转换加载而形成。
(2)共享区
针对共建单位的数据共享需求,从共享区的基础数据库和主题数据库中筛选数据,形成面向共建单位的共享数据库,并通过信息服务推送功能向共建单位主动推送共享数据。
(3)发布区
根据政务专网信息发布需求,从共享区的基础数据库和主题数据库中筛选数据,形成专网发布库,通过政务专网门户向政府部门用户发布。
以下对本发明基于Ajax动态抓取技术来爬取网页数据进行介绍。
各爬行器基于Ajax动态抓取技术来爬取网页数据包括:
(1)所述控制器为所述爬行器分配相适配的初始页面的URL链接,所述爬行器从初始页面中提取初始状态,并加入到状态标识库中,同时设置初始状态的深度值为0,建立最初的待抓取Ajax页面状态队列;
(2)对于每一个待抓取的页面状态,所述爬行器探测其中所包含的可点击元素以及能够产生状态转换的事件列表;
(3)触发可点击元素上的事件,跳转到新的页面状态,获取页面状态内容后再进行重复状态检测以判断该状态是否有效;
(4)将新的有效页面状态进行标识,并将该标识存贮于状态标识库中,并且将状态内容存储于状态内容库中;
(5)重复步骤(1)至(4),直到当前页面状态的爬行深度(指由初始状态到达当前状态需经过的状态转换次数)大于指定值,所述控制器控制所述爬行器停止爬取操作。
上述状态数据库是用于存储所有有效页面状态的数据组件,爬行器先是从其中读取一个页面状态,然后更新当前状态并将新的状态保存到状态数据库中,借助状态数据库能够识别当前所处的页面状态,并且记录时间的执行情况;存储了已抓取过的状态避免了状态的重复抓取,提升了爬行网络的性能,同时也可避免爬行器陷入死循环中,提高抓取效率。
此外,由于爬取的网站涉及诸多类型的网站,如社交网站,新闻网站,电商网站,论文网站等其它多种类型的网站。不同类型的网站有不同的网页去重要求。对于新浪微博,大约已有5亿注册用户,千百亿条博文数据以及海量关系数据,如果把每一个爬取到的页面都记录下来,那么势必对内存的要求非常高。因此,需根据社交网站本身具备的一些特点以及非关系型数据库的存储特征,基于非关系型数据库进行去重。例如:爬取一个用户的微博信息时,可把每次爬取的最新一条微博时间和用户id以key-value的形式存储在NoSQL数据库中,当这个用户再次进入微博爬取队列中时,控制器将爬行器爬取到的微博时间与存储的最新时间进行比较,如果大于存储的最新时间,则认为这条微博尚未爬取过,可以爬取,否则,就认为此条微博已经被爬取过了,不再爬取。另外,对于新闻,电商,论文等类型的网站,可采用传统的布隆过滤进行去重,但并不局限于此。
【实施例二:数据采集管理方法】
以下结合图3对本发明的数据采集管理方法进行介绍。
如图3所示,本发明的另一实施例提供一种数据采集管理方法,包括以下步骤:
S1:分配URL和发送爬取指令
具体地,控制器为若干个爬行器分配相适配的网页统一资源定位符(URL),并发送指令控制所述爬行器进行/停止网页爬取。控制器用于整体控制所有爬行器的运行状态,监控各个爬行器的运行状态,向所有爬行器发送同步和中止指令,同时负责分配URL,保证整个爬取网络各节点的负载均衡。各爬行器接收控制器发送的指令,负责信息的采集,并将拓扑信息和内容信息反馈给控制器,对互联网数据的爬取,获得原始数据,通过元数据存储系统的接口将数据保存在数据库中。
S2:基于Ajax动态抓取技术来爬取网页数据
各爬行器接收所述控制器发送的指令,基于Ajax动态抓取技术来爬取网页数据,并将爬取的网页数据发送给所述控制器。具体包括:
S210:所述控制器为所述爬行器分配相适配的初始页面的URL链接,所述爬行器从初始页面中提取初始状态,并加入到状态标识库中,同时设置初始状态的深度值为0,建立最初的待抓取Ajax页面状态队列;
S220:对于每一个待抓取的页面状态,所述爬行器探测其中所包含的可点击元素以及能够产生状态转换的事件列表;
S230:触发可点击元素上的事件,跳转到新的页面状态,获取页面状态内容后再进行重复状态检测以判断该状态是否有效;
S240:将新的有效页面状态进行标识,并将该标识存贮于状态标识库中,并且将状态内容存储于状态内容库中;
S250:重复步骤S210至S240,直到当前页面状态的爬行深度大于指定值,所述控制器控制所述爬行器停止爬取操作。
S3:基于采用分布式基础架构来存储数据
控制器将爬取的网页数据发送给数据库,所述数据库基于采用分布式基础架构来将存储所述网页数据。
本实施例中的数据库架构与前述实施例中的数据库架构相同,在此省略对其详细介绍。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (4)
1.一种数据采集管理系统,其特征在于,包括控制器、若干个爬行器和数据库,所述爬行器用于爬取网页数据并将采集的数据发送给所述控制器,所述控制器控制所述若干个爬行器爬取和/或终止爬取数据,并为每个爬行器分配统一资源定位符URL,以及将所采集的数据存入所述数据库中,其中,所述爬行器基于Ajax动态抓取技术来爬取网页数据,所述数据库采用分布式基础架构,包括元数据库、原始数据库、基础数据库、综合数据库、共享数据库和发布数据库;
所述元数据库为原始数据库、基础数据库、综合数据库、共享数据库和发布数据库提供数据服务支撑,用于集中存放所有元数据,包括指标体系、业务分类编码、系统分类编码、数据存储结构、报表、业务规则、数据抽取转换模型、数据分析模型、服务组件;所述原始数据库用于存放从外部获取的各类数据资源的原貌数据;所述基础数据库是对原始数据进行必要的清洗、辨识、整合加工后,形成了逻辑一致、条理有序的数据资源体系;所述综合数据库是对基础数据进一步进行以应用为目的的加工处理,从中产生出新的数据;所述共享数据库是面向具有一定级别和权限的特定用户,提供各种查询分析服务的出口;所述发布数据库是面向社会公众提供无差别公共信息服务的系统出口,与互联网连接,只包含全公开数据;
所述原始数据库和基础数据库构成数据生产数据库,所述控制器将所采集的数据存入所述原始数据库中,同时复制一份存入所述基础数据库中,其中,所述基础数据库中的数据经整合加工后存入所述综合数据库中,所述共享数据库包括从所述基础数据库和所述综合数据库中的筛选出的一部分数据,所述发布数据库包括从所述综合数据库和所述共享数据库中筛选出的一部分数据;
所述爬行器基于Ajax动态抓取技术来爬取网页数据包括:
(1)所述控制器为所述爬行器分配相适配的初始页面的URL链接,所述爬行器从初始页面中提取初始状态,并加入到状态标识库中,同时设置初始状态的深度值为0,建立最初的待抓取Ajax页面状态队列;
(2)对于每一个待抓取的页面状态,所述爬行器探测其中所包含的可点击元素以及能够产生状态转换的事件列表;
(3)触发可点击元素上的事件,跳转到新的页面状态,获取页面状态内容后再进行重复状态检测以判断该状态是否有效;
(4)将新的有效页面状态进行标识,并将该标识存贮于状态标识库中,并且将状态内容存储于状态内容库中;所述状态数据库用于存储所有有效页面状态的数据组件,所述爬行器从所述状态数据库中读取一个页面状态,然后更新当前状态并将新的状态保存到所述状态数据库中,以识别当前所处的页面状态,并且记录时间的执行情况;
(5)重复步骤(1)至(4),直到当前页面状态的爬行深度大于指定值,所述控制器控制所述爬行器停止爬取操作。
2.根据权利要求1所述的数据采集管理系统,其特征在于,所述共享数据库中存储的数据包括不同安全级别的非公开数据、半公开数据和全公开数据,所述全公开数据发送至所述发布数据库进行发布,所述非公开数据和半公开数据通过预设的授权指令进行访问并发送至指定位置。
3.一种数据采集管理方法,其特征在于,包括以下步骤:
S1:控制器为若干个爬行器分配相适配的网页统一资源定位符URL,并发送指令控制所述爬行器进行和/或停止网页爬取;
S2:所述爬行器接收所述控制器发送的指令,基于Ajax动态抓取技术来爬取网页数据,并将爬取的网页数据发送给所述控制器;
S3:所述控制器将爬取的网页数据发送给数据库,所述数据库基于采用分布式基础架构来将存储所述网页数据;
其中,步骤S2具体包括:
S210:所述控制器为所述爬行器分配相适配的初始页面的URL链接,所述爬行器从初始页面中提取初始状态,并加入到状态标识库中,同时设置初始状态的深度值为0,建立最初的待抓取Ajax页面状态队列;
S220:对于每一个待抓取的页面状态,所述爬行器探测其中所包含的可点击元素以及能够产生状态转换的事件列表;
S230:触发可点击元素上的事件,跳转到新的页面状态,获取页面状态内容后再进行重复状态检测以判断该状态是否有效;
S240:将新的有效页面状态进行标识,并将该标识存贮于状态标识库中,并且将状态内容存储于状态内容库中;所述状态数据库用于存储所有有效页面状态的数据组件,所述爬行器从所述状态数据库中读取一个页面状态,然后更新当前状态并将新的状态保存到所述状态数据库中,以识别当前所处的页面状态,并且记录时间的执行情况;
S250:重复步骤S210至S240,直到当前页面状态的爬行深度大于指定值,所述控制器控制所述爬行器停止爬取操作;
所述数据库包括元数据库、原始数据库、基础数据库、综合数据库、共享数据库和发布数据库,所述元数据库为原始数据库、基础数据库、综合数据库、共享数据库和发布数据库提供数据服务支撑,用于集中存放所有元数据,包括指标体系、业务分类编码、系统分类编码、数据存储结构、报表、业务规则、数据抽取转换模型、数据分析模型、服务组件;所述原始数据库用于存放从外部获取的各类数据资源的原貌数据;所述基础数据库是对原始数据进行必要的清洗、辨识、整合加工后,形成了逻辑一致、条理有序的数据资源体系;所述综合数据库是对基础数据进一步进行以应用为目的的加工处理,从中产生出新的数据;所述共享数据库是面向具有一定级别和权限的特定用户,提供各种查询分析服务的出口;所述发布数据库是面向社会公众提供无差别公共信息服务的系统出口,与互联网连接,只包含全公开数据;所述原始数据库和基础数据库构成数据生产数据库,所述控制器将所采集的数据存入所述原始数据库中,同时复制一份存入所述基础数据库中,其中,所述基础数据库中的数据经整合加工后存入所述综合数据库中,所述共享数据库包括从所述基础数据库和所述综合数据库中的筛选出的一部分数据,所述发布数据库包括从所述综合数据库和所述共享数据库中筛选出的一部分数据。
4.根据权利要求3所述的数据采集管理方法,其特征在于,所述共享数据库中存储的数据包括不同安全级别的非公开、半公开和全公开数据,所述全公开数据发送至所述发布数据库进行发布。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611055774.XA CN106547914B (zh) | 2016-11-25 | 2016-11-25 | 一种数据采集管理系统及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611055774.XA CN106547914B (zh) | 2016-11-25 | 2016-11-25 | 一种数据采集管理系统及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106547914A CN106547914A (zh) | 2017-03-29 |
CN106547914B true CN106547914B (zh) | 2020-08-18 |
Family
ID=58395215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611055774.XA Active CN106547914B (zh) | 2016-11-25 | 2016-11-25 | 一种数据采集管理系统及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106547914B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109561117B (zh) * | 2017-09-26 | 2022-02-25 | 北京国双科技有限公司 | 数据采集方法及装置 |
CN107729458A (zh) * | 2017-10-10 | 2018-02-23 | 中国航发控制系统研究所 | 工具许可的可视化监控方法 |
CN107766581A (zh) * | 2017-11-23 | 2018-03-06 | 安徽科创智慧知识产权服务有限公司 | 对url进行数据重复记录清洗的方法 |
CN107945560A (zh) * | 2017-12-21 | 2018-04-20 | 大连海事大学 | 一种公交智能电子站牌信息显示控制方法及系统 |
CN108549711A (zh) * | 2018-04-20 | 2018-09-18 | 广东工业大学 | 一种存储大数据的方法、装置、设备及存储介质 |
CN109815717A (zh) * | 2019-01-17 | 2019-05-28 | 平安科技(深圳)有限公司 | 数据权限管理方法、数据访问方法、装置、设备及介质 |
CN110390475A (zh) * | 2019-07-10 | 2019-10-29 | 国电南京自动化股份有限公司 | 一种基于集团大数据的预警与决策支持方法 |
CN110928898A (zh) * | 2019-10-24 | 2020-03-27 | 长城计算机软件与系统有限公司 | 数据采集方法、数据采集装置、存储介质及电子设备 |
CN111444282A (zh) * | 2020-04-21 | 2020-07-24 | 阿拉拇 | 一种农业区块链大数据管理系统 |
CN113360737B (zh) * | 2021-08-11 | 2021-12-14 | 腾讯科技(深圳)有限公司 | 页面内容采集方法、装置、电子设备和可读介质 |
CN113947778A (zh) * | 2021-10-12 | 2022-01-18 | 钧宏科技(北京)有限公司 | 一种基于档案文件数字化处理方法 |
CN113987146B (zh) * | 2021-10-22 | 2023-01-31 | 国网江苏省电力有限公司镇江供电分公司 | 一种电力内网专用的智能问答系统 |
CN117150105B (zh) * | 2023-10-27 | 2023-12-26 | 四川银亿科技有限公司 | 一种基于网页的数据采集方法及采集平台 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718590A (zh) * | 2016-01-27 | 2016-06-29 | 福州大学 | 面向多租户的SaaS舆情监控系统及方法 |
CN105912950A (zh) * | 2016-04-13 | 2016-08-31 | 国信优易数据有限公司 | 一种数据共享发布系统及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040107177A1 (en) * | 2002-06-17 | 2004-06-03 | Covill Bruce Elliott | Automated content filter and URL translation for dynamically generated web documents |
CN104077402B (zh) * | 2014-07-04 | 2018-01-19 | 用友网络科技股份有限公司 | 数据处理方法和数据处理系统 |
CN104484405A (zh) * | 2014-12-15 | 2015-04-01 | 北京国双科技有限公司 | 执行爬取任务的方法和装置 |
-
2016
- 2016-11-25 CN CN201611055774.XA patent/CN106547914B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718590A (zh) * | 2016-01-27 | 2016-06-29 | 福州大学 | 面向多租户的SaaS舆情监控系统及方法 |
CN105912950A (zh) * | 2016-04-13 | 2016-08-31 | 国信优易数据有限公司 | 一种数据共享发布系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106547914A (zh) | 2017-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106547914B (zh) | 一种数据采集管理系统及其方法 | |
JP6669892B2 (ja) | 分散型データストアのバージョン化された階層型データ構造 | |
Polato et al. | A comprehensive view of Hadoop research—A systematic literature review | |
CN111327681A (zh) | 一种基于Kubernetes的云计算数据平台构建方法 | |
AU2014346369B2 (en) | Managed service for acquisition, storage and consumption of large-scale data streams | |
US8543596B1 (en) | Assigning blocks of a file of a distributed file system to processing units of a parallel database management system | |
AU2018202230A1 (en) | Client-configurable security options for data streams | |
EP3069275A1 (en) | Data stream ingestion and persistence techniques | |
CN104363222A (zh) | 一种基于Hadoop的网络安全事件分析方法 | |
CN107122238B (zh) | 基于Hadoop云计算框架的高效迭代机制设计方法 | |
CN112269781A (zh) | 数据生命周期管理方法、装置、介质及电子设备 | |
Kumar et al. | Analysis and comparative exploration of elastic search, Mongodb and Hadoop big data processing | |
CN115827086A (zh) | 一种基于分布式集群架构的高可用软件开发集成平台 | |
CN107566341B (zh) | 一种基于联邦分布式文件存储系统的数据持久化存储方法及系统 | |
Tsai et al. | Data Partitioning and Redundancy Management for Robust Multi-Tenancy SaaS. | |
KR101828522B1 (ko) | 이종 데이터 처리를 위한 분산 병렬 처리 시스템 | |
US11657069B1 (en) | Dynamic compilation of machine learning models based on hardware configurations | |
CN112905535A (zh) | 基于hbase的分布式对象存储方法 | |
Kumar | Big Data Using Hadoop and Hive | |
Dai et al. | GraphTrek: asynchronous graph traversal for property graph-based metadata management | |
Drugeon | A technical approach for the French web legal deposit | |
Prismana | Distributed News Crawler Using Fog Cloud Approach | |
CN116263758A (zh) | 数据写入方法、装置及计算设备 | |
Paul | An application-attuned framework for optimizing hpc storage systems | |
Rahman et al. | Development of a framework to reduce overhead on database engine through data distribution |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 100070, No. 101-8, building 1, 31, zone 188, South Fourth Ring Road, Beijing, Fengtai District Patentee after: Guoxin Youyi Data Co., Ltd Address before: 9 / F, block B, ABP, 188 South Fourth Ring Road West, Fengtai District, Beijing 100070 Patentee before: SIC YOUE DATA Co.,Ltd. |
|
CP03 | Change of name, title or address |