System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及一个或多个实施例涉及大数据,尤其涉及一种自定义函数文件的管理方法、装置、电子设备及存储介质。
技术介绍
1、udf(user-defined function,用户自定义函数)是指允许用户自由地添加和使用自己根据需要编写出的函数,从而对数据进行复杂的计算和处理。
2、spark是一种分布式集群数据处理框架,支持弹性扩容、大数据计算、高性能等特性。在相关技术中,spark udf通常可以通过hive数据库进行管理。其中,spark udf的db名和spark udf的函数名称作为spark udf在hive数据库的唯一键值,spark udf文件或sparkudf文件的存储路径作为与键值对应的值。
3、由此可见,由于hive元数据不是由业务系统自行管理的,无法变更表结构,所以hive数据库无法支持按照组织、部门等分组方式对spark udf文件进行管理,也不能跨hive数据库管理spark udf文件。
技术实现思路
1、本申请提供一种自定义函数文件的管理方法,所述方法包括:
2、接收针对目标自定义函数文件的获取请求,其中,所述获取请求包括所述目标自定义函数文件所在分组的分组标识和所述目标自定义函数文件所记载的目标自定义函数的函数名称;
3、在文件系统存储的与所述分组标识对应的文件元数据中,查找与所述函数名称对应的存储路径;其中,所述文件元数据存储了自定义函数的函数名称与自定义函数文件的存储路径的对应关系;
4
5、可选的,所述文件系统维护了文件元数据管理目录,所述文件元数据管理目录用于按照自定义函数文件所在的不同分组来存储自定义函数文件的文件元数据;其中,所述文件元数据采用json文件的形式进行存储,所述json文件的文件名称为自定义函数的函数名称,并且所述json文件中记录有自定义函数文件的存储路径;
6、所述在文件系统存储的与所述分组标识对应的文件元数据中,查找与所述函数名称对应的存储路径,包括:
7、在所述文件元数据管理目录下存储的与所述分组标识对应的json文件中,查找文件名称为所述目标自定义函数的函数名称的json文件;
8、从查找到的所述json文件中读取所述目标自定义函数文件的存储路径。
9、可选的,所述文件系统还维护了文件管理目录,所述文件管理目录用于按照自定义函数文件所在的不同分组来存储自定义函数文件;其中,所述自定义函数文件的存储路径为自定义函数文件在所述文件管理目录下的存储路径;
10、所述从查找到的所述存储路径获取所述目标自定义函数文件,包括:
11、根据查找到的所述目标自定义函数文件在所述文件管理目录下的存储路径,读取所述目标自定义函数文件。
12、可选的,所述目标自定义函数文件在所述文件管理目录下的存储路径,包括:所述目标自定义函数文件所在分组的分组标识和所述目标自定义函数文件的文件标识。
13、可选的,所述方法还包括:
14、根据用户上传的自定义函数文件所在的分组,将所述自定义函数文件的文件元数据存储至所述文件系统。
15、可选的,所述文件系统维护了文件元数据管理目录,所述文件元数据管理目录用于按照自定义函数文件所在的不同分组来存储自定义函数文件的文件元数据;其中,所述文件元数据采用json文件的形式进行存储,所述json文件的文件名称为自定义函数的函数名称,并且所述json文件中记录有自定义函数文件的存储路径;
16、所述根据用户上传的自定义函数文件所在的分组,将所述自定义函数文件的文件元数据存储至所述文件系统,包括:
17、在所述文件元数据管理目录与所述分组标识对应的目录下,新建以自定义函数的函数名称命名的json文件;
18、在所述json文件中存储所述自定义函数文件的存储路径。
19、可选的,所述文件系统还维护了文件管理目录,所述文件管理目录用于按照自定义函数文件所在的不同分组来存储自定义函数文件;其中,所述自定义函数文件的存储路径为自定义函数文件在所述文件管理目录下的存储路径;
20、所述方法还包括:
21、根据所述自定义函数文件在所述文件管理目录下的存储路径,存储所述自定义函数文件。
22、本申请还提供一种自定义函数文件的管理装置,所述装置包括:
23、接收单元,用于接收针对目标自定义函数文件的获取请求,其中,所述获取请求包括所述目标自定义函数文件所在分组的分组标识和所述目标自定义函数文件所记载的目标自定义函数的函数名称;
24、查找单元,用于在文件系统存储的与所述分组标识对应的文件元数据中,查找与所述函数名称对应的存储路径;其中,所述文件元数据存储了自定义函数的函数名称与自定义函数文件的存储路径的对应关系;
25、获取单元,用于从查找到的所述存储路径获取所述目标自定义函数文件。
26、本申请还提供一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
27、所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行上述方法。
28、本申请还提供一种机器可读存储介质,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现上述方法。
29、通过以上方式,将文件元数据独立存储在第三方的文件系统中,并在文件系统中根据自定义函数文件所在分组的分组标识存储自定义函数文件的文件元数据;在接收到针对目标自定义函数文件的获取请求时,根据获取请求中包含的目标自定义函数文件所在分组的分组标识和目标自定义函数的函数名称,在文件系统存储的与分组标识对应的文件元数据中查找与函数名称对应的存储路径,再根据存储路径获取目标自定义函数文件。通过上述方式,由于文件元数据按自定义函数文件所在分组进行隔离,便于按分组管理自定义函数文件,不同分组的技术人员只能获取与分组对应的自定义函数文件,一方面可避免所有分组共享全部自定义函数文件导致的越权问题,保障了自定义函数文件管理的安全性;另一方面实现了跨数据库获取自定义函数。
本文档来自技高网...【技术保护点】
1.一种自定义函数文件的管理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述文件系统维护了文件元数据管理目录,所述文件元数据管理目录用于按照自定义函数文件所在的不同分组来存储自定义函数文件的文件元数据;其中,所述文件元数据采用JSON文件的形式进行存储,所述JSON文件的文件名称为自定义函数的函数名称,并且所述JSON文件中记录有自定义函数文件的存储路径;
3.根据权利要求2所述的方法,其特征在于,所述文件系统还维护了文件管理目录,所述文件管理目录用于按照自定义函数文件所在的不同分组来存储自定义函数文件;其中,所述自定义函数文件的存储路径为自定义函数文件在所述文件管理目录下的存储路径;
4.根据权利要求3所述的方法,其特征在于,所述目标自定义函数文件在所述文件管理目录下的存储路径,包括:所述目标自定义函数文件所在分组的分组标识和所述目标自定义函数文件的文件标识。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,所述文件系统维护了文件元数
7.根据权利要求6所述的方法,其特征在于,所述文件系统还维护了文件管理目录,所述文件管理目录用于按照自定义函数文件所在的不同分组来存储自定义函数文件;其中,所述自定义函数文件的存储路径为自定义函数文件在所述文件管理目录下的存储路径;
8.一种自定义函数文件的管理装置,其特征在于,所述装置包括:
9.一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
10.一种机器可读存储介质,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现权利要求1至7任一项所述的方法。
...【技术特征摘要】
1.一种自定义函数文件的管理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述文件系统维护了文件元数据管理目录,所述文件元数据管理目录用于按照自定义函数文件所在的不同分组来存储自定义函数文件的文件元数据;其中,所述文件元数据采用json文件的形式进行存储,所述json文件的文件名称为自定义函数的函数名称,并且所述json文件中记录有自定义函数文件的存储路径;
3.根据权利要求2所述的方法,其特征在于,所述文件系统还维护了文件管理目录,所述文件管理目录用于按照自定义函数文件所在的不同分组来存储自定义函数文件;其中,所述自定义函数文件的存储路径为自定义函数文件在所述文件管理目录下的存储路径;
4.根据权利要求3所述的方法,其特征在于,所述目标自定义函数文件在所述文件管理目录下的存储路径,包括:所述目标自定义函数文件所在分组的分组标识和所述目标自定义函数文件的文件标识。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
6....
【专利技术属性】
技术研发人员:张宝霖,
申请(专利权)人:杭州数梦工场科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。