CN108959952A - 数据平台权限控制方法、装置和设备 - Google Patents

数据平台权限控制方法、装置和设备 Download PDF

Info

Publication number
CN108959952A
CN108959952A CN201710372431.4A CN201710372431A CN108959952A CN 108959952 A CN108959952 A CN 108959952A CN 201710372431 A CN201710372431 A CN 201710372431A CN 108959952 A CN108959952 A CN 108959952A
Authority
CN
China
Prior art keywords
data
permission
user
type
operation request
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
CN201710372431.4A
Other languages
English (en)
Other versions
CN108959952B (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.)
China Mobile Communications Group Co Ltd
China Mobile Group Chongqing Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Group Chongqing 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 China Mobile Communications Group Co Ltd, China Mobile Group Chongqing Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201710372431.4A priority Critical patent/CN108959952B/zh
Publication of CN108959952A publication Critical patent/CN108959952A/zh
Application granted granted Critical
Publication of CN108959952B publication Critical patent/CN108959952B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例公开了一种数据平台权限控制方法、装置和设备。该方法可以包括:接收用户发来的数据操作请求。当数据操作请求的类型为spark‑sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将数据操作请求的类型转换为hive操作引擎数据操作请求类型。获取用户的数据操作权限,匹配数据操作请求中请求的数据操作权限与用户的数据操作权限。当用户的数据操作权限包括数据操作请求中请求的数据操作权限时,将数据操作请求发送至分布式文件系统。上述数据平台权限控制方法、装置和设备能够高效地进行数据平台的权限控制,并且便于维护、升级和使用。

Description

