Apache Spark

阿里云服务器选择之根据业务场景选择云服务器配置规格

前提是你 提交于 2020-03-20 09:10:13
3 月,跳不动了?>>> 阿里云ECS云服务器如何选择?可以根据应用场景来选择云服务器规格及配置,新手站长网分享业务场景选择ECS云服务器实例对照表: 根据应用场景选择ECS云服务器实例 阿里云ECS云服务器有多种实例规格,不同ECS实例规格适用于不同的应用场景,例如:GPU云服务器适用于AI深度学习或图形可视化等业务场景,新手站长网分享业务场景和ECS实例规格对照表: ECS实例规格族 实例规格 业务场景 通用计算型 通用型g6/通用型g5/通用网络增强型sn2ne 中小型数据库/数据处理任务/企业后台应用 通用计算型 计算型c6/计算型c5/计算网络增强型sn1ne 高性能网站前端节点/Web服务器,批量计算/分布式分析,对战类游戏/高性能科学,工程类应用/平台广告,视频编解码 通用计算型 内存型r6/内存型r5/内存增强型re4/内存网络增强型se1ne/内存型se1 高性能数据库/数据挖掘和分析/Redis、Memcached等缓存/内存型数据库 通用计算型 高主频hfc6/高主频hfc5/高主频hfg5/高主频c4 高性能科学计算/高性能前端节点 通用计算型 本地SSD型i2/本地SSD型i2g/本地SSD型i1 关系型数据库/NoSQL数据库/数据仓库/内存型数据库/Hadoop/Spark集群(实时) 通用计算型 大数据型d2s/大数据型d1ne/大数据型d1

Hive

▼魔方 西西 提交于 2020-03-15 22:04:10
基于分布式存储用于查询和管理的数据仓库 海量存储数据一般都可以使用mapreduce进行计算分析,获取中间结果,又作为初始结果进行输入,最终可以得到计算的结果,缺点是效率低 实现MapReduce逻辑比较复杂 使用sql语句操作,把大量的MapReduce程序写成一个模版,封装到一个框架中,这个框架就是hive hive创建出一个表,关联文件存储路径,放到元数据库中,在根据sql语句的类型编译出相应的MapReduce程序,就可以得到一个可以运行的程序传给执行器,就可以根据hadoop命令提交到集群中,这样就无需自己写MapReduce程序,只需要写SQL语句就可以 hive比较慢,因为底层使用的是MapReduce框架实现的 spark替代hive,spark底层是把sql语句翻译成spark hive结构 hive不支持单条操作,因为hdfs不支持 来源: oschina 链接: https://my.oschina.net/u/4434424/blog/3195471

大数据Spark优化读取Hbase--region 提高并行数过程详细解析

匆匆过客 提交于 2020-03-14 00:02:03
一. Hbase 的 region 我们先简单介绍下 Hbase 的 架构和 region : 从物理集群的角度看,Hbase 集群中,由一个 Hmaster 管理多个 HRegionServer,其中每个 HRegionServer 都对应一台物理机器,一台 HRegionServer 服务器上又可以有多个 Hregion(以下简称 region)。要读取一个数据的时候,首先要先找到存放这个数据的 region。而 Spark 在读取 Hbase 的时候,读取的 Rdd 会根据 Hbase 的 region 数量划分 stage。所以当 region 存储设置得比较大导致 region 比较少,而 spark 的 cpu core 又比较多的时候,就会出现无法充分利用 spark 集群所有 cpu core 的情况。 我们再从逻辑表结构的角度看看 Hbase 表和 region 的关系。   Hbase是通过把数据分配到一定数量的region来达到负载均衡的。一个table会被分配到一个或多个region中,这些region会被分配到一个或者多个regionServer中。在自动split策略中,当一个region达到一定的大小就会自动split成两个region。   Region由一个或者多个Store组成,每个store保存一个columns family

调研了10家公司的技术架构,我总结出了一套大数据平台的套路

做~自己de王妃 提交于 2020-03-10 16:39:30
近年来,随着IT技术与大数据、机器学习、算法方向的不断发展,越来越多的企业都意识到了数据存在的价值,将数据作为自身宝贵的资产进行管理,利用大数据和机器学习能力去挖掘、识别、利用数据资产。 近年来,随着IT技术与大数据、机器学习、算法方向的不断发展,越来越多的企业都意识到了数据存在的价值,将数据作为自身宝贵的资产进行管理,利用大数据和机器学习能力去挖掘、识别、利用数据资产。 如果缺乏有效的数据整体架构设计或者部分能力缺失,会导致业务层难以直接利用大数据大数据,大数据和业务产生了巨大的鸿沟,这道鸿沟的出现导致企业在使用大数据的过程中出现数据不可知、需求难实现、数据难共享等一系列问题,本文介绍了一些数据平台设计思路来帮助业务减少数据开发中的痛点和难点。 我调研了10家公司,写出了这篇文章。 一、大数据技术栈 大数据整体流程涉及很多模块,每一个模块都比较复杂,下图列出这些模块和组件以及他们的功能特性,后续会有专题去详细介绍相关模块领域知识,例如数据采集、数据传输、实时计算、离线计算、大数据储存等相关模块。 二、lambda架构和kappa架构 目前基本上所有的大数据架构都是基于lambda和kappa架构,不同公司在这两个架构模式上设计出符合该公司的数据体系架构。lambda 架构使开发人员能够构建大规模分布式数据处理系统。 它具有很好的灵活性和可扩展性

hive窗口函数lag与lead实际应用

梦想与她 提交于 2020-03-09 19:43:06
简介 lag函数用于把指定列向后移动多少行之后和原表拼接。 lag(column,n,default) lead(column,n,default) 其中 column表示要移动的列,n表示要移动多少行,default表示默认值,不给就是null 示例: select gid, lag(time,1,'0') over (partition by gid order by time) as lag_time, lead(time,1,'0') over (partition by gid order by time) as lead_time from user_order; 实例 考虑这样一个问题,我们要找出连续2个月都购买了某个指定商品的人,怎么处理? 很多同学可能首先考虑的是把时间处理成月份,然后根据用户id分组,统计月份大于2的就可以了。 如果问题变一点点,要找出在60天内至少购买过2次某个指定商品的人,怎么处理? 咋一看,一样的,实际上没有给出是哪60天,所以要计算所有订单时间的差值,然后找出时间差在60天范围之内的订单用户。 逻辑比较简单,但是处理起来不太还处理,不过如果知道lag或者lead函数,就变得非常简单了。 只需要把使用head函数,把后一次订单时间拼接上来,然后通过过滤器过滤一下就好了。 下面看一个代码示例,应该就清楚了。 代码实例 import org

Spark on yarn

梦想与她 提交于 2020-03-05 18:18:03
概述 spark on yarn是spark集群模式之一,通过resourcemanager进行调度,较之standalone模式,不需要单独启动spark服务。 关于spark 的三种模式,上一篇文章( saprk zookeeper搭建spark高可用集群 )中已经讲过,在此不做赘述。 本文操作的前提是已经搭建好hdfs和yarn集群。 环境 主机名 应用 tvm13 spark、Scala tvm14 spark、Scala tvm15 spark、Scala spark on yarn架构 基于Yarn有两种提交模式,一种是基于Yarn的yarn-cluster模式,一种是基于Yarn的yarn-client模式。使用哪种模式可以在spark-submit时通过 --deploy-mode cluster/client 指定。 工作原理 yarn cluster 在RM接受到申请后在集群中选择一个NM分配Container,并在Container中启动ApplicationMaster进程 在ApplicationMaster中初始化SparkContext ApplicationMaster向RM申请到Container后通知NodeManager在获得的Container中启动Executor进程 sparkContext分配Task给Executor

spark-submit提交任务使用yarn client模式,客户端进程不退出问题解决

柔情痞子 提交于 2020-03-05 15:11:03
java程序使用ssh连接到服务器后,使用spark-submit提交指令后,使用yarn on client模式,客户端执行完成后,进程不退出,导致服务器积存太多的进程,占用服务器资源,网上搜了半天,找到说有个配置可以,--conf spark.yarn.submit.waitAppCompletion=false。但是试验后还是不好使,最后使用大招解决: 在main方法最后加上下面一条语句: System.exit(0); 测试了一下,真的退出了。。。不知道有没有风险,先这么搞下跑一跑,看看有没有问题。 来源: oschina 链接: https://my.oschina.net/u/4170983/blog/3188562

Spark ML机器学习库评估指标示例

天涯浪子 提交于 2020-03-03 21:58:56
本文主要对 Spark ML库下模型评估指标的讲解,以下代码均以 Jupyter Notebook 进行讲解,Spark版本为 2.4.5 。模型评估指标位于包 org.apache.spark.ml.evaluation 下。 模型评估指标是指测试集的评估指标,而不是训练集的评估指标 1、回归评估指标 RegressionEvaluator Evaluator for regression, which expects two input columns: prediction and label. 评估指标支持以下几种: val metricName : Param[String] "rmse" (default): root mean squared error "mse" : mean squared error "r2" : R2 metric "mae" : mean absolute error Examples # import dependencies import org.apache.spark.ml.regression.LinearRegression import org.apache.spark.ml.evaluation.RegressionEvaluator // Load training data val data = spark.read

Maxcompute Spark作业管控利器—Cupid Console

北城余情 提交于 2020-03-03 15:43:01
一、背景 Maxcompute平台目前可以支持运行Spark作业,Spark作业依托于Maxcompute的Cupid平台可以按照社区兼容的方式提交到Maxcompute上运行,支持读写Maxcompute表,和Maxcompute上原有的SQL/MR等作业共用Project的资源。相关产品的详细介绍可以参考官方文档: https://help.aliyun.com/document_detail/102357.html Maxcompute Spark作业也是Maxcompute平台上的一种作业类型,和其他作业一样,每一个Spark作业都具有一个唯一的InstanceId,可以通过InstanceId来管理相应的Spark作业,比如通过InstanceId我们可以获取到作业的Logview和停止作业。但是目前通过InstanceId能够获取到的信息对于Spark作业来说还是太有限,一些Spark作业特有的信息无法看到,这也是目前Spark用户运维管理过程中的一个痛点。本文接下来会介绍一款Maxcompute Spark作业管控利器—Cupid Console。 二、Cupid Console介绍 Cupid Console是MaxCompute客户端 0.33.1 及更新版本新增的一个插件,下载MaxCompute客户端最新版本: https://github.com