网站架构图一般包括什么,展示商品的网站怎么做,网站建设需要的手续,怎么设计公司网页云布道师
本文根据 2023 云栖大会演讲实录整理而成#xff0c;演讲信息如下#xff1a;
演讲人#xff1a;刘一鸣 | 阿里云自研大数据产品负责人
演讲主题#xff1a;DataAI 时代大数据平台应该如何建设
今天分享的主题是 DataAI 时代大数据平台应该如何建设#xff0…云布道师
本文根据 2023 云栖大会演讲实录整理而成演讲信息如下
演讲人刘一鸣 | 阿里云自研大数据产品负责人
演讲主题DataAI 时代大数据平台应该如何建设
今天分享的主题是 DataAI 时代大数据平台应该如何建设这个话题既是对我们过去一年工作的反思和总结同时也是希望通过这个反思和总结不管大家是否使用阿里云的平台和技术在未来大数据平台的选型、运维、创新上都可以有一些启发同时也会思考未来大数据人的角色、工作方式是否有一些新的变化。
阿里云大数据的核心是两款分布式计算引擎在 ODPSOpen Data Processing Platform品牌之下今天的分享也会更多围绕 ODPS 的两个核心引擎来讲面向批量数据加工和海量存储的 MaxCompute、面向实时数仓以及交互式分析场景的Hologres。下面进入正题希望跟大家分享我们过去做平台时候的反思什么能力是关键能力以及今年我们做了哪些能力的提升。 降本能力灵活的付费模式驱动大数据成本的显著下降 降本能力是每个大数据平台的核心能力特别是作为公共云上的服务方我们不希望大家使用云上的大数据平台是一个成本的黑洞越用越贵每年老板说钱花哪里去还说不清楚我们希望不仅给用户提供一个成本费用说得清楚用得明白的平台也希望给用户提供一个通过正确使用产品可以不断降低单位拥有成本的平台。降本从不意味着要使用更便宜的规格更少的资源这会潜在牺牲平台的服务质量不是正确的降本姿势低价往往质量缺少保障最后会收获更低质量的服务更低质量的研发投入最后导致平台无法维系。
合理的降本方式首先是选择合适的采购策略、付费策略选择一个合适的技术。以MaxCompute 为例平台提供多种付费方式从比较经典的预付费或者叫包年包月到用得最多的后付费或者叫按量付费的模型。预付费对预算控制更精确费用提前说清楚但资源使用受限制无法满足临时性需求也会产生闲置资源的空闲浪费。按量付费模型根据实际业务规模产生费用无需提前做容量规划但实际费用容易超出预算控制。现在我们希望把两种模式做一些结合。
我们看到大部分数据加工作业都具备一定的时间规律夜间往往高峰期早上上班看到计算结果白天相对水位是低峰期这里可以利用 MaxCompute 的分时弹性能力日常低水位运行高峰期弹性出来额外资源。分时弹性去年上线的今年通过对库存管理的优化实现库存效率上的提升在 9 月 20 日开始 MaxCompute 弹性部分的 CU 单价直接降低 50%。如果一天有 8h 作业跑不满的情况采用分时作业的方式一定是降本的希望每个用户可以根据大家实际使用场景去选择分时策略。
原理类似 ECS 上的 Spot InstanceMaxCompute 今年推出了闲时作业也通常叫做 SpotJob定价直接是按量付费定价的三分之一闲时作业是把大数据集群的闲置资源服务出来不一定保障每天运行的时候都能得到一样的资源执行一样快在集群繁忙时会有更多的作业等待时间但对于延时不敏感的作业如历史数据的导入、日常开发调试作业的场景通过使用闲时作业可以有效降本 66%。 分时弹性既能满足弹性也能满足预算的管理那么该怎么设置是最优的MaxCompute 发布了成本优化器帮助用户分析过去 30 天所有作业的资源分布特征展示出高峰期和低谷期给出弹性策略应该怎么设计的建议。在弹性的基础上我们给作业增加了一个关键的约束条件叫基线基线之前的作业需要足够的资源保障让结果准时计算出来基线之后的作业可以跑慢一些更节省资源和费用这样就区分了作业的优先级和重要性。绝大部分用户使用成本优化器之后通常有 20% 以上成本降低建议大家可以尽快采用起来。
接下来我们谈谈存储如何降本。数据在实际使用时会分特征有些数据是高频访问数据的重要性有可能更高有些数据是低频访问数据一个月就读取一两次有的数据是审计要求不可以删除一年不一定访问一次。数据有价值分配那么我们的数据成本是否也应该有分层设计呢当然。MaxCompute 为不同访问特征不同价值数据提供不同的存储能力分层存储提供了分层的单价。通过分层存储的方式可以看到一些低频访问的数据长期访问的数据成本可以降到以前的三分之一。
计算和存储可以通过平台的使用策略来节省成本其实还可以通过存储技术的创新实现进一步的降本。JSON 是互联网上使用非常广泛的数据结构半结构化查询灵活存储也方便Schema 可以随时调整但过去 JSON 如果用字符串去存储的时候哪怕仅仅访问一个字节也需要把几兆字节全部解析出来对计算和IO都是极大的浪费。另一种方案是 JSON 数据落库前提前进行 JSON 结构的打宽需要大量的加工作业也是对计算资源的浪费。
如何有效提升 JSON 数据类型的存储和访问效率成为大数据平台的关键能力今年包括 MaxCompute 和 Hologres都提供 JSON 原生化的管理能力包括元数据支持和存储列式压缩把半结构化作为一级处理类型来支持在用户实践中绝大部分用户的 JSON 存储成本会降到以前的五分之一而且查询会变得更快。
轻运维能力Serverless 变革大数据运维模式 云上大数据平台应该提供运维足够简单易用把脏活累活帮助使用者运维掉帮助大数据工程师实现角色升级从过去相对被动每天考虑系统平台的稳定性、扩展性、资源如何分配、备份、容灾、升级、修 bug 这些脏活累活中解脱出来转变成数据的分析师变成AI专家变成领域专家而不是做重复的运维工作。
我们认为 Serverless 架构是解决运维问题的关键那么如何做 Serverless 架构呢从大数据架构上讲通常我们分三种1.Shared-Nothing 架构存算一体。通过节点之间的横向扩展实现计算力和存储能力的提升。2.Shared-Everything计算存储全部解耦开来所有的资源都可以共享。3. Shared-DataData 部分是共享计算部分隔离开来提供更好的隔离能力。每个技术会选择不同架构。
MaxCompute 选择 Shared-Everything对平台侧的隔离技术实现要求很高对运维侧、调度侧要求更高所有计算资源、存储资源是共享在统一的公共集群里。Hologres 选择 Shared-Data 架构这个系统需要更多考虑在线服务场景下资源的隔离和稳定性所以不同系统选择不同架构。
这个架构背后我们会把整个集群当做一个统一的计算资源来管理。对用户来说最大价值是不仅是使用成本的降低不需要提前做容量规划更重要的是不需要处理复杂的升级运维让用户可以实现零停机的方式实现版本的迭代这都是 Serverless 架构创造的价值平台侧希望把脏活累活包括升级、备份、灾备、弹性这些事情通过架构的方式把它解决这也是 Serverless 背后核心的理念。
大家过去讲 Serverless 更多讲资源上省钱只为使用的资源付费而我相信Serverless 更多是把运维方式转变让工程师更聚焦到价值的创造上。 Hologres 在 Serverless 架构上一直演进今年提出了弹性计算组的概念这个计算组概念背后是共享数据共享接入层但在计算节点上做了资源切分当不同业务团队使用同一份数据的时候每个团队可以为自己的使用场景去弹性分配资源同时保障数据的一致性支持实时写入实时查询这是在 Hologres 上做的创新。
开放能力湖仓一体与开放性 在谈到大数据平台的开放性时更多讲 Open Storage Open Format今天阿里的大数据平台希望做到更多一层。云计算对技术的开放性要求会更高一方面云厂商不希望自己变成绑架用户的角色MaxCompute 也不希望大家使用之后就被绑架在平台上不可以切换。另一方面云平台上不同技术之间交互的强度、密度是远大于线下的技术之间需要分钟级部署分钟级打通用户对技术的交互性要求很高我们希望把开放性做得很彻底我们不希望把创新只放在自己手里我们希望把创新交还给用户。
首先阿里云的大数据完全拥抱 Open Storage Open Format提供了湖仓一体的解决方案为用户提供接近原生的元数据管理和数据读写体验。对于什么是湖仓一体行业内有两个思路一个是在湖上长出一个仓把湖变成仓。典型特点是把湖上的数据结构提供更好的更新能力接近数据库的开发体验。另一个方式从仓的管理能力拓展外表能力实现湖上半结构化、非结构化数据以元数据方式管理起来相当于仓去管理湖这也是湖仓一体的形态。MaxCompute 是第二种形态用仓去管湖把存在 OSS 上的 Hudi 格式、Delta Lake 等格式包括今年阿里自己创新的 Paimon 格式都可以在 MaxCompute 和 Hologres 中作为外表直接访问。同时也做了一些创新把 OSS上 的非结构化文件定义为抽象的目录表这样在数仓里可以用更加精细化的安全管控方式去做授权哪些用户可以访问哪些文件怎么访问包括审计都可以记录下来。
湖仓一体最关键是元数据的管理数据不管存在仓上、湖上需要有一个统一的视图可以看到所有的元数据数据被谁定义数据怎么解析这是湖仓一体核心的概念而并不是一定是一个系统还是两个系统。
MaxCompute 今年在开放性上有很大的变化。大家过去认为仓的理念是数据计算都在这儿但我们今天希望把 MaxCompute 存储作为独立的产品形态对外提供服务把Storage这一层提供产品化的能力提供 Storage API支持高吞吐、高性能的原生 IO 接口。不管使用机器学习的 PAI 平台还是使用 Spark、Presto都可以像MaxCompute 原生的 SQL 引擎一样去访问仓里的数据我们希望把自研大数据平台的数据开放出去支持用户使用第三方引擎持续创新。
智能优化能力AI 加持的智能数仓 过去做优化的时候很依赖于 DBA 同学对一个数仓技术原理的理解在云的时代用户把数据托管到云平台上云平台就有很大责任帮助用户做好优化这件事。我们希望从过去基于经验的运维向智能化运维前进。
比如 MaxCompute 通过物化视图把公共的 SQL 计算子集推荐出来实现资源的复用这是一种空间换时间非常有效的方法。经过一年多时间的迭代在推荐效率上已经做了很大的改进绝大部分推荐出来的物化视图质量都是很高可以做到成本的节省和效率上的提升。
大数据成为 AI 的基础设施 今年 AI 很热很多了不起的创新但其实 AI 的创新中大数据也扮演了关键的基础设施角色。同时我们也希望用了云上大数据平台的用户不需要再做那些低效繁重的运维工作而是更多做一些 AI 上的场景和应用创新。我们也提出了大数据 AI 一体化事实上大数据 AI 是各有分工大数据为 AI 提供数据的支撑这包括大数据平台要做好规模数据的处理提供分布式计算框架提供科学计算的一站式开发环境其次机器学习平台也会为大数据平台提供优化的算法、优化的模型。 在过去 SQL 的基础上我们认为 Python 也应该成为 MaxCompute 平台的一级开发语言。MaxCompute 全新发布One EnvOne DataOne Code这背后核心就是提供一个 Python 的运行环境一个Notebook的交互式开发体验让有 SQL 基础的同学有 Python 经验的同学需要利用 Python Library 进行数据处理的场景可以在统一的开发环境下实现高效率的开发和调试实现 Python 和coMaxCompute 数据的原生打通。
全面升级 DataFrame 能力发布分布式计算框架 MaxFrame100% 兼容 Pandas 等数据处理接口通过一行代码即可将原生 Pandas 自动转为 MaxFrame 分布式计算打通数据管理、大规模数据分析、处理到 ML 开发全流程打破大数据及 AI 开发使用边界大大提高开发效率。
最后讲下向量数据库Hologres 内置达摩院向量引擎 Proxima支持高性能、实时化的向量检索服务。使用 SQL 接口可以访问向量数据在原有交互式分析场景下帮助大家更好使用 AI 场景。