数据平台权限控制方法、装置和设备
技术领域
本发明属于计算机技术领域,尤其涉及一种数据平台权限控制方法、装置和设备。
背景技术
大数据平台,例如,Hadoop大数据平台,由于能够充分利用集群的能力进行高速运算和存储,已经为大多数企业所用。
目前基于Hadoop大数据平台的对外服务平台(Platform as a Service,PaaS)的服务权限控制主要有两种实现方式:
一种是透明数据访问层方式:在大数据平台上,使用统一的透明数据访问层对外部提供操作和查询服务,透明数据访问层提供服务接口给PaaS系统。用户在PaaS发起操作,PaaS调用透明数据访问层对用户发起的访问请求做校验(校验包含语法合法性和权限是否满足操作类型等),如校验通过,透明数据访问层调用某种操作引擎(如hive\spark-sql)向大数据平台发起用户请求的操作(主要是数据查询、数据管理等),并把操作结果通过服务接口返回给PaaS,由PaaS展示给用户。
另一种是开放操作引擎方式:在大数据平台上,集成了各类数据操作引擎(如hive\spark-sql等),并把各类的操作引擎直接(hive\spark-sql等)开放给PaaS,用户在PaaS发起操作,PaaS把操作透传给操作引擎,由操作引擎校验访问请求(校验包含语法合法性、权限是否满足操作类型等)。如校验通过,操作引擎直接向大数据平台发起操作请求,最后把结果反馈给PaaS,由PaaS将结果展示给用户。用户在PaaS上可以根据使用习惯,选择一种或者多种操作引擎来发起操作。
但是,开发透明数据访问层的PaaS权限控制存在以下问题:
一方面,存在语义和语法解析不够准确的问题,其后期升级和维护的成本也较高。因为透明数据访问层需要在用户发起访问时校验合法性,校验包含多种内容,涉及业务规范、管理流程和接口标准等。如用户身份是否合法、访问请求是否正确、是否对访问的资源具有相符合的权限、以及操作语法是否正确等。对这些内容做校验,需要对用户发起的请求内容做专门语法、内容、和语义解析,而且一旦出现解析或者转换错误,可能造成数据泄露和数据误操作等隐患,其维护成本和升级开发代价都比较高的。
另一方面,自定义的透明数据访问层有自定义的一套访问方法和操作语法,用户需要先学习才能使用,存在一定的使用门槛和学习代价。
开放操作引擎的PaaS权限控制虽然能解决上述问题,但是依然存在不同操作引擎间权限管理差异的问题。
比如在hive\spark-sql混搭的Hadoop大数据平台中,hive引擎是通过元数据来控制用户操作权限(如用户需要访问某个表只需要获取表访问权限),而spark-sql是用hdfs的文件权限控制用户操作(如用户需要访问某个表需要获取表的全部数据存储文件的访问权限),两种引擎权限管理方式不一致,同时开放给PaaS会使用户在PaaS做数据提取分析时,需要先知晓要访问的表是具有hive权限还是spark-sql的权限,降低了用户使用效率。并且,系统管理员为用户授权,需要对hive和spark-sql分别做操作,增加了操作难度,降低工作效率,同时增加管理上的复杂度。在生产场景中,某些业务表文件数量非常多,并以非常快的速度生成新的数据文件,spark-sql需要挨个将每个文件的权限授予给多个用户,会非常耗时,用户获得权限的及时性也得不到保障。
发明内容
本发明实施例提供了一种数据平台权限控制方法、装置和设备,能够高效地进行数据平台的权限控制,并且便于维护、升级和使用。
第一方面,提供了一种数据平台权限控制方法,该方法可以包括:
接收用户发来的数据操作请求,其中,数据操作请求的类型可以包括hive操作引擎数据操作请求类型和spark-sql操作引擎数据操作请求类型。
当数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将数据操作请求的类型转换为hive操作引擎数据操作请求类型。
获取用户的数据操作权限,匹配数据操作请求中请求的数据操作权限与用户的数据操作权限。
当用户的数据操作权限包括数据操作请求中请求的数据操作权限时,将数据操作请求发送至分布式文件系统。
第二方面,提供了一种数据平台权限控制装置,该装置可以包括:接收单元、操作转换单元、权限校验单元和转发单元。
该接收单元可以用于接收用户发来的数据操作请求,其中,数据操作请求的类型包括hive操作引擎数据操作请求类型和spark-sql操作引擎数据操作请求类型;
该操作转换单元可以用于当数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将数据操作请求的类型转换为hive操作引擎数据操作请求类型。
权限校验单元可以用于获取用户的数据操作权限,匹配用户发来的数据操作请求中请求的数据操作权限与用户的数据操作权限。
转发单元可以用于当用户的数据操作权限包括数据操作请求中请求的数据操作权限时,将数据操作请求发送至分布式文件系统。
第三方面,提供了一种数据平台权限控制设备,该设备可以包括存储器和处理器。
该存储器可以用于储存有可执行程序代码。
该处理器可以用于读取存储器中存储的可执行程序代码以执行上述数据平台权限控制方法。
根据本发明实施例提供的数据平台权限控制方法、装置和设备。通过用户发来的数据操作请求中包括的数据操作请求的类型确定用户发来的数据操作请求的类型,当接收的用户发来的数据操作请求为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将数据操作请求的类型转换为hive操作引擎数据操作请求类型,并由通过hive操作引擎与hive元数据通信获取用户权限。当用户的数据操作权限包括数据操作请求中请求的数据操作权限时,将数据操作请求发送至分布式文件系统。避免了透明数据访问层方式不便于维护与升级且不便于用户使用的缺陷。同时,将spark-sql操作引擎数据操作请求转换为hive操作引擎数据操作请求解决了spark-sql赋权操作慢、效率低的问题,使权限管理操作更加高效。并且解决了hive\spark-sql权限不一致,管理难度大的问题,使得整个权限管理体系更加清晰简明。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一种实施例的数据平台权限控制方法的示意性流程图;
图2是本发明另一种实施例的数据平台权限控制方法的示意性流程图;
图3是本发明又一种实施例的数据平台权限控制方法的示意性流程图;
图4是本发明一种实施例的数据平台权限控制装置的示意性结构框图;
图5是本发明另一种实施例的数据平台权限控制装置的示意性结构框图;
图6是本发明又一种实施例的数据平台权限控制装置的示意性结构框图;
图7是本发明一种实施例的数据平台权限控制设备的示意性结构框图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例。在下面的详细描述中,提出了许多具体细节,以便提供对本发明的全面理解。但是,对于本领域技术人员来说很明显的是,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明的更好的理解。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图对实施例进行详细描述。
图1是本发明一种实施例的数据平台权限控制方法的示意性流程图。如图1所示,数据平台权限控制方法可以包括:S110~S140。
S110,接收用户发来的数据操作请求,其中,数据操作请求的类型可以包括hive操作引擎数据操作请求类型和spark-sql操作引擎数据操作请求类型。
在一些示例中,S110中的数据平台可以是基于Hadoop的PaaS数据平台。PaaS把服务器平台作为一种服务提供的商业模式,这里是指将数据操作的平台作为一种服务,通过网页提供给用户。Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的能力进行高速运算和存储。目前已经成为大多数企业大数据平台的基础架构。Hadoop的核心框架的设计包含Hadoop分布式文件系统(Hadoop Distributed File System,hdfs)和映射归约MapReduce,其中,hdfs为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。
在一些示例中,S110中的hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供结构化查询语言(Structured Query Language,SQL)查询功能,可以将SQL语句转换为MapReduce任务进行运行,提供数据查询分析功能。
在一些示例中,S110中的spark-sql是spark计算框架的一个组件,给用户提供以SQL方式处理数据的能力,功能类似于hive。spark是类似MapReduce的通用并行计算框架。
在一些示例中,S110中接收的用户发来的数据操作请求均采用相同程序语言进行编写,例如,都采用SQL进行进行编写。例如,用户将采用SQL进行进行编写数据操作请求发送至PaaS平台。
在一些示例中,S110中还可以包括对接收的用户发来的数据操作请求进行解析,例如,对接收的用户发来的数据操作请求进行语法和语义提取,解析出请求中的操作类型和对应的资源,形成资源列表,该资源列表的示例在表1中给出。
图2是本发明另一种实施例的数据平台权限控制方法的示意性流程图。如图2所示,接收用户发来的数据操作请求之后,还可以包括:S210,生成数据操作请求的识别标识。例如,操作流水号。
表1
操作流水号 操作类型 操作对象 操作用户
ORNUM0001 SELECT ODS_USER_TABLE userRole1
ORNUM0001 DROP ODS_USER_TABLE userRole1
ORNUM0002 INSRET ODS_USER_TABLE userRole2
ORNUM0003 GRANT ODS_USER_TABLE userRole3
由表1数据操作请求资源列表中可以得到,数据操作请求资源列表可以包括以下内容:操作流水号、操作类型、操作对象和操作用户。
S120,当数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将数据操作请求的类型转换为hive操作引擎数据操作请求类型。由于使用统一程序语言的权限管理数据,使用户权限管理更加清晰,降低管理难度。
在一些示例中,S120中的数据操作转换关系配置表操作类型在spark-sql和hive中的对应关系。
S130,获取用户的数据操作权限,匹配数据操作请求中请求的数据操作权限与用户的数据操作权限。
在一些示例中,S130,可以根据操作内容对数据操作请求的权限进行校验,并根据生成的操作流水号对校验结果进行记录。权限内容的示例性列表在表2中给出。在一些示例中,用户的数据操作权限和数据操作请求中请求的数据操作权限均包括操作类型和操作对象。
图3是本发明又一种实施例的数据平台权限控制方法的示意性流程图。如图3所示,获取所述用户的数据操作权限,匹配用户发来的数据操作请求中请求的数据操作权限与用户的数据操作权限之后,还可以包括:S310,生成包括识别标识的匹配结果。
在一些示例中,用户的数据操作权限可以是基于hive的元数据获得的。在一些示例中,该hive的元数据在表2中给出:
表2
表2hive元数据权限内容中,包括操作类型权限、操作对象权限和用户角色。
S140,当用户的数据操作权限包括数据操作请求中请求的数据操作权限时,将数据操作请求发送至分布式文件系统。
在一些示例中,S140可以包括将用户操作请求的操作流水号和验证结果反馈给PaaS平台。
在一些示例中,用户操作请求的验证结果在表3中给出。
表3
操作类型 操作对象 用户角色 校验结果 操作流水号
SELECT ODS_USER_TABLE userRole1 通过 ORNUM0001
DROP ODS_USER_TABLE userRole1 不通过 ORNUM0001
INSRET ODS_USER_TABLE userRole2 通过 ORNUM0002
GRANT ODS_USER_TABLE userRole3 不通过 ORNUM0003
表3用户操作请求验证结果中,包括:操作类型、操作对象、用户角色、校验结果和操作流水号。
在一些示例中,S140还可以接收分布式文件系统反馈的针对用户发来的数据操作请求的结果,将结果发送给用户,以实现数据平台权限的控制。
因此,根据本发明实施例提供的数据平台权限控制方法。通过用户发来的数据操作请求中包括的数据操作请求的类型确定用户发来的数据操作请求的类型,当接收的用户发来的数据操作请求为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将数据操作请求的类型转换为hive操作引擎数据操作请求类型,并由通过hive操作引擎与hive元数据通信获取用户权限。当用户的数据操作权限包括数据操作请求中请求的数据操作权限时,将数据操作请求发送至分布式文件系统。避免了透明数据访问层方式不便于维护与升级且不便于用户使用的缺陷。同时,将spark-sql操作引擎数据操作请求转换为hive操作引擎数据操作请求解决了spark-sql赋权操作慢、效率低的问题,使权限管理操作更加高效。并且解决了hive\spark-sql权限不一致,管理难度大的问题,使得整个权限管理体系更加清晰简明。
在一些示例中,当数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,S140可以包括将用户发来的数据操作请求发送至分布式文件系统使用分布式文件系统超级访问权限向分布式文件系统发送用户发来的数据操作请求。例如,当数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,生成并通过统一数据服务将请求将用户发来的数据操作请求发到分布式文件系统执行,这里可以理解为,统一数据服务将请求可以使用分布式文件系统超级访问权限向分布式文件系统发送用户发来的数据操作请求。
在一些示例中,当数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,S140可以包括使用spark-sql统一操作服务将用户发来的数据操作请求发送至分布式文件系统使用分布式文件系统超级访问权限向分布式文件系统发送用户发来的数据操作请求。spark-sql统一操作服务可以理解为是对hdfs数据有超级访问权限的spark-sql操作引擎,当接受到PaaS发起操作请求时,解析出语法、语义,转换为执行任务,不再做操作权限校验,直接对hdfs发起操作,并将操作结果返回给PaaS。
根据一些实施例,上述数据平台权限控制方法可以包括:
S410,通过PaaS为用户设置操作权限。
S420,PaaS通过接口操作hive元数据,将用户的操作权限、可访问资源数据保存在元数据中。
S430,用户在PaaS选择操作引擎(hive或spark-sql),并编写标准的SQL语言的操作请求提交给PaaS。当用户在PaaS选择操作引擎为hive时,进入S450,当用户在PaaS选择操作引擎为spark-sql时,进入S460
S440,PaaS调用操作引擎接口,向(hive或spark-sql)操作引擎发起操作请求。
S450,hive操作引擎解析用户发起的SQL语义、语法,识别出用户操作类型和操作对象列表;
hive操作引擎向hive权限校验器发起用户操作权限校验请求;hive权限校验器向hive元数据发起数据获取请求,请求获取用户可以操作的权限和可以访问的操作对象;
hive元数据向hive权限校验器反馈用户的可以操作权限和可以访问的操作对象;
hive权限校验器将hive引擎传入的操作类型、操作对象列表与hive元数据反馈的可以操作权限和可以访问操作对象做比对,并将比对结果反馈给hive查询引擎。
hive操作引擎接受hive权限校验器返回的结果,如果比对结果不一致,将不一致的信息反馈给PaaS,PaaS告知用户;如果比对结果完全匹配,hive操作向hdfs发起访问请求,获取用户操作的结果,并将结果反馈给PaaS。
S460,spark-sql操作引擎解析用户发起的SQL语义、语法,识别出操作类型和操作对象列表;
spark-sql向操作转换器发起用户访问权限校验请求;
操作转换器将spark-sql操作引擎的请求转换为hive查询请求,并向hive权限校验器发起权限校验请求;
hive权限校验器向hive元数据发起数据获取请求,请求获取用户的可以操作权限和可以访问的操作对象;
hive元数据向hive权限校验器反馈用户的可以操作权限和可以访问的操作对象;
hive权限校验器将hive引擎传入的操作类型、操作对象列表与hive元数据反馈的可以操作权限和可以访问操作对象做比对,并将比对结果反馈给spark-sql操作引擎。
spark-sql操作引擎接受hive权限校验器返回的结果,如果比对结果不一致,将不一致的信息反馈给PaaS,PaaS告知用户;如果比对结果完全匹配,反馈给PaaS校验通过。
PaaS获取到spark-sql操作引擎反馈校验通过的信息,将用户发起的操作请求向spark-sql统一操作服务发起操作请求。
spark-sql统一操作服务使用hdfs超级访问权限向hdfs发起操作请求。
spark-sql统一操作服务将操作结果返回给PaaS。
S470,PaaS将操作结果展示给用户。
上文中结合图1至图3,详细描述了根据本发明实施例的数据平台权限控制方法,下面将结合图4至图7,详细描述根据本发明实施例的数据平台权限控制装置和设备。
图4是本发明一种实施例的数据平台权限控制装置的示意性结构框图。如图4所示,一种数据平台权限控制装置400,该装置可以包括:接收单元410、操作转换单元420、权限校验单元430和转发单元440。
接收单元410可以用于接收用户发来的数据操作请求,其中,数据操作请求的类型包括hive操作引擎数据操作请求类型和spark-sql操作引擎数据操作请求类型;
操作转换单元420可以用于当数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将数据操作请求的类型转换为hive操作引擎数据操作请求类型。
权限校验单元430可以用于获取用户的数据操作权限,匹配用户发来的数据操作请求中请求的数据操作权限与用户的数据操作权限。
转发单元440可以用于当用户的数据操作权限包括数据操作请求中请求的数据操作权限时,将数据操作请求发送至分布式文件系统。
根据本发明实施例的数据平台权限控制装置400可对应于根据本发明实施例的数据平台权限控制方法中的执行主体,并且数据平台权限控制装置400中的各个单元的功能分别为了实现图1中的各个方法的相应流程,为了简洁,在此不再赘述。
因此,根据本发明实施例提供的数据平台权限控制装置。通过用户发来的数据操作请求中包括的数据操作请求的类型确定用户发来的数据操作请求的类型,当接收的用户发来的数据操作请求为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将数据操作请求的类型转换为hive操作引擎数据操作请求类型,并由通过hive操作引擎与hive元数据通信获取用户权限。当用户的数据操作权限包括数据操作请求中请求的数据操作权限时,将数据操作请求发送至分布式文件系统。避免了透明数据访问层方式不便于维护与升级且不便于用户使用的缺陷。同时,将spark-sql操作引擎数据操作请求转换为hive操作引擎数据操作请求解决了spark-sql赋权操作慢、效率低的问题,使权限管理操作更加高效。并且解决了hive\spark-sql权限不一致,管理难度大的问题,使得整个权限管理体系更加清晰简明
图5是本发明另一种实施例的数据平台权限控制装置的示意性结构框图。如图5所示,数据平台权限控制装置500可以包括:接收单元510、操作转换单元520、权限校验单元530、转发单元540和统一操作服务单元550。
在一些示例中,其中,接收单元510和接收单元410功能类似;操作转换单元520和操作转换单元420功能类似;权限校验单元530和权限校验单元430功能类似;转发单元540和转发单元440功能类似。
在一些示例中,统一操作服务单元550可以用于:
使用分布式文件系统超级访问权限向分布式文件系统发送用户发来的数据操作请求。
在一些示例中,上述用户的数据操作权限和数据操作请求中请求的数据操作权限均包括操作类型和操作对象。
图6是本发明又一种实施例的数据平台权限控制装置的示意性结构框图。如图6所示,数据平台权限控制装置600可以包括:接收单元610、操作转换单元620、权限校验单元630、转发单元640、统一操作服务单元650和解析单元660。
在一些示例中,其中,接收单元610和接收单元510功能类似;操作转换单元620和操作转换单元520功能类似;权限校验单元630和权限校验单元530功能类似;转发单元640和转发单元540功能类似;统一操作服务单元650和统一操作服务单元550功能类似。
在一些示例中,解析单元660还可以用于:生成数据操作请求的识别标识。
在一些示例中,权限校验单元630还可以用于:生成包括识别标识的匹配结果。
在一些示例中,用户的数据操作权限可以是基于hive的元数据获得的。
图7是本发明一种实施例的数据平台权限控制设备的示意性结构框图。如图7所示结合上述的数据平台权限控制方法和数据平台权限控制装置的至少一部分可以由计算机设备700实现。该设备700可以包括处理器703和存储器704。
存储器704可以用于储存有可执行程序代码。
处理器703可以用于读取存储器704中存储的可执行程序代码以执行上述的数据平台权限控制方法。
因此,根据本发明实施例提供的数据平台权限控制设备。通过用户发来的数据操作请求中包括的数据操作请求的类型确定用户发来的数据操作请求的类型,当接收的用户发来的数据操作请求为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将数据操作请求的类型转换为hive操作引擎数据操作请求类型。当用户的数据操作权限包括数据操作请求中请求的数据操作权限时,将数据操作请求发送至分布式文件系统。避免了透明数据访问层方式不便于维护与升级且不便于用户使用的缺陷。同时,将spark-sql操作引擎数据操作请求转换为hive操作引擎数据操作请求解决了spark-sql赋权操作慢、效率低的问题,使权限管理操作更加高效。并且解决了hive\spark-sql权限不一致,管理难度大的问题,使得整个权限管理体系更加清晰简明。
在一些说明性示例中,数据平台权限控制设备700还可以包括输入设备701、输入端口702、输出端口705、以及输出设备706。其中,输入端口702、处理器703、存储器704、以及输出端口705通过总线710相互连接,输入设备701和输出设备706分别通过输入端口702和输出端口705与总线710连接,进而与设备700的其他组件连接。
在一些示例中,这里的输出接口和输入接口也可以用I/O接口表示。具体地,输入设备701接收来自外部的输入信息,并通过输入端口702将输入信息传送到处理器703。例如,输入信息为用户发来的数据操作请求。其中,数据操作请求的类型包括hive操作引擎数据操作请求类型和spark-sql操作引擎数据操作请求类型。
在一些示例中,处理器703基于存储器704中存储的计算机可执行程序代码或指令对输入信息进行处理以生成输出信息,例如,处理器704执行以下步骤:当数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将数据操作请求的类型转换为hive操作引擎数据操作请求类型。获取用户的数据操作权限,匹配数据操作请求中请求的数据操作权限与用户的数据操作权限。将输出信息临时或者永久地存储在存储器704中,随后在需要时经由输出端口705将输出信息传送到输出设备706。输出设备706将输出信息输出到设备700的外部。例如,当用户的数据操作权限包括数据操作请求中请求的数据操作权限时,将数据操作请求发送至分布式文件系统。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。

