6月,汇集当今大数据界精英的Spark Summit 2017盛大召开,Spark作为当今最炙手可热的大数据技术框架,向全世界展示了最新的技术成果、生态体系及未来发展规划。

巨杉作为业内领先的分布式数据库厂商,也是Spark全球的14家发行商之一,受邀在本次大会做了题为“分布式数据库+Spark架构和应用”的分享。巨杉数据库联合创始人、CTO及总架构师也将给大家分享大会的见闻以及这一架构的发展和应用情况。

Spark全面进化,扩大生态助力人工智能

随着Spark 2.2 版本的发布,Spark性能有了更大提高。在Spark Streaming方面,最新版本在相同条件下达到了常用流处理架构(如Apache Flink以及Kafka Streaming)的5倍以上,超过6000万记录/秒。在测试中,Spark对于重要负载的端到端响应时间也已经达到了亚毫秒级别,真正实现了实时性。

Spark 公布的流处理性能对比图

除了性能的提升,Spark的Structured Streaming体系也基本实现了产品化。在性能、稳定性的保证下,Structured Streaming支持更多的大数据体系架构,从图处理到深度学习都能提供最高性能产品级别的实时流处理支持。

此外,在大热的人工智能方面,Spark也开始了全面的支持。Spark 2.2版本加入了完整的Deep Learning Pipeline,作为深度学习的数据源,提供全面的数据支持。

王涛认为,“Data is the new oil!”十分准确地描述了大数据和人工智能间的定位问题。可以说,人工智能是新的引擎,大数据就是引擎所需要的能源。数据是深度学习技术的基础,只有两者齐备,人工智能才能真正“自我学习和自我进化”。Spark作为大数据领域最受欢迎的高性能分析处理框架和流处理框架之一,全面支撑人工智能和Deep learning也是必然的。使用Spark最新的Deep Learning Pipeline套件,用户可以在现有的Spark机器学习工作流程中调用深度学习库,对成型的模型进行迁移学习,利用Spark的分布式计算引擎通过AI处理复杂数据。Databricks首席技术专家Matei Zaharia也表示,这一套件的正式发布,是AI开发普及化、大众化的重要一步,可以帮助更多用户更好的入门AI和深度学习技术,能大大加强Spark技术在未来技术领域中的重要性。

毋庸置疑的是,Spark的产品化进度正在加快,也在不断扩大自己的技术生态。

分布式数据库+Spark架构引领主流,SequoiaDB x Spark完善大数据生态

近年来,“分布式数据库+Spark”的架构随着Spark的应用中发展成为其中一套主流架构。分布式数据库提供的海量数据存储管理能力以及高并发地实时数据查询交互,与Spark的批处理实现了完美的互补,是Spark应用架构不可或缺的重要支撑。

巨杉是国内对于“分布式数据库+Spark”这套架构最早的实践者之一,SequoiaDB的实时高性能、弹性扩展性成为了这套架构的坚实数据基础。从2015年至今,SequoiaDB分布式数据库与Spark的深度整合架构已经十分成熟,目前已经有许多银行等大型企业在数据加工、交互式访问等生产系统中应用了这种架构。

为实现SequoiaDB分布式数据库与Spark的深度整合,技术方面,通过巨杉自己的连接器将分布式数据库与Spark架构进行深度对接。

· 对接的方式同时支持文件块和datanode两种方式,并且可以很好的支持查询条件下压,通过匹配巨杉数据库自身的索引,提高查询效率。

· SequoiaDB for Spark Connector在生成查询的访问计划时,还能智能判断查询的数据和Spark 计算Worker的位置,默认优先匹配本地数据,从而减少数据在网络传输的开销。

· 连接器可以实现文件块级别的并发,充分利用分布式多节点有效提高集群整体I/O吞吐能力。

分布式数据库+Spark 技术架构图

Spark默认支持从文本文件和HDFS文件等数据源中获取计算的数据来源也支持将第三方的产品作为Spark计算框架的计算任务的数据来运之一。对于分布式数据库,除了能够支持海量数据分布式存储外,还能够为用户提供多索引功能,支持用户在高并发场景下高性能实时数据访问。

分布式数据库+Spark两者结合主要的使用场景是:在海量数据中,通过条件检索记录和在海量数据中,针对某些特定范围记录,例如针对过去一个月的记录进行统计分析。这类有明确查询条件的查询和分析,非常适合Spark+分布式数据库。分布式数据库+Spark架构将能实现从数据高并发实时交互查询,到高性能数据计算再到数据实时流处理的全功能覆盖。

在应用实践上,某股份制银行使用巨杉数据库构建近线数据平台,通过SequoiaDB+Spark架构,SequoiaDB保证了全量近线数据的存储和实时在线,同时提供了全量数据的实时查询访问,而Spark则提供了条件检索和统计分析的功能。

一方面将用户的全量历史数据做到全面在线化,使得银行客户能够通过柜面应用、手机、网银等多渠道访问到自己开户以来所有的交易行为;另一方面对银行内部的行员提供自由报表分析、支持公检法历史数据查询等多种业务。

此外,某银行通过SequoiaDB+Spark的底层数据平台,为其“实时头寸” 解决了原有报表系统只能做“T+1”的限制,为系统提供了高性能的实时数据分析、查询、展现。其中,Spark的高性能提高了分析统计的效率,而SequoiaDB的数据实时访问则保证了数据的真正“实时性”。

对于接下来和Spark合作的方向,王涛表示,随着Spark生态的不断丰富以及其技术组件对不同技术的支持不断完善,Spark生态将会是未来大数据领域最强有力的一股技术力量。

