


资源简介:
【开课吧】滴滴认证资深大数据工程师培养计划选修课
关于编程语言的选择
在选择编程语言时,我认为商业公司首先考虑的是效率,其余都是次要。因为商业公司的首要任务是创造利润,不论是哪种语言,只要能够以最小的投入获得最大的回报,那它便是合适的选择。
效率可以从以下几个方面考虑:
开发效率。如果开发效率高,那么项目就可以更快地上线,快速占领市场,同时也节约了人力成本。
运行效率。高的运行效率意味着可以节省服务器和运营成本。
以阿里巴巴为例。
阿里在创业初期选择了 PHP,主要是因为其高效的开发速度。但随着业务量的增长,PHP 的性能开始显得不足,所以他们需要转向一个运行效率更高的语言。
为追求高的运行效率,C/C++ 成为了首选。但这两种语言的开发效率并不高,因此我们需要在开发效率与运行效率之间取得平衡。这也是为什么阿里巴巴选择了 Java 的原因。
当阿里巴巴在知乎解释为什么选择 Java 时,他们主要强调了几个点:性能、易学性、丰富的生态环境以及活跃的开发者社区。
其中,性能站在首位,而易学性、丰富的生态和活跃的社区都与开发效率直接相关。有了这些优势,使 Java 的开发效率大大提高。
在阿里巴巴选择 Java 后,他们自行研发了众多 Java 中间件,并培训了大批 Java 开发人才。其他公司在技术选择上也借鉴了阿里,这导致更多的公司开始选择 Java。
对于 Go 的选择也是如此。一些创业初期的公司可能首选 PHP 或 Python 这样的语言。但随着公司规模的扩大,他们也会遇到阿里之前所面临的问题:性能瓶颈。
在 Go 语言 中,使用 函数 前,必须先声明与定义函数。Go 语言的函数由 关键字 func、函数名、参数列表、返回值、函数体和 返回语句 组成。
在和教育管理者沟通的过程中,他们经常把安全挂在嘴边,一种是我们经常在新闻里可以看到的食品安全、人身安全等,还有一种是我们看不见、摸不着的,今天我们要讲的数据安全就是其中之一。
01
什么是数据安全?
随着科技的发展,大数据、云计算等技术广泛应用于教育领域,在这个信息大爆炸时代,数据在教育领域的应用范围不断扩大,成为推动教育高质量发展的重要引擎。数据不断推动教育数字化、智能化进程的同时,也给教育领域带来了另一个不容忽视的问题——“数据安全”。
2021年6月10日,第十三届全国人民代表大会常务委员会第二十九次会议通过《中华人民共和国数据安全法》(以下简称《数据安全法》),自2021年9月1日起施行。《数据安全法》第三条明确了数据安全的定义,是指通过采取必要措施,确保数据处于有效保护和合法利用的状态,以及具备保障持续安全状态的能力。
02
教育领域为什么需要数据安全?
近年来随着教育行业信息化程度的提高,大量的教育应用涌入学校,校外各类教育App也是层出不穷。这些应用涉及了个人、学校、家庭、教育科研机构、教育服务机构、教育管理机关等多个方面。覆盖了社会教育、家庭教育和学校教育,占据了课前、课中、课后各个教学场景,几乎在所有教学和学习场景下都能看到它们的影子。
这些应用交织在一起,必然产生大量的教育数据。然而面对如此庞大的教育数据,当前教育领域的数据安全管理制度还不是很完善,存在很多潜在的风险和问题。类似学籍、人事、成绩等大量机密敏感信息以明文方式集中存储在数据库系统中,使这些敏感数据面临被篡改和被窃取的风险,数据批量泄露的风险也大大提高。
教育数据安全不容忽视,教育各部门需要加强对数据安全的重视。各教育部门需要基于国家《数据安全法》,建立教育数据安全治理体系,提高教育数据安全保障能力,处理好数据的收集、储存、使用、加工、传输、提供、公开等工作。
03
教育数据安全面临哪些挑战?
伴随着教育数据的不断涌现,教育数据处理环节中也暴露了一些问题。
数据收集过程中的过度收集,比如学校收集家长的姓名年龄信息无可厚非,但是很多学校还会额外收集家长的工作、收入等信息
数据处理使用过程中没有对敏感数据进行安全保护,比如之前有些考试平台,将所有考生的身份证号、出生日期、手机号等公布出来
教育大数据平台运营方数据安全管理能力欠缺,比如学校会使用各种信息化系统和应用,有些公司根本无法保证信息的安全
教育环节中的很多角色自身数据保护意识不强,比如有些教师可能无意中会将一些敏感数据发给朋友
除了处理环节的问题,数据安全建设本身和当前教育信息化和、教育数字化转型也存在一些无法忽视的矛盾点。
教育信息化旨在通过互联网,借助云计算和大数据等技术,精简工作流程,提升教师教学效率和学生学习效率,实现科学化管理,但是为了保障数据安全,必然会在数据各处理环节添加各种加密、脱敏技术,以此来保障数据的安全性,这本身和教育信息化的提效相矛盾
一方面各方都在呼吁着数据共享,希望通过数据共享来获取更多维度的数据,实现更加全面的分析;另一方面,想要做好数据安全,必然会做更多的权限控制,尽量减少数据的访问以避免在访问过程中外泄。
04
教育大数据之数据安全系统
4.1 为什么要建数据安全系统呢?
先前我们已经完成了教育大数据平台的初步建设,包含数据集成系统、数据开发系统、数据资产管理系统、数据共享系统。
大数据平台作为海量教育数据汇集地,在运行过程中涉及敏感信息的操作和存储,当系统在机密性、完整性和可用性方面遭到破坏时,会造成公共利益的损害。如果没有采取安全防范措施来避免数据泄露、数据篡改、数据截取,大数据的信息安全问题将成为制约大数据平台应用发展和使用的瓶颈。因此,我们需要建设大数据平台数据安全系统来解决这一问题。
数据安全系统聚焦数据采集、数据存储、数据使用、数据共享等阶段的全生命周期的数据安全要求,为应用系统提供安全能力和安全监控,实现“可防、可视、可控”的安全目标。
4.2 数据安全系统提供哪些能力呢?
安全技术主要有三类:隐藏、访问控制、密码学。
大数据平台已具备完善的权限管理系统,将系统交付给客户之后,由客户进行权限的制定和划分。因此数据安全系统主要围绕隐藏和密码学两方面进行建设。数据安全系统提供数据加密、数据脱敏、数据水印、数字签名四种能力,为大数据平台的数据安全提供保障。
(1)数据加密
数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码,通常称为“密文”,使其只能在输入相应的密钥之后才能显示出本来内容,通过这样的途径来达到保护数据不被非法人窃取、阅读的目的。该过程的逆过程为解密,即将该编码信息转化为其原来数据的过程。加密技术通常分为两大类:对称式加密技术和非对称式加密技术。
注:想了解更多的伙伴,可以自行百度一下,网上对于对称加密和非对称加密的介绍很全面。
(2)数据脱敏
数据脱敏是在保留数据原始特征的条件下,对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的保护。通过定义脱敏策略,针对不同的使用单位和不同类型的数据进行脱敏。
(3)数字水印
数字水印技术是将标识信息(即数字水印)直接嵌入数字载体(包括多媒体、文档、数据库等)中,但不影响使用价值。数字水印不限制正常的数据存取,而是保证隐藏的信息不引起攻击者的注意,从而减少被侵犯的可能性。在此基础上再结合数据加密,来增强隐藏信息的安全性和抗攻击性能力。
(4)数字签名
数字签名就是在公钥加密系统的基础上建立起来的,数字签名的产生涉及的运算方式是为人们所知的散列函数。数字签名就是只有信息的发送者才能产生的别人无法伪造的一段数字串它同时也是对发送者发送的信息的真实性的一个证明,签署一个文件或其他任何信息时,签名者首先须准确界定要签署内容的范围。然后,签名者通过软件中的哈希函数计算出被签署信息惟一的哈希函数结果值,最后使用签名者的私人密码,将哈希函数结果值转化为数字签名,得到的数字签名对于被签署的信息和用以创建数字签名的私人密码而言都是唯一的。
05
教育场景下数据安全系统实践
5.1 产品架构
我们已经明确数据安全系统需要提供哪些能力了,接下来进行应用层设计,数据安全系统主要提供哪些功能呢?
整体系统共有五大模块:应用管理、安全能力管理、SDK管理、数据安全服务API、安全监控。
5.2 功能介绍
(1)应用管理
应用管理是各应用(系统)接入数据安全系统的入口,通过该功能对各应用(系统)进行注册。注册完成后,可查看已注册应用的详细信息,包括应用信息、授权码、数据密钥信息、脱敏规则信息和数字水印信息。
(2)安全能力管理
安全能力管理是对当前提供的数据加密、数据脱敏、数字水印进行配置管理。
数据密钥管理:数据安全系统内置多种数据加密算法,应用可根据具体场景,选择相关的算法。
数据脱敏规则管理:根据不同数据特征,平台内置了丰富高效的脱敏算法,可对常见数据如姓名、证件号、银行账户、金额、日期、电话号码等敏感数据进行脱敏。可将内置的各种脱敏规则,授权给各应用(系统),应用可根据具体场景,选择相关脱敏规则。
数字水印管理:平台内置了多种数字水印,包括数据水印和可视化水印,数据水印包括数值型和签名型水印;可视化水印为文本(页面)水印。支持将内置的各种水印,授权给各应用(系统),应用可根据具体场景,选择相关水印。
(3)SDK管理
安全系统的安全能力以SDK包的形式提供给第三方系统集成使用。为了更加精细化控制安全能力授权,数据密钥能力、数据脱敏能力和数字水印能力分别作为单独SDK提供给第三方。
数据密钥SDK:数据密钥SDK主要提供对称密钥加密、解密,非对称密钥私钥加密、解密,非对称密钥公钥加密、解密功能,以及数字签名和信息摘要功能。
数据脱敏SDK:数据水印SDK主要提供水印的嵌入和提取功能,同时水印SDK可以单独给第三方应用使用,所以它也包含注册安全实例来告之安全系统水印能力的具体使用场景等信息。
数字水印SDK:数据脱敏SDK主要提供对字符串和日期类型具体的脱敏能力实现。由于脱敏可以单独提供给第三方应用集成,所以脱敏SDK中也提供注册安全实例的功能,以告之安全系统具体脱敏使用场景等信息。
(4)安全监控
安全监控,是对平台的安全能力使用过程中产生的日志和数据进行记录的过程。包括安全洞察、安全处理数据量和日志详情。
安全洞察:主要展示安全监控指标、安全动态以及数据全生命周期安全能力处理的数据量。
安全处理数据量:主要用来记录外部应用(系统)使用安全能力处理的数据量
日志详情:记录外部应用(系统)使用安全能力产生的日志信息,包括基本信息和运行信息。基本信息主要是对象名称、对象类型、能力名称、能力类型、应用平台、用途等;运行信息主要是运行时间、运行时长、数据量、成功数据量、异常数据量等。
(5)数据安全服务API
数据安全服务API主要为安全能力SDK提供在线注册安全实例、获取安全能力列表以及获取具体密钥信息的等相关的安全服务。
06小结
在这个科技飞速发展、数据大爆炸时代,我们要严格遵守国家法规,不断提高教育数据安全保护水平,让教育数据成为教育科学决策、创新发展的动力,促进教育事业的健康发展。
博学网课程目录:
第一章 Scala核心编程
第二章 Hadoop生态核心技术
第三章 Hive数据仓库
第四章 Mapreduce
第五章 Yarn
第六章 Hbase
第七章 linux
第九章 scala
第八章 SQL
8.66 GB
4564644次浏览
语言汇编
8.78 GB
456547次浏览
综合教程
8.56 GB
5464647次浏览
影音制作
6.82 GB
4654646次浏览
动画设计
5.31 GB
4365464次浏览
影音制作
8.57 GB
7686855次浏览
影音制作