Claims (13)

1.一种数据平台权限控制方法,其特征在于,所述方法包括:
接收用户发来的数据操作请求,其中,所述数据操作请求的类型包括hive操作引擎数据操作请求类型和spark-sql操作引擎数据操作请求类型;
当所述数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将所述数据操作请求的类型转换为hive操作引擎数据操作请求类型;
获取所述用户的数据操作权限,匹配所述数据操作请求中请求的数据操作权限与所述用户的数据操作权限;
当所述用户的数据操作权限包括所述数据操作请求中请求的数据操作权限时,将所述数据操作请求发送至分布式文件系统。
2.根据权利要求1所述的数据平台权限控制方法,其特征在于,当所述数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,所述将所述用户发来的数据操作请求发送至分布式文件系统,包括:
使用分布式文件系统超级访问权限向所述分布式文件系统发送所述用户发来的数据操作请求。
3.根据权利要求1或2所述的数据平台权限控制方法,其特征在于,所述用户的数据操作权限和所述数据操作请求中请求的数据操作权限均包括操作类型和操作对象。
4.根据权利要求1或2所述的数据平台权限控制方法,其特征在于,所述接收用户发来的数据操作请求之后,还包括:
生成所述数据操作请求的识别标识。
5.根据权利要求4所述的数据平台权限控制方法,其特征在于,所述获取所述用户的数据操作权限,匹配所述用户发来的数据操作请求中请求的数据操作权限与所述用户的数据操作权限之后,还包括:
生成包括所述识别标识的匹配结果。
6.根据权利要求1或2所述的数据平台权限控制方法,其特征在于,所述用户的数据操作权限是基于hive的元数据获得的。
7.一种数据平台权限控制装置,其特征在于,所述装置包括:
接收单元,用于接收用户发来的数据操作请求,其中,所述数据操作请求的类型包括hive操作引擎数据操作请求类型和spark-sql操作引擎数据操作请求类型;
操作转换单元,用于当所述数据操作请求的类型为spark-sql操作引擎数据操作请求类型时,根据数据操作转换关系配置表将所述数据操作请求的类型转换为hive操作引擎数据操作请求类型;
权限校验单元,用于获取所述用户的数据操作权限,匹配所述用户发来的数据操作请求中请求的数据操作权限与所述用户的数据操作权限;
转发单元,用于当所述用户的数据操作权限包括所述数据操作请求中请求的数据操作权限时,将所述数据操作请求发送至分布式文件系统。
8.根据权利要求7所述的数据平台权限控制装置,其特征在于,还包括统一操作服务单元,用于:
使用分布式文件系统超级访问权限向所述分布式文件系统发送所述用户发来的数据操作请求。
9.根据权利要求7或8所述的数据平台权限控制装置,其特征在于,所述用户的数据操作权限和所述数据操作请求中请求的数据操作权限均包括操作类型和操作对象。
10.根据权利要求7或8所述的数据平台权限控制装置,其特征在于,还包括解析单元,用于:
生成所述数据操作请求的识别标识。
11.根据权利要求10所述的数据平台权限控制装置,其特征在于,所述权限校验单元,还用于:
生成包括所述识别标识的匹配结果。
12.根据权利要求7或8所述的数据平台权限控制装置,其特征在于,所述用户的数据操作权限是基于hive的元数据获得的。
13.一种数据平台权限控制设备,其特征在于,包括存储器和处理器;所述存储器用于储存有可执行程序代码;
所述处理器用于读取所述存储器中存储的可执行程序代码以执行权利要求1至6任一项所述的数据平台权限控制方法。
CN201710372431.4A 2017-05-23 2017-05-23 数据平台权限控制方法、装置和设备 Active CN108959952B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710372431.4A CN108959952B (zh) 2017-05-23 2017-05-23 数据平台权限控制方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710372431.4A CN108959952B (zh) 2017-05-23 2017-05-23 数据平台权限控制方法、装置和设备

