CN110741616A - 用于数据上线的系统和方法 - Google Patents
用于数据上线的系统和方法 Download PDFInfo
- Publication number
- CN110741616A CN110741616A CN201780091962.4A CN201780091962A CN110741616A CN 110741616 A CN110741616 A CN 110741616A CN 201780091962 A CN201780091962 A CN 201780091962A CN 110741616 A CN110741616 A CN 110741616A
- Authority
- CN
- China
- Prior art keywords
- data item
- data
- incremental
- update
- network
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000003860 storage Methods 0.000 claims description 57
- 238000004891 communication Methods 0.000 claims description 22
- 230000005540 biological transmission Effects 0.000 claims description 11
- 238000012544 monitoring process Methods 0.000 claims description 11
- 230000002547 anomalous effect Effects 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 35
- 238000012545 processing Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 18
- 230000003993 interaction Effects 0.000 description 10
- 230000004044 response Effects 0.000 description 10
- 238000012986 modification Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000007781 pre-processing Methods 0.000 description 5
- 230000006872 improvement Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000011521 glass Substances 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- -1 commodities Substances 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 239000010977 jade Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及数据上线的系统和方法。系统可以执行如下方法:从数据库中获取第一数据项;获取第二数据项,其中所述第二数据项可以是第一数据项已更新的版本;根据所述第一数据项和所述第二数据项确定增量数据项;确定关于所述增量数据项的更新策略;以及基于所述更新策略,通过所述网络传输所述增量数据项以更新存储在所述数据库中的第一数据项。
Description
技术领域
本申请一般涉及数据上线的系统和方法,特别是用于离线数据上线的系统和方法。
背景技术
随着移动计算技术和无线通信技术的发展和普及,移动应用程序在人们的日常生活中发挥着重要作用。目前,移动应用程序生成的数据量巨大,因此,可能需要提供用于管理(例如,处理、维护、上线等)大量数据的系统和方法。
发明内容
根据本申请的一方面,提供一种系统。所述系统可以包括至少一个处理器、至少一个非暂时性计算机可读存储介质,以及连接到网络的至少一个通信模块。所述至少一个非暂时性计算机可读存储介质可以包括用于更新数据的一组指令。当所述至少一个处理器执行所述指令集时,所述至少一个处理器可以执行一个或以上下述操作。所述至少一个处理器可以从数据库中获取第一数据项。所述至少一个处理器可以获取第二数据项,其中所述第二数据项可以是所述第一数据项已更新的版本。所述至少一个处理器可以根据所述第一数据项和所述第二数据项确定增量数据项。所述至少一个处理器可以确定关于所述增量数据项的更新策略。所述至少一个处理器可以基于所述更新策略,通过所述网络传输所述增量数据项以更新存储在所述数据库中的所述第一数据项。
在一些实施例中,所述至少一个处理器可以过滤所述第一数据项和所述第二数据项。所述至少一个处理器可以分类所述第一数据项和所述第二数据项。所述至少一个处理器可以标准化所述第一数据项和所述第二数据项,其指将所述第一数据项和所述第二数据项转换为相同的数据结构。
在一些实施例中,所述至少一个处理器可以在所述第一数据项和所述第二数据项之间执行减法操作。
在一些实施例中,与所述增量数据项有关的所述更新策略可以基于所述增量数据项的数据结构,所述增量数据项的大小或所述增量数据项的类型中的至少一个。
在一些实施例中,所述更新策略可以包括所述数据库中存储的所述第一数据项的全量更新、所述数据库中存储的所述第一数据项的增量更新,或者存储在所述数据库中的所述第一数据项的数据回滚中的至少一个。
在一些实施例中,所述至少一个处理器可以将所述增量数据项传输给代理服务器。以及,所述至少一个处理器可以将所述增量数据项从所述代理服务器发送到至少一个服务器,以更新存储在所述数据库中的所述第一数据项。
在一些实施例中,所述至少一个处理器可以监控所述网络中的数据流、所述网络中的异常数据或与所述增量数据项相关联的数据统计中的至少一个。
根据本申请的另一方面,提供一种方法。所述方法可以包括一个或以上下述操作。处理器可以从数据库获取第一数据项。所述处理器可以获取第二数据项,所述第二数据项是所述第一数据项已更新的版本。所述处理器可以根据所述第一数据项和所述第二数据项确定增量数据项。所述处理器可以确定关于所述增量数据项的更新策略。处理器可以基于更新策略,通过所述网络传输所述增量数据项以更新存储在所述数据库中的第一数据项。
本申请的一部分附加特性可以在下面的描述中进行说明。通过对以下描述和相应附图的研究或者对实施例的生产或操作的了解,本申请的一部分附加特性对于本领域技术人员是明显的。本申请的特征可以通过对以下描述的具体实施例的各种方面的方法、手段和组合的实践或使用得以实现和达到。
附图说明
本申请将通过示例性实施例进行进一步描述。这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的符号表示相同的部件,其中:
图1是根据本申请的一些实施例所示的示例性数据上线系统的示意图;
图2是根据本申请的一些实施例所示的示例性计算设备的示例性硬件和/或软件组件的示意图;
图3是根据本申请的一些实施例所示的示例性服务器的框图;
图4是根据本申请的一些实施例所示的离线数据上线的示例性过程的流程图;
图5是根据本申请的一些实施例所示的示例性处理模块的框图;
图6是根据本申请的一些实施例所示的用于处理离线数据的示例性过程的流程图;
图7A是根据本申请的一些实施例所示的示例性上线过程的示意图;
图7B是根据本申请的一些实施例所示的示例性上线过程的示意图;
图7C是根据本申请的一些实施例所示的示例性上线过程的示意图;以及
图8是根据本申请的一些实施例所示的用于监控上线过程的示例性过程的流程图。
具体实施方式
以下描述是为了使本领域的普通技术人员能够实施和利用本申请,并且该描述是在特定的应用场景及其要求的环境下提供的。对于本领域的普通技术人员来讲,对所披露的实施例作出各种改变是显而易见的,并且在不偏离本申请的原则和范围的情况下,本申请中所定义的普遍原则可以适用于其他实施例和应用场景。因此,本申请并不限于所描述的实施例,而应该被给予与权利要求一致的最广泛的范围。
本申请中所使用的术语仅用于描述特定的示例性实施例,并不限制本申请的范围。如本申请使用的单数形式“一”、“一个”及“该”可以同样包括复数形式,除非上下文明确提示例外情形。还应当理解,如在本申请说明书中,术语“包括”、“包含”仅提示存在所述特征、整体、步骤、操作、组件和/或部件,但并不排除存在或添加一个或以上其他特征、整体、步骤、操作、组件、部件和/或其组合的情况。
通常,这里使用的词语“模块”或“单元”是指体现在硬件或固件中的逻辑,或者是软件指令的集合。这里描述的模块或单元可以实现为软件和/或硬件,并且可以存储在任何类型的非暂时性计算机可读介质或其他存储设备中。在一些实施例中,可以编译软件模块/单元并将其链接到可执行程序中。可以理解的是,软件模块可以从其他模块/单元或从它们自己调用,和/或可以调用响应于检测到的事件或中断。配置用于在计算设备上执行的软件模块/单元(例如,如图2所示的处理器220)可以在计算机可读介质上提供,例如光盘、数字视频光盘、闪存驱动器、磁盘,或者任何其他有形介质,或者作为数字下载(并且最初可以以压缩或可安装的格式存储,在执行之前需要安装、解压缩或解密)。这里的软件代码可以被部分的或全部的储存在执行操作的计算设备的存储设备中,并应用在计算设备的操作之中。软件指令可以嵌入固件,例如可擦可编程只读存储器。将进一步理解,硬件模块/单元可以包括在连接的逻辑组件中,例如门和触发器,和/或可以包括可编程单元,例如可编程门阵列或处理器。这里描述的模块/单元或计算设备功能可以实现为软件模块/单元,但可以用硬件或固件表示。一般来说,这里描述的模块/单元指的是逻辑模块/单元可以与不管物理组织或存储的其他模块/单元组合或者分成子模块/子单元。该描述可适用于系统,引擎或其一部分。
根据以下对附图的描述,本申请的这些和其他的特征、特点以及相关结构元件的功能和操作方法,以及部件组合和制造经济性,可以变得更加显而易见,这些附图都构成本申请说明书的一部分。然而,应当理解的是,附图仅仅是为了说明和描述的目的,并不旨在限制本申请的范围。应当理解的是,附图并不是按比例绘制的。
本申请中使用了流程图用来说明根据本申请的一些实施例的系统所执行的操作。应当理解的是,流程图中的操作可以不按顺序执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将一个或以上其他操作添加到这些流程图中。也可以从流程图中删除一个或以上操作。
此外,虽然本申请中的系统和方法主要是关于离线数据上线,还应该理解,这仅是一个示例性实施例。本申请的系统和方法可以应用于任何其他种类的上线方式。例如,本申请的系统和方法可以应用于不同环境的数据更新系统,包括离线更新、在线更新、实时更新等,或其任何组合。再例如,本申请的系统和方法可以应用于数据同步系统。本申请的系统和方法的应用可以包括一个或以上终端设备、数据库、一个或以上服务器、代理服务器、网络等,或其任何组合。
本申请的一方面涉及用于仅通过在线数据和离线数据之间的上线数据增量来使在线数据与离线数据同步的系统和方法。该系统和方法可以从各种数据源接收离线数据,其中各种数据源包括终端(例如,司机终端或乘客终端)、本地服务器、本地存储设备等。该系统和方法可以确定离线数据和先前下载到本地设备的在线数据之间的差异,并生成上线的数据增量。该系统和方法可以进一步确定一个或以上策略,以将数据增量上线到在线服务器和/或在线存储设备,更新与在线服务器和/或在线存储设备中的数据增量有关的在线数据,并将已更新的在线数据存储于在线服务器和/或在线存储设备中。
应当注意的是,接收和处理的数据被离线执行。然后,系统可以检测是否存在网络连接到执行模块。如果存在网络,则可以将处理后的数据上线到服务器。如果不是,则当服务器连接到网络时,处理后的数据可以存储在暂时等待上线的数据库或当前服务器中。在一些实施例中,可能存在用于将数据中继到服务器的代理服务器。
图1根据本申请的一些实施例所示的示例性数据上线系统的示意图。例如,数据上线系统100可以是用于更新数据的数据上线平台。在一些实施例中,数据上线系统100可以包括服务器110、网络120、终端130和存储设备140。
服务器110可以处理从网络120、终端130,和/或存储设备140中获得的数据和/或信息。在一些实施例中,服务器110可以是单个服务器,也可以是服务器组。服务器组可以是集中式的,也可以是分布式的(例如,服务器110可以是分布式的系统)。在一些实施例中,服务器110可以是本地的,也可以是远程的。例如,服务器110可以通过网络120访问存储在终端130,和/或存储设备140中的信息和/或数据。又例如,服务器110可以直接连接到终端130,和/或存储设备140以访问存储信息和/或数据。在一些实施例中,服务器110可以在云平台上实施。仅作为示例,云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。在一些实施例中,服务器110可以在本申请中的图2描述的包含了一个或以上组件的计算设备200上执行。
在一些实施例中,服务器110可以被构造为codis集群。Codis可能是分布式Redis解决方案。对于上层应用程序,连接到代理Codis与连接原生的Redis服务器没有明显区别。上层应用程序可以用作独立的Redis。Codis的底层可以处理请求的转发、不停机的数据迁移等工作。Codis可以包括代理Codis(codis-proxy)、Codis管理器(codis-config)、CodisRedis(codis-server)和Zookeeper。Codis-proxy可以是连接到客户端并实现Redis协议的Redis代理服务。Codis-proxy本身可能是无状态的。在一个业务中,可以部署多个codis-proxy。Codis-config可以配置为具有功能的Codis管理工具,例如,支持添加和/或删除Redis节点、添加和/或删除代理节点、启动数据迁移等。Codis-config还可以与HTTP服务器相关联,HTTP服务器可以启动一个交互界面。用户可以在浏览器中直接观察Codis集群的运行状态。Codis-server可以是Codis项目维护的一个Redis分支。当与此版本的Redis交互时,codis-proxy和codis-config可以正常运行。Codis可以依赖ZooKeeper来存储数据路由表和codis-proxy节点的元数据,并且codis-config启动的命令通过ZooKeeper与每个存活的codis-proxy同步。Codis可以根据命名空间区分不同的产品。具有不同名称的产品在配置中可能不会相互冲突。如图1所示,服务器110可以被构造为包括多个服务器110-1、110-2、110-2等的codis集群。
网络120可以促进信息和/或数据的交换。在一些实施例中,数据上线系统100中的一个或以上组件(例如,服务器110、终端130、存储设备140等)可以经由网络120将信息和/或数据发送到数据上线系统100中的其他组件。例如,服务器110可以经由网络120从终端130获得/获取数据。在一些实施例中,网络120可以是有线网络或无线网络的任何一种,或其任意组合。仅作为示例,网络130可以包括电缆网络、有线网络、光纤网络、电信网络、内部网络、互联网、局域网络(LAN)、广域网络(WAN)、无线局域网络(WLAN)、城域网(MAN)、公共开关电话网络(PSTN)、蓝牙网络、ZigBee、近场通信(NFC)网络等或其任意组合。在一些实施例中,网络120可以包括一个或以上网络接入点。例如,网络120可以包括有线或无线网络接入点,如基站和/或互联网交换点120-1、120-2、......,通过数据上线系统100的一个或以上组件可以连接到网络120以交换数据和/或信息。
终端130可以是请求者终端或提供者终端。请求者终端可以被称为服务请求者用于请求或订购服务的移动终端。例如,请求者终端可以是智能手机、PDA、平板电脑等。提供者终端可以被称为服务提供者用来提供服务或便于提供服务的移动终端。在一些实施例中,提供者终端可以是与请求者终端相同或相似的类型。例如,服务提供者可以使用智能手机、平板电脑、机动车内置设备、膝上型计算机、台式计算机等作为提供者终端以便于提供服务。又例如,提供者终端可以包括向请求者提供服务的出租车、穿梭巴士、豪华轿车、公共汽车、公共自行车、公共踏板车等。终端130可以收集和存储与用户或请求者可能请求的至少两个订单相关的信息。在一些实施例中,终端130的用户可以是除请求者之外的其他人。例如,请求者终端的用户A可以通过请求者终端为用户B发送服务请求,或从服务器110接收服务和/或信息或指令。在一些实施例中,提供者可以是提供者终端的用户。在一些实施例中,提供者终端的用户可以为除该提供者之外的其他人。例如,提供者终端的用户C可以通过提供者终端为用户D接收服务请求,和/或从服务器110处接收信息或指令。在一些实施例中,“请求者”和“请求者终端”可互换使用,“提供者”和“提供者终端”可互换使用。
在一些实施例中,终端130可以包括移动设备130-1、平板计算机130-2、膝上型计算机130-3、机动车内置设备130-4等或其任意组合。在一些实施例中,移动设备130-1可以包括智能家居设备、可穿戴设备、移动设备、虚拟现实设备、增强现实设备等,或其任意组合。在一些实施例中,智能家居设备可以包括智能照明设备、智能电器控制设备、智能监控设备、智能电视、智能摄像机、对讲机等,或其任意组合。在一些实施例中,可穿戴设备可以包括手环、鞋袜、眼镜、头盔、手表、衣物、背包、智能配饰等或其任意组合。在一些实施例中,移动设备可以包括移动电话、个人数字助理(PDA)、游戏设备、导航设备、销售点(POS)、膝上型电脑、台式机等或其任意组合。在一些实施例中,虚拟现实设备和/或增强型虚拟现实设备可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、增强现实头盔、增强现实眼镜、增强现实眼罩等,或其任意组合。例如,虚拟现实设备和/或增强现实设备可以包括谷歌眼镜(Google GlassTM)、虚拟现实眼镜(Oculus RiftTM)、全息眼镜(HololensTM)或虚拟现实头盔(Gear VRTM)等。在一些实施例中,机动车内置设备130-4可以包括车载计算机、车载电视等。在一些实施例中,终端130可以是具有定位技术的设备,用于定位请求者和/或终端130的位置。
存储设备140可以存储数据和/或指令。在一些实施例中,存储设备140可以存储从终端130获得的数据。在一些实施例中,存储设备140可以存储服务器110用来执行或使用来完成本申请中描述的示例性方法的数据和/或指令。在一些实施例中,存储设备140可以包括大容量储存器、可移动储存器、挥发性读写内存、只读存储器(ROM)等或其任意组合。示例性的大容量存储器可以包括磁盘、光盘、固态驱动等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、存储卡、压缩盘、磁带等。示例性易失性读写存储器可以包括随机存取存储器(RAM)。示例性RAM可以包括动态随机存取存储器(DRAM)、双倍数据速率同步动态随机存取存储器(DDR SDRAM)、静态随机存取存储器(SRAM)、晶闸管随机存取存储器(T-RAM)和零电容随机存取存储器(Z-RAM)等。示例性只读存储器可以包括掩模型只读存储器(MROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(PEROM)、电可擦除可编程只读存储器(EEPROM)、光盘只读存储器(CD-ROM)和数字多功能磁盘只读存储器等。在一些实施例中,存储设备140可以在云平台上执行。仅作为示例,云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
在一些实施例中,存储设备140可以连接到网络120,以与数据上线系统100中的一个或以上组件(例如,服务器110、终端130等)通信。数据上线系统100中的一个或以上组件可以经由网络120访问存储设备140中存储的数据或指令。在一些实施例中,存储设备140可以直接连接到数据上线系统100(例如,服务器110、终端130等)中的一个或以上组件或与之通信。在一些实施例中,存储设备140可以是服务器110的一部分。
在一些实施例中,存储设备140可以实现为代理服务器。存储设备140可以代理网络用户以获得网络信息。存储设备140可以是网络信息的传输站,以将数据存储在缓冲存储器中。更重要的是,代理服务器是Internet链接提供的重要安全功能,有助于保护网络端点的隐私和安全。
在一些实施例中,数据上线系统100中的一个或以上组件(例如,服务器110、终端130等)可以具有访问存储设备140的许可。在一些实施例中,当满足一个或以上条件时,数据上线系统100中的一个或以上组件可以读取和/或修改与请求者、提供者,和/或公众有关的信息。例如,在提供服务后,服务器110可以读取和/或修改一个或以上用户信息。又例如,当从请求者终端接收到服务请求时,提供者终端可以访问与请求者相关的信息,但提供者终端无法修改请求者的相关信息。
在一些实施例中,可以通过请求数据服务来实现数据上线系统100中的一个或以上组件的信息交换。数据服务请求的对象可以是任何产品。在一些实施例中,产品可以是有形产品或无形产品。有形产品可以包括食品、药品、商品、化学品、电器、服装、汽车、房屋、奢侈品等,或其任何组合。无形产品可以包括服务产品、金融产品、知识产品、互联网产品等,或其任何组合。互联网产品可以包括个人主机产品、网站产品、移动互联网产品、商业主机产品、嵌入式产品等或其任意组合。移动网络产品可以在移动终端的软件、程序、系统等或其任意组合中使用。移动终端可以包括平板计算机、膝上型计算机、移动电话、个人数字助理(PDA)、智能手表、POS设备、车载计算机、车载电视、可穿戴设备等或其任意组合。例如,产品可以是在计算机或移动电话上使用的任一软件和/或应用。软件和/或应用程序可以与社交、购物、交通、娱乐、学习、投资等,或其任意组合相关。在一些实施例中,与运输有关系统软件和/或应用程序可以包括出行软件和/或应用程序、车辆调度软件和/或应用程序、地图软件和/或应用程序等。在车辆调度软件和/或应用程序中,车辆可以包括马、马车、人力车(例如,独轮车、自行车、三轮车等)、汽车(例如,出租车、公共汽车、私人汽车等)、火车、地铁、船舶、飞行器(例如,飞机、直升机、航天飞机、火箭、热气球等)或其任意组合。
图2是根据本申请的一些实施例所示的服务器110、请求者终端130,和/或存储设备140可以在示例性计算设备上实现的示例性硬件和软件组件的示意图。例如,服务器110可以在计算设备200上实现,并且被配置用于执行本申请中披露的服务器110的功能。
计算设备200可以是通用计算机或专用计算机;在本申请中,两者都可以用于实现数据上线系统。计算设备200可以用于实现如本文所述的数据上线的任何组件。例如,服务器110可以通过其硬件、软件程序、固件或其组合在计算设备200上实现。尽管仅示出了一个这样的计算机,但是为了方便,与这里描述的数据上线有关的计算机功能可以在多个类似平台上以分布式方式实现,以分配处理负载。
例如,计算设备200可以包括与网络相连接通信端口250,以实现数据通信。计算设备200还可以包括中央处理器(CPU)220,以一个或以上处理器的形式执行程序指令。计算设备200可以包括一个内部通信总线210、不同形式的程序存储器和数据存储器,例如,磁盘270、只读存储器(ROM)230、或随机存取存储器(RAM)240,用于储存由计算机处理和/或传输的各种各样的数据文件。计算设备200还可以包括存储在ROM 230、RAM 240和/或由CPU 220执行的任何其他类型的非暂时性存储介质中的程序指令。本申请的方法和/或流程可以以程序指令的方式实现。计算设备200还包括I/O组件260,支持计算设备与本文中其他的其他组件之间的输入/输出。计算设备200也可以通过网络通信接收程序设计和数据。
为理解方便,计算设备200中仅示例性绘制了一个CPU和/或处理器。然而,需要注意的是,本申请中的计算设备200可以包括多个CPU和/或处理器,因此本申请中描述的由一个CPU和/或处理器实现的操作和/或方法也可以共同地或独立地由多个CPU和/或处理器实现。例如,如果本申请中,计算设备200的CPU和/或处理器执行步骤A和步骤B,应当理解的是,步骤A和步骤B也可以由计算设备200的两个不同的CPU和/或处理器共同地或独立地执行(例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一和第二处理器共同地执行步骤A和步骤B)。
本领域技术人员能够理解,本申请所披露的内容可以出现多种变型和改进。例如,尽管这里描述的各种组件的实现可以体现在硬件设备中,它也可以实现为仅软件解决方案,例如,在现有服务器上的安装。另外,如本文所披露的计算设备200可以实现为固件、固件/软件组合、固件/硬件组合或硬件/固件/软件组合。
图3是根据本申请的一些实施例所示的示例性服务器的框图。服务器110可以包括获取模块310、处理模块320、通信模块330和监控模块340。在一些实施例中,这些模块之间可能存在互连。例如,处理模块320可以从获取模块310接收信息,并将信息发送到通信模块330。
获取模块310可以被配置用于获得可以用于处理(例如,存储、上线等)的数据。在一些实施例中,获取模块310可以经由网络120从终端130(例如,请求者终端或提供者终端)获得数据。在一些实施例中,获取模块310可以获取服务器110中的数据。在一些实施例中,可以将已获得的数据传输给处理模块320以进行进一步处理,例如,处理模块320可以分析数据,并记录与数据有关的信息(例如,数据大小、数据接收时间、数据类型等)。
在一些实施例中,数据可以包括全量数据项、部分数据项、和/或与两个数据项相关联的增量数据项。全量数据项可以包括与诸如终端、服务器、在终端上实现的移动应用程序、由移动应用程序生成的单独服务订单等对象相关的所有信息。部分数据项可以包括与对象相关的部分信息。全量数据项和部分数据项可以与一段时间、地理位置、特定用户组及其组合中的至少一个相关联。与两个数据项相关联的增量数据项可以包括指示两个数据项之间的差异的信息。例如,增量数据项可以指示两个数据项之间的时间差异。又例如,增量数据项可以指示两个数据项之间的空间差异。再例如,增量数据项可以指示两个数据项之间的用户组差异。全量数据项可以进一步包括先前的全量数据项和新的全量数据项。可以从存储设备140下载先前的全量数据项,并将其保存在服务器110中。可以从终端130获得新的全量数据项,并将其传输给服务器110,以便与先前的全量数据项进行比较。在一些实施例中,先前的全量数据项可以指先前保存在存储设备140中的全量数据项的旧版本。新的全量数据项可以指通过各种数据源获得的全量数据项的新版本,并且被上线以更新存储设备140中保存的先前的全量数据项。当完成数据上线时,用新的整数数据项更新存储设备140中保存的先前全量数据项。例如,先前的全量数据项可以包括与2016年在纽约市生成的至少两个在线出租车订单相关的信息。新的全量数据项可以包括与2016年1月至2017年4月在纽约市生成的至少两个在线出租车订单相关的信息。增量数据项可以被确定为2017年1月至2017年4月在纽约市生成的至少两个在线出租车订单。在增量数据项上线到存储设备140之后,可以更新先前的全量数据项以包括与从2016年1月到2017年4月在纽约市生成的至少两个在线出租车订单相关的信息。
在一些实施例中,与对象相关联的全量数据项可以包括但不限于与订单相关的数据、与车辆相关的数据、与车辆行驶路线相关的数据、支付数据、交通数据、位置数据、与旅行时间相关的数据、与乘客偏好相关的数据、与司机偏好相关的数据、与起始点相关的数据、目的地数据等,或其任何组合。在一些实施例中,可以获得全量数据项的不同版本或不同实例,并将其存储在数据上线系统100的存储组件中。当安排上线任务时,获取模块310可以选择先前的全量数据项和新的全量数据项,并发送到处理模块320以确定增量数据项。
处理模块320可以被配置为处理已获得的数据,以确定增量数据项。处理操作可以包括但不限于识别、分类、过滤、计算、存储等,或其任何组合。
在一些实施例中,处理模块320可以被配置用于基于先前的全量数据项和新的全量数据项确定增量数据项。在一些实施例中,仅增量数据项可以被上线到服务器110,以更新先前的全量数据项,用于获得数据更新的效率。在一些实施例中,全量数据项可以是上线到服务器110,以更新先前的全量数据项。
在一些实施例中,处理模块320可以确定增量数据项或全量数据项的存储策略。可以基于存储位置、存储时间、存储量、存储模式等或其任何组合来确定存储策略。处理模块320可以确定与要存储的数据(例如,全量数据项、增量数据项等)相关联的一个或以上属性。与数据相关联的一个或以上属性可以包括但不限于数据大小、数据记录时间、数据类型、数据更新的时间点、数据物理特征等,或其任何组合。
此外,处理模块320可以被配置用于确定增量数据项或全量数据项的上线策略。根据增量数据项或全量数据项是否上线,上线策略可能不同。例如,由于增量数据项的大小很小,处理模块320可以将上线策略确定为一次传输全量增量数据项。又例如,由于全量数据项的大小很大,处理模块320可以将上线策略确定为分割全量数据项,并分别在不同时间传输分段的全量数据项。
在一些实施例中,处理模块320也可以基于网络上的数据传输速度、网络带宽、上线时间、以及数据上线网络中的目的IP地址等,确定上线策略。在一些实施例中,处理模块320可以确定数据回滚的策略。例如,根据通过网络检测增量数据项或全量数据项的上线期间的异常情况时,处理模块320可以执行数据回滚,以检查和/或恢复数据。
通信模块330可以被配置用于将与新的全量数据项相关联的数据传输给至少一个服务器。例如,通信模块330可以将增量数据项或新的全量数据项传输给服务器110-2和/或服务器110-3中的一个。又例如,通信模块340可以将与异常相关联的通知发送到服务器110-2和/或服务器110-3中的一个服务器上。
在一些实施例中,通信模块330可以从服务器110接收响应。响应可以指由于传输期间的数据丢失,服务器100请求重新发送数据。又例如,响应可以指服务器100已经接收到完整数据,并指示传输会话被关闭。
在一些实施例中,根据从服务器110接收响应,通信模块330可以进一步基于响应,向服务器110发送回复(例如,重新发送增量数据项)。例如,通信模块330可以将增量数据项重新发送到服务器110。
监控模块340可以被配置用于监控通信过程。这里的通信是指将增量数据项或全量数据项传输给至少一个服务器110。监控模块340可以在增量数据项的传输期间自动检测异常,并指示处理模块320采取进一步的动作。
在一些实施例中,监控模块340可以监控数据流、异常数据和数据统计等。当检测到将增量数据项传输到服务器期间的异常情况时,监控模块340可以向服务器发送提示消息,以警告用户或技术人员。提示消息可以包括但不限于照片、文字、语音、视频、警示灯等,或其任何组合。确定异常情况的标准可以由用户或技术人员预先设定。
服务器110中的获取模块310、处理模块320、通信模块330和监控模块340可以通过有线连接或无线连接彼此连接或通信。有线连接可以包括金属线缆、光缆、混合电缆等或其任意组合。无线连接可以包括局域网络(LAN)、广域网络(WAN)、蓝牙、ZigBee、近场通信(NFC)等或其任意组合。两个或以上模块可以合并为一个模块,并且任意一个模块可以被拆分为两个或以上单元。例如,处理模块320可以作为单个模块集成到通信模块330中,该模块可以处理数据并上线处理后的数据。又例如,服务器110可以包括存储模块(图3中未示出),其可以被配置用于临时或永久地存储数据。
图4是根据本申请的一些实施例所示的离线数据上线的示例性过程的流程图。过程400可以由数据上线系统100执行。例如,过程400可以实现为存储在存储器ROM 230或RAM240中的指令集(例如,应用程序)。CPU 220可以执行指令集,并且因此可以指示CPU执行过程400。以下所示过程400呈现的操作旨在是说明性的。在一些实施例中,过程400在实施时可以添加一个或以上本申请未描述的额外操作,和/或删减一个或以上此处所描述的操作。另外,如图4所示和下面描述的过程400的操作的顺序不是限制性的。
在410中,数据上线系统100可以从存储介质(例如,终端130或存储设备140)获取第一数据项和第二数据项。在一些实施例中,第一数据项可以是先前的全量数据项,第二数据项可以是新的整数数据项。新的整个数据可以是先前整个数据的已更新版本。在一些实施例中,可以获取第一数据项和第二数据项,并将其存储在数据上线系统中的服务器(例如,服务器110-1、110-2或110-3......)或存储设备140中。
当完成数据上线过程时,用新的全量数据项更新存储设备140中保存的先前全量数据项。例如,先前的全量数据项可以包括与2016年在纽约市生成的至少两个在线出租车订单相关的信息。新的全量数据项可以包括与2016年1月至2017年4月在纽约市生成的至少两个在线出租车订单相关的信息。增量数据项可以被确定为2017年1月至2017年4月在纽约市生成的至少两个在线出租车订单。增量数据项上线到存储设备140后,可以更新先前的全量数据项,以包括与2016年1月至2017年4月在纽约市生成的至少两个在线出租车订单相关的信息。
在一些实施例中,与对象相关联的全量数据项可以包括但不限于与订单相关的数据、与车辆相关的数据、与车辆运输路线相关的数据、支付数据、交通数据、位置数据、与旅行时间相关的数据、与乘客偏好相关的数据、与司机偏好相关的数据、与出发地点相关的数据、目的地数据等,或其任何组合。在一些实施例中,可以获得全量数据项的不同版本或不同实例,并将其存储在数据上线系统100的存储组件中。当安排上线任务时,可以从存储组件中选择先前的全量数据项和新的全量数据项。在一些实施例中,服务器110可以通过网络从终端130获取全量数据项,或者直接从服务器中的存储组件获取全量数据项。
在420中,数据上线系统100可以根据第一数据项和第二数据项确定增量数据项。在一些实施例中,可以需要处理第一数据项和/或第二数据项以用于进一步的上线。数据处理操作可以包括但不限于识别、分类、过滤、计算、存储等,或其任何组合。
在一些实施例中,可以在420中进一步确定增量数据项或全量数据项的存储策略。可以基于存储位置、存储时间、存储量、存储模式等或其任何组合来确定存储策略。并且还可以在420中确定数据的参数。数据更新系统100可以确定与要存储的数据(例如,全量数据项、增量数据项等)相关联的一个或以上属性。与数据相关联的一个或以上属性可以包括但不限于数据大小、数据记录时间、数据类型、数据更新的时间点、数据物理特征等,或其任何组合。
在一些实施例中,数据上线系统100可以直接获取增量数据项,而无需从服务器110的存储组件中处理先前的全量数据项或新的全量数据项。增量数据项可以被实时记录并存储在本地存储组件中。增量数据项可以进一步上线到一个或以上服务器。同时,增量数据项可以与先前的全量数据项组合,以在本地存储中生成新的全量数据项。本地存储组件中的新的全量数据项可以存储为先前的全量数据项,用于后续数据上线。可以在图7A中详细描述上述示例。
在430中,数据上线系统100可以确定增量数据项的上线策略。根据增量数据项或全量数据项是否为上线,上线策略可能不同。例如,由于增量数据项的量级很小,数据上线系统100可以将上线策略确定为一次传输全部的增量数据项。又例如,因为全量数据项的量级很大,数据上线系统100可以将上线策略确定为分割全量数据项并分别在不同时间传输分割的全量数据项。上线策略可以确定数据可以被上线的方式。在一些实施例中,上线方式可以包括但不限于增量数据项上线和全量数据项上线。
进一步地,在430中,数据上线系统100也可以基于网络上的数据传输速度、网络带宽、上线时间、以及数据上线的网络中的目的IP地址,确定上线策略在一些实施例中,数据上线系统100可以确定数据回滚的策略。例如,根据通过网络检测增量数据项或全量数据项的上线期间的异常情况时,数据上线系统100可以执行数据回滚以检查和/或恢复数据。上线策略的详细描述可以在图7中进一步描述。
在440中,数据上线系统100可以基于上线策略传输增量数据项以更新存储在数据库中的第一数据项。例如,数据上线系统100可以将增量数据项或新的全量数据项发送到服务器110-2和/或服务器110-3中的一个服务器上。又例如,数据上线系统100可以将与异常相关联的通知发送到服务器110-2和/或服务器110-3中的一个服务器上。
在一些实施例中,数据上线系统100可以通过网络120将数据传输给一个或以上的服务器。在一些实施例中,网络120可以是有线网络或无线网络等或其任意组合。仅作为示例,网络120可以包括电缆网络、有线网络、光纤网络、电信网络、内部网络、互联网、局域网络(LAN)、广域网络(WAN)、无线局域网络(WLAN)、城域网(MAN)、公共开关电话网络(PSTN)、蓝牙网络、ZigBee、近场通信(NFC)网络等或其任意组合。
在一些实施例中,数据上线系统100可以从一个或以上服务器接收响应。响应可以指由于传输期间的数据丢失,服务器100请求重新发送数据。又例如,响应可以指服务器100已经接收到完整数据,并指示传输会话被关闭。
在一些实施例中,根据从一个或以上服务器接收响应后,数据上线系统100还可以进一步基于响应,向一个或以上服务器发送答复(例如,新增量数据项)。例如,通信模块330可以将增量数据项重新发送到服务器110。
在一些实施例中,数据上线系统100可以在440中监控通信过程。这里的通信是指将增量数据项或全量数据项传输给至少一个服务器110。数据上线系统100可以在增量数据项的传输期间自动检测异常,并指示数据上线系统100采取进一步的动作。
在一些实施例中,数据上线系统100可以监控数据流、异常数据和数据统计等。当检测到将增量数据项传输到服务器期间的异常情况时,数据上线系统100可以向服务器发送提示消息,以警告用户或技术人员。提示消息可以包括但不限于照片、文字、语音、视频、警示灯等,或其任何组合。确定异常情况的标准可以由用户或技术人员预先设定。一旦出现异常,就可以显示提示消息,并且可以存储与异常相关联的数据以用于进一步的操作。
应该注意的是,上述仅出于说明性目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,这些变化和修改不会背离本申请的范围。例如,可以在示例性过程/方法400的其他地方添加一个或以上其他可选步骤(例如,存储步骤或响应步骤)。
图5是根据本申请的一些实施例所示的示例性处理模块的框图。处理模块320可以包括预处理单元510、判断单元520和存储单元530。在一些实施例中,这些单元之间可能存在互连。例如,判断单元520可以从预处理单元510接收信息,并将信息发送到存储单元530。
预处理单元510可以被配置用于预处理先前的全量数据项和/或新的全量数据项。预处理操作可以包括但不限于过滤、分类、归化、标准化等,或其任何组合。
在一些实施例中,过滤先前的数据项和/或新的全量数据项可以指过滤掉添加到主数据的噪声点或干扰数据。例如,已获取的全量数据项可以包括可以降低数据确定结果的准确性的噪点数据或冗余数据,。在一些实施例中,对先前的全量数据项和/或新的全量数据项进行分类可以指根据预设的分类标准,对先前的全量数据项和/或新的全量数据项进行分类。预设分类标准可以包括但不限于线性分类、区域分类、复合分类等,或其任何组合。在一些实施例中,归一化先前全量数据项和/或新的全量数据项可以指基于使得相关数据值被限制在一定范围内的算法,处理先前的全量数据项和/或新的全量数据项。在一些实施例中,标准化先前全量数据项和/或新的全量数据项可以指转换先前的全量数据项和新的全量数据项,使得先前的全量数据项和新的全量数据项在同一个数据结构中。在一些实施例中,可以将预处理的数据发送到确定单元520以进行进一步操作。
判断单元520可以被配置用于基于预处理的先前全量数据项和预处理的新的全量数据项来确定增量数据项。在一些实施例中,仅增量数据项可以是上线到服务器110以更新先前的全量数据项以获得数据更新的效率。在一些实施例中,全量数据项可以是上线到服务器110以更新先前的全量数据项。确定单元520可以确定新的全量数据项,并确认新的全量数据项是全量数据项的最新版本。
在一些实施例中,确定单元520可以比较新的全量数据项和先前的全量数据项以获得增量数据项。例如,确定单元520可以在新的全量数据项和先前的全量数据项之间执行减法操作以获得增量数据项。减法算法可以是本领域普通技术人员所知的各种算法。进一步地,可以根据新的全量数据项和先前的全量数据项的属性来确定减法算法。
在一些实施例中,确定单元520也可以被配置用于确定数据的存储策略。可以基于存储位置、存储时间、存储量、存储模式等或其任何组合来确定存储策略。并且数据的参数也可以由确定单元520确定。确定单元520可以确定与要存储的数据(例如,全量数据项、增量数据项等)相关联的一个或以上属性。与数据相关联的一个或以上属性可以包括但不限于数据大小、数据记录时间、数据类型、数据更新的时间点、数据物理特征等,或其任何组合。
存储单元530可以被配置用于根据已确定的存储策略存储数据。存储单元530可以是服务器110中具有存储功能的组件。存储单元530可以临时或永久地存储数据。在一些实施例中,服务器可以检测网络状态。一旦网络状态指示网络源可用于传输,存储单元530就可以经由网络将存储在其中的数据发送到通信模块340,以上线数据。
处理单元320中的预处理单元510、确定单元520和存储单元530可以经由有线连接或无线连接彼此连接或通信。有线连接可以包括金属线缆、光缆、混合电缆等或其任意组合。无线连接可以包括局域网络(LAN)、广域网络(WAN)、蓝牙、ZigBee、近场通信(NFC)等或其任意组合。两个或以上的单元可以组合为单个单元,并且任何一个模块可以被拆分为两个或以上单元。
图6是根据本申请的一些实施例所示的用于处理离线数据的示例性过程的流程图。过程600可以由数据上线系统100执行。例如,过程600可以实现为存储在存储器ROM 230或RAM 240中的一组指令(例如,应用程序)。CPU 220可以执行该组指令,并且因此可以指示CPU执行该过程600。以下所示过程的操作仅出于说明的目的。在一些实施例中,过程在实施时可以添加一个或以上本申请未描述的额外操作,和/或删减一个或以上此处所描述的操作。另外,如图6所示和下面描述的过程操作的顺序不是限制性的。
在610中,数据更新系统100可以优化第一数据项和第二数据项。第一数据项可以指先前的全量数据项,并且第二数据项可以指新的全量数据项。数据优化包括但不限于数据过滤、数据分类、数据归一化、数据标准化等,或其任何组合。
在620中,数据更新系统100可以基于第一数据项和第二数据项确定增量数据项。确定算法可以与优化的先前全量数据项和新的全量数据项的属性相关联。与数据相关联的属性可以包括但不限于数据大小、数据记录时间、数据类型、数据更新的时间点、数据物理特征等,或其任何组合。
在630中,数据更新系统100可以确定关于增量数据项的存储策略。可以根据增量数据项的属性来确定存储策略。在一些实施例中,存储策略可以由用户或技术人员预设。
在640中,数据更新系统100可以基于在630中确定的存储策略将增量数据项存储在服务器110中的组件中。
应该注意的是,上述仅出于说明性目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,变化和修改不会背离本申请的范围。例如,可以在示例性过程600中的其他地方添加一个或以上其他可选步骤(例如,响应步骤)。
图7A是根据本申请的一些实施例所示的示例性上线过程的示意图。如图7A所示,服务器110可以加载先前的全量数据项(下文称为“data_stream.v1.all”)。服务器110可以获得增量数据项(以下称为“data_stream.v2.Inc”)。进一步地,服务器110可以通过组合data_stream.v1.all和data_stream.v2.Inc来确定新的全量数据项(以下称为“data_stream.v2.all”)。data_stream.v2.all可以写在本地存储组件中(例如,在服务器110中)。data_stream.v2.all可以存储为先前的全量数据项,用于后续数据上线。同时,当网络可用于传输时,data_stream.v2.Inc可以通过至少一个服务器上线到存储设备中。
图7B是根据本申请的一些实施例所示的示例性上线过程的图。如图7B所示,服务器可以获得data_stream.v1.all和data_stream.v2.all。服务器110还可以基于data_stream.v1.all和data_stream.v2.all确定data_stream.v2.Inc。例如,服务器110可以在data_stream.v1.all和data_stream.v2.all之间执行减法操作。data_stream.v2.all可以写在本地存储组件中(例如,在服务器110中)。同时,当网络可用于传输时,data_stream.v2.Inc可以通过至少一个服务器上线到存储设备。
图7C是根据本申请的一些实施例所示的示例性上线过程的图。如图7C所示,过程可以参考数据回滚过程。服务器110可以从服务器110中的本地存储组件加载data_stream.v2.all和data_stream.v1.all。进一步地,基于data_stream.v1.all和data_stream.v2.all,可以确定data_stream.v1.Inc(另一个增量数据项)。
data_stream.v1.Inc可以通过至少一个服务器上线到存储设备以相应地进行数据恢复。
图8是根据本申请的一些实施例所示的用于监控上线过程的示例性过程的流程图。过程800可以由数据上线系统100执行。例如,过程800可以实现为存储在存储器ROM 230或RAM 240中的一组指令(例如,应用程序)。CPU 220可以执行该组指令,并且因此可以指示CPU执行过程800.以下所示过程的操作仅出于说明的目的。在一些实施例中,过程在实施时可以添加一个或以上本申请未描述的额外操作,和/或删减一个或以上此处所描述的操作。另外,如图8所示和下面描述的过程操作的顺序不是限制性的。
在810中,数据上线系统100可以监控上线过程,其过程已经在图4中过程400的440中描述。在一些实施例中,810可以由服务器110中的监控模块340执行。数据上线系统100可以监控数据流、异常数据或数据统计等。
在820中,数据上线系统100可以确定是否存在任何异常数据或异常情况。并且可以根据确定结果向用户输出提示消息。提示消息可以与警告信号或完成命令相关联。提示消息可以具有包括但不限于照片、单词、语音、视频、警告灯等的形式,或其任何组合。
在830,响应于确定不存在异常数据或异常情况,可以向用户提示与完成命令相关联的提示消息。否则,在840,响应确定存在异常数据或异常情况,可以向用户提示警告信号,以警告用户上线程序不能正常工作。例如,警告信号可以指示由于上线期间的数据丢失,已接收的增量数据项是不完整的。结果,一旦网络变得可用,数据上线系统100可以重新发送增量数据项。
上文已对基本概念做了描述,显然,对于阅读此申请后的本领域的普通技术人员来说,上述发明披露仅作为示例,并不构成对本申请的限制。虽然此处并未明确说明,但本领域的普通技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。例如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特性。因此,应当强调并注意的是,本说明书中在不同位置两次或以上提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。进一步地,本申请的一个或以上实施例中的某些特征、结构或特点可以进行适当的组合。
进一步地,本领域的普通技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的过程、机器、产品或物质的组合,或对其任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括韧体、常驻软件、微代码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“单元”、“模块”或“系统”。此外,本申请的各方面可以采取体现在一个或以上计算机可读介质中的计算机程序产品的形式,其中计算机可读程序代码包含在其中。
计算机可读信号介质可以包含一个内含有计算机程序代码的传播数据信号,例如在基带上或作为载波的一部分。此类传播信号可以有多种形式,包括电磁形式、光形式等或任何合适的组合形式。计算机可读信号介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至指令执行系统、装置或设备以实现通信、传播或传输供使用的程序。位于计算机可读信号介质上的程序代码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF等,或任何上述介质的组合。
本申请各方面操作所需的计算机程序码可以用一种或以上程序语言的任意组合编写,包括面向对象程序设计,如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序编程语言,如”C”编程语言,Visual Basic、Fortran2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy或其它编程语言。程序代码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)、或广域网(WAN)、或连接至外部计算机(例如通过因特网)、或在云计算环境中、或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,虽然以上所描述的各种系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或以上发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。然而,本申请的方法不应被解释为反映所声称对象物质需要比每个权利要求中明确记载的更多特征的意图。实际上,所声称的对象物质的特征要少于上述披露的单一实施例的全部特征。
Claims (20)
1.一种系统,包括:
至少一个处理器;
至少一个非暂时性计算机可读存储介质,包括用于更新数据的一组指令;以及
至少一个连接到网络的通信模块,
其中,当执行所述指令集时,所述至少一个处理器用于:
从数据库中获取第一数据项;
获取第二数据项,所述第二数据项是所述第一数据项已更新的版本;
根据所述第一数据项和所述第二数据项确定增量数据项;
确定关于所述增量数据项的更新策略;以及
基于所述更新策略,通过所述网络传输所述增量数据项以更新存储在所述数据库中的所述第一数据项。
2.根据权利要求1所述的系统,其特征在于根据所述第一数据项和所述第二数据项确定增量数据项,所述至少一个处理器还用于:
过滤所述第一数据项和所述第二数据项;
分类所述第一数据项和所述第二数据项;或者
标准化所述第一数据项和所述第二数据项。
3.根据权利要求2所述的系统,其特征在于,标准化所述第一数据项和所述第二数据项,所述至少一个处理器还用于:
将所述第一数据项和所述第二数据项转换为相同的数据结构。
4.根据权利要求1所述的系统,其特征在于,根据所述第一数据项和所述第二数据项确定增量数据项,所述至少一个处理器还用于:
在所述第一数据项和所述第二数据项之间执行减法操作。
5.根据权利要求1所述的系统,其特征在于,与所述增量数据项有关的所述更新策略是基于所述增量数据项的数据结构、所述增量数据项的大小或所述增量数据项的类型中的至少一个。
6.根据权利要求1所述的系统,其特征在于所述更新策略包含所述数据库中存储的所述第一数据项的全量更新、所述数据库中存储的所述第一数据项的增量更新、或者存储在所述数据库中的所述第一数据项的数据回滚中的至少一个。
7.根据权利要求1所述的系统,其特征在于,通过所述网络传输所述增量数据项以更新存储在所述数据库中的所述第一数据项,所述至少一个处理器还用于:
将所述增量数据项传输给代理服务器;以及
将所述增量数据项从所述代理服务器发送到至少一个服务器,以更新存储在所述数据库中的所述第一数据项。
8.根据权利要求1所述的系统,其特征在于,所述至少一个处理器还用于:
监控所述网络中的数据流、所述网络中的异常数据或与所述增量数据项相关联的数据统计中的至少一个。
9.一种在计算设备上实现的方法,具有至少一个处理器、至少一个非暂时性计算机可读存储介质,以及至少一个连接到网络的通信模块,包括:
通过所述至少一个处理器从数据库获取第一数据项;
通过所述至少一个处理器获取第二数据项,所述第二数据项是所述第一数据项已更新的版本;
通过所述至少一个处理器,基于所述第一数据项和所述第二数据项确定增量数据项;
通过所述至少一个处理器确定关于所述增量数据项的更新策略;以及
通过所述至少一个处理器,基于所述更新策略,通过所述网络传输所述增量数据项以更新存储在所述数据库中的所述第一数据项。
10.根据权利要求9所述的方法,其特征在于,通过所述至少一个处理器,基于所述第一数据项和所述第二数据项确定所述增量数据项,其进一步包括以下至少一个:
过滤所述第一数据项和所述第二数据项;
分类所述第一数据项和所述第二数据项;或者
标准化所述第一数据项和所述第二数据项。
11.根据权利要求10所述的方法,其特征在于所述标准化所述第一数据项和所述第二数据项进一步包括:
将所述第一数据项和所述第二数据项转换为相同的数据结构。
12.根据权利要求9所述的方法,其特征在于,通过所述至少一个处理器,基于所述第一数据项和所述第二数据项确定所述增量数据项,进一步包括:
在所述第一数据项和所述第二数据项之间执行减法操作。
13.根据权利要求9所述的方法,其特征在于与所述增量数据项有关的所述更新策略是基于所述增量数据项的数据结构、所述增量数据项的大小,或所述增量数据项的类型中的至少一个。
14.根据权利要求9所述的方法,其特征在于所述更新策略包括存储在所述数据库中的所述第一数据项的全量更新、存储在所述数据库中的所述第一数据项的增量更新、或者存储在所述数据库中的所述第一数据项的数据回滚中的至少一个。
15.根据权利要求9所述的方法,其特征在于所述发送所述增量数据项以通过所述网络更新存储在所述数据库中的所述第一数据项,其进一步包括:
将所述增量数据项传输至代理服务器;以及
将所述增量数据项从所述代理服务器发送到至少一个服务器,以更新存储在所述数据库中的所述第一数据项。
16.根据权利要求9所述的方法,进一步包括:
监控所述网络中的数据流、所述网络中的异常数据或与所述增量数据项相关联的数据统计中的至少一个。
17.一种体现计算机程序产品的非暂时性计算机可读介质,所述计算机程序产品包括被配置的指令,用于使计算设备:
获得第一数据项和第二数据项;
根据所述第一数据项和所述第二数据项确定增量数据项;
确定关于所述增量数据项的更新策略;以及
基于所述上线规则,传输所述增量数据项到所述至少一个在线数据库,所述传输由所述至少一个监控模块监控。
18.根据权利要求17所述的介质,其特征在于,基于所述第一数据项和所述第二数据项确定增量数据项,
所述指令进一步被配置为驱使计算设备:
过滤所述第一数据项和所述第二数据项;
分类所述第一数据项和所述第二数据项;或者
标准化所述第一数据项和所述第二数据项。
19.根据权利要求17所述的介质,其特征在于,通过所述网络发送所述增量数据项以更新存储在所述数据库中的所述第一数据项,
所述指令进一步被配置为驱使计算设备:
将所述增量数据项传输给代理服务器;以及
将所述增量数据项从所述代理服务器发送到至少一个服务器,以更新存储在所述数据库中的所述第一数据项。
20.根据权利要求17所述的介质,其特征在于,所述指令还被配置用于使计算设备:
监控所述网络中的数据流、所述网络中的异常数据或与所述增量数据项相关联的数据统计中的至少一个。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2017/088196 WO2018227406A1 (en) | 2017-06-14 | 2017-06-14 | Systems and methods for uploading data |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110741616A true CN110741616A (zh) | 2020-01-31 |
Family
ID=64658792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780091962.4A Pending CN110741616A (zh) | 2017-06-14 | 2017-06-14 | 用于数据上线的系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20200162541A1 (zh) |
CN (1) | CN110741616A (zh) |
WO (1) | WO2018227406A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111444208A (zh) * | 2020-03-25 | 2020-07-24 | 平安医疗健康管理股份有限公司 | 一种数据更新方法及相关设备 |
CN114374555A (zh) * | 2021-12-31 | 2022-04-19 | 广州趣丸网络科技有限公司 | 基于匿名消息的实时互动方法及装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008269B (zh) * | 2019-03-26 | 2023-08-01 | 创新先进技术有限公司 | 一种数据回流方法、装置、设备及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102202072A (zh) * | 2010-03-23 | 2011-09-28 | 盛霆信息技术(上海)有限公司 | 互联网站数据的单向同步方法 |
CN103051732A (zh) * | 2013-01-18 | 2013-04-17 | 上海云和信息系统有限公司 | 实现数据自动推送分发功能的云计算系统及自动推送方法 |
CN104102737A (zh) * | 2014-07-28 | 2014-10-15 | 中国农业银行股份有限公司 | 一种历史数据存储方法和系统 |
CN105335170A (zh) * | 2014-06-05 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 分布式系统及数据增量更新方法 |
CN105868384A (zh) * | 2016-04-12 | 2016-08-17 | 浪潮通信信息系统有限公司 | 一种更新共享数据的方法、装置及系统 |
WO2017028705A1 (zh) * | 2015-08-18 | 2017-02-23 | 阿里巴巴集团控股有限公司 | 计算机系统任务备份方法、系统状态恢复方法及其装置 |
CN106648712A (zh) * | 2017-02-27 | 2017-05-10 | 百度在线网络技术(北京)有限公司 | 增量更新包的生成方法、装置和服务器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102917020B (zh) * | 2011-09-24 | 2016-02-17 | 国网电力科学研究院 | 一种基于数据包的移动终端与业务系统数据同步的方法 |
WO2014138705A1 (en) * | 2013-03-08 | 2014-09-12 | Air Computing, Inc. | Systems and methods for managing files in a cloud-based computing environment |
-
2017
- 2017-06-14 WO PCT/CN2017/088196 patent/WO2018227406A1/en active Application Filing
- 2017-06-14 CN CN201780091962.4A patent/CN110741616A/zh active Pending
-
2019
- 2019-12-12 US US16/711,482 patent/US20200162541A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102202072A (zh) * | 2010-03-23 | 2011-09-28 | 盛霆信息技术(上海)有限公司 | 互联网站数据的单向同步方法 |
CN103051732A (zh) * | 2013-01-18 | 2013-04-17 | 上海云和信息系统有限公司 | 实现数据自动推送分发功能的云计算系统及自动推送方法 |
CN105335170A (zh) * | 2014-06-05 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 分布式系统及数据增量更新方法 |
CN104102737A (zh) * | 2014-07-28 | 2014-10-15 | 中国农业银行股份有限公司 | 一种历史数据存储方法和系统 |
WO2017028705A1 (zh) * | 2015-08-18 | 2017-02-23 | 阿里巴巴集团控股有限公司 | 计算机系统任务备份方法、系统状态恢复方法及其装置 |
CN105868384A (zh) * | 2016-04-12 | 2016-08-17 | 浪潮通信信息系统有限公司 | 一种更新共享数据的方法、装置及系统 |
CN106648712A (zh) * | 2017-02-27 | 2017-05-10 | 百度在线网络技术(北京)有限公司 | 增量更新包的生成方法、装置和服务器 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111444208A (zh) * | 2020-03-25 | 2020-07-24 | 平安医疗健康管理股份有限公司 | 一种数据更新方法及相关设备 |
CN111444208B (zh) * | 2020-03-25 | 2022-08-30 | 深圳平安医疗健康科技服务有限公司 | 一种数据更新方法及相关设备 |
CN114374555A (zh) * | 2021-12-31 | 2022-04-19 | 广州趣丸网络科技有限公司 | 基于匿名消息的实时互动方法及装置 |
CN114374555B (zh) * | 2021-12-31 | 2024-06-07 | 广州趣丸网络科技有限公司 | 基于匿名消息的实时互动方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2018227406A1 (en) | 2018-12-20 |
US20200162541A1 (en) | 2020-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220300273A1 (en) | Over-the-air (ota) mobility services platform | |
JP2024041823A (ja) | 乗り物データを管理するためのシステムおよび方法 | |
CN106294486B (zh) | 金融行情数据的处理方法及系统 | |
KR102196894B1 (ko) | 모바일 디바이스와 모바일 클라우드 서비스 간의 동기화를 위한 인프라스트럭처 | |
CN104823169B (zh) | 用于网络中的可搜索数据的索引配置 | |
US8539597B2 (en) | Securing sensitive data for cloud computing | |
US9723011B2 (en) | Dynamic profile sharing using expiring tokens | |
JP5515064B2 (ja) | 物流管理システム、物流管理サーバ、物流管理方法、および物流管理のためのプログラム | |
US9208504B2 (en) | Using geographical location to determine element and area information to provide to a computing device | |
JP5923691B2 (ja) | 物流クラウドシステムおよびプログラム | |
US20200396309A1 (en) | Systems and methods for data processing | |
CN110741616A (zh) | 用于数据上线的系统和方法 | |
CN112765152A (zh) | 用于合并数据表的方法和装置 | |
CN107704357B (zh) | 日志生成方法和装置 | |
CN111083013A (zh) | 基于流量回放的测试方法、装置、电子设备及存储介质 | |
CN111797305A (zh) | 一种车况数据处理方法和装置 | |
CN110737655B (zh) | 用于上报数据的方法和装置 | |
CN105243100B (zh) | 地图渲染方法、提供渲染目标信息的方法及装置 | |
CN114061608A (zh) | 用于生成行驶路线的方法、系统和装置 | |
WO2013026953A2 (en) | Method and apparatus for providing search with contextual processing | |
US20200118016A1 (en) | Data attribution using frequent pattern analysis | |
US20150127484A1 (en) | Enhanced transaction center locator | |
CN113986965A (zh) | 一种基于监控运维系统的数据处理方法和监控运维系统 | |
CN113076308A (zh) | 一种时空大数据服务系统 | |
CN106570069A (zh) | 一种农药电子监管系统 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200131 |