Apache Spark

阿里云发起首届 Spark “数字人体” AI 挑战赛 — 聚焦上班族脊柱健康

偶尔善良 提交于 2020-07-28 04:30:01
2020年6月4日,首届 Apache Spark AI 智能诊断大赛在天池官网上线。 Spark “数字人体” AI挑战赛——脊柱疾病智能诊断大赛 ,聚焦医疗领域应用,召集全球开发者利用人工智能技术探索高效准确的脊柱退化性疾病自动诊断。现已面向全社会开放,为所有大数据技术爱好者以及相关的科研企业提供挑战平台,个人参赛或高等院校、科研单位、互联网企业等人员均可报名参赛。 本次大赛将由 阿里云计算有限公司、英特尔(中国)有限公司联合主办,湘雅医院、浙江大学附属第二附属医院、解放军301医院作为指导单位,唯医骨科共同合作 ,全程有资深技术专家提供技术指导。 本次挑战的目标是通过核磁共振成像来检测和分类脊柱的退行性改变,形成一批创新性强、复用率高的算法案例,并积极推动相关技术的临床应用,用科技造福医疗事业,鼓励人工智能与疾病预防深度融合的应用落地, 来源: oschina 链接: https://my.oschina.net/u/4393623/blog/4300878

阿里云发起首届 Spark “数字人体” AI 挑战赛 — 聚焦上班族脊柱健康

坚强是说给别人听的谎言 提交于 2020-07-28 03:27:45
2020年6月4日,首届 Apache Spark AI 智能诊断大赛在天池官网上线。 Spark “数字人体” AI挑战赛——脊柱疾病智能诊断大赛 ,聚焦医疗领域应用,召集全球开发者利用人工智能技术探索高效准确的脊柱退化性疾病自动诊断。现已面向全社会开放,为所有大数据技术爱好者以及相关的科研企业提供挑战平台,个人参赛或高等院校、科研单位、互联网企业等人员均可报名参赛。 本次大赛将由 阿里云计算有限公司、英特尔(中国)有限公司联合主办,湘雅医院、浙江大学附属第二附属医院、解放军301医院作为指导单位,唯医骨科共同合作 ,全程有资深技术专家提供技术指导。 本次挑战的目标是通过核磁共振成像来检测和分类脊柱的退行性改变,形成一批创新性强、复用率高的算法案例,并积极推动相关技术的临床应用,用科技造福医疗事业,鼓励人工智能与疾病预防深度融合的应用落地, 来源: oschina 链接: https://my.oschina.net/u/4401339/blog/4300879

如何设置Spark Executor Memory的大小

半世苍凉 提交于 2020-07-28 02:50:34
一、Spark内存使用大体上的两类 执行内存和存储内存。其中执行内存用于shuffle、join、sort、aggregation等操作的计算使用。存储内存用于cache对象、存储广播数据等。 二、Executor内存设置小了会发生的现象 1、频繁GC,GC超限,CPU大部分时间用来做GC而回首的内存又很少,也就是executor堆内存不足。 2、java.lang.OutOfMemoryError内存溢出,这和程序实现强相关,例如内存排序等,通常是要放入内存的数据量太大,内存空间不够引起的。 3、数据频繁spill到磁盘,如果是I/O密集型的应用,响应时间就会显著延长。 三、Spark内存模型 注:2.0+和2.0以前的版本默认值不同(spark.memory.fraction Spark2.0+默认值0.6 Spark1.6默认值0.75) 四、设置Executor内存大小的时候要考虑的因素 以下情况适用于应用可以使用全部内存资源的情况。 1、物理可用内存大小。 2、对应每个core,给操作系统预留内存。 3、如果使用yarn进行资源分配,yarn执行资源分配需要的内存。 4、排除掉图中保留的300M系统内存。 5、看程序中有没有使用broadcast,如果使用了broadcast,估算broadcast数据可能占用多少空间。 6

Spark中的DataFrame,字段为Array类型,getas出错的问题

允我心安 提交于 2020-07-27 23:15:18
打开getas的源码,找到下面一段 /** * Returns the value at position i of array type as a Scala Seq. * * @throws ClassCastException when data type does not match. */ def getSeq[T](i: Int): Seq[T] = getAs[Seq[T]](i) 看上去是支持Seq类型的意思。于是用udf和map把array转化成Seq,ok,能正常取出了。 来源: oschina 链接: https://my.oschina.net/u/2000675/blog/4298392

Spark 两种方法计算分组取Top N

冷暖自知 提交于 2020-07-27 15:18:19
Spark 分组取Top N运算 大数据处理中,对数据分组后,取TopN是非常常见的运算。 下面我们以一个例子来展示spark如何进行分组取Top的运算。 1、RDD方法分组取TopN from pyspark import SparkContext sc = SparkContext() 准备数据,把数据转换为rdd格式 data_list = [ (0, "cat26", 130.9), (0, "cat13", 122.1), (0, "cat95", 119.6), (0, "cat105", 11.3), (1, "cat67", 128.5), (1, "cat4", 126.8), (1, "cat13", 112.6), (1, "cat23", 15.3), (2, "cat56", 139.6), (2, "cat40", 129.7), (2, "cat187", 127.9), (2, "cat68", 19.8), (3, "cat8", 135.6) ] data = sc.parallelize(data_list) data.collect() [(0, 'cat26', 130.9), (0, 'cat13', 122.1), (0, 'cat95', 119.6), (0, 'cat105', 11.3), (1, 'cat67', 128.5)

Apache Hudi重磅特性解读之全局索引

烈酒焚心 提交于 2020-07-27 15:18:01
1. 摘要 Hudi表允许多种类型操作,包括非常常用的 upsert ,当然为支持 upsert ,Hudi依赖索引机制来定位记录在哪些文件中。 当前,Hudi支持分区和非分区的数据集。分区数据集是将一组文件(数据)放在称为分区的桶中的数据集。一个Hudi数据集可能由N个分区和M个文件组成,这种组织结构也非常方便hive/presto/spark等引擎根据分区字段过滤以返回有限的数据量。而分区的值绝大多数情况下是从数据中得来,这个要求一旦一条记录映射到分区/桶,那么这个映射应该 a) 被Hudi知道;b) 在Hudi数据集生命周期里保持不变。 在一个非分区数据上Hudi需要知道recordKey -> fileId的映射以便对记录进行 upsert 操作,现有解决方案如下:a) 用户/客户端通过payload提供正确的分区值;b) 实现GlobalBloomIndex索引来扫描指定路径下的所有文件。上述两个场景下,要么需要用户提供映射信息,要么会导致扫描所有文件的性能开销。 这个方案拟实现一种新的索引类型,维护 (recordKey <-> partition, fileId) 映射或者 ((recordKey, partitionPath) → fileId) 映射,这种映射由Hudi存储和维护,可以解决上述提到的两个限制。 2. 背景 数据集类型

阿里P7整理总结Linux基础+负载均衡LVS+Scala+Python系列,共4.8G

强颜欢笑 提交于 2020-07-27 13:09:05
前言 Linux基础+负载均衡LVS+Scala+Python编程语言专题系列,这是通往大数据的必经之路,大牛带你由浅入深的沉稳扎根基础。 今天给大家分享的是Linux基础+负载均衡LVS+Scala+Python这四大部分的学习路线和内容,希望大家能够喜欢!!! Linux基础 学习路线 00-资料 01-安装VMWare workstation 02-Linux系统安装步骤 03-配置虚拟机的网络服务 04-基于虚拟机的快照克隆多台虚拟机的方法 05-xhell、xftp工具 06-linux内外部命令的判断方式以及命令的执行流程 07-linux查看命令帮助文档 08-bash shell定义变量以及进程简单管理 09-hash优化命令查询时间的原理 10-介绍Linux文件系统 11-文件系统相关的命令-df du ls 12-文件系统相关的命令-cd cp mv mkdir等命令 13-文件系统相关的命令-rm ln软连接等命令 14-文件系统相关的命令-stat touch命令 15-文本操作相关的命令-more less tail命令 16-文本操作相关的命令-管道的使用 17-vi文本编辑器的编辑模式 18-vi文本编辑器的输入模式+末行模式切换 19-vi文本编辑器末行模式的操作 20-补充vi文本编辑器末行模式的操作 21-Linux中正则表达式的简单使用 22

蚂蚁金服在 Service Mesh 监控落地经验总结

我的未来我决定 提交于 2020-07-27 09:50:26
引言 Service Mesh 是目前社区最为炙手可热的技术方向,去年双11在蚂蚁金服得到全面的应用,并平稳顺滑的支撑了大促服务。作为目前规模最大的 Service Mesh 集群,本文从监控的领域对 Service Mesh 落地进行经验总结,主要从以下几方面进行介绍: 云原生监控,介绍蚂蚁金服 Metrics 监控的落地; 用户视角分析,介绍从应用 owner 的角度对这一基础服务设施的体验以及 SRE 从全站服务的稳定性对监控提出的要求; 未来的思考,介绍后续发展方向; 云原生监控 云原生应用的设计理念已经被越来越多的开发者接受与认可,今年蚂蚁金服应用服务全面云原生化,对我们监控服务提出更高的要求。目前 Metrics 指标监控服务也逐渐形成体系,如下图所示基于社区原生 Prometheus 采集方案在蚂蚁金服监控场景下落地。 怎么采集 蚂蚁金服监控采集 AGENT 是部署在物理机上,支持多个采集插件,如下图,包括执行命令、日志、HTTP 请求、动态 SQL 采集、系统指标采集、JVM 采集以及进程监控等,同时支持多个解析插件自定义解析、单行文本解析、Lua 脚本解析、JSON 解析以及 Prometheus 解析等。 在Service Mesh 监控落地中,业务方参考业界标准输出 Metrics 指标数据,监控采集该物理机不同 Pod、App 和 Sidecar 的各项指标

入门学习python语言主要用途有哪些?

十年热恋 提交于 2020-07-27 08:27:48
  python是一门非常高级的编程语言,同时python作为人工智能的重要编程语言,无论发展前景还是就业方向,都可以说是无可限量。   python到底是什么?Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。对初学者来说,是非常友好的编程语言,从应用程序开发到文字处理、web甚至是游戏能提供支持。   那么学习完python语言之后主要用途有哪些?   1、网站后台:python有大量的成熟框架,比如说diango、flask、bottle、tornado。   2、网络爬虫:python写网络爬虫是非常简单的,库非常健全。   3、科学计算:完全可以替代r语言和MATLAB.   4、数据挖掘:Python的机器学习包很多   5、数据科学:spark,Hadoop都开了Python的接口,所以使用Python做大数据的mapreduce也非常简单。   6、自动化运维:做系统部署,日常维护的脚本。 来源: oschina 链接: https://my.oschina.net/u/4366887/blog/4306976