tungsten

Spark机器学习库(MLlib)指南

淺唱寂寞╮ 提交于 2021-02-16 23:12:55
机器学习库(MLlib)指南 MLlib是Spark的机器学习(ML)库。机器学习具有可扩展性和易用性。 提供高级API ,它提供了以下工具: ML算法:常见的学习算法,如分类、回归、聚类和协同过滤 特征化:特征提取、变换、降维和选择 管道:用于构建、评估和调优ML管道的工具 持久性:保存和加载算法、模型和管道 实用程序:线性代数,统计学,数据处理等。 声明:基于DataFrame的API是主要API 基于MLlib RDD的API现在处于维护模式。 从Spark 2.0开始,在 spark.mllib 程序包已进入维护模式。Spark的主要机器学习API现在是 DataFrame -based API spark.ml 。 有什么影响 ? MLlib将支持基于RDD的API spark.mllib 以及错误修复。 MLlib不会为基于RDD的API添加新功能 。 在Spark 2.x版本中,MLlib将为基于DataFrames的API添加功能,以实现与基于RDD的API的功能奇偶校验。 在达到功能奇偶校验(粗略估计Spark 2.3)之后,将弃用基于RDD的API。 The RDD-based API is expected to be removed in Spark 3.0. 预计将在Spark 3.0中删除基于RDD的API。

Spark(九)Spark之Shuffle调优

◇◆丶佛笑我妖孽 提交于 2021-02-01 06:21:00
一、概述 大多数Spark作业的性能主要就是消耗在了shuffle环节,因为该环节包含了大量的磁盘IO、序列化、网络数据传输等操作。因此,如果要让作业的性能更上一层楼,就有必要对shuffle过程进行调优。但是也必须提醒大家的是,影响一个Spark作业性能的因素,主要还是代码开发、资源参数以及数据倾斜,shuffle调优只能在整个Spark的性能调优中占到一小部分而已。因此大家务必把握住调优的基本原则,千万不要舍本逐末。下面我们就给大家详细讲解shuffle的原理,以及相关参数的说明,同时给出各个参数的调优建议。 二、shuffle的定义 Spark的运行主要分为2部分:   一部分是驱动程序,其核心是SparkContext;   另一部分是Worker节点上Task,它是运行实际任务的。程序运行的时候,Driver和Executor进程相互交互:运行什么任务,即Driver会分配Task到Executor,Driver 跟 Executor 进行网络传输; 任务数据从哪儿获取,即Task要从 Driver 抓取其他上游的 Task 的数据结果,所以有这个过程中就不断的产生网络结果。其中, 下一个 Stage 向上一个 Stage 要数据这个过程,我们就称之为 Shuffle 。 三、ShuffleManager发展概述 在Spark的源码中,负责shuffle过程的执行

细说TF服务链丨手把手教你配置服务链

 ̄綄美尐妖づ 提交于 2020-10-09 03:06:30
作者:Umberto Manferdini 译者:TF编译组 上一篇文章介绍了Tungsten Fabric服务链的概念,今天,我将展示如何通过GUI配置链。本文只讲配置相关的内容,接下来,我们将研究路由的配置方式以及幕后的一切! 首先,我们先创建2个虚拟网络: 我们将使用以下映射: – VN fourcade是LEFT网络 – VN wierer是RIGHT网络 接下来,我们创建3个虚拟机: 虚拟机“priv”充当客户端,而虚拟机“pub”模仿Internet上的服务器。第三个虚拟机“si1”将成为我们的服务链上服务实例的一部分。 虚拟机“priv”连接到左侧网络,而“pub”连接到右侧网络。第三个VM,即服务VM,在两个网络上都有分支(创建服务链是必需的)。 现在,创建服务模板: 配置非常简单直接,注意版本必须为v2。我们不执行NAT,所以in-network就可以了。流量将通过虚拟机,因此“虚拟化类型”是显而易见的选择。服务虚拟机将不是DPI,因此将“服务类型”设置为防火墙,而不是分析器。 最后,我们指定2个接口:左和右。 接下来,基于该模板,我们来创建服务实例: 在这里,我们引用服务模板并将接口映射到实际的虚拟网络: –fourcade是左侧 –wierer是右侧 最后,我们通过引用VM端口来配置端口元组。特别地,我们引用VM si1(我们的服务VM)的接口

TF实战Q&A丨不是一句话可以搞定的

末鹿安然 提交于 2020-10-05 09:09:38
在TF中文社区,爱折腾的“实战派”们经常探讨有关SDN和Tungsten Fabric的各种问题,我们将其中的精华部分整理出来,形成 “ TF实战 Q&A ” 栏目,他们碰到的困惑、踩过的坑,也许正是你想要了解的—— 以上,就是本期的TF中文社区问答交流精选集。不知道这几期 【 TF 实战 Q&A 】 有没有戳中你关心的问题?你还希望看到什么内容? 添加TF中文社区小助手微信:tungstenfabric , 加入CTF技术群。欢迎大家提出您的疑问,我们一起沟通探讨。 Tungsten Fabric 推荐阅读 TF实战Q&A丨你不理解透,出了问题都不知道怎么弄 TF 实战Q&A丨只在此网中,云深不知处 TF实战 Q&A丨这个问题,我以前也遇到过 TF实战丨使用Vagrant安装Tungsten Fabric Tungsten Fabric实战:对接vMX虚拟路由平台填坑 Tungsten Fabric实战:基于K8s的部署踩坑 Tungsten Fabric 架构解析 第一篇: TF主要特点和用例 第二篇: TF怎么运作 第三篇: 详解vRouter体系结构 第四篇: TF的服务链 第五篇: vRouter的部署选项 第六篇: TF如何收集、分析、部署? 第七篇: TF如何编排 第八篇: TF支持API一览 第九篇: TF如何连接到物理网络 第十篇: TF基于应用程序的安全策略

详解TF云原生技术路线图丨2020 OpenInfra Days China 演讲实录

不羁岁月 提交于 2020-08-20 08:46:36
OpenInfra Days China 2020大会在8月17日落下帷幕,为期两天的活动精彩纷呈,围绕“智能开源基础设施”主题进行了多场技术分享与开放式交流。在大会主论坛和“网络与存储”分论坛上,多位嘉宾分享了Tungsten Fabric相关技术、生态及创新案例,与大家一起探讨了开源SDN的现状与未来,我们将陆续推送文章分享其中的精华内容。 让我们先回到大会首日,看看瞻博网络杰出工程师Sukhdev Kapur在主论坛上的演讲。 【直播视频回放】 https://v.qq.com/x/page/o3137w1nh3x.html 【pdf文档下载】 https://tungstenfabric.org.cn/assets/uploads/files/tungsten-fabric-architecture-and-roadmap.pdf 作为Tungsten Fabric的TSC(技术指导委员会)成员,Sukhdev正积极推动Tungsten Fabric在5G、边缘云和云原生架构方向上的发展。在本次演讲中,Sukhdev着重介绍了Tungsten Fabric“云原生(Cloud-Native)”的技术线路图,以及对边缘云相关功能的支持。 注:Sukhdev在演讲中还分享了TF技术架构(包括Tungsten Fabric体系架构、组件、vRouter体系

2020 OpenInfra Days China,九州云与您共话开源

十年热恋 提交于 2020-08-17 15:04:59
8月16-17日,由OpenStack基金会举办的国内极具影响力的开源盛会2020 OpenInfra Days China将在线上召开。 本次大会以“智能开源基础设施”为主题,秉持“无边界协作(Collaboration Without Boundaries)”理念,围绕5G、物联网、网络与存储、硬件自动化与大规模扩展、硬件加速器集成与多架构支持、容器基础设施等60+前沿议题进行讨论和技术展望。大会由 OpenStack基金会执行董事Jonathan Bryce、中国电子技术标准化研究院孙文龙副院长领衔,邀请来自Tungsten Fabric社区、腾讯云、烽火、英特尔、浪潮、字节跳动、Juniper Networks、九州云等全球知名社区、企业的技术专家和行业资深领袖,分享全球前沿基础设施技术的展望和探索路径。作为开源技术的实践者,九州云一直积极参与国际开源社区并贡献核心代码。在本次OpenInfra Days China峰会上,九州云也将深度参与,在主论坛和五大技术分论坛上,都会有多位技术大咖进行分享,多方面、多领域地向外界展示九州云的技术和产品优势。 九州云技术总监黄舒泉参与圆桌讨论 时间:8月16日 11:35-11:55 在圆桌论坛环节,九州云技术总监黄舒泉将与来自蚂蚁金服、华为等企业的多位业内技术领袖一起,就如何推动异构计算领域的技术构建

细说TF服务链丨一文讲透什么是服务链(多图)

被刻印的时光 ゝ 提交于 2020-08-11 12:49:33
作者:Umberto Manferdini 译者:TF编译组 如果你看过任何有关Tungsten Fabric( 附注:原文为Contrail,在本系列文章中,Tungsten Fabric的功能与Contrail一致,文中出现Contrail之处均以Tungsten Fabric替换)的演示,可能都会碰到“服务链(service chain )”这个热词。现在,是时候对这个功能好好动手研究一番了。 那么什么是服务链?简而言之,就是使流量在两个虚拟网络之间流动的过程中,经过一项或多项“服务”。 让我们举个例子吧!这里有2个虚拟网络:pippo和pluto。我们希望这两个网络互相通信。在Tungsten Fabric中,只需在两个虚拟网络上配置相同的RT(route target)即可实现(虚拟网络是vrfs,还记得吗?)。( 附注:Route target 即RT,在Tungsten Fabric用来作为路由的标记,也是MPLS中常用的路由更新标记。 ) 还有一个选择,我们可以构建一个网络策略,同时适用于两个网络,就是“允许这些虚拟网络之间的任何流量”。而在幕后,Tungsten Fabric仍然依赖于路由route target(隐藏和自动生成目标)。 因此我们可以说,这两种方法是相同的。 这看起来是正确的,但从根本上是错误的!使用网络策略,使我们可以指定在虚拟网络之间移动时