Publications (2)

Publication Number Publication Date
CN108959952A true CN108959952A (zh) 2018-12-07
CN108959952B CN108959952B (zh) 2020-10-30

Family

ID=64494336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710372431.4A Active CN108959952B (zh) 2017-05-23 2017-05-23 数据平台权限控制方法、装置和设备

Country Status (1)

Country Link
CN (1) CN108959952B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110619226A (zh) * 2019-09-12 2019-12-27 秒针信息技术有限公司 一种基于平台的数据处理方法、系统、设备及存储介质
CN112579536A (zh) * 2019-09-30 2021-03-30 北京国双科技有限公司 数据查询方法、装置、计算机设备以及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105550293A (zh) * 2015-12-11 2016-05-04 深圳市华讯方舟软件技术有限公司 一种基于Spark-SQL大数据处理平台的后台刷新方法
CN106056427A (zh) * 2016-05-25 2016-10-26 中南大学 一种基于Spark的大数据混合模型的移动推荐方法
CN106375323A (zh) * 2016-09-09 2017-02-01 浪潮软件股份有限公司 一种多租户模式下kerberos身份认证的方法
CN106649455A (zh) * 2016-09-24 2017-05-10 孙燕群 一种大数据开发的标准化系统归类、命令集系统
CN106682213A (zh) * 2016-12-30 2017-05-17 Tcl集团股份有限公司 基于Hadoop平台的物联网任务订制方法及系统
CN106777142A (zh) * 2016-12-19 2017-05-31 武汉虹旭信息技术有限责任公司 基于移动互联网海量数据的服务层系统及其方法
CN106850830A (zh) * 2017-02-28 2017-06-13 北京神州绿盟信息安全科技股份有限公司 一种业务请求处理方法、装置、系统和相关服务器
US20170177888A1 (en) * 2015-12-16 2017-06-22 American Express Travel Related Services Co., Inc. Systems and methods for access control over changing big data structures

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105550293A (zh) * 2015-12-11 2016-05-04 深圳市华讯方舟软件技术有限公司 一种基于Spark-SQL大数据处理平台的后台刷新方法
US20170177888A1 (en) * 2015-12-16 2017-06-22 American Express Travel Related Services Co., Inc. Systems and methods for access control over changing big data structures
CN106056427A (zh) * 2016-05-25 2016-10-26 中南大学 一种基于Spark的大数据混合模型的移动推荐方法
CN106375323A (zh) * 2016-09-09 2017-02-01 浪潮软件股份有限公司 一种多租户模式下kerberos身份认证的方法
CN106649455A (zh) * 2016-09-24 2017-05-10 孙燕群 一种大数据开发的标准化系统归类、命令集系统
CN106777142A (zh) * 2016-12-19 2017-05-31 武汉虹旭信息技术有限责任公司 基于移动互联网海量数据的服务层系统及其方法
CN106682213A (zh) * 2016-12-30 2017-05-17 Tcl集团股份有限公司 基于Hadoop平台的物联网任务订制方法及系统
CN106850830A (zh) * 2017-02-28 2017-06-13 北京神州绿盟信息安全科技股份有限公司 一种业务请求处理方法、装置、系统和相关服务器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MICHAEL ARMBRUST等: ""Spark SQL:Relational Data Proceedings in Spark"", 《PROCEEDINGS OF THE 2015 ACM SIGMOD INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA》 *
留年已忘却: ""基于元数据和sql标准权限验证"", 《HTTPS://WWW.JIANSHU.COM/P/A7FF5EB1C5DE》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110619226A (zh) * 2019-09-12 2019-12-27 秒针信息技术有限公司 一种基于平台的数据处理方法、系统、设备及存储介质
CN112579536A (zh) * 2019-09-30 2021-03-30 北京国双科技有限公司 数据查询方法、装置、计算机设备以及存储介质

