AtomData结合阿里云分布式存储实现海量数据分析(二)

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
可观测可视化 Grafana 版,10个用户账号 1个月
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: AtomData结合阿里云分布式存储实现海量数据分析(二)

云原生实时数仓-AtomData结合阿里云分布式存储实现海量数据分析(二)

嘉宾信息

王博

杭州石原子科技AtomData技术负责人


AtomData结合阿里云分布式存储实现海量数据分析(二)


四、AtomData产品特点

image.png

儿童地产是一款实的,高能的,低成本的,它的数据分析的成本比其他的场景低,减少了30%80%,它可以兼容市面上20+款的工具,可以实现从数据库到无缝的实时同步,在场景和计算场景都有较强的优势。

可以支持从到级的这个存储扩容,另外我们的计算节点,可以支持到几千家的这个数据节点。


五、AtomData的技术架构

image.png

介绍一下技术架构,它是如何去做到,并且如何去支撑实时数据的实时分析的?

一款是基于一个架构的一个数据库产品,它首先分为三个数据类型的节点,你控制节点,它可以客户端的连接的路由管理的解析,以及去生层执行计划,做查询,优化资源管理以及任务的工作点,我们支持多个点的部署,并且在上面去套这种均衡去去实现r c的高可用节点,存储和计算节点,它里面集成了我们自研的一个内存引擎,加上面向量化的引擎实现的数据存储和计算的,是可以做到部署的,通过p的方式去实现了节点,这个的问题和实现,对于海量计算的支持,它是只是负责计算的总节点,它可以从节点去取数,包括从其他的要引擎里面去取数,实现实现据的计算,所以说可以认为一种它只负责数据的计算,但是它是有,它是种式结合。下面是高速置通说,去缓存,从外表引,从其他的节点上面载过来,数据实现高速计算这。

以下是技术架构图:

 

image.png

里面了支持常规的设,包括支持布式的快式存储,合布式的这种象我们配了这架构,以及c操作统的产操作统引擎,我们自研了这种列引擎。

我们通过算法来实现数据之间在副本之间的复制,我们把存储引擎成两个区域,一个面向化的数据可以告诉了通过mysql协议或协议写到多少区域来,维护了组建索引和面向列的存储结构。数据会被定时的按照策略,是面向独优化的一个区域,它里面构建了面向的这种数据文件,并且可以实现数据文件的压缩,构建了索引,包括组的索引,包括k, d的索引。索引构过程中,构建过程是完全是基于异步的,它不会影响数据的写入,我们现在兼容支持对ht外表os外表,es外表,mysql外表访问,我会接入多的外表,在查询引擎端,我们这支持mysql协议和议擎面,包括基于采样实现了这种这种优化器的这种算法,包括对应的,可以通过去实现增量化图的改写。

用户可以通过去做的换算和大家的枚举去实现最好的执行路径的选择。实现了引擎,包括它整个引擎里面是基于量化去做的,也实现了常规的,比如所的能力,包括一些能力,在执行器里面,我们实现了大量的缓存的技术,包括我们将每个缓存都按照4k的方式去做对齐,这样子,从储读取好像读取到数据,按照内存对齐的方式去做后续的计算,也可以在执行阶段去做大量的缓存的优化。对工具来说,我们的ai框架,我们都是支持的。

image.png

常规执行器的架构,这种类型的,它的特点是独立,适合这种宽表的独立的分析,但是它的缺点,是无法执行这种方式的,因为能整体对单表来说是合适的。另外一类像这种模型,它的特点是需要论盘的任务部任务的,因为它有盘的设计,这种架构的特点是运行比较缓慢,但是它的任务的稳定性很高,它是适合于这种离线计算的。最后一种,是app架构的,它的特点是任务间通过流水线去运行的数据,数据在之间内存的使用价比高,用了这种架构,这种架构的特点就是运行速度快,但是比较一些,是基于最后一种app架构的一个分布式数据库。

我们为了这大规模计算,我们增加了数据交换的一些优化,比如说我们允许在间数据可以去落到分布式吞突里面去做落盘,每个失败之后,可以数据去恢复作业了,就实现了这种规模的的稳定性。我们技术实现了像聚合算子溢出的计算也保证了稳定性。所以说,这也是利用了分布式存储的特性,帮助我们做了优化。

image.png

另外,就是我们是如何去支持大规模数据导出的,包括如何去适配这种大数据的计算框架的。我们如何去选用什么样的技术来解决数据传输的问题,第一个是我们需要一个标准的api,每个开发者去减少我们的学习成本,另外是尽可能去减少最终程序的,比如说现在面向gdc这种协议的数据库,每个数据库都有自己的给所有的语言去开发程序,对于对于学习者,开发者来说,它的学习工作量也是蛮大的;第三块,我们是需要高性能的传输性的;第块,我们是要能够去做并行传输,能够实现数据导入端和到端是可以做一对一写入的;第块,是要求api尽量的能够简单和易用,

image.png

我们为什么不推荐里面去使用或gdc的传数据?其实c和gd bc协议是在1992年和1997年开发的,他们的协议的编码来面向行的协议,有一个特点是它的压缩率不高,在面向列数据库的时候,它的编码转换的效率也是不高的,因为我因为客户端把数据面向行的编码发送给客户端,发送给服务端的时候,服务端要去做解码,解码之后还要编码层面向编的个编码,转换的效率是比较低的,由于面向不太高,他整个传输的效率和速度也是不太高的。所以说在大数据的析场景中,由语音数据库的编码市面向列的。我们也需要一种面向类的这种客户端和服务器的交换的协议,来实现具有更高编码效率的更高网络传输效率的合并,更低开销,并且能够实现数据的行传输,我们是选用了作为作为面向的数据传输协议。

无论是客户端还是服务服务端,都可以去随机的访问里面的数据结构,并且在现在的处理器大构上来说,处理是非常高效的,可以开发出非常高效的算法来处理基于基于和数据结构,另外,它使得系统和系统之间的数据交换变得很高效了,避免数据序列化和序列化和和这种编码转换之间的种开销,它也支持复杂结构嵌套的这种数据结构。

image.png

这是我们作为数据交换的一个图。

比如说一个客户端程序,它首先连接到我们,查询我们有哪些客和哪些的点,根据数据的分规则连接,直接将数据通过的编码形式发给它,可以把这个数据写到减少,减少了数据从r c编码率的问题。另外让用户无感的通过gd协议来实现对数据的这个存取。

image.png

目前包括python的一些ai, ai的一些生态适配了我们的这个连接键,比如说这个驱动的性能要提高了40倍,我们还是得益于这个软件。


六、适用场景

image.png

我们在面向大数据和面向ai的这种场景下面,我们的数据库的重启速度和数据库的访问效率,是其他数据库的大概提升了40倍,升了10%到五倍之间。

典型的场景是报表平台的支持,是这种大数据数的一种场景,为了满足客户在固定报表上的一多样的查询需求,通常去把数据完成,推到一款数据库里面去,由于用户有多维的分析需求和有多样的分析需求,用户有可能会去做他的,基于宽表的这分析,也有可能去基于多维的多种数据分析,在这几个场景都比较合适,对于高并发的业务,以做到2000的,gb这种复杂的查询,我们可以做到,我们可以做到秒级时延,我对这的索引,可以实现这种低于点的数据的查询,通过倒台的和b的索引,支持从快速的扫描的查询,通过量化的引擎能够支持取速度,通过我们支持区和二级分区,可以支持数据的快速的裁减,通过这种物化的视图和通过全表示图,可以实现对于不同明细的查询,另外一个场景,是典型的,客户一般会在离线速仓的基础上,增加了实时出仓的部分使用,类似于hadoop去同时满足数离线计算的需求和实时分析的需求,这种用户一般需要引入多个大数据的组件,用户可以实现用一个产品去解决用户的个需求。我过可以让用户基于数据流去做数据增计算,将增的计算结果写入到据库中,也可以打离线的业务库导入的数据,导入数据的离线的处理带数据量,在一的情况下,用户没有非常强的非结构化数据分析需求情况下,是去替代hadoop一个比较好的一个选择,另外在运营场景中,一般会根据公司等组织架构成多个级,尤其是尤其是对劳动力型的这种企业而言,人员流动比较频繁,对导入的模型中有大量的更改,有大量的维度。

它更改大传统的大数据,总通过的方式去实现对于预计和模型去应对复杂的查询分析的,我们利用了实时的图和很强的分析能力,去实现了对于自由维度的这种分析的需求。数据模型灵活,可以支持多种的建模方式来适配业务的建模的逻辑,利用我们现在化的这个视图,可以完全的去匹配这种复杂度。这种聚合的逻辑能够实现对于也可以实现,对于复杂模型的这种预处理可以支持多种的数据导入方式,去保证了端运营场景下面的数据源不一样的问题,通过我们的组索引实的更新用户画像的分析,会从不同的数据源中去去做事实和维度的数据,对种数据去做深度的加工,去做多层次的种加工,一般用户会去做一张比较宽的用户画像表,去表示是用户的,包括上百个种分析维度,我们专门的大场景做了表多的优化来实现对于的这种分析,第一块是我们有这种模型,我们可以通过对计算。

计算另外一块是我们的引擎,我们通过去拆分我们的去实现对于每个分区的加载和初始化能够实现级别,而不是要去读做到on的时度。

另外,我们通过图可以去解决,对于多表多化的问题,可以让用户通过图来去解决数据的预聚合的问题,也可以通过我们的实时分析引擎去做数据的实时的分析,包括去做面向于多维的,或者是面向于几思维的这种实施的数据分析。

另外,我们在整个生态上我做我们适配了非常多工具。第一块,我们是适配了io s和oss数据管理工具,我们适配了和其他工具。数据组件上,我们外表适配了,适配了框架数,我们数据库原生式支持数据库的全量和增量的备份。

另外,也可以,也可以在这种小小数据量的情况下,用mysql去做小表的配分。另外,我们通过一条工具也可以去实现对于s, q, l种数据源的抽取和抽取和导出,第三方java, python等等主流的开发语言,以及提供对应的程序。
在外表上,我们支持o表,q表以及地图,我们支持了思维地图,融地图。数据可视化上,支持了科技数据可视化方案,数据上,也失陪了很多。另外,我们去年分布存储方案上也做了不少的功课,利用分布式快存组合分布对象存储。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
设计模式 安全 Java
【分布式技术专题】「Tomcat技术专题」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)
【分布式技术专题】「Tomcat技术专题」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)
67 0
|
12天前
|
关系型数据库 分布式数据库 数据库
PolarDB,阿里云的开源分布式数据库,与微服务相结合,提供灵活扩展和高效管理解决方案。
【7月更文挑战第3天】PolarDB,阿里云的开源分布式数据库,与微服务相结合,提供灵活扩展和高效管理解决方案。通过数据分片和水平扩展支持微服务弹性,保证高可用性,且兼容MySQL协议,简化集成。示例展示了如何使用Spring Boot配置PolarDB,实现服务动态扩展。PolarDB缓解了微服务数据库挑战,加速了开发部署,为云原生应用奠定基础。
153 3
|
12天前
|
存储 关系型数据库 分布式数据库
PolarDB,阿里云的云原生分布式数据库,以其存储计算分离架构为核心,解决传统数据库的扩展性问题
【7月更文挑战第3天】PolarDB,阿里云的云原生分布式数据库,以其存储计算分离架构为核心,解决传统数据库的扩展性问题。此架构让存储层专注数据可靠性,计算层专注处理SQL,提升性能并降低运维复杂度。通过RDMA加速通信,多副本确保高可用性。资源可独立扩展,便于成本控制。动态添加计算节点以应对流量高峰,展示了其灵活性。PolarDB的开源促进了数据库技术的持续创新和发展。
216 2
|
5天前
|
设计模式 安全 NoSQL
Java面试题:结合单例模式与Java内存管理,设计一个线程安全的单例类?分析Java多线程工具类ExecutorService与Java并发工具包中的工具类,设计一个Java并发框架的分布式锁实现
Java面试题:结合单例模式与Java内存管理,设计一个线程安全的单例类?分析Java多线程工具类ExecutorService与Java并发工具包中的工具类,设计一个Java并发框架的分布式锁实现
12 0
|
14天前
|
运维 监控 Java
在大数据场景下,Elasticsearch作为分布式搜索与分析引擎,因其扩展性和易用性成为全文检索首选。
【7月更文挑战第1天】在大数据场景下,Elasticsearch作为分布式搜索与分析引擎,因其扩展性和易用性成为全文检索首选。本文讲解如何在Java中集成Elasticsearch,包括安装配置、使用RestHighLevelClient连接、创建索引和文档操作,以及全文检索查询。此外,还涉及高级查询、性能优化和故障排查,帮助开发者高效处理非结构化数据。
26 0
|
16天前
|
关系型数据库 MySQL 测试技术
《阿里云产品四月刊》—瑶池数据库微课堂|RDS MySQL 经济版 vs 自建 MySQL 性能压测与性价比分析
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
|
2月前
|
人工智能 监控 开发者
阿里云PAI发布DeepRec Extension,打造稳定高效的分布式训练,并宣布开源!
阿里云人工智能平台PAI正式发布自研的 DeepRec Extension(即 DeepRec 扩展),旨在以更低成本,更高效率进行稀疏模型的分布式训练。
|
2月前
|
Cloud Native 数据管理 关系型数据库
【阿里云云原生专栏】云原生数据管理:阿里云数据库服务的分布式实践
【5月更文挑战第21天】阿里云数据库服务在云原生时代展现优势,应对分布式数据管理挑战。PolarDB等服务保证高可用和弹性,通过多副本机制和分布式事务确保数据一致性和可靠性。示例代码展示了在阿里云数据库上进行分布式事务操作。此外,丰富的监控工具协助用户管理数据库性能,支持企业的数字化转型和业务增长。
200 1
|
2月前
|
关系型数据库 分布式数据库 数据库
【阿里云云原生专栏】云原生时代的数据库选型:阿里云RDS与PolarDB对比分析
【5月更文挑战第24天】阿里云提供RDS和PolarDB两种数据库服务。RDS是高性能的在线关系型数据库,支持MySQL等引擎,适合中小规模需求;而PolarDB是分布式数据库,具备高扩展性和性能,适用于大规模数据和高并发场景。RDS与PolarDB在架构、性能、弹性伸缩、成本等方面存在差异,开发者应根据具体需求选择。示例代码展示了如何通过CLI创建RDS和PolarDB实例。
678 0

热门文章

最新文章

  • 1
    MockedStatic 用于模拟静态方法
    4
  • 2
    @SneakyThrows 是 Lombok 库中的一个注解
    6
  • 3
    在会议系统工程中,Python可以用于多种任务,如网络请求(用于视频会议的连接和会议数据的传输)、数据分析(用于分析会议参与者的行为或会议效果)等。
    9
  • 4
    在可视会议系统工程中,系统工程方法可以帮助我们系统地规划、设计和实现一个高效、可靠的可视会议系统。
    10
  • 5
    我们可以从系统工程的角度来讨论如何优化组织架构,并给出一些可能涉及的Python应用领域的示例。
    7
  • 6
    在环境治理领域,污染治理系统工程旨在通过系统的方法来解决环境污染问题。这通常包括污染源的识别、污染物的监测、治理技术的选择、治理效果的评估等多个环节。
    14
  • 7
    我将提供一个简化的Python代码示例和详解,以展示如何使用Python和Django框架来构建智能化小区综合物业管理系统的一部分功能。
    8
  • 8
    在系统工程中,软件测试是一个至关重要的环节,它确保软件的质量、可靠性和性能。软件测试通常包括多个阶段,如单元测试、集成测试、系统测试和验收测试等。
    14
  • 9
    在软件部署阶段,系统工程的目标是确保软件能够顺利、稳定地部署到目标环境中,并满足用户的需求。
    11
  • 10
    航空航天领域,系统工程被用于设计复杂的飞行器和系统。这包括飞行器的结构、推进系统、控制系统等。
    12