在采访中李飞飞表示,随着计算和数据上云的趋势快速发展,传统数据库步履蹒跚,云原生数据库和数据仓库利用云原生技术最大化的发挥池化的计算和存储资源弹性将是未来。同时随着AI技术的不断深入使用,数据库也将会越来越智能化,阿里云的目标是实现数据库的完全自动化和智能化。
“李飞飞,现任阿里巴巴集团副总裁、高级研究员,阿里云智能数据库事业部总负责人。美国计算机协会ACM杰出科学家,加入阿里巴巴之前为美国犹他大学计算机系终身教授。研究成果多次获得了IEEE ICDE、ACM SIGMOD最佳论文奖等重要学术奖项。他也是中国计算机协会CCF大数据专家委员会副主任、数据库专业委员会常委。
以下是采访实录:
01、YourStory:数据库技术正在发生哪些变化,这项技术的发展方向是什么?
李飞飞:数据库是一项成熟的技术,已经存在了40年,尤其是关系型数据库。随着计算和数据上云的趋势快速发展,计算和存储资源池化带来了系统设计的颠覆,传统数据库步履蹒跚。那么什么样的数据库可以在科技世界中不断进化获得快速发展呢?
云计算为数据库技术提供了很多机会,目前已经有多家云原生数据库公司可以与 Oracle 等公司竞争。云原生数据库将是未来。云计算的本质是存储和计算等资源的虚拟化和池化。这些资源被池化,并以IaaS服务对外出售。这对系统设计是个本质性的变革,因为系统的本质就是如何安全、可靠、高效的使用有限的系统资源。随着资源池化,云原生架构可以提供更好的弹性,并且易于灵活扩展。这也是新的云原生方向的初创公司激增的原因。
以前你要承受固定成本和绑定资源,但是今天你能够以灵活成本的方式使用资源池。如果你的应用在云上,你不但可实现高可用,并且停机时间为零。
现在说回云原生数据库。存储、网络和存储虚拟化是推动云计算起飞的第一个颠覆性技术,推动了早期云计算IaaS层的蓬勃发展。技术颠覆是一层一层发生的,在那之后平台层(PaaS)发生了许多变化,带来了2015年前后云原生数据库架构与算法的出现。
在传统数据库中,资源(存储和计算)是捆绑在一起,无法利用池化资源的强大潜力。阿里云的云原生数据库PolarDB,实现了灵活的存储计算分离。这有利于公司和企业用户弹性的进行存储和计算资源的独立扩缩容。比如,你可以通过一个按钮,自动化管理你的资源,包括 CPU 和存储等。在阿里巴巴,我们使用DAS (Database Autonomy Service)来实现auto scaling形式的自动执行和监视工作负载,而不需要人员干预。它是随需应变,富有弹性的,而这意味着企业可以节省成本、提升效率。
除此之外,传统的OLAP数据库系统正在快速的向新一代的云原生数据仓库演变,对海量数据提供实时在线的交互式分析服务。
由数据库系统演变而来的离线计算大数据系统也在和数据库系统发生快速的融合,数据库系统和大数据技术的融合交汇会进一步深入发展。利用上面提到的云原生架构来提供serverless、 存计分离、弹性高可用、高并发的在线交互式分析和计算是新一代云原生数仓的发展方向。阿里云的AnalyticDB (ADB) 正是基于这些原理来设计和实现的,提供对大数据进行高效的在线交互式分析。同时,因为基于数据库系统的体系设计,ADB同时还具备了支持高并写入和ACID保证。
展望未来, OLTP和OLAP系统都会向着持续提升HTAP能力的方向去发展,与此同时,结合shared-nothing的分布式架构和shared-storage/shared-everything的云原生架构会发生融合,利用云原生+分布式能力来提供下一代企业级数据库系统。
02、YourStory:什么是NewSQL?
李飞飞:在行话和术语之外,我先从技术上解释这一点,并谈谈传统的面向非结构化和半结构化数据存储和关系型数据库管理系统的关系。
以前,对面向结构化数据而设计的关系型数据库很重要的要求是需要确保原子性、一致性、隔离性、持久性 (ACID)。这意味在数据变更时,要保障一致性。为了确保性能稳定运行并提供隔离性,系统设计需要支持高吞吐量的工作负载并同时确保数据一致性和持久性。
谷歌在10多年前改变了这一切。他们相信,这种模式不能与产生大量数据的新应用一起工作。世界需要的是数据库系统的可用性,而不仅仅是保证持久性、一致性、原子性。现代企业需要一个高度可扩展的数据库系统来适应海量数据处理,尤其是面对非结构化和半结构化数据,而不是那些仅仅提供结构化数据处理并保证ACID特性的数据库。
10多年前面对这样的应用要求,以Google为代表的互联网公司率先利用了部分牺牲ACID保证来换取分布式解决方案进行横向扩展。Google的三大马车随之应运而生:GFS (google file system), Google Big Table, Google MapReduce, 这也是所有大数据系统发展的源头。
这也是为什么会出现Hadoop 这样大数据处理系统的原因。这些系统大约在 10多年前问世,利用传统的数据库系统技术和基于BSP模型的并行计算模型,但是放弃了ACID的保障,使用集群资源处理大量数据, 用户可以从 100 个节点扩展到 1000 个节点,满足了像流量激增的电商企业一样应用需求。
与此同时,非结构化数据和半结构化数据的海量存储和处理也蓬勃发展,衍生出来了丰富的NoSQL生态体系。随着近些年数据处理技术的不断发展,企业级应用对同时满足分布式水平拓展和一定程度上满足ACID保障有越来越强烈的需求,这就催生了 NewSQL 系统,简单来说就是把NoSQL系统和大数据处理技术与传统的面向结构化数据的关系型数据库系统技术进行结合,提供面对多源异构数据进行分布式存储、水平拓展并行处理、多模查询和分析、并提供一定程度的ACID保障。
阿里云NoSQL系统提供了业界领先的NoSQL技术并快速的提升其NewSQL能力,提供面向多源异构非结构化和半结构化数据的海量存储和多模处理。
例如我们的Tair缓存系统(企业级Redis),多年支持双11,提供持久化缓存和热点打散能力;我们的Lindorm系统提供企业级HBase能力,为海量数据的冷存储和高效处理提供一站式解决方案;我们的TSDB面向海量时序时空和监控数据提供AIoT的处理能力。与此同时,我们也与提供NewSQL技术的业界伙伴例如文档型数据库MongoDB建立了战略型合作伙伴关系。
03、YourStory:是否有面向数据科学家的产品?
李飞飞:我们的Data Lake Analytics"数据湖分析"产品,提供一个统一的交互式分析和计算接口来统一传统和云基础设施上的所有数据。
Data Lake Analytics可以将关系数据库、NoSQL/NewSQL 数据库、文件系统、OSS存储系统等各种数据组织成为一个数据湖,并创建交互式分析和批量处理功能。Data Lake Analytics实现了结构化和非结构化数据结合的大规模处理。这有助于数据科学家使用AI和ML 算法一起处理结构化和非结构化数据。
除此之外,面向多源异构数据库实例的管理和开发流程管理,我们提供了DMS (Data Management Service), 数据管理DMS是基于阿里巴巴集团十余年的数据库服务平台的云版本,提供免安装、免运维、即开即用、多种数据库类型与多种环境统一的web数据库管理终端;可以为企业用户快速复制搭建与阿里集团同等安全、高效、规范的数据库DevOps研发流程解决方案。
阿里云还有一款叫DataWorks的产品,提供了大数据OS能力、并以all in one box的方式提供专业高效、安全可靠的一站式大数据智能云研发平台。同时能满足用户对数据治理、质量管理需求,赋予用户对外提供数据服务的能力。利用这些工具和产品,数据科学家的工作效率得到提高,因为他们不必花费太多时间去处理底层数据。
04、YourStory:AI对于你们而言意味着什么?
李飞飞:云计算改变了一切,因为它推动了数据的增长。但是我们离真正的AI还很远。
我们今天开始使用深度神经网络,但是他们需要大规模数据才能真正有用。目前基于深度学习和深度神经网络的AI 是一个黑盒子,离真正的通用人工智能还非常遥远,但是应用在特定场景下这些AI 技术已经奏效。利用海量标注数据和训练,它在模式识别、计算机视觉和语音识别等方向取得了一些进展。现在,它也将影响数据库行业。
阿里云推出的自治数据库服务就是基于这个思路和技术路线,我们的路线图是使数据库的管控运维尽可能的自动化和智能化,同时也将AI和ML技术应用于数据库内核,提升数据库内核的智能化程度来处理复杂的查询优化、内存管理等任务。自治数据库的复杂性将不断提升,因为客户对于数据库的使用存在很大的差别,这使得整个进程的自动化变得有些困难。
但是,我们可以将 AI 用于常见的一些应用场景。例如,我们可以利用机器学习技术来自动适应系统的工作负载,改进数据库系统的资源分配和参数设置来提升系统延迟和吞吐,并使用机器学习算法来进行在线实时监控确保数据库安全且运行良好。
05、YourStory:工程师加入阿里巴巴时必须关注哪些未来的技术?
李飞飞:除了我上面提到的这些点之外,数据库安全也是我们非常关注的话题。
我们正在建设LedgerDB将区块链技术与数据库系统进行集成,这可以同步并验证数据和日志的完整性并提供不可篡改性。蚂蚁金服和我们的云上客户正使用区块链技术跟踪银行和商户之间的交易的完整性。利用安全硬件技术,我们推出了全加密数据库系统,可以确保用户数据在数据库系统从传输到存储到内核处理全程加密,进行无解密处理、计算、和分析,这样就能确保即使在最坏情况下数据库系统遭到内部破坏性攻击,敏感数据也不会被泄露。
除此之外,DMS企业版提供高效保障数据安全研发流程和运维流程管理,在保障数据库系统安全的同时提升研发效率。
我们拥有强大和丰富的生态系统, 开发人员不必担心他们了解哪种计算机语言、使用了哪个生态的数据库系统, 阿里云数据库都提供了强有力的支持, 因为我们永远不会在封闭的技术和生态体系中构建我们的系统。如果你是数据库或者是数据工程师,你不必学习所有的新事物,但是你一定要具备和保持学习新事物的能力和好奇心。
直播预告
2020年3月26日 15:00-16:00
邀您一同见证
云数据库SQL Server 2019版重磅发布
全面提升性价比及数据库能力
点这里
即可预约观看直播