Also Published As

Publication number Publication date
CN108959952B (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
CA2912038C (en) Low latency query engine for apache hadoop
CN107402987B (zh) 一种全文检索的方法和分布式NewSQL数据库系统
CN110032604B (zh) 数据存储装置、转译装置及数据库访问方法
US9477731B2 (en) Background format optimization for enhanced SQL-like queries in Hadoop
CN102739770B (zh) 一种基于云计算的资源调度方法及系统
US9128991B2 (en) Techniques to perform in-database computational programming
CN105335403B (zh) 数据库访问方法及装置、数据库系统
CN108536761A (zh) 报表数据查询方法及服务器
CN110188573B (zh) 分区授权方法、装置、设备及计算机可读存储介质
CN111901294A (zh) 一种构建在线机器学习项目的方法及机器学习系统
CN104133772A (zh) 一种自动生成测试数据的方法
CN106933664B (zh) 一种Hadoop集群的资源调度方法及装置
CN108958744B (zh) 大数据分布式集群的部署方法、装置、介质及电子设备
CN102917006A (zh) 一种实现计算资源和对象权限的统一控制管理方法及装置
CN110781505A (zh) 系统构建方法及装置、检索方法及装置、介质和设备
US20210089527A1 (en) Incremental addition of data to partitions in database tables
CN108959952A (zh) 数据平台权限控制方法、装置和设备
CN106570151A (zh) 一种海量文件的数据收集处理方法及系统
Zarei et al. Past, present and future of Hadoop: A survey
US10706225B2 (en) Form management system and method
Lee et al. Implementation and performance of distributed text processing system using hadoop for e-discovery cloud service
US11372859B2 (en) Efficiently supporting value style access of MOBs stored in SQL LOB column by providing value based semantics for LOBs in RDBMS
CN113568923A (zh) 数据库中数据的查询方法和装置、存储介质及电子设备
Yuan et al. VDB-MR: MapReduce-based distributed data integration using virtual database
Gu et al. MANSOR: a module alignment method based on neighbor information for scientific workflow

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant