CN106970998A - 新闻数据的更新方法及装置 - Google Patents

新闻数据的更新方法及装置 Download PDF

Info

Publication number
CN106970998A
CN106970998A CN201710226890.1A CN201710226890A CN106970998A CN 106970998 A CN106970998 A CN 106970998A CN 201710226890 A CN201710226890 A CN 201710226890A CN 106970998 A CN106970998 A CN 106970998A
Authority
CN
China
Prior art keywords
queue
data
time
head
news data
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.)
Granted
Application number
CN201710226890.1A
Other languages
English (en)
Other versions
CN106970998B (zh
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 Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo 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 Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201710226890.1A priority Critical patent/CN106970998B/zh
Publication of CN106970998A publication Critical patent/CN106970998A/zh
Application granted granted Critical
Publication of CN106970998B publication Critical patent/CN106970998B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/221Column-oriented storage; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • G06F16/2322Optimistic concurrency control using timestamps
    • 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/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种新闻数据的更新方法及装置,至少能够解决现有技术中每次在对新闻数据进行更新时需获取所有新闻数据的更新时间,再对达到更新时间的新闻数据进行更新的过程中获取了大量无效数据的问题。其中,新闻数据的更新方法包括:将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的更新时间;获取位于队首的队列元素中包含的更新时间,判断更新时间与当前时间之间的间隔是否满足预设的更新条件;当判断结果为是时,对位于队首的队列元素对应的新闻数据进行更新,并将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。

Description

新闻数据的更新方法及装置
技术领域
本发明涉及通信技术领域,具体涉及一种新闻数据的更新方法及装置。
背景技术
目前,从新闻数据源获得的数据在经过一系列的处理,如分类、敏感词过滤后形成一条条新闻数据,而这些新闻数据的属性,如表征其热度的权值属性等会随着时间而发生变化,例如,刚开始某条新闻为热点新闻,其权值系数较高,但随着时间的推移,其权值系数会不断地衰减,所以需定期地对这些新闻数据进行更新。
在定期地对新闻数据进行更新时,可采用定时更新的方法,例如,新闻数据的更新周期为30分钟,则可以在0分、30分、60分(每隔30分的时间点)对所有新闻数据进行更新,然而,采用这种方法会使***在更新时间点时负载过高,出现丢数据或数据延时等现象,而在两次更新时间点中间***负载较小,从而出现资源浪费现象;并且,若新的新闻数据在两次更新时间点之间写入,如25分写入,则需要在55分时对该数据进行更新,而该种定时更新的方式则显然只能在30分或60分时对其进行更新,由此可见,定时更新方式的更新时间精度较低,无法精准地实现在新闻录入特定时间后进行更新的效果。
为解决上述问题,技术人员采用非定时更新的方法,即更新时每次获取所有新闻数据的上次更新时间,将达到更新周期的新闻数据进行更新。然而,发明人在实现本发明的过程中发现,非定时更新的方式依然存在下述缺陷:在每次获取的新闻数据的更新时间中有较多的新闻数据未达到更新周期,从而使得获取了较多的无效数据,从而增大了***工作量,增加了***负载,并降低了新闻数据的更新速度。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的新闻数据的更新方法及装置。
根据本发明的一个方面,提供了一种新闻数据的更新方法,包括:将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的更新时间;获取位于队首的队列元素中包含的更新时间,判断所述更新时间与当前时间之间的间隔是否满足预设的更新条件;当判断结果为是时,对所述位于队首的队列元素对应的新闻数据进行更新,并将所述位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。
根据本发明的另一个方面,提供了一种新闻数据的更新装置,包括:存储模块,适于将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的更新时间;获取模块,适于获取位于队首的队列元素中包含的更新时间;第一判断模块,适于判断所述更新时间与当前时间之间的间隔是否满足预设的更新条件;更新模块,适于当第一判断模块判断结果为是时,对所述位于队首的队列元素对应的新闻数据进行更新,并将所述位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。
在本发明提供的一种新闻数据的更新方法及装置中,通过将各个新闻数据依次存储为数据队列的各个队列元素,使各个新闻数据在时间上呈现顺序排列,在更新时间与当前时间之间的间隔满足预设的更新条件时,对位于队首的队列元素对应的新闻数据进行更新,并将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间,从而保证了在同一个数据队列中队首元素至队尾元素所包含的更新时间依次增加。由于同一个数据队列中的新闻数据的更新周期相同,则当判断了队首元素未满足更新条件时,则说明数据队列中的所有新闻数据均不满足更新条件,则不再获取剩余的新闻数据的更新时间,从而避免了现有技术中每次在对新闻数据进行更新时需获取所有新闻数据的更新时间而导致获取了大量无效数据的问题,从而取得了降低***工作量及***负载,提高新闻数据的更新速度的有益效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例提供的一种新闻数据的更新方法的流程图;
图2示出了根据本发明另一个实施例提供的一种新闻数据的更新方法的流程图;
图3示出了根据本发明一个实施例提供的一种新闻数据的更新装置的结构框图;
图4示出了根据本发明另一个实施例提供的一种新闻数据的更新装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明提供了一种新闻数据的更新方法及装置,至少能够解决现有技术中每次在对新闻数据进行更新时需获取所有新闻数据的更新时间而导致获取了大量无效数据的问题。
图1示出了根据本发明一个实施例提供的一种新闻数据的更新方法的流程图,如图1所示,该方法包括:
步骤S110,将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的更新时间。
在对新闻数据进行更新过程中,当其更新周期相同时,可按照新闻数据被获取的先后次序依次将其存储为数据队列的各个队列元素。其中,每个队列元素中包含有其对应的新闻数据的更新时间,该更新时间具体表示该条新闻数据上次更新的时间点,在该条新闻数据初次存储至数据队列中时,其更新时间为其初次存储至数据队列的时间。
可选的,当新闻数据的更新周期不相同时。例如,娱乐热点新闻的热度随时间常常呈现指数下降,则需对新闻数据(包含新闻热度的相关信息)进行频繁的更新;而对一些时政类新闻,如房产新闻、物价新闻等其更新周期相对较长。所以对于更新周期不同的新闻数据,首先将新闻数据按更新周期进行分类,将同一更新周期的新闻数据划分为一类。并可将同一更新周期的新闻数据按次序依次存储为数据队列的各个队列元素。
可选的,同一数据队列中的新闻数据的更新周期相同,但同一更新周期的新闻数据可以存储于不同的数据队列。例如,可将更新周期为10分钟的新闻数据按照获取的先后次序依次存储至同一数据队列,但当更新周期为10分钟的新闻数据过多时,考虑到数据队列的存储空间大小及新闻数据的更新效率,也可将更新周期为10分钟的新闻数据存储至多个数据队列中,但在同一个数据队列中,仍按照新闻数据获取的先后次序依次将其存储为数据队列的各个队列元素。
进一步可选的,当含有多个数据队列时,可由多个线程来进行维护,多个线程可进行并发处理,从而提高新闻数据的更新效率。
本实施例中将以一个数据队列为例来阐明新闻数据的更新过程。
步骤S120,获取位于队首的队列元素中包含的更新时间,判断更新时间与当前时间之间的间隔是否满足预设的更新条件,若是,则执行步骤S130。
其中,预设的更新条件可根据新闻数据的更新周期来确定。例如,预设的更新条件可以为更新时间与当前时间之间的间隔应大于或等于更新周期,若更新周期为5分钟,获取到的队首的队列元素中包含的更新时间为7分00秒,当当前时间为11分25秒时,更新时间与当前时间之间的间隔为4分钟25秒,则不满足预设的更新条件;当当前时间为12分00秒时,更新时间与当前时间之间的间隔为5分钟,则满足预设的更新条件。
当队首的队列元素中包含的更新时间与当前时间之间的间隔满足预设的更新条件时执行步骤S130。
步骤S130,对位于队首的队列元素对应的新闻数据进行更新,并将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。
若步骤S120判断结果为是,则说明位于队首的队列元素对应的新闻数据需要更新,则对位于队首的队列元素对应的新闻数据进行更新。在对位于队首的队列元素对应的新闻数据更新过后,将位于队首的队列元素从队首中删除,并将其重新添加至队尾,并将添加到队尾的队列元素中包含的更新时间修改为当前时间。在执行完步骤S130后可进一步执行步骤S120。
举例来说,若步骤S120中预设的更新条件为更新时间与当前时间之间的间隔应大于或等于5分钟,获取到的队首的队列元素中包含的更新时间为7分00秒,当前时间为12分00秒,则满足预设的更新条件,执行步骤S130。对位于队首的队列元素对应的新闻数据进行更新,由于此时,该条新闻数据得到了更新,其距离下次更新的时间间隔要大于队列中的其他新闻数据,则将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间12分00秒,从而保证了数据队列中从队首至队尾队列元素包含的更新时间依次增加。
由此可见,本发明实施例提供的新闻数据的更新方法,通过将各个新闻数据依次存储为数据队列的各个队列元素,使各个新闻数据在时间上呈现顺序排列,在更新时间与当前时间之间的间隔满足预设的更新条件时,对位于队首的队列元素对应的新闻数据进行更新,并将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间,从而保证了在同一个数据队列中队首元素至队尾元素所包含的更新时间依次增加。由于同一个数据队列中的新闻数据的更新周期相同,则当判断了队首元素未满足更新条件时,则说明数据队列中的所有新闻数据均不满足更新条件,则不再获取剩余的新闻数据的更新时间,从而避免了现有技术中每次在对新闻数据进行更新时需获取所有新闻数据的更新时间而导致获取了大量无效数据的问题,从而取得了降低***工作量及***负载,提高新闻数据的更新速度的有益效果。
图2示出了根据本发明另一个实施例提供的一种新闻数据的更新方法的流程图,如图2所示,该方法包括:
步骤S210,将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的存储时间和更新时间。
可选的,在对新闻数据更新过程中,当获取的新闻数据的更新周期不相同时。例如,娱乐热点新闻的热度随时间常常呈现指数下降,则需对新闻数据(包含新闻热度的相关信息)进行频繁的更新;而对一些时政类新闻,如房产新闻、物价新闻等其更新周期相对较长。所以对于更新周期不同的新闻数据,首先将新闻数据按更新周期进行分类,将同一更新周期的新闻数据划分为一类,并可将同一更新周期的新闻数据按次序依次存储为数据队列的各个队列元素。
可选的,同一数据队列中的新闻数据的更新周期相同,但同一更新周期的新闻数据可以存储于同一数据队列,也可以存储于不同的数据队列。例如,可将更新周期为10分钟的新闻数据按照获取的先后次序依次存储至同一数据队列,但当更新周期为10分钟的新闻数据过多时,考虑到数据队列的存储空间大小及新闻数据的更新效率,也可将更新周期为10分钟的新闻数据存储至多个数据队列中,但在同一个数据队列中,仍按照新闻数据获取的先后次序依次将其存储为数据队列的各个队列元素,
进一步可选的,当含有多个数据队列时,可由多个线程来进行维护,多个线程可并发处理,从而提高新闻数据的更新效率。
本实施例中将以一个数据队列为例来阐明新闻数据的更新过程。本领域技术人员能够理解的是,实际情况中可能会有多个分别用于存储不同更新周期的新闻数据的数据队列。
在本步骤中,每当获取到新闻数据时,将获取到的新闻数据存储为数据队列的队列元素,并将该新闻数据对应的队列元素添加到数据队列的队尾,其中,每个队列元素中包含对应的新闻数据的存储时间和更新时间。存储时间为新闻数据初次存储至数据队列中的时间,更新时间为新闻数据上次更新的时间,在新闻数据初次存储至数据队列中时,更新时间等于存储时间。
具体的,将获取到的新闻数据存储为数据队列的队列元素的具体存储方式有多种,例如:
存储方式一:
将新闻数据的所有内容,例如,新闻数据的具体内容、展现逻辑、数据属性(类别属性、权值属性)等存储在数据队列中。
存储方式二:
将获取到的各个新闻数据存储到预设的存储空间,其中,存储在预设的存储空间的新闻数据文件包括新闻数据的具体内容、展现逻辑以及新闻数据属性等,其中新闻数据属性包括新闻数据的权值属性(例如,可以为表征新闻数据热度的分值)、和/或类别属性(如短报类、专题类;或娱乐类、财经类等)。并且预设的存储空间可以设置在***内存或***磁盘中,本发明对该预设的存储空间的具***置不做限定。
在将获取到的各个新闻数据存储到预设的存储空间后,为存储空间内存储的各个新闻数据设置对应的索引文件。其中,索引文件的每个索引项中存储有对应的新闻数据的数据标识。采用该新闻数据的存储方式通过索引文件可以便于新闻数据的查找和管理。
并且,将各个新闻数据的数据标识存储为数据队列的队列元素。
本发明中将获取到的新闻数据存储为数据队列的队列元素的方法不限于上述两种具体实施方法,例如,还可以将获取到的新闻数据存储在预设存储空间,并将新闻数据的地址指针存储为数据队列的队列元素。本发明对将获取到的新闻数据存储为数据队列的队列元素的具体方法不做限定。
步骤S220,获取位于队首的队列元素中包含的存储时间,判断存储时间与当前时间之间的间隔是否满足预设的删除条件,若是,则执行步骤S230;若否,则执行步骤S240。
步骤S220为一个可选的步骤,由于新闻数据具有一定的时效性,所以对于已经过了时效期的新闻数据便不再对其进行更新。具体地,应获取位于队首的队列元素中包含的存储时间,判断存储时间与当前时间之间的间隔是否满足预设的删除条件。其中,预设的删除条件可以为存储时间与当前时间之间的间隔大于或等于预设阈值,其中预设阈值表示新闻数据的有效期。例如,若新闻数据的有效期为一周,即在一周过后将不再对新闻数据进行更新,则该预设阈值可以为一周,当存储时间与当前时间之间的间隔大于或等于一周,则执行步骤S230;若当存储时间与当前时间之间的间隔小于一周,则执行步骤S240。
步骤S230,删除位于队首的队列元素。
若步骤S220中判断结果为是,则说明位于队首的队列元素对应的新闻数据已经过了时效期,则删除位于队首的队列元素,并进一步执行步骤S220。其中,删除操作执行完毕后,删除前排在队列中第二位的队列元素成为位于队首的队列元素,其他队列元素的位置也相应前移。
可选的,若步骤S210中采用存储方式二将获取到的新闻数据存储为数据队列的队列元素,则本步骤具体为:获取队首的队列元素包含的数据标识,并根据该数据标识在索引文件中查找到相应的索引项对应的新闻数据,删除该新闻数据及相应的索引项。
步骤S240,获取位于队首的队列元素中包含的更新时间,判断更新时间与当前时间之间的间隔是否满足预设的更新条件,若是,则执行步骤S250;否则,执行步骤S260。
可选的,可每隔预设的第一时间间隔获取位于队首的队列元素中包含的更新时间。例如,预设的第一时间间隔为10秒,则每隔10秒获取位于队首的队列元素中包含的更新时间。
可选的,也可以每隔时间间隔t获取位于队首的队列元素中包含的更新时间,其中时间间隔t=(Tn-T1)/n,T1数据队列中位于队首的队列元素包含的更新时间,Tn为数据队列中位于队尾的队列元素包含的更新时间,n为当前数据队列的元素总个数。
其中,预设的更新条件可根据新闻数据的更新周期来确定。例如,预设的更新条件可以为更新时间与当前时间之间的间隔应大于或等于更新周期,若更新周期为5分钟,获取到的队首的队列元素中包含的更新时间为2分30秒,当当前时间为7分25秒时,更新时间与当前时间之间的间隔为4分钟55秒,则不满足预设的更新条件;当当前时间为7分31秒时,更新时间与当前时间之间的间隔大于5分钟,则满足预设的更新条件。
当队首的队列元素中包含的更新时间与当前时间之间的间隔满足预设的更新条件时,则执行步骤S250;当队首的队列元素中包含的更新时间与当前时间之间的间隔不满足预设的更新条件时,则执行步骤S260。
步骤S250,对位于队首的队列元素对应的新闻数据进行更新,并将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。
若步骤S240判断结果为是,则说明位于队首的队列元素对应的新闻数据需要更新,则对位于队首的队列元素对应的新闻数据进行更新。其中,对位于队首的队列元素对应的新闻数据进行更新可以为对位于队首的队列元素对应的新闻数据的至少一个数据属性进行更新,其中,数据属性包括:类别属性、和/或权值属性。例如,权值属性可以为与新闻热度相关的分值,该权值属性的大小随着时间的变化而发生变化,在步骤S240判断的满足预设的更新条件后,则可将该权值属性进行更新;又例如,某一新闻数据开始的类别属性为快报类型,但随着新闻事件的不断发展,其类别属性也演变为专题类型,所以在步骤S240判断满足预设的更新条件后,也可将该新闻数据的数据类型进行更新。可选的,也可对新闻数据的具体内容或展现逻辑等进行更新。
在对位于队首的队列元素对应的新闻数据更新过后,将其从队列队首中删除,并将其重新添加至队尾,并将添加到队尾的队列元素中包含的更新时间修改为当前时间。在执行完本步骤后可进一步执行步骤S220。其中,位于队首的队列元素被删除后,删除前排在队列中第二位的队列元素成为位于队首的队列元素,其他队列元素的位置也相应前移。
可选的,当步骤S210中采用存储方式二,则本步骤具体为:根据位于队首的队列元素中包含的数据标识,从索引文件中查询与该队列元素中包含的新闻数据对应的索引项,根据查询到的索引项对存储空间内相应的新闻数据进行更新。
举例来说,若步骤S240中预设的更新条件为更新时间与当前时间之间的间隔应大于或等于5分钟,获取到的队首的队列元素中包含的更新时间为7分00秒,当前时间为12分00秒,则满足预设的更新条件,执行步骤S250。对位于队首的队列元素对应的新闻数据进行更新,由于此时,该条新闻数据得到了更新,其距离下次更新的时间间隔要大于队列中的其他新闻数据,则将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间12分00秒,从而保证了数据队列中从队首至队尾队列元素包含的更新时间依次增加。
步骤S260,等待预设时间。
若步骤S240判断结果为否,则说明位于队首的队列元素对应的新闻数据未达到更新周期,则可等待预设时间,再执行步骤S240。
具体地,可计算位于队首的队列元素包含的更新时间与当前时间之间的间隔与预设的更新间隔之间的差值,其中,预设的更新间隔可以为新闻数据的更新周期,并根据该差值确定预设时间。例如,位于队首的队列元素包含的更新时间为12分00秒,更新周期为10分钟,若当前时间为21分30秒,则位于队首的队列元素对应的新闻数据未满足更新条件,且位于队首的队列元素包含的更新时间与当前时间之间的间隔与预设的更新间隔之间的差值为30秒,则该预设时间可以为30秒,即等待30秒再执行步骤S240。
或者,也可根据预设的第二时间间隔来确定预设时间。例如,预设的第二时间间隔为1秒,则预设时间可以为1秒,若步骤S240判断结果为否,则等待1秒后重新执行步骤S240。
由此可见,本发明实施例提供的新闻数据的更新方法,通过将各个新闻数据依次存储为数据队列的各个队列元素,使各个新闻数据在时间上呈现顺序排列,在更新时间与当前时间之间的间隔满足预设的更新条件时,对位于队首的队列元素对应的新闻数据进行更新,并将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间,从而保证了在同一个数据队列中队首元素至队尾元素所包含的更新时间依次增加。由于同一个数据队列中的新闻数据的更新周期相同,则当判断了队首元素未满足更新条件时,则说明数据队列中的所有新闻数据均不满足更新条件,则不再获取剩余的新闻数据的更新时间,从而避免了现有技术中每次在对新闻数据进行更新时需获取所有新闻数据的更新时间而导致获取了大量无效数据的问题,从而取得了降低***工作量及***负载,提高新闻数据的更新速度的有益效果。另外,通过判断存储时间与当前时间之间的间隔可以将已经过了时效期的新闻数据从数据队列中删除,从而减少了数据队列中的无效数据,进一步加快了新闻数据的更新速度。
图3示出了根据本发明一个实施例提供的一种新闻数据的更新装置的结构框图,如图3所示,该装置包括:存储模块31、获取模块32、第一判断模块33、以及更新模块34。
存储模块31适于将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的更新时间。
在对新闻数据进行更新过程中,当其更新周期相同时,可按照新闻数据被获取的先后次序依次将其存储为数据队列的各个队列元素。其中,每个队列元素中包含有其对应的新闻数据的更新时间,该更新时间具体表示该条新闻数据上次更新的时间点,在该条新闻数据初次存储至数据队列中时,其更新时间为其初次存储至数据队列的时间。
可选的,当新闻数据的更新周期不相同时。例如,娱乐热点新闻的热度随时间常常呈现指数下降,则需对新闻数据(包含新闻热度的相关信息)进行频繁的更新;而对一些时政类新闻,如房产新闻、物价新闻等其更新周期相对较长。所以对于更新周期不同的新闻数据,首先将新闻数据按更新周期进行分类,将同一更新周期的新闻数据划分为一类。并可将同一更新周期的新闻数据按次序依次存储为数据队列的各个队列元素。
可选的,同一数据队列中的新闻数据的更新周期相同,但同一更新周期的新闻数据可以存储于不同的数据队列。例如,可将更新周期为10分钟的新闻数据按照获取的先后次序依次存储至同一数据队列,但当更新周期为10分钟的新闻数据过多时,考虑到数据队列的存储空间大小及新闻数据的更新效率,也可将更新周期为10分钟的新闻数据存储至多个数据队列中,但在同一个数据队列中,仍按照新闻数据获取的先后次序依次将其存储为数据队列的各个队列元素。
进一步可选的,当含有多个数据队列时,可由多个线程来进行维护,多个线程可进行并发处理,从而提高新闻数据的更新效率。
本实施例中将以一个数据队列为例来阐明新闻数据的更新过程。
获取模块32适于获取位于队首的队列元素中包含的更新时间。
队列元素中包含新闻数据的更新时间,通过获取模块32可以获取位于队首的队列元素中包含的存储时间。
第一判断模块33适于判断更新时间与当前时间之间的间隔是否满足预设的更新条件。
其中,预设的更新条件可根据新闻数据的更新周期来确定。例如,预设的更新条件可以为更新时间与当前时间之间的间隔应大于或等于更新周期,若更新周期为5分钟,获取到的队首的队列元素中包含的更新时间为7分00秒,当当前时间为11分25秒时,更新时间与当前时间之间的间隔为4分钟25秒,则不满足预设的更新条件;当当前时间为12分00秒时,更新时间与当前时间之间的间隔为5分钟,则满足预设的更新条件。
更新模块34适于当第一判断模块33判断结果为是时,对位于队首的队列元素对应的新闻数据进行更新,并将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。
若第一判断模块33判断结果为是,则说明位于队首的队列元素对应的新闻数据需要更新,则对位于队首的队列元素对应的新闻数据进行更新。在对位于队首的队列元素对应的新闻数据更新过后,将位于队首的队列元素从队首中删除,并将其重新添加至队尾,并将添加到队尾的队列元素中包含的更新时间修改为当前时间。在执行完本模块后可进一步执行获取模块32及第一判断模块33。
举例来说,若第一判断模块33中预设的更新条件为更新时间与当前时间之间的间隔应大于或等于5分钟,获取到的队首的队列元素中包含的更新时间为7分00秒,当前时间为12分00秒,则满足预设的更新条件,执行本模块。对位于队首的队列元素对应的新闻数据进行更新,由于此时,该条新闻数据得到了更新,其距离下次更新的时间间隔要大于队列中的其他新闻数据,则将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间12分00秒,从而保证了数据队列中从队首至队尾队列元素包含的更新时间依次增加。
由此可见,本发明实施例提供的新闻数据的更新装置,通过存储模块将各个新闻数据依次存储为数据队列的各个队列元素,使各个新闻数据在时间上呈现顺序排列,在更新时间与当前时间之间的间隔满足预设的更新条件时,对位于队首的队列元素对应的新闻数据进行更新,并将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间,从而保证了在同一个数据队列中队首元素至队尾元素所包含的更新时间依次增加。由于同一个数据队列中的新闻数据的更新周期相同,则当判断了队首元素未满足更新条件时,则说明数据队列中的所有新闻数据均不满足更新条件,则不再获取剩余的新闻数据的更新时间,从而避免了现有技术中每次在对新闻数据进行更新时需获取所有新闻数据的更新时间而导致获取了大量无效数据的问题,从而取得了降低***工作量及***负载,提高新闻数据的更新速度的有益效果。
图4示出了根据本发明另一个实施例提供的一种新闻数据的更新装置的结构框图,如图4所示,该装置包括:存储模块41、获取模块42、第一判断模块43、更新模块44、休眠模块45、索引模块46、以及第二判断模块47。
存储模块41适于将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的存储时间和更新时间。
可选的,在对新闻数据更新过程中,当获取的新闻数据的更新周期不相同时。例如,娱乐热点新闻的热度随时间常常呈现指数下降,则需对新闻数据(包含新闻热度的相关信息)进行频繁的更新;而对一些时政类新闻,如房产新闻、物价新闻等其更新周期相对较长。所以对于更新周期不同的新闻数据,首先将新闻数据按更新周期进行分类,将同一更新周期的新闻数据划分为一类,并可将同一更新周期的新闻数据按次序依次存储为数据队列的各个队列元素。
可选的,同一数据队列中的新闻数据的更新周期相同,但同一更新周期的新闻数据可以存储于同一数据队列,也可以存储于不同的数据队列。例如,可将更新周期为10分钟的新闻数据按照获取的先后次序依次存储至同一数据队列,但当更新周期为10分钟的新闻数据过多时,考虑到数据队列的存储空间大小及新闻数据的更新效率,也可将更新周期为10分钟的新闻数据存储至多个数据队列中,但在同一个数据队列中,仍按照新闻数据获取的先后次序依次将其存储为数据队列的各个队列元素,
进一步可选的,当含有多个数据队列时,可由多个线程来进行维护,多个线程可并发处理,从而提高新闻数据的更新效率。
本实施例中将以一个数据队列为例来阐明新闻数据的更新过程。本领域技术人员能够理解的是,实际情况中可能会有多个分别用于存储不同更新周期的新闻数据的数据队列。
每当获取到新闻数据时,将获取到的新闻数据存储为数据队列的队列元素,并将该新闻数据对应的队列元素添加到数据队列的队尾,其中,每个队列元素中包含对应的新闻数据的存储时间和更新时间。存储时间为新闻数据初次存储至数据队列中的时间,更新时间为新闻数据上次更新的时间,在新闻数据初次存储至数据队列中时,更新时间等于存储时间。
具体的,将获取到的新闻数据存储为数据队列的队列元素的具体存储方式有多种,例如:
将新闻数据的所有内容,例如,新闻数据的具体内容、展现逻辑、数据属性(类别属性、权值属性)等存储在数据队列中。
或者,利用索引模块46将获取到的新闻数据存储为数据队列的队列元素。
其中,索引模块46适于将获取到的各个新闻数据存储到预设的存储空间,并为存储空间内存储的各个新闻数据设置对应的索引文件,该索引文件的每个索引项中存储有对应的新闻数据的数据标识。
索引模块46为可选模块,具体地,将获取到的各个新闻数据存储到预设的存储空间,其中,存储在预设的存储空间的新闻数据文件包括新闻数据的具体内容、展现逻辑以及新闻数据属性等,其中新闻数据属性包括新闻数据的权值属性(例如,可以为表征新闻数据热度的分值)、和/或类别属性(如短报类、专题类;或娱乐类、财经类等)。并且预设的存储空间可以设置在***内存或***磁盘中,本发明对该预设的存储空间的具***置不做限定。
在将获取到的各个新闻数据存储到预设的存储空间后,为存储空间内存储的各个新闻数据设置对应的索引文件。其中,索引文件的每个索引项中存储有对应的新闻数据的数据标识。采用该新闻数据的存储方式通过索引文件可以便于新闻数据的查找和管理。并且,将各个新闻数据的数据标识存储为数据队列的队列元素。
本发明中将获取到的新闻数据存储为数据队列的队列元素的方法不限于上述两种具体实施方法,例如,还可以将获取到的新闻数据存储在预设存储空间,并将新闻数据的地址指针存储为数据队列的队列元素。本发明对将获取到的新闻数据存储为数据队列的队列元素的具体方法不做限定。
获取模块42适于在第一判断模块43之前,获取位于队首的队列元素中包含的存储时间。
队列元素中包含新闻数据的存储时间,通过获取模块42可以获取位于队首的队列元素中包含的存储时间。
第二判断模块47适于判断存储时间与当前时间之间的间隔是否满足预设的删除条件,若判断结果为是,从队首删除该队列元素。
本模块为一个可选的模块,由于新闻数据具有一定的时效性,所以对于已经过了时效期的新闻数据便不再对其进行更新。具体地,应获取位于队首的队列元素中包含的存储时间,判断存储时间与当前时间之间的间隔是否满足预设的删除条件。其中,预设的删除条件可以为存储时间与当前时间之间的间隔大于或等于预设阈值,其中预设阈值表示新闻数据的有效期。例如,若新闻数据的有效期为一周,即在一周过后将不再对新闻数据进行更新,则该预设阈值可以为一周,当存储时间与当前时间之间的间隔大于或等于一周,则删除位于队首的队列元素。其中,删除操作执行完毕后,删除前排在队列中第二位的队列元素成为位于队首的队列元素,其他队列元素的位置也相应前移。可选的,若本装置中包含索引模块46,则本模块可进一步获取队首的队列元素包含的数据标识,并根据该数据标识在索引文件中查找到相应的索引项对应的新闻数据,删除该新闻数据及相应的索引项。
获取模块42适于获取位于队首的队列元素中包含的更新时间。
队列元素中包含新闻数据的更新时间,通过获取模块42可以获取位于队首的队列元素中包含的更新时间。
第一判断模块43适于判断更新时间与当前时间之间的间隔是否满足预设的更新条件,
可选的,可每隔预设的第一时间间隔获取位于队首的队列元素中包含的更新时间。例如,预设的第一时间间隔为10秒,则每隔10秒获取位于队首的队列元素中包含的更新时间。
可选的,也可以每隔时间间隔t获取位于队首的队列元素中包含的更新时间,其中时间间隔t=(Tn-T1)/n,T1数据队列中位于队首的队列元素包含的更新时间,Tn为数据队列中位于队尾的队列元素包含的更新时间,n为当前数据队列的元素总个数。
其中,预设的更新条件可根据新闻数据的更新周期来确定。例如,预设的更新条件可以为更新时间与当前时间之间的间隔应大于或等于更新周期,若更新周期为5分钟,获取到的队首的队列元素中包含的更新时间为2分30秒,当当前时间为7分25秒时,更新时间与当前时间之间的间隔为4分钟55秒,则不满足预设的更新条件;当当前时间为7分31秒时,更新时间与当前时间之间的间隔大于5分钟,则满足预设的更新条件。
更新模块44适于当第一判断模块43判断结果为是时,对位于队首的队列元素对应的新闻数据进行更新,并将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。
若第一判断模块43判断结果为是,则说明位于队首的队列元素对应的新闻数据需要更新,则对位于队首的队列元素对应的新闻数据进行更新。
更新模块44进一步适于对位于队首的队列元素对应的新闻数据的至少一个数据属性进行更新;其中,数据属性包括:类别属性、和/或权值属性。
其中,对位于队首的队列元素对应的新闻数据进行更新可以为对位于队首的队列元素对应的新闻数据的至少一个数据属性进行更新,其中,数据属性包括:类别属性、和/或权值属性。例如,权值属性可以为与新闻热度相关的分值,该权值属性的大小随着时间的变化而发生变化,在第一判断模块43判断的满足预设的更新条件后,则可将该权值属性进行更新;又例如,某一新闻数据开始的类别属性为快报类型,但随着新闻事件的不断发展,其类别属性也演变为专题类型,所以在第一判断模块43判断满足预设的更新条件后,也可将该新闻数据的数据类型进行更新。可选的,也可对新闻数据的具体内容或展现逻辑等进行更新。
在对位于队首的队列元素对应的新闻数据更新过后,将其从队列队首中删除,并将其重新添加至队尾,并将添加到队尾的队列元素中包含的更新时间修改为当前时间。其中,位于队首的队列元素被删除后,删除前排在队列中第二位的队列元素成为位于队首的队列元素,其他队列元素的位置也相应前移。
若本装置包含索引模块46,则更新模块44进一步适于根据位于队首的队列元素中包含的数据标识,从索引文件中查询与该队列元素中包含的新闻数据对应的索引项,根据查询到的索引项对存储空间内相应的新闻数据进行更新。
举例来说,若第一判断模块43中预设的更新条件为更新时间与当前时间之间的间隔应大于或等于5分钟,获取到的队首的队列元素中包含的更新时间为7分00秒,当前时间为12分00秒,则满足预设的更新条件,则执行本模块。对位于队首的队列元素对应的新闻数据进行更新,由于此时,该条新闻数据得到了更新,其距离下次更新的时间间隔要大于队列中的其他新闻数据,则将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间12分00秒,从而保证了数据队列中从队首至队尾队列元素包含的更新时间依次增加。
休眠模块45适于当第一判断模块43判断结果为否时,等待预设时间。
若第一判断模块43判断结果为否,则说明位于队首的队列元素对应的新闻数据未达到更新周期,则可等待预设时间,再执行第一判断模块43。
休眠模块45休眠模块进一步适于:计算更新时间与当前时间之间的间隔与预设的更新间隔之间的差值,根据差值确定所述预设时间;或者,根据预设的第二时间间隔确定所述预设时间。
具体地,可计算位于队首的队列元素包含的更新时间与当前时间之间的间隔与预设的更新间隔之间的差值,其中,预设的更新间隔可以为新闻数据的更新周期,并根据该差值确定预设时间。例如,位于队首的队列元素包含的更新时间为12分00秒,更新周期为10分钟,若当前时间为21分30秒,则位于队首的队列元素对应的新闻数据未满足更新条件,且位于队首的队列元素包含的更新时间与当前时间之间的间隔与预设的更新间隔之间的差值为30秒,则该预设时间可以为30秒,即等待30秒再执行第一判断模块43。
或者,也可根据预设的第二时间间隔来确定预设时间。例如,预设的第二时间间隔为1秒,则预设时间可以为1秒,若第一判断模块43判断结果为否,则等待1秒后重新执行第一判断模块43。
由此可见,本发明实施例提供的新闻数据的更新装置,通过存储模块将各个新闻数据依次存储为数据队列的各个队列元素,使各个新闻数据在时间上呈现顺序排列,在更新时间与当前时间之间的间隔满足预设的更新条件时,对位于队首的队列元素对应的新闻数据进行更新,并将位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间,从而保证了在同一个数据队列中队首元素至队尾元素所包含的更新时间依次增加。由于同一个数据队列中的新闻数据的更新周期相同,则当判断了队首元素未满足更新条件时,则说明数据队列中的所有新闻数据均不满足更新条件,则不再获取剩余的新闻数据的更新时间,从而避免了现有技术中每次在对新闻数据进行更新时需获取所有新闻数据的更新时间而导致获取了大量无效数据的问题,从而取得了降低***工作量及***负载,提高新闻数据的更新速度的有益效果。另外,通过判断存储时间与当前时间之间的间隔可以将已经过了时效期的新闻数据从数据队列中删除,从而减少了数据队列中的无效数据,进一步加快了新闻数据的更新速度。
在此提供的算法和显示不与任何特定计算机、虚拟***或者其它设备固有相关。各种通用***也可以与基于在此的示教一起使用。根据上面的描述,构造这类***所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的基于集群的数据存储空间装置模块中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了:A1.一种新闻数据的更新方法,包括:
将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的更新时间;
获取位于队首的队列元素中包含的更新时间,判断所述更新时间与当前时间之间的间隔是否满足预设的更新条件;
当判断结果为是时,对所述位于队首的队列元素对应的新闻数据进行更新,并将所述位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。
A2.根据A1所述的方法,其中,当判断结果为否时,等待预设时间后重新执行所述获取位于队首的队列元素中包含的更新时间的步骤及其后续步骤。
A3.根据A1或A2所述的方法,其中,所述等待预设时间的步骤具体包括:
计算所述更新时间与当前时间之间的间隔与预设的更新间隔之间的差值,根据所述差值确定所述预设时间;或者,根据预设的第二时间间隔确定所述预设时间。
A4.根据A1-A3任一所述的方法,其中,每个队列元素中进一步包含对应的新闻数据的数据标识,且所述方法进一步包括步骤:将所述获取到的各个新闻数据存储到预设的存储空间,并为所述存储空间内存储的各个新闻数据设置对应的索引文件,所述索引文件的每个索引项中存储有对应的新闻数据的数据标识;
则所述对所述位于队首的队列元素对应的新闻数据进行更新的步骤具体包括:根据所述位于队首的队列元素中包含的数据标识,从所述索引文件中查询与该队列元素中包含的新闻数据对应的索引项,根据查询到的索引项对所述存储空间内相应的新闻数据进行更新。
A5.根据A1-A4任一所述的方法,其中,所述对所述位于队首的队列元素对应的新闻数据进行更新的步骤具体包括:对所述位于队首的队列元素对应的新闻数据的至少一个数据属性进行更新;其中,所述数据属性包括:类别属性、和/或权值属性。
A6.根据A1-A5任一所述的方法,其中,每个队列元素中进一步包含对应的新闻数据首次存储到所述数据队列时的存储时间,且所述获取位于队首的队列元素中包含的更新时间的步骤之前,进一步包括:
获取位于队首的队列元素中包含的存储时间,判断所述存储时间与当前时间之间的间隔是否满足预设的删除条件,若判断结果为是,从队首删除该队列元素。
A7.根据A6所述的方法,其中,当队列元素对应的新闻数据首次存储到所述数据队列时,该队列元素中包含的新闻数据的更新时间等于所述存储时间。
A8.根据A1-A7任一所述的方法,其中,所述将获取到的各个新闻数据依次存储为数据队列的各个队列元素的步骤具体包括:
每当获取到新闻数据时,将该新闻数据对应的队列元素添加到所述数据队列的队尾。
A9.根据A1-A8任一所述的方法,其中,所述获取位于队首的队列元素中包含的更新时间的步骤具体包括:每隔预设的第一时间间隔获取位于队首的队列元素中包含的更新时间。
本发明还公开了:B10.一种新闻数据的更新装置,包括:
存储模块,适于将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的更新时间;
获取模块,适于获取位于队首的队列元素中包含的更新时间;
第一判断模块,适于判断所述更新时间与当前时间之间的间隔是否满足预设的更新条件;
更新模块,适于当第一判断模块判断结果为是时,对所述位于队首的队列元素对应的新闻数据进行更新,并将所述位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。
B11.根据B10所述的装置,其中,所述装置还包括:
休眠模块,适于当第一判断模块判断结果为否时,等待预设时间。
B12.根据B10或B11所述的装置,其中,所述休眠模块进一步适于:
计算所述更新时间与当前时间之间的间隔与预设的更新间隔之间的差值,根据所述差值确定所述预设时间;或者,根据预设的第二时间间隔确定所述预设时间。
B13.根据B10-B12任一所述的装置,其中,每个队列元素中进一步包含对应的新闻数据的数据标识,且所述装置进一步包括:
索引模块,适于将所述获取到的各个新闻数据存储到预设的存储空间,并为所述存储空间内存储的各个新闻数据设置对应的索引文件,所述索引文件的每个索引项中存储有对应的新闻数据的数据标识;
所述更新模块进一步适于:根据所述位于队首的队列元素中包含的数据标识,从所述索引文件中查询与该队列元素中包含的新闻数据对应的索引项,根据查询到的索引项对所述存储空间内相应的新闻数据进行更新。
B14.根据B10-B13任一所述的装置,其中,所述更新模块进一步适于:
对所述位于队首的队列元素对应的新闻数据的至少一个数据属性进行更新;其中,所述数据属性包括:类别属性、和/或权值属性。
B15.根据B10-B14任一所述的装置,其中,每个队列元素中进一步包含对应的新闻数据首次存储到所述数据队列时的存储时间,所述获取模块进一步适于:适于在第一判断模块之前,获取位于队首的队列元素中包含的存储时间;
所述装置还包括:第二判断模块,适于判断所述存储时间与当前时间之间的间隔是否满足预设的删除条件,若判断结果为是,从队首删除该队列元素。
B16.根据B15所述的装置,其中,当队列元素对应的新闻数据首次存储到所述数据队列时,该队列元素中包含的新闻数据的更新时间等于所述存储时间。
B17.根据B10-B16任一所述的装置,其中,所述存储模块具体适于:
每当获取到新闻数据时,将该新闻数据对应的队列元素添加到所述数据队列的队尾。
B18.根据B10-B17任一所述的装置,其中,所述获取位于队首的队列元素中包含的更新时间的步骤具体包括:每隔预设的第一时间间隔获取位于队首的队列元素中包含的更新时间。

Claims (10)

1.一种新闻数据的更新方法,包括:
将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的更新时间;
获取位于队首的队列元素中包含的更新时间,判断所述更新时间与当前时间之间的间隔是否满足预设的更新条件;
当判断结果为是时,对所述位于队首的队列元素对应的新闻数据进行更新,并将所述位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。
2.根据权利要求1所述的方法,其中,当判断结果为否时,等待预设时间后重新执行所述获取位于队首的队列元素中包含的更新时间的步骤及其后续步骤。
3.根据权利要求1或2所述的方法,其中,所述等待预设时间的步骤具体包括:
计算所述更新时间与当前时间之间的间隔与预设的更新间隔之间的差值,根据所述差值确定所述预设时间;或者,根据预设的第二时间间隔确定所述预设时间。
4.根据权利要求1-3任一所述的方法,其中,每个队列元素中进一步包含对应的新闻数据的数据标识,且所述方法进一步包括步骤:将所述获取到的各个新闻数据存储到预设的存储空间,并为所述存储空间内存储的各个新闻数据设置对应的索引文件,所述索引文件的每个索引项中存储有对应的新闻数据的数据标识;
则所述对所述位于队首的队列元素对应的新闻数据进行更新的步骤具体包括:根据所述位于队首的队列元素中包含的数据标识,从所述索引文件中查询与该队列元素中包含的新闻数据对应的索引项,根据查询到的索引项对所述存储空间内相应的新闻数据进行更新。
5.根据权利要求1-4任一所述的方法,其中,所述对所述位于队首的队列元素对应的新闻数据进行更新的步骤具体包括:对所述位于队首的队列元素对应的新闻数据的至少一个数据属性进行更新;其中,所述数据属性包括:类别属性、和/或权值属性。
6.根据权利要求1-5任一所述的方法,其中,每个队列元素中进一步包含对应的新闻数据首次存储到所述数据队列时的存储时间,且所述获取位于队首的队列元素中包含的更新时间的步骤之前,进一步包括:
获取位于队首的队列元素中包含的存储时间,判断所述存储时间与当前时间之间的间隔是否满足预设的删除条件,若判断结果为是,从队首删除该队列元素。
7.根据权利要求6所述的方法,其中,当队列元素对应的新闻数据首次存储到所述数据队列时,该队列元素中包含的新闻数据的更新时间等于所述存储时间。
8.根据权利要求1-7任一所述的方法,其中,所述将获取到的各个新闻数据依次存储为数据队列的各个队列元素的步骤具体包括:
每当获取到新闻数据时,将该新闻数据对应的队列元素添加到所述数据队列的队尾。
9.根据权利要求1-8任一所述的方法,其中,所述获取位于队首的队列元素中包含的更新时间的步骤具体包括:每隔预设的第一时间间隔获取位于队首的队列元素中包含的更新时间。
10.一种新闻数据的更新装置,包括:
存储模块,适于将获取到的各个新闻数据依次存储为数据队列的各个队列元素;其中,每个队列元素中包含对应的新闻数据的更新时间;
获取模块,适于获取位于队首的队列元素中包含的更新时间;
第一判断模块,适于判断所述更新时间与当前时间之间的间隔是否满足预设的更新条件;
更新模块,适于当第一判断模块判断结果为是时,对所述位于队首的队列元素对应的新闻数据进行更新,并将所述位于队首的队列元素从队首删除后添加到队尾,且将添加到队尾的队列元素中包含的更新时间修改为当前时间。
CN201710226890.1A 2017-04-06 2017-04-06 新闻数据的更新方法及装置 Active CN106970998B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710226890.1A CN106970998B (zh) 2017-04-06 2017-04-06 新闻数据的更新方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710226890.1A CN106970998B (zh) 2017-04-06 2017-04-06 新闻数据的更新方法及装置

Publications (2)

Publication Number Publication Date
CN106970998A true CN106970998A (zh) 2017-07-21
CN106970998B CN106970998B (zh) 2021-12-21

Family

ID=59336015

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710226890.1A Active CN106970998B (zh) 2017-04-06 2017-04-06 新闻数据的更新方法及装置

Country Status (1)

Country Link
CN (1) CN106970998B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108154431A (zh) * 2018-01-17 2018-06-12 北京网信云服信息科技有限公司 一种标的募集状态处理方法及装置
CN108897825A (zh) * 2018-06-21 2018-11-27 上海二三四五网络科技有限公司 一种基于星期组更新影视作品的控制方法及控制装置
WO2019047540A1 (zh) * 2017-09-05 2019-03-14 平安科技(深圳)有限公司 交易数据处理方法、装置、存储介质和计算机设备

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101178713A (zh) * 2006-11-29 2008-05-14 腾讯科技(深圳)有限公司 一种采集网页的方法及***
WO2011145038A2 (en) * 2010-05-17 2011-11-24 Gareth John Guyler A system for managing a queue
CN102929932A (zh) * 2012-09-25 2013-02-13 人民搜索网络股份公司 一种实时新闻的展现装置及其方法
CN103440207A (zh) * 2013-07-31 2013-12-11 北京智谷睿拓技术服务有限公司 缓存方法及装置
CN104036038A (zh) * 2014-06-30 2014-09-10 北京奇虎科技有限公司 新闻推荐方法和***
CN104504006A (zh) * 2014-12-11 2015-04-08 厦门市美亚柏科信息股份有限公司 对新闻客户端的数据采集及解析的方法及***
CN105138698A (zh) * 2015-09-25 2015-12-09 百度在线网络技术(北京)有限公司 网页的动态布局方法和装置
KR101644036B1 (ko) * 2015-02-24 2016-07-29 국민대학교산학협력단 개인 관심 이슈 트래킹 장치 및 방법
WO2017028183A1 (zh) * 2015-08-18 2017-02-23 郭子明 根据主题展示新闻信息的方法和新闻展示***

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101178713A (zh) * 2006-11-29 2008-05-14 腾讯科技(深圳)有限公司 一种采集网页的方法及***
WO2011145038A2 (en) * 2010-05-17 2011-11-24 Gareth John Guyler A system for managing a queue
CN102929932A (zh) * 2012-09-25 2013-02-13 人民搜索网络股份公司 一种实时新闻的展现装置及其方法
CN103440207A (zh) * 2013-07-31 2013-12-11 北京智谷睿拓技术服务有限公司 缓存方法及装置
CN104036038A (zh) * 2014-06-30 2014-09-10 北京奇虎科技有限公司 新闻推荐方法和***
CN104504006A (zh) * 2014-12-11 2015-04-08 厦门市美亚柏科信息股份有限公司 对新闻客户端的数据采集及解析的方法及***
KR101644036B1 (ko) * 2015-02-24 2016-07-29 국민대학교산학협력단 개인 관심 이슈 트래킹 장치 및 방법
WO2017028183A1 (zh) * 2015-08-18 2017-02-23 郭子明 根据主题展示新闻信息的方法和新闻展示***
CN105138698A (zh) * 2015-09-25 2015-12-09 百度在线网络技术(北京)有限公司 网页的动态布局方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张吉伟: "互联网中实时信息获取与索引技术研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019047540A1 (zh) * 2017-09-05 2019-03-14 平安科技(深圳)有限公司 交易数据处理方法、装置、存储介质和计算机设备
CN108154431A (zh) * 2018-01-17 2018-06-12 北京网信云服信息科技有限公司 一种标的募集状态处理方法及装置
CN108154431B (zh) * 2018-01-17 2021-07-06 北京网信云服信息科技有限公司 一种标的募集状态处理方法及装置
CN108897825A (zh) * 2018-06-21 2018-11-27 上海二三四五网络科技有限公司 一种基于星期组更新影视作品的控制方法及控制装置
CN108897825B (zh) * 2018-06-21 2022-03-29 上海二三四五网络科技有限公司 一种基于星期组更新影视作品的控制方法及控制装置

Also Published As

Publication number Publication date
CN106970998B (zh) 2021-12-21

Similar Documents

Publication Publication Date Title
US9177027B2 (en) Database management system and method
CN103678494B (zh) 客户端同步服务端数据的方法及装置
CN105447167B (zh) 分布式***中节点缓存数据的处理方法及装置
CN108809704B (zh) 基于动态时间窗的数据去重统计方法及装置
CN108228799B (zh) 对象索引信息的存储方法及装置
CN106970998A (zh) 新闻数据的更新方法及装置
CN103500185B (zh) 一种基于多平台数据生成数据表的方法和***
CN104423982B (zh) 请求的处理方法和处理设备
CN103530420B (zh) 数据文件的动态更新方法及装置
CN108984130A (zh) 一种分布式存储的缓存读取方法及其装置
CN111111176A (zh) 游戏中物体lod的管理方法、装置及电子设备
CN106681836A (zh) 一种信号量的创建方法及装置
CN107688626A (zh) 慢查询日志处理方法、装置及电子设备
CN109086462A (zh) 一种分布式文件***中元数据的管理方法
CN105045895B (zh) 一种在指定页面上显示推广内容的方法和装置
CN104598652B (zh) 一种数据库查询方法及装置
CN106503260A (zh) 一种提高数据库的有效存储空间的方法和装置
CN113227999A (zh) 微服务数据聚合搜索引擎更新
CN108288228B (zh) 社交网络信息获取方法和装置
CN106407347B (zh) 一种缓存数据的方法和装置
US10191849B2 (en) Sizing cache data structures using fractal organization of an ordered sequence
CN110109970B (zh) 一种数据查询处理方法及装置
CN109213922B (zh) 一种对搜索结果排序的方法和装置
US9092472B1 (en) Data merge based on logical segregation
EP2590089B1 (en) Rule type columns in database

Legal Events

Date Code Title Description
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