明略数据冯是聪:明略大数据安全平台核心技术分享

我们在做查询引擎时,遇到的问题就是客户需要进行行与列同时的访问控制,但目前很多引擎也只能做到按列访问。为更好地解决客户的这个问题,我们研究出了行和列同时访问的引擎,并申请了三个专利,我们这也是全球第一家可以做出来的行和列同时访问的大数据企业。就是你如果在访问一个数据的时候,我们自动地加上行访问的控制,我们把查询引擎改掉了。在开发人员,不知道需要知道背后的权限管理是什么样的。比如说一个机构很大,几万人,可以自动通过LDAP加入权限管理。这样,不管是银行普通的办事人员还是行长,还是总行的人,每一次数据访问,都可以做到行和列的同时控制。

对于大数据我们做了一个安全的审计,对于任何一个数据,只要做了增加、删除、修改操作,甚至是访问,我们都可以记住日志。数据一旦出现问题,我们可以做非常方便地审计。这里面可以看到,我们在数据审计,包括文件系统,包括所有的部署运维,比如启动一个服务,停掉一个服务,增加一条信息,删除一条信息,上面跑的硬件、软件、数据、服务,这四个方面我们全部都做了日志,都可以随时审计。就是你只要做了任何一个操作,一旦做过,一定会留下痕迹,很多要求苛刻的客户都非常愿意购买这个特性。

明略MDP特性之高可用性

软件现在分为两类,一类是运营商级别的软件,一类是非运营商级别。运营商对于高可用性是非常苛刻的,因为他要求你7×24小时,我任何时候访问这个系统不会有任何问题。比如一个1集群有100个节点,其中有一个节点因为故障断掉了,过一段时间把那个节点的故障排除了,重新启动,上面跑的服务都可以自动恢复,数据也都可以保持一致,这个要求是非常苛刻的。大家知道,在开源社区里面有比较常见的一些服务,比如说Hbase、Hive等等都已经做了高可用性。但是对于右边的这些服务基本上都没有,比如Impala、Kerberos、LDAP、Flume等等,这个里面就面临一个很常见的场景,就是如果发现100个节点的集群里面,其中2个节点停掉了,不能因为2个节点影响到整个机群的服务。还有,比如把这个机器下面的网线拔掉,过一会儿再插上去,能保证插上去之后,数据能够自动恢复。还有一个就是对于硬盘,如果这个硬盘坏掉了,操作系统一定会收到这个故障信号。但是运营商测我们系统的时候是怎么测的呢?他就在硬盘正常运转的时候把硬盘拔掉,这个时候操作系统是没有收到故障信号的,过一会儿再插上去。还要求硬盘上的数据还是一致的,这些非常严苛的要求都是高可用性。除了常见的Hive、Hbase,我们把自己做的各种服务,全部都做了高可用性,从而保证我们的服务是高可用的。

我们在做服务调度的时候,我们用了一个Everything On Yarn的特性,任何一个用户使用一个服务的时候,他可能调动了很多的服务,可能把所有的资源都消耗掉,这个时候就非常危险,会导致后起的服务因为分配不到资源而被饿死。我们这样做了以后,就可以保证其中任何一个服务都可以通过这个来调度资源,就会保证一个太重服务不把其他的服务给饿死了。

明略MDP特性之易用性

我们所有的运维都是不需要任何脚本,也不需要任何代码。还有我们有一个模块是Dataone,这个跟我们刚才讲的那个运维平台NoahArk差不多,非常类似,都是可视化的。我们所有的数据迁移都是模板化、向导化的,你只需不停地点下一步就可以了,所有的数据迁移就可以完成了。

明略MDP特性之开放性

我们所有的组件都可以修改,所有的开源组件都是来自于开源社区,这就保证了客户不会被某一个厂家绑定,随时可以自主地升级系统,自主地添加组件,这样就是一个开放性,我们不是一个闭环的产品。

明略MDP特性之高性能

高性能是我们非常自豪的,我们当时有一个客户,他当时说有5千亿的话单,要求在秒级查出来,他考察了很多厂商,最后是我们给他解决掉了。大家可以随便估算一下,这5千亿条的记录,秒级响应得,需要什么样的技术,当然只有懂技术的才知道这个难度。

因为时间的关系,大概给大家简单介绍了一下我们MDP高性能、高可用、高安全、易用性、开放性等特性,谢谢大家!