CN110502579A - 用于批量和实时特征计算的系统和方法 - Google Patents
用于批量和实时特征计算的系统和方法 Download PDFInfo
- Publication number
- CN110502579A CN110502579A CN201910789592.2A CN201910789592A CN110502579A CN 110502579 A CN110502579 A CN 110502579A CN 201910789592 A CN201910789592 A CN 201910789592A CN 110502579 A CN110502579 A CN 110502579A
- Authority
- CN
- China
- Prior art keywords
- real
- data
- batch
- feature calculation
- time
- 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 44
- 238000004364 calculation method Methods 0.000 claims abstract description 204
- 238000013515 script Methods 0.000 claims abstract description 119
- 238000007726 management method Methods 0.000 claims description 104
- 230000001360 synchronised effect Effects 0.000 claims description 11
- 238000013500 data storage Methods 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 8
- 230000007246 mechanism Effects 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 5
- 238000009826 distribution Methods 0.000 claims description 3
- 238000010801 machine learning Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000000605 extraction Methods 0.000 description 4
- 238000000926 separation method Methods 0.000 description 4
- 230000008676 import Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 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
- 230000001419 dependent effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and 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/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
- G06F16/2386—Bulk updating operations
-
- 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/25—Integrating or interfacing systems involving database management systems
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开提供了一种用于批量和实时特征计算的系统和方法,所述系统包括:管理服务器、一个或更多个批量特征计算单元、一个或更多个分布式计算单元、一个或更多个实时特征计算单元、离线数据库、以及实时数据库。所述管理服务器接收包含特征计算逻辑的脚本,在批量特征计算场景下,启动批量特征计算,并且在实时特征计算场景下,部署所述脚本以产生实时计算计划,其中,包含所述特征计算逻辑的脚本针对批量特征计算逻辑和实时特征计算逻辑具有统一性,实时数据库从离线数据库获取并存储用于实时特征计算的数据。根据本公开,可通过所述脚本统一批量特征计算逻辑和实时特征计算逻辑。
Description
技术领域
本公开总体说来涉及数据处理领域,更具体地讲,涉及一种用于批量和实时特征计算的系统和方法。
背景技术
随着海量数据的出现,人们倾向于使用机器学习技术来从数据中挖掘出价值。机器学习是人工智能研究发展到一定阶段的必然产物,其致力于通过计算的手段,利用经验来改善系统自身的性能。在计算机系统中,“经验”通常以“数据”形式存在,通过机器学习算法,可从数据中产生“模型”,也就是说,将经验数据提供给机器学习算法,就能基于这些经验数据产生模型;在面对新的情况时,利用训练好的模型来得到相应的预测结果。
基于这样的机器学习技术,产生了机器学习平台或系统。在机器学习平台或系统中,不论是训练机器学习模型的阶段,还是利用机器学习模型进行预估的阶段,都需要进行特征计算,例如,通过对数据进行特征抽取来得到包括各种特征的机器学习样本。
在现有的机器学习平台或系统中,用于执行特征计算的任务可包括线下任务和线上任务。
线下任务可用于批量特征计算,例如,当计划任务被启动时,批量的执行大数据的特征计算,待全部特征计算完成后,获取最终的执行结果用于后续的研究。线下任务可针对时间不敏感的业务场景,例如,在银行业务场景中,线下任务可包括根据一批用户前六个月的消费行为数据,预测各个用户是否购买理财产品。
线上任务可用于实时特征计算,例如,可实时的对一定数量的数据进行特征计算,获取的特征计算结果可用于预测操作。线上任务可针对时间敏感的业务场景,例如,在线上购物业务场景中,根据用户在最近浏览的商品进行相关产品推荐。
然而,在现有的机器学习平台或系统中,批量特征计算逻辑和实时特征计算逻辑是不统一的,两者不相同甚至存在冲突。在这种情况下,需要对两种特征计算逻辑分别进行设置和维护。
另外,在现有的机器学习平台或系统中,用于批量特征处理的离线数据库和用于实时特征处理的实时数据库是分离的,这两种个数据库中的数据不关联,需要分别设置并分别维护这两种数据库。
发明内容
本公开的示例性实施例在于提供一种用于批量和实时特征计算的系统和方法,以在各种特征抽取场景下,基于关联的离线数据库和实时数据库以及统一了批量和实时特征计算逻辑的脚本,统一的执行特征抽取。
根据本公开的示例性实施例,提供了一种用于批量和实时特征计算的系统,其中,所述系统包括:管理服务器,接收包含特征计算逻辑的脚本,在批量特征计算场景下,从注册到管理服务器的批量特征计算单元中选择用于批量特征计算的批量特征计算单元以启动批量特征计算,并且在实时特征计算场景下,向注册到管理服务器的实时特征计算单元部署所述脚本以产生实时计算计划,并从注册到管理服务器的实时特征计算单元中选择在执行实时计算计划时使用的实时特征计算单元,其中,包含所述特征计算逻辑的脚本针对批量特征计算逻辑和实时特征计算逻辑具有统一性;一个或更多个批量特征计算单元,当被启动时注册到管理服务器,并且当被选择以启动批量特征计算时产生批量计算任务,并且将所述批量计算任务发送给一个或更多个分布式计算单元;所述一个或更多个分布式计算单元,执行所述批量计算任务,以基于所述脚本和离线数据库存储的数据进行批量特征计算;一个或更多个实时特征计算单元,当被启动时注册到管理服务器,并且当被选择以执行实时计算计划时,基于实时数据库存储的数据和所述脚本进行实时特征计算;离线数据库,存储用于批量特征计算的数据;实时数据库,从离线数据库获取并存储用于实时特征计算的数据。
可选的,离线数据库中的数据和实时数据库中的数据至少部分同步,其中,实时数据库与离线数据库定时或响应于用户触发而基于数据变化或者基于主从同步机制进行数据同步。
可选的,实时数据库是内存数据库,和/或,管理服务器还初始化实时数据库,以获取与实时特征计算对应的数据字段结构,和/或,管理服务器还接收用户导入的原始数据并且将原始数据存储到离线数据库中作为用于批量特征计算的数据,或者管理服务器还将预先存入离线数据库的至少一部分数据作为用于批量特征计算的数据。
可选的,管理服务器还验证所述脚本是否存在语法错误,和/或基于至少一部分数据来调试与所述脚本对应的至少一部分中间运行结果和/或最终运行结果。
可选的,管理服务器还在接收到用于实时特征计算的至少一条数据并且实时计算计划被执行时,将所述至少一条数据发送给被选择的实时特征计算单元,其中,所述至少一条数据符合与实时特征计算对应的数据字段结构,其中,实时特征计算单元在接收到所述至少一条数据时向实时数据库请求窗口数据,并且基于窗口数据以及所述脚本进行实时特征计算,其中,所述窗口数据包含实时数据库的数据的全部或部分数据字段。
可选的,所述一个或更多个分布式单元基于离线数据库的数据存储路径来获取离线数据库存储的数据,并且基于获取的数据、所述脚本来执行批量特征计算,并且将批量特征计算执行状态发送给批量特征计算单元,其中,管理服务器在接收到批量特征计算执行状态查询请求时,从批量特征计算单元获取批量特征计算执行状态。
可选的,批量特征计算的计算结果用于模型训练或批量预估,实时特征计算的计算结果用于基于训练的模型的预测,所述预测包括在线预测。
可选的,当所述脚本通过管理服务器被运行时,所述脚本被转化为批量特征计算单元、分布式计算单元和/或实时特征计算单元能够执行且当被执行时实现所述脚本所包含的特征计算逻辑的代码,或者当所述脚本被运行时,批量特征计算单元、分布式计算单元和/或实时特征计算单元解析出所述脚本中所包含的特征计算逻辑。
根据本公开的另一示例性实施例,提供了一种用于批量和实时特征计算的方法,其中,所述方法包括:由管理服务器接收包含特征计算逻辑的脚本;由离线数据库存储用于批量特征计算的数据;由实时数据库从离线数据库获取并存储用于实时特征计算的数据;在批量特征计算场景下,由管理服务器从注册到管理服务器的批量特征计算单元中选择用于批量特征计算的批量特征计算单元以启动批量特征计算,当批量特征计算单元被选择以启动批量特征计算时,由批量特征计算单元产生批量计算任务,将所述批量计算任务发送给一个或更多个分布式计算单元,并且由所述一个或更多个分布式计算单元执行所述批量计算任务,以基于所述脚本和离线数据库存储的数据进行批量特征计算;在实时特征计算场景下,由管理服务器向注册到管理服务器的实时特征计算单元部署所述脚本以产生实时计算计划,并且从注册到管理服务器的实时特征计算单元中选择在执行实时计算计划时使用的实时特征计算单元,当实时特征计算单元被选择以执行实时计算计划时,由被选择的实时特征计算单元基于实时数据库存储的数据和所述脚本进行实时特征计算;其中,包含所述特征计算逻辑的脚本针对批量特征计算逻辑和实时特征计算逻辑具有统一性。
可选的,所述方法还包括:由实时数据库与离线数据库定时或响应于用户触发而基于数据变化或者基于主从同步机制进行至少部分数据的数据同步。
可选的,所述方法还包括由管理服务器初始化实时数据库,以获取与实时特征计算对应的数据字段结构;和/或,所述方法还包括由管理服务器接收用户导入的原始数据并且将原始数据存储到离线数据库中作为用于批量特征计算的数据,或者由管理服务器将预先存入离线数据库的至少一部分数据作为用于批量特征计算的数据,和/或,实时数据库是内存数据库。
可选的,所述方法还包括:由管理服务器验证所述脚本是否存在语法错误,和/或,基于至少一部分数据来调试与所述脚本对应的至少一部分中间运行结果和/或最终运行结果。
可选的,所述方法还包括:由管理服务器在接收到用于实时特征计算的至少一条数据并且实时计算计划被执行时,将所述至少一条数据发送给被选择的实时特征计算单元,其中,所述至少一条数据符合与实时特征计算对应的数据字段结构;由被选择的实时特征计算单元在接收到所述至少一条数据时向实时数据库请求窗口数据,并且基于窗口数据以及所述脚本进行实时特征计算,其中,所述窗口数据包含实时数据库的数据的全部或部分数据字段。
可选的,进行批量特征计算的步骤包括:由所述一个或更多个分布式计算单元基于离线数据库的数据存储路径来获取离线数据库存储的数据,并且基于获取的数据、所述脚本来执行批量特征计算,并且将批量特征计算执行状态发送给批量特征计算单元,其中,所述方法还包括:在管理服务器接收到批量特征计算执行状态查询请求时,由管理服务器从批量特征计算单元获取批量特征计算执行状态。
可选的,批量特征计算的计算结果用于模型训练或批量预估,实时特征计算的计算结果用于基于训练的模型的预测,所述预测包括在线预测。
可选的,所述方法还包括:当所述脚本通过管理服务器被运行时,将所述脚本转化为批量特征计算单元、分布式计算单元和/或实时特征计算单元能够执行且当被执行时实现所述脚本所包含的特征计算逻辑的代码,或者当所述脚本被运行时,由批量特征计算单元、分布式计算单元和/或实时特征计算单元解析出所述脚本中所包含的特征计算逻辑。
根据本公开的另一示例性实施例,提供了一种包括至少一个计算装置和至少一个存储指令的存储装置的系统,其中,所述指令在被所述至少一个计算装置运行时,促使所述至少一个计算装置执行如上所述的方法。
根据本公开的另一示例性实施例,提供了一种存储指令的计算机可读存储介质,其中,当所述指令被至少一个计算装置运行时,促使所述至少一个计算装置执行如上所述的方法。
本公开的系统和方法可基于统一的脚本和关联的两种数据库同时支持批量特征计算和实时特征计算,可解决机器学习场景下批量特征计算逻辑和实时特征计算逻辑不统一以及批量特征处理的离线数据库和实时特征处理的实时数据库分离的问题。
另外,离线数据库中的数据和实时数据库中的数据至少部分同步(例如,定时同步全部数据或有变化的数据,或者,根据底层日志文件来更新每个数据库,所述底层日志文件可记录各个数据库中的数据的变化,两种数据库可分别具有日志文件也可共用日志文件),从而保证在线场景和离线场景使用的数据一致。初始化实时数据库可在实时数据库中产生与实时特征计算对应的数据字段结构并且获取所述数据字段结构以供用户作为输入数据(例如,样本数据)的参考,即使在用户不理解脚本时也可根据获取的所述数据字段结构输入符合与实时特征计算对应的数据字段结构的所述至少一条数据,以供实时特征计算;可将用户本地的原始数据导入离线数据库便于快速输入数据,还可将离线数据库中已有数据作为用于批量特征计算的数据以避免数据重复导入。可判断脚本是否存在语法错误和/或调试中间运行结果和/或最终运行结果,以及时获知输入的脚本的正确性以及运行结果避免运行错误脚本等处理影响特征计算效率和准确性。从实时数据库获取的窗口数据可包括符合与实时特征计算对应的数据字段结构的所述至少一条数据,脚本可用于构造窗口数据的字段(例如,进行字段筛选)、窗口大小等信息,窗口数据根据窗口滑动进行实时更新,从而即可保证实时性又可保证计算效率。在离线(批量)特征计算的过程中,可随时获取批量特征计算执行状态。批量特征计算计算时间长,从而批量特征计算结果可适用于用于模型的离线训练或批量预估;实时特征计算的计算时间短,从而实时特征计算结果可适用于基于训练的模型的预测,尤其是在线预测。脚本可被各个单元以及服务器中的至少一个运行,在被运行时,可通过脚本转化或解析而使得脚本可被执行,从而脚本具有良好的兼容性。
将在接下来的描述中部分阐述本公开总体构思另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本公开总体构思的实施而得知。
附图说明
通过下面结合示例性地示出实施例的附图进行的描述,本公开示例性实施例的上述和其他目的和特点将会变得更加清楚,其中:
图1示出根据本公开的示例性实施例的用于批量和实时特征计算的系统的结构示意图;
图2示出根据本公开的示例性实施例的时序图;
图3示出根据本公开的另一示例性实施例的时序图;
图4示出根据本公开的示例性实施例的用于批量和实时特征计算的方法的流程图。
具体实施方式
现将详细参照本公开的实施例,所述实施例的示例在附图中示出,其中,相同的标号始终指的是相同的部件。以下将通过参照附图来说明所述实施例,以便解释本公开。
为了解决机器学习场景下批量特征计算和实时特征计算分离(例如,批量特征计算逻辑和实时特征计算逻辑不统一)以及批量特征处理的离线数据库和实时特征处理的实时数据库分离的问题,本公开的示例性实施例可采用统一的脚本和关联的两种数据库以同时支持批量特征计算和实时特征计算。这里的脚本可包括通过特征查询语言等编写的脚本,还可包括通过各种计算机语言编写的代码或脚本。
图1示出根据本公开的示例性实施例的用于批量和实时特征计算的系统的结构示意图。根据本公开的示例性实施例的用于批量和实时特征计算的系统可包括:管理服务器、一个或更多个批量特征计算单元、一个或更多个分布式计算单元、一个或更多个实时特征计算单元、离线数据库、以及实时数据库。
管理服务器可接收包含特征计算逻辑的脚本,在批量特征计算场景下,从注册到管理服务器的批量特征计算单元中选择用于批量特征计算的批量特征计算单元以启动批量特征计算,并且在实时特征计算场景下,向注册到管理服务器的实时特征计算单元部署所述脚本以产生实时计算计划,并从注册到管理服务器的实时特征计算单元中选择在执行实时计算计划时使用的实时特征计算单元,其中,包含所述特征计算逻辑的脚本针对批量特征计算逻辑和实时特征计算逻辑具有统一性。所述一个或更多个批量特征计算单元,当被启动时注册到管理服务器,并且当被选择以启动批量特征计算时产生批量计算任务,并且将所述批量计算任务发送给所述一个或更多个分布式计算单元。所述一个或更多个分布式计算单元,执行所述批量计算任务,以基于所述脚本和离线数据库存储的数据进行批量特征计算。所述一个或更多个实时特征计算单元,当被启动时注册到管理服务器,并且当被选择以执行实时计算计划时,基于实时数据库存储的数据和所述脚本进行实时特征计算。所述离线数据库可存储用于批量特征计算的数据(例如,全部历史或原始数据)。所述实时数据库可从离线数据库获取并存储用于实时特征计算的数据。
作为示例,管理服务器可被实现为数据库管理系统(DBMS)服务器等。通过管理服务器,用户可针对输入的脚本来查看各种需要的结果,例如,批量特征计算结果、实时特征计算结果、数据字段结构、语法错误验证结果、通过调试获得的中间运行结果和/或最终运行结果、批量特征计算执行状态等。在批量特征计算场景下和在实时特征计算场景下,用户可输入统一的脚本,而无需根据不同计算场景使用不同脚本。管理服务器还可被实现为管理系统的各个单元和/或数据库,以实现数据导入操作和任务调度等。
作为示例,批量特征计算单元可被实现为批量计算引擎(例如,Spark),分布式计算单元可被实现为分布式计算集群,实时特征计算单元可被实现为实时计算引擎,实时数据库可被实现为内存数据库。
作为示例,批量特征计算单元的选择、分布式计算单元的选择和/或实时特征计算单元的选择,可依据负载均衡目标来实现。批量计算任务可定时被执行或者根据相应的触发指令而被执行。实时计算计划可根据特定触发条件(例如,在线接收到待预测数据(例如,样本数据)时的触发条件)而被执行。
作为示例,离线数据库中的数据和实时数据库中的数据至少部分同步,其中,实时数据库与离线数据库按照特定的机制执行数据同步,例如,实时数据库与离线数据库定时或响应于用户触发而基于数据变化或者基于主从同步机制进行数据同步。数据同步可基于日志文件来进行,所述日志文件针对实时数据库和/或离线数据库,可记载相应数据库的数据变化情况。通过数据同步,可保证在批量特征计算场景下和在实时特征计算场景下数据的一致性,使得在使用同样的脚本和数据进行批量特征计算和实时特征计算可获得同样的计算结果。
作为示例,实时数据库是内存数据库,和/或,管理服务器还初始化实时数据库,以获取与实时特征计算对应的数据字段结构(例如,schema),和/或,管理服务器还接收用户导入的原始数据并且将原始数据存储到离线数据库中作为用于批量特征计算的数据,或者管理服务器还将预先存入离线数据库的至少一部分数据作为用于批量特征计算的数据。
为了进行数据导入,可在离线数据库的指定命名空间下创建原始表,该原始表具有特定数据字段结构。在导入原始数据时,管理服务器可接收用户从本地上传到管理服务器的本地文件,并基于所述本地文件来创建原始表,数据导入的输入参数包括:表名称和本地文件(本地文件本身被上传到管理服务器作为输入参数),本地文件可通过管理服务器被转送给离线数据库并且被存储到离线数据库中。当使用预先存入离线数据库的数据作为用于批量特征计算的数据时,可基于离线数据库中的数据存储路径来实现,在这种情况下,输入参数可包括:表名称以及预先存入离线数据库的数据的存储路径。
作为示例,管理服务器还可验证所述脚本是否存在语法错误,和/或基于至少一部分数据来调试与所述脚本对应的至少一部分中间运行结果和/或最终运行结果。是否存在语法错误的验证结果、中间运行结果和/或最终运行结果可反馈给用户,以便用户可及时更改脚本。
图2示出根据本公开的示例性实施例的时序图。如图2中所示,实时计算引擎(简称为实时引擎,多个实时引擎可形成集群)中的每个实时计算引擎在被启动时可向被实现为DBMS服务器的管理服务器进行注册,管理服务器向实时计算引擎反馈注册结果。管理服务器还可初始化实时数据库,实时数据库产生与实时特征计算对应的数据字段结构,并向管理服务器反馈与实时特征计算对应的数据字段结构。管理服务器还可将脚本部署到注册的实时计算引擎,以产生实时计算计划,实时计算引擎可将部署结果反馈给管理服务器。初始化实时数据库的过程可属于部署过程的一部分。在部署过程中,可产生部署名称,可根据部署名称查看所述数据字段结构等部署信息和/或执行实时计算计划。
作为示例,管理服务器还在接收到用于实时特征计算的至少一条数据并且实时计算计划被执行时,将所述至少一条数据发送给被选择的实时特征计算单元,其中,所述至少一条数据符合与实时特征计算对应的数据字段结构,其中,实时特征计算单元在接收到所述至少一条数据时向实时数据库请求窗口数据,并且基于实时数据库反馈的窗口数据以及所述脚本进行实时特征计算,其中,所述窗口数据包含实时数据库的数据的全部或部分数据字段,所述窗口数据包括所述至少一条数据以及与所述至少一条数据在时间等特征上存在关联的特定数量的数据。作为示例,窗口数据根据窗口滑动而实时更新;窗口用于实时场景下的多行数据的处理,例如,在交易信息中,以用户卡号为维度,可构造一个时间长度为5天的窗口,可指定窗口内的最大数据长度。
以下结合表1至表4来描述实时特征计算过程,表1示出根据本公开的示例性实施例的个人交易数据。在表1中,每一列表示一个数据字段;name表示姓名,类型为字符串型(string);time表示交易时间,类型为时间戳(timestamp);price表示交易金额,类型为双精度浮点型(double)。表1示出的三行数据可表示三条交易记录。表1中的数据对应数据表t1。
表1
name:string | time:timestamp | price:double |
Wtz | 1556152031000 | 1.0 |
Wtz | 1556065631000 | 2.0 |
Wtz | 1555979231000 | 3.0 |
可向管理服务器输入如下的特征计算脚本:
w=window(t1,"name","time",100,10d)
f=continuous(sum(w.price))
第一行脚本用于构造窗口,针对的数据表是表t1,窗口按照name字段聚合且按照time字段排序,窗口内最大数据量为100,窗口内最大时间跨度为10天。第二行脚本用于计算离散特征,计算为窗口内price字段之和。
表2示出根据本公开的示例实施例的数据字段结构。可在实时数据库中产生表2所示数据字段结构(schema),并由管理服务器获取实时数据库中的schema。
表2
字段名称 | 字段类型 |
name | string |
time | timestamp |
price | double |
针对以上脚本的部署名称可以是d1。可将脚本部署至全部已注册的实时计算引擎。如果反馈的部署结果不包括异常信息,则部署成功。随后可开始计算实时特征计算。
在实时特征计算时,可输入至少一行符合schema的数据作为样本数据,根据样本数据获取窗口数据。当输入样本数据和部署名称d1时可开始实时特征计算。表3示出根据本公开的示例性实施例的样本数据。表3中示出的样本数据包括一行数据,该数据符合schema。
表3
name:string | time:timestamp | price:double |
Wtz | 1556238431000 | 4.0 |
可获取与所述样本数据同一窗口的窗口数据,并基于获取的窗口数据进行实时特征计算,表4示出了根据本公开的示例性实施例的窗口数据,该窗口数据包括所述样本数据。
表4
name:string | time:timestamp | price:double |
Wtz | 1556152031000 | 1.0 |
Wtz | 1556065631000 | 2.0 |
Wtz | 1555979231000 | 3.0 |
Wtz | 1556238431000 | 4.0 |
用于实时特征计算的计算逻辑来自于所述脚本。实际使用的脚本可仅包括第一行脚本或者包含第一行脚本和第二行脚本。当然,当进行大量特征的抽取时,输入的脚本的行数可能达到成百、上千甚至上万行。在这种情况下,由于不需要分别针对批量特征计算场景和实时特征计算场景的脚本,因此减少脚本输入的工作量,从而可提高特征计算效率。
图3示出根据本公开的另一示例性实施例的时序图。如图3中所示,当被启动时,被实施为批量特征计算引擎(简称为批量引擎)的批量特征计算单元可向被实施为DBMS服务器的管理服务器注册,管理服务器向批量引擎反馈注册结果。可根据负载均衡选择多个已经注册的批量引擎中的至少一个批量引擎并且运行脚本。批量引擎可从离线数据库获取原始数据存储路径。批量引擎可向实施为分布式计算集群(Hadoop)的分布式计算单元提交计算任务,分布式计算集群向批量引擎反馈提交结果。批量计算任务可由分布式计算集群来执行,以基于脚本和离线数据库存储的数据进行批量特征计算,其中,离线数据库存储的数据可基于原始数据存储路径而获取。管理服务器可通过批量特征计算执行状态查询请求向批量引擎查询批量特征计算执行状态,批量特征计算执行状态可由分布式计算集群提供给批量引擎,并由批量引擎反馈给管理服务器。
作为示例,所述一个或更多个分布式计算单元基于离线数据库的数据存储路径来获取离线数据库存储的数据,并且基于获取的数据、所述脚本来执行批量特征计算,并且将批量特征计算执行状态发送给批量特征计算单元,其中,管理服务器在接收到批量特征计算执行状态查询请求时,从批量特征计算单元获取批量特征计算执行状态。
作为示例,批量特征计算的计算结果用于模型训练或批量预估,实时特征计算的计算结果用于基于训练的模型进行在线预测。在这种情况下,本公开的示例性实施例既适用于模型训练也适用于基于训练的模型的在线预测。
作为示例,当所述脚本通过管理服务器被运行时,所述脚本被转化为批量特征计算单元、分布式计算单元和/或实时特征计算单元能够执行且当被执行时实现所述脚本所包含的特征计算逻辑的代码,或者当所述脚本被运行时,批量特征计算单元、分布式计算单元和/或实时特征计算单元解析出所述脚本中所包含的特征计算逻辑。在这种情况下,脚本具有良好的兼容性。
根据本公开的示例性实施例,可通过一套系统支持批量和实时特征计算,通过一套脚本统一了批量特征计算逻辑和实时特征计算逻辑,并且离线数据库和实时数据库的数据存在关联(实时数据库中的数据可从离线数据库获取)甚至同步,从而解决了机器学习场景下批量特征计算逻辑和实时特征计算逻辑不统一以及批量特征处理的离线数据库和实时特征处理的实时数据库分离的问题,避免线上数据和线下数据不一致,可利用有限的机器资源实现不同场景下的机器学习,提高资源利用率,还可通过统一的脚本提高任务执行效率。
图4示出根据本公开的示例性实施例的用于批量和实时特征计算的方法的流程图。如图4中所示,根据本公开的示例性实施例的用于批量和实时特征计算的方法可包括步骤110至步骤150。在步骤110,由管理服务器接收包含特征计算逻辑的脚本;在步骤120,由离线数据库存储用于批量特征计算的数据;在步骤130,由实时数据库从离线数据库获取并存储用于实时特征计算的数据;在步骤140,在批量特征计算场景下,由管理服务器从注册到管理服务器的批量特征计算单元中选择用于批量特征计算的批量特征计算单元以启动批量特征计算,当批量特征计算单元被选择以启动批量特征计算时,由批量特征计算单元产生批量计算任务,将所述批量计算任务发送给一个或更多个分布式计算单元,并且由所述一个或更多个分布式计算单元执行所述批量计算任务,以基于所述脚本和离线数据库存储的数据进行批量特征计算;在步骤150,在实时特征计算场景下,由管理服务器向注册到管理服务器的实时特征计算单元部署所述脚本以产生实时计算计划,并且从注册到管理服务器的实时特征计算单元中选择在执行实时计算计划时使用的实时特征计算单元,当实时特征计算单元被选择以执行实时计算计划时,由被选择的实时特征计算单元基于实时数据库存储的数据和所述脚本进行实时特征计算;其中,包含所述特征计算逻辑的脚本针对批量特征计算逻辑和实时特征计算逻辑具有统一性。
作为示例,所述方法还包括:由实时数据库与离线数据库定时或响应于用户触发而基于数据变化或者基于主从同步机制进行至少部分数据的数据同步。
作为示例,所述方法还包括由管理服务器初始化实时数据库,以获取与实时特征计算对应的数据字段结构;和/或,所述方法还包括由管理服务器接收用户导入的原始数据并且将原始数据存储到离线数据库中作为用于批量特征计算的数据,或者由管理服务器将预先存入离线数据库的至少一部分数据作为用于批量特征计算的数据,和/或,实时数据库是内存数据库。
作为示例,所述方法还包括:由管理服务器验证所述脚本是否存在语法错误,和/或,基于至少一部分数据来调试与所述脚本对应的至少一部分中间运行结果和/或最终运行结果。
作为示例,所述方法还包括:由管理服务器在接收到用于实时特征计算的至少一条数据并且实时计算计划被执行时,将所述至少一条数据发送给被选择的实时特征计算单元,其中,所述至少一条数据符合与实时特征计算对应的数据字段结构;由被选择的实时特征计算单元在接收到所述至少一条数据时向实时数据库请求窗口数据,并且基于窗口数据以及所述脚本进行实时特征计算,其中,所述窗口数据包含实时数据库的数据的全部或部分数据字段。
作为示例,进行批量特征计算的步骤包括:由所述一个或更多个分布式计算单元基于离线数据库的数据存储路径来获取离线数据库存储的数据,并且基于获取的数据、所述脚本来执行批量特征计算,并且将批量特征计算执行状态发送给批量特征计算单元,其中,所述方法还包括:在管理服务器接收到批量特征计算执行状态查询请求时,由管理服务器从批量特征计算单元获取批量特征计算执行状态。
作为示例,批量特征计算的计算结果用于模型训练或批量预估,实时特征计算的计算结果用于基于训练的模型的预测,所述预测包括在线预测。
作为示例,所述方法还包括:当所述脚本通过管理服务器被运行时,将所述脚本转化为批量特征计算单元、分布式计算单元和/或实时特征计算单元能够执行且当被执行时实现所述脚本所包含的特征计算逻辑的代码,或者当所述脚本被运行时,由批量特征计算单元、分布式计算单元和/或实时特征计算单元解析出所述脚本中所包含的特征计算逻辑。
应该理解,根据本公开示例性实施例的用于批量和实时特征计算的方法的具体实现方式可参照结合图1至图3描述的相关具体实现方式来实现,在此不再赘述。
根据本公开示例性实施例的用于批量和实时特征计算的系统所包括的单元或服务器可被分别配置为执行特定功能的软件、硬件、固件或上述项的任意组合。例如,这些单元或服务器可对应于专用的集成电路,也可对应于纯粹的软件代码,还可对应于软件与硬件相结合的模块。此外,这些单元或服务器所实现的一个或多个功能也可由物理实体设备(例如,处理器、客户端或服务器等)中的组件来统一执行。
应理解,根据本公开示例性实施例的用于批量和实时特征计算的方法可通过记录在计算可读介质上的程序来实现,例如,根据本公开的示例性实施例,可提供一种用于批量和实时特征计算的计算机可读介质,其中,在所述计算机可读介质上记录有用于执行以下方法步骤的计算机程序:由管理服务器接收包含特征计算逻辑的脚本;由离线数据库存储用于批量特征计算的数据;由实时数据库从离线数据库获取并存储用于实时特征计算的数据;在批量特征计算场景下,由管理服务器从注册到管理服务器的批量特征计算单元中选择用于批量特征计算的批量特征计算单元以启动批量特征计算,当批量特征计算单元被选择以启动批量特征计算时,由批量特征计算单元产生批量计算任务,将所述批量计算任务发送给一个或更多个分布式计算单元,并且由所述一个或更多个分布式计算单元执行所述批量计算任务,以基于所述脚本和离线数据库存储的数据进行批量特征计算;在实时特征计算场景下,由管理服务器向注册到管理服务器的实时特征计算单元部署所述脚本以产生实时计算计划,并且从注册到管理服务器的实时特征计算单元中选择在执行实时计算计划时使用的实时特征计算单元,当实时特征计算单元被选择以执行实时计算计划时,由被选择的实时特征计算单元基于实时数据库存储的数据和所述脚本进行实时特征计算;其中,包含所述特征计算逻辑的脚本针对批量特征计算逻辑和实时特征计算逻辑具有统一性。
上述计算机可读介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,应注意,所述计算机程序还可用于执行除了上述步骤以外的附加步骤或者在执行上述步骤时执行更为具体的处理,这些附加步骤和进一步处理的内容已经参照图1至图3进行了描述,这里为了避免重复将不再进行赘述。
应注意,根据本公开示例性实施例的用于批量和实时特征计算的系统可完全依赖计算机程序的运行来实现相应的功能,即,各个单元或服务器与计算机程序的功能架构相应,使得整个系统通过专门的软件包(例如,lib库)而被调用,以实现相应的功能。
另一方面,根据本公开示例性实施例的用于批量和实时特征计算的系统所包括的各个单元或服务器也可以通过硬件、软件、固件、中间件、微代码或其任意组合来实现。当以软件、固件、中间件或微代码实现时,用于执行相应操作的程序代码或者代码段可以存储在诸如存储介质的计算机可读介质中,使得处理器可通过读取并运行相应的程序代码或者代码段来执行相应的操作。
例如,本公开的示例性实施例还可以实现为计算装置,该计算装置包括存储部件和处理器,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行用于批量和实时特征计算的方法。
具体说来,所述计算装置可以部署在服务器或客户端中,也可以部署在分布式网络环境中的节点装置上。此外,所述计算装置可以是PC计算机、平板装置、个人数字助理、智能手机、web应用或其他能够执行上述指令集合的装置。
这里,所述计算装置并非必须是单个的计算装置,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。计算装置还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子装置。
在所述计算装置中,处理器可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
根据本公开示例性实施例的用于批量和实时特征计算的方法中所描述的某些操作可通过软件方式来实现,某些操作可通过硬件方式来实现,此外,还可通过软硬件结合的方式来实现这些操作。
处理器可运行存储在存储部件之一中的指令或代码,其中,所述存储部件还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,所述网络接口装置可采用任何已知的传输协议。
存储部件可与处理器集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储部件可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储部件和处理器可在操作上进行耦合,或者可例如通过I/O端口、网络连接等互相通信,使得处理器能够读取存储在存储部件中的文件。
此外,所述计算装置还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。计算装置的所有组件可经由总线和/或网络而彼此连接。
根据本公开示例性实施例的用于批量和实时特征计算的方法所涉及的操作可被描述为各种互联或耦合的功能块或功能示图。然而,这些功能块或功能示图可被均等地集成为单个的逻辑装置或按照非确切的边界进行操作。
例如,如上所述,根据本公开示例性实施例的用于批量和实时特征计算的计算装置可包括存储部件和处理器,其中,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行下述步骤:由管理服务器接收包含特征计算逻辑的脚本;由离线数据库存储用于批量特征计算的数据;由实时数据库从离线数据库获取并存储用于实时特征计算的数据;在批量特征计算场景下,由管理服务器从注册到管理服务器的批量特征计算单元中选择用于批量特征计算的批量特征计算单元以启动批量特征计算,当批量特征计算单元被选择以启动批量特征计算时,由批量特征计算单元产生批量计算任务,将所述批量计算任务发送给一个或更多个分布式计算单元,并且由所述一个或更多个分布式计算单元执行所述批量计算任务,以基于所述脚本和离线数据库存储的数据进行批量特征计算;在实时特征计算场景下,由管理服务器向注册到管理服务器的实时特征计算单元部署所述脚本以产生实时计算计划,并且从注册到管理服务器的实时特征计算单元中选择在执行实时计算计划时使用的实时特征计算单元,当实时特征计算单元被选择以执行实时计算计划时,由被选择的实时特征计算单元基于实时数据库存储的数据和所述脚本进行实时特征计算;其中,包含所述特征计算逻辑的脚本针对批量特征计算逻辑和实时特征计算逻辑具有统一性。
以上描述了本公开的各示例性实施例,应理解,上述描述仅是示例性的,并非穷尽性的,本公开不限于所披露的各示例性实施例。在不偏离本公开的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。因此,本公开的保护范围应该以权利要求的范围为准。
Claims (10)
1.一种用于批量和实时特征计算的系统,其中,所述系统包括:
管理服务器,接收包含特征计算逻辑的脚本,在批量特征计算场景下,从注册到管理服务器的批量特征计算单元中选择用于批量特征计算的批量特征计算单元以启动批量特征计算,并且在实时特征计算场景下,向注册到管理服务器的实时特征计算单元部署所述脚本以产生实时计算计划,并从注册到管理服务器的实时特征计算单元中选择在执行实时计算计划时使用的实时特征计算单元,其中,包含所述特征计算逻辑的脚本针对批量特征计算逻辑和实时特征计算逻辑具有统一性;
一个或更多个批量特征计算单元,当被启动时注册到管理服务器,并且当被选择以启动批量特征计算时产生批量计算任务,并且将所述批量计算任务发送给一个或更多个分布式计算单元;
所述一个或更多个分布式计算单元,执行所述批量计算任务,以基于所述脚本和离线数据库存储的数据进行批量特征计算;
一个或更多个实时特征计算单元,当被启动时注册到管理服务器,并且当被选择以执行实时计算计划时,基于实时数据库存储的数据和所述脚本进行实时特征计算;
离线数据库,存储用于批量特征计算的数据;
实时数据库,从离线数据库获取并存储用于实时特征计算的数据。
2.根据权利要求1所述的系统,其中,离线数据库中的数据和实时数据库中的数据至少部分同步,
其中,实时数据库与离线数据库定时或响应于用户触发而基于数据变化或者基于主从同步机制进行数据同步。
3.根据权利要求2所述的系统,其中,实时数据库是内存数据库,和/或
管理服务器还初始化实时数据库,以获取与实时特征计算对应的数据字段结构,和/或
管理服务器还接收用户导入的原始数据并且将原始数据存储到离线数据库中作为用于批量特征计算的数据,或者管理服务器还将预先存入离线数据库的至少一部分数据作为用于批量特征计算的数据。
4.根据权利要求1所述的系统,其中,管理服务器还验证所述脚本是否存在语法错误,和/或基于至少一部分数据来调试与所述脚本对应的至少一部分中间运行结果和/或最终运行结果。
5.根据权利要求3所述的系统,其中,管理服务器还在接收到用于实时特征计算的至少一条数据并且实时计算计划被执行时,将所述至少一条数据发送给被选择的实时特征计算单元,其中,所述至少一条数据符合与实时特征计算对应的数据字段结构,
其中,实时特征计算单元在接收到所述至少一条数据时向实时数据库请求窗口数据,并且基于窗口数据以及所述脚本进行实时特征计算,
其中,所述窗口数据包含实时数据库的数据的全部或部分数据字段。
6.根据权利要求1所述的系统,其中,所述一个或更多个分布式计算单元基于离线数据库的数据存储路径来获取离线数据库存储的数据,并且基于获取的数据、所述脚本来执行批量特征计算,并且将批量特征计算执行状态发送给批量特征计算单元,
其中,管理服务器在接收到批量特征计算执行状态查询请求时,从批量特征计算单元获取批量特征计算执行状态。
7.根据权利要求1所述的系统,其中,批量特征计算的计算结果用于模型训练或批量预估,实时特征计算的计算结果用于基于训练的模型的预测,所述预测包括在线预测。
8.一种用于批量和实时特征计算的方法,其中,所述方法包括:
由管理服务器接收包含特征计算逻辑的脚本;
由离线数据库存储用于批量特征计算的数据;
由实时数据库从离线数据库获取并存储用于实时特征计算的数据;
在批量特征计算场景下,由管理服务器从注册到管理服务器的批量特征计算单元中选择用于批量特征计算的批量特征计算单元以启动批量特征计算,当批量特征计算单元被选择以启动批量特征计算时,由批量特征计算单元产生批量计算任务,将所述批量计算任务发送给一个或更多个分布式计算单元,并且由所述一个或更多个分布式计算单元执行所述批量计算任务,以基于所述脚本和离线数据库存储的数据进行批量特征计算;
在实时特征计算场景下,由管理服务器向注册到管理服务器的实时特征计算单元部署所述脚本以产生实时计算计划,并且从注册到管理服务器的实时特征计算单元中选择在执行实时计算计划时使用的实时特征计算单元,当实时特征计算单元被选择以执行实时计算计划时,由被选择的实时特征计算单元基于实时数据库存储的数据和所述脚本进行实时特征计算;
其中,包含所述特征计算逻辑的脚本针对批量特征计算逻辑和实时特征计算逻辑具有统一性。
9.一种包括至少一个计算装置和至少一个存储指令的存储装置的系统,其中,所述指令在被所述至少一个计算装置运行时,促使所述至少一个计算装置执行如权利要求8所述的方法。
10.一种存储指令的计算机可读存储介质,其中,当所述指令被至少一个计算装置运行时,促使所述至少一个计算装置执行如权利要求8所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910789592.2A CN110502579A (zh) | 2019-08-26 | 2019-08-26 | 用于批量和实时特征计算的系统和方法 |
US17/639,125 US11971882B2 (en) | 2019-08-26 | 2020-08-26 | System and method for batch and real-time feature computation |
PCT/CN2020/111412 WO2021037066A1 (zh) | 2019-08-26 | 2020-08-26 | 用于批量和实时特征计算的系统和方法 |
EP20857623.1A EP4024228A4 (en) | 2019-08-26 | 2020-08-26 | SYSTEM AND METHOD FOR CALCULATING BATCH AND REAL-TIME CHARACTERISTICS |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910789592.2A CN110502579A (zh) | 2019-08-26 | 2019-08-26 | 用于批量和实时特征计算的系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110502579A true CN110502579A (zh) | 2019-11-26 |
Family
ID=68589459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910789592.2A Pending CN110502579A (zh) | 2019-08-26 | 2019-08-26 | 用于批量和实时特征计算的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11971882B2 (zh) |
EP (1) | EP4024228A4 (zh) |
CN (1) | CN110502579A (zh) |
WO (1) | WO2021037066A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651524A (zh) * | 2020-06-05 | 2020-09-11 | 第四范式(北京)技术有限公司 | 利用机器学习模型进行线上预测的辅助实现方法及装置 |
WO2021037066A1 (zh) * | 2019-08-26 | 2021-03-04 | 第四范式(北京)技术有限公司 | 用于批量和实时特征计算的系统和方法 |
CN112597121A (zh) * | 2020-12-25 | 2021-04-02 | 北京知因智慧科技有限公司 | 逻辑脚本的处理方法、装置、电子设备及存储介质 |
CN112597213A (zh) * | 2020-12-24 | 2021-04-02 | 第四范式(北京)技术有限公司 | 特征计算的批请求处理方法、装置、电子设备及存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12026104B2 (en) * | 2019-03-26 | 2024-07-02 | Rambus Inc. | Multiple precision memory system |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106469202A (zh) * | 2016-08-31 | 2017-03-01 | 杭州探索文化传媒有限公司 | 一种影视大数据平台的数据分析方法 |
CN108008942A (zh) * | 2017-11-16 | 2018-05-08 | 第四范式(北京)技术有限公司 | 对数据记录进行处理的方法及系统 |
CN108228861A (zh) * | 2018-01-12 | 2018-06-29 | 第四范式(北京)技术有限公司 | 用于执行机器学习的特征工程的方法及系统 |
CN108519914A (zh) * | 2018-04-09 | 2018-09-11 | 腾讯科技(深圳)有限公司 | 大数据计算方法、系统和计算机设备 |
CN109144648A (zh) * | 2018-08-21 | 2019-01-04 | 第四范式(北京)技术有限公司 | 统一地执行特征抽取的方法及系统 |
CN109656914A (zh) * | 2018-11-07 | 2019-04-19 | 上海前隆信息科技有限公司 | 线上线下混合的风控建模训练和生产发布方法及系统 |
CN109767255A (zh) * | 2018-12-06 | 2019-05-17 | 东莞团贷网互联网科技服务有限公司 | 一种通过大数据建模实现智能运营及精准营销的方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8156119B2 (en) | 2009-01-19 | 2012-04-10 | Microsoft Corporation | Smart attribute classification (SAC) for online reviews |
CN114240372A (zh) * | 2013-03-15 | 2022-03-25 | 美国结构数据有限公司 | 用于将数据记录分组的设备、系统以及方法 |
US20140297744A1 (en) * | 2013-04-02 | 2014-10-02 | Microsoft Corporation | Real-time supplement of segmented data for user targeting |
US20150278706A1 (en) * | 2014-03-26 | 2015-10-01 | Telefonaktiebolaget L M Ericsson (Publ) | Method, Predictive Analytics System, and Computer Program Product for Performing Online and Offline Learning |
US20170076323A1 (en) * | 2015-09-11 | 2017-03-16 | Adobe Systems Incorporated | Matching devices with entities using real-time data and batch-processed data |
US10387798B2 (en) * | 2015-12-16 | 2019-08-20 | Accenture Global Solutions Limited | Machine for development of analytical models |
CN105488662B (zh) * | 2016-01-07 | 2021-09-03 | 北京华品博睿网络技术有限公司 | 一种基于双向推荐的在线招聘系统 |
US10733532B2 (en) | 2016-01-27 | 2020-08-04 | Bonsai AI, Inc. | Multiple user interfaces of an artificial intelligence system to accommodate different types of users solving different types of problems with artificial intelligence |
EP3440565A4 (en) * | 2016-03-14 | 2019-10-09 | Rubikloud Technologies Inc. | METHOD AND SYSTEM FOR PERSISTING DATA |
US10078337B1 (en) * | 2017-07-14 | 2018-09-18 | Uber Technologies, Inc. | Generation of trip estimates using real-time data and historical data |
CN109597842A (zh) | 2018-12-14 | 2019-04-09 | 深圳前海微众银行股份有限公司 | 数据实时计算方法、装置、设备及计算机可读存储介质 |
CN109918048B (zh) * | 2018-12-27 | 2022-09-06 | 北京奇艺世纪科技有限公司 | 目标对象提取方法、装置、系统及计算机可读存储介质 |
CN110502579A (zh) * | 2019-08-26 | 2019-11-26 | 第四范式(北京)技术有限公司 | 用于批量和实时特征计算的系统和方法 |
-
2019
- 2019-08-26 CN CN201910789592.2A patent/CN110502579A/zh active Pending
-
2020
- 2020-08-26 US US17/639,125 patent/US11971882B2/en active Active
- 2020-08-26 EP EP20857623.1A patent/EP4024228A4/en active Pending
- 2020-08-26 WO PCT/CN2020/111412 patent/WO2021037066A1/zh unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106469202A (zh) * | 2016-08-31 | 2017-03-01 | 杭州探索文化传媒有限公司 | 一种影视大数据平台的数据分析方法 |
CN108008942A (zh) * | 2017-11-16 | 2018-05-08 | 第四范式(北京)技术有限公司 | 对数据记录进行处理的方法及系统 |
CN108228861A (zh) * | 2018-01-12 | 2018-06-29 | 第四范式(北京)技术有限公司 | 用于执行机器学习的特征工程的方法及系统 |
CN108519914A (zh) * | 2018-04-09 | 2018-09-11 | 腾讯科技(深圳)有限公司 | 大数据计算方法、系统和计算机设备 |
CN109144648A (zh) * | 2018-08-21 | 2019-01-04 | 第四范式(北京)技术有限公司 | 统一地执行特征抽取的方法及系统 |
CN109656914A (zh) * | 2018-11-07 | 2019-04-19 | 上海前隆信息科技有限公司 | 线上线下混合的风控建模训练和生产发布方法及系统 |
CN109767255A (zh) * | 2018-12-06 | 2019-05-17 | 东莞团贷网互联网科技服务有限公司 | 一种通过大数据建模实现智能运营及精准营销的方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021037066A1 (zh) * | 2019-08-26 | 2021-03-04 | 第四范式(北京)技术有限公司 | 用于批量和实时特征计算的系统和方法 |
US11971882B2 (en) | 2019-08-26 | 2024-04-30 | The Fourth Paradigm (Beijing) Tech Co Ltd | System and method for batch and real-time feature computation |
CN111651524A (zh) * | 2020-06-05 | 2020-09-11 | 第四范式(北京)技术有限公司 | 利用机器学习模型进行线上预测的辅助实现方法及装置 |
WO2021244639A1 (zh) * | 2020-06-05 | 2021-12-09 | 第四范式(北京)技术有限公司 | 利用机器学习模型进行线上预测的辅助实现方法及装置 |
CN111651524B (zh) * | 2020-06-05 | 2023-10-03 | 第四范式(北京)技术有限公司 | 利用机器学习模型进行线上预测的辅助实现方法及装置 |
CN112597213A (zh) * | 2020-12-24 | 2021-04-02 | 第四范式(北京)技术有限公司 | 特征计算的批请求处理方法、装置、电子设备及存储介质 |
CN112597213B (zh) * | 2020-12-24 | 2023-11-10 | 第四范式(北京)技术有限公司 | 特征计算的批请求处理方法、装置、电子设备及存储介质 |
CN112597121A (zh) * | 2020-12-25 | 2021-04-02 | 北京知因智慧科技有限公司 | 逻辑脚本的处理方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP4024228A4 (en) | 2022-11-02 |
US20220292083A1 (en) | 2022-09-15 |
EP4024228A1 (en) | 2022-07-06 |
US11971882B2 (en) | 2024-04-30 |
WO2021037066A1 (zh) | 2021-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110502579A (zh) | 用于批量和实时特征计算的系统和方法 | |
US11853343B2 (en) | Method, apparatus, and computer program product for user-specific contextual integration for a searchable enterprise platform | |
Gupta et al. | Wtf: The who to follow service at twitter | |
US9417985B2 (en) | Distributed analysis and attribution of source code | |
CN105260420B (zh) | 一种用于在移动应用中提供目标页面的方法与设备 | |
CN105765560B (zh) | 基于多次跟踪执行的软件组件推荐 | |
CN104657194B (zh) | 用于计算网络中动作的影响的方法和系统 | |
CN104838377A (zh) | 利用映射缩减集成事件处理 | |
CN111427577A (zh) | 代码处理方法、装置及服务器 | |
CN113476853B (zh) | 交互任务的数据处理方法、装置、电子设备、存储介质 | |
Wang | Stream processing systems benchmark: Streambench | |
Di Sanzo et al. | A flexible framework for accurate simulation of cloud in-memory data stores | |
CN108363787B (zh) | 一种ifc文件并行存储方法、装置及系统 | |
CN105354189A (zh) | 搜寻应用软件的方法及其系统 | |
US8494886B2 (en) | Embedding planning components in transactional applications | |
JP2020053044A (ja) | オフラインブリーフケース同期 | |
US20240152444A1 (en) | Online query execution using a big data framework | |
CN104281584A (zh) | Xml数据库性能测试系统及方法 | |
US20040064804A1 (en) | Generation of partitioned enterprise application using a high-level specification | |
CN113760983A (zh) | 数据处理方法、系统及非瞬时性计算机可读存储介质 | |
US8027996B2 (en) | Commitment control for less than an entire record in an in-memory database in a parallel computer system | |
CN114371969A (zh) | 一种页面性能测试方法、装置、电子设备及存储介质 | |
KR102195191B1 (ko) | 키워드 관계 구조를 이용한 신규 키워드 추출 방법 및 시스템 | |
US20170161359A1 (en) | Pattern-driven data generator | |
CN113094367A (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 |