TF技术会议精要:瞻博网络CTO加持,社区迈向云原生

三世轮回 提交于 2020-08-04 16:57:19
近日,在Tungsten Fabric社区技术指导委员会(TSC)例会上,对TF社区目前的发展和挑战进行了讨论,瞻博网络等成员计划加大资源支持力度。 TSC主席Prabhjot Singh Sethi表示,Tungsten Fabric的下一步行动将会基于“云原生(Cloud-Native)”的理念,并希望增加用于service-mesh的功能,扩展数据路径、CNF和SDN解决方案。 同时,TF社区正致力于解决与Tungsten Fabric的ONAP集成问题,希望运营商将Tungsten Fabric视为一个可替代的SDN控制器选择。 瞻博网络首席技术官Raj Yavatkar参加了例会,表示对Tungsten Fabric的发展方向感到兴奋,将加快对开源的贡献,并将提供更多资源支持。具体包括:新招聘具有Kubernetes背景的工程师来支持团队,增加新的产品经理支持Cloud Native集成,鼓励瞻博网络工程师为社区做出更多贡献,给予项目合作技术负责人Sukhdev Kapur更多支持。 另外,瞻博网络将尝试帮助支持新的操作框架(operator-framework),通过工程技术的方式为开源做出贡献,并在确保补丁被集成方面发挥积极作用。 瞻博网络杰出工程师Sukhdev Kapur表示,未来社区将进行许多更改,并计划提高透明度。 另一位Linux基金会成员Casey

MapReduce Shuffle 和 Spark Shuffle 原理概述

蓝咒 提交于 2020-05-08 19:57:34
##Shuffle简介 Shuffle的本意是洗牌、混洗的意思,把一组有规则的数据尽量打乱成无规则的数据。而在MapReduce中,Shuffle更像是洗牌的逆过程,指的是将map端的无规则输出按指定的规则“打乱”成具有一定规则的数据,以便reduce端接收处理。其在MapReduce中所处的工作阶段是map输出后到reduce接收前,具体可以分为map端和reduce端前后两个部分。 在shuffle之前,也就是在map阶段,MapReduce会对要处理的数据进行分片(split)操作,为每一个分片分配一个MapTask任务。接下来map会对每一个分片中的每一行数据进行处理得到键值对(key,value)此时得到的键值对又叫做“中间结果”。此后便进入reduce阶段,由此可以看出Shuffle阶段的作用是处理“中间结果”。 由于Shuffle涉及到了磁盘的读写和网络的传输,因此Shuffle性能的高低直接影响到了整个程序的运行效率。 ##MapReduce Shuffle Hadoop的核心思想是MapReduce,但shuffle又是MapReduce的核心。shuffle的主要工作是从Map结束到Reduce开始之间的过程。shuffle阶段又可以分为Map端的shuffle和Reduce端的shuffle。 ###Map端的shuffle 下图是MapReduce

Spark JVM调优:降低cache操作的内存占比和调节executor堆外内存与连接等待时长+shuffer调优

吃可爱长大的小学妹 提交于 2020-05-07 11:18:56
一.JVM调优之原理概述以及降低cache操作的内存占比 1、常规性能调优:分配资源、并行度。。。等 2、JVM调优(Java虚拟机):JVM相关的参数,通常情况下,如果你的硬件配置、基础的JVM的配置,都ok的话,JVM通常不会造成太严重的性能问题;反而更多的是,在troubleshooting中,JVM占了很重要的地位;JVM造成线上的spark作业的运行报错,甚至失败(比如OOM)。 3、shuffle调优(相当重要):spark在执行groupByKey、reduceByKey等操作时的,shuffle环节的调优。这个很重要。shuffle调优,其实对spark作业的性能的影响,是相当之高!!!经验:在spark作业的运行过程中,只要一牵扯到有shuffle的操作,基本上shuffle操作的性能消耗,要占到整个spark作业的50%~90%。10%用来运行map等操作,90%耗费在两个shuffle操作。groupByKey、countByKey。 4、spark操作调优(spark算子调优,比较重要):groupByKey,countByKey或aggregateByKey来重构实现。有些算子的性能,是比其他一些算子的性能要高的。foreachPartition替代foreach。如果一旦遇到合适的情况,效果还是不错的。 理论基础: spark是用scala开发的