作为Spark全球发行商之一,巨杉会进一步加强与Spark/Databricks的合作,加大SequoiaDB+Spark方案并力求与Spark框架进行更深度的对接,实现从数据高并发实时交互查询访问,到高性能数据计算再到数据实时流处理的全功能覆盖,使企业用户能够获得最高性能、最全面的大数据平台。

SequoiaDB巨杉数据库2.6最新版下载

SequoiaDB巨杉数据库技术博客

SequoiaDB巨杉数据库社区

SequoiaDB x Spark 新主流架构引领企业级应用的更多相关文章

  1. 全新办公方式,iClap引领企业级服务新浪潮

    随着企业级服务,SaaS市场的飞速发展,国内市场上,伴随着“马云又一个反人类的社交梦-钉钉”的出现与强势推广,企业协同办公类的产品被不断的呈现在企业的视线中,一时间,似乎我们传统的工作方式好像已经成了 ...

  2. LAMMP架构的企业级应用

    LAMMP架构的企业级应用 ========================================= LAMMP是什么 LAMMP的实现 LAMMP适用的生产环境 ============= ...

  3. Spark on Yarn 架构解析

    . 一.Hadoop Yarn组件介绍: 我们都知道yarn重构根本的思想,是将原有的JobTracker的两个主要功能资源管理器 和 任务调度监控 分离成单独的组件.新的架构使用全局管理所有应用程序 ...

  4. 新型I/O架构引领存储之变(四)

    新型I/O架构引领存储之变(四) 作者:廖恒 应对挑战--商务及技术考量 本文前面的部分分析了砖块模式与生俱来的总拥有成本(TCO)过高的问题.为了战胜这一挑战,超大规模数据中心的运营者须要从两个不同 ...

  5. 新型I/O架构引领存储之变(二)

    新型I/O架构引领存储之变(二) 作者:廖恒 众所周知,支持存储及网络I/O服务的接口协议有很多种.比方,以太网及Infiniband接口都支持採用iSCSI协议来实现存储业务,它们也因而成为了ser ...

  6. Nginx架构的企业级应用

    Nginx架构的企业级应用 ==================================================== 实现HA高可用集群 实现LB负载均衡集群 Nginx实现反向代理 ...

  7. 新项目架构从零开始(三)------基于简单ESB的服务架构

    这几个月一直在修改架构,所以迟迟没有更新博客. 新的架构是一个基于简单esb的服务架构,主要构成是esb服务注册,wcf服务,MVC项目构成. 首先,我门来看一看解决方案, 1.Common 在Com ...

  8. 2019-1-24 Spark 学习 --总体架构

    2019-1-24 Spark 学习 --总体架构 新建 模板 小书匠 1548339392539.jpg 1548339357270.jpg 1548339372461.jpg 1548339345 ...

  9. [51CTO]服务器虚拟化开源技术主流架构之争

    服务器虚拟化开源技术主流架构之争 http://virtual.51cto.com/art/201812/589084.htm 大部分客户已经是KVM+OpenStack的架构了 我所见到的 工商云 ...

随机推荐

  1. ZooKeeper实践:(2)集群管理

    前言: 随着业务的扩大,用户的增多,访问量的增加,单机模式已经不能支撑,从而出现了从单机模式->垂直应用模式->集群模式,集群模式诞生了,伴随着一堆问题也油然而生,Master怎么选举,机 ...

  2. bootstrap学习笔记之为导航条添加标题、二级菜单及状态 http://www.imooc.com/code/3120

    为导航条添加标题.二级菜单及状态 加入导航条标题 在Web页面制作中,常常在菜单前面都会有一个标题(文字字号比其它文字稍大一些),其实在Bootstrap框架也为大家做了这方面考虑,其通过" ...

  3. koa-router中路由/后面不填参数就会报404的解决办法

    koa-router 中使用路由参数时会遇到一个问题,就是像下面的代码在没有传入 id 是会报 404 错误 router.get('/:id', (err, ctx, next) => { / ...

  4. sh脚本异常,binsh^M bad interpreter No such file or directory

    错误 在Linux中执行.sh脚本,出现如下异常 /bin/sh^M: bad interpreter: No such file or directory 原因 在windows系统中编辑的.sh文 ...

  5. iOS安全攻防之代码混淆

    iOS 代码安全之代码混淆实践: 前言: 在8月份的时候写了个关于 class-dump 反编译的文章(使用 Class-dump 反编译),利用 class-dump 工具可以反编译出工程的头文件, ...

  6. 《HelloGitHub》第 14 期

    公告 欢迎通过在 GitHub 上新建 issues 方式推荐项目,我真心希望读者可以在 HelloGItHub,找到真正的编程乐趣! <HelloGitHub>第 14 期 兴趣是最好的 ...

  7. css块级元素居中

    <!DOCTYPE html> <html> <head> <title>index</title> </head> <b ...

  8. 【数据库】Mean web开发 02-Windows下Mongodb安装配置及常用客户端管理工具

    简介 Mean是JavaScript的全栈开发框架.更多介绍 用MongoDB实现持久数据的存储是Mean Web全栈开发中的一部分. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非 ...

  9. java基础(十五章)

    一.字符串类String 1.String是一个类,位于java.lang包中 2.创建一个字符串对象的2种方式: String 变量名="值"; String 对象名=new S ...

  10. Dubbo源码分析系列---扩展点加载

    扩展点配置: 约定: 在扩展类的jar包内,放置扩展点配置文件:META-INF/dubbo/接口全限定名,内容为:配置名=扩展实现类全限定名,多个实现类用换行符分隔.(摘自dubbo文档) 示例: ...