- 解析 ODPS SQL 任务优化方法原理
Elivis Hu
架构师odpssql大数据
一文解析ODPSSQL任务优化方法原理本文重点尝试从ODPSSQL的逻辑执行计划和Logview中的执行计划出发,分析日常数据研发过程中各种优化方法背后的原理,覆盖了部分调优方法的分析,从知道怎么优化,到为什么这样优化,以及还能怎样优化。一、背景使用ODPSSQL进行离线数据研发时,开发同学不可避免会碰到任务性能问题,需要经常对ODPSSQL执行任务进行调优,以对重点场景任务产出时效进行保障,避免
- 阿里云大数据实战记录8:拆开 json 的每一个元素,一行一个
Xin学数据
阿里云大数据数据库postgresqldataworksMySQLmaxcompute
目录一、前言二、目标介绍三、使用pgsql实现3.1拆分content字段3.2拆分level字段3.3拼接两个拆分结果四、使用ODPSSQL实现4.1拆分content字段4.2拆分level字段4.3合并拆分五、使用MySQL实现六、总结一、前言商业场景中,经常会出现新的业务,继而产生新的业务数据,这也难免会导致一些数据被孤立,所以便需要对数据进行同步整合。在清洗数据的过程中,难免也会出现同一
- MaxCompute SQL函数详解 ODPS SQL函数详解---之日期相关函数
luckjump
SQL语句sqlodpsMaxComputeSQLodpssql函数日期转换函数
MaxComputeSQL函数详解ODPSSQL函数详解日期函数to_date函数返回类型:datetime语法:to_date(类型参数1,类型参数2);to_date(stringdatestring,stringformat);参数解释:参数1(datestring):日期字符串参数2(date):日期格式用途:将日期字符串datestring,按照format格式转换为日期值举例:将日期字
- 大数据 SQL 数据倾斜与数据膨胀的优化与经验总结
大数据sql云计算阿里云
背景目前市面上大数据查询分析引擎层出不穷,如Spark,Hive,Presto等,因其友好的SQL语法,被广泛应用于各领域分析,公司内部也有优秀的ODPSSQL供用户使用。笔者所在团队的项目也借用ODPSSQL去检测业务中潜在的安全风险。在给业务方使用与答疑过程中,我们发现大多含有性能瓶颈的SQL,主要集中在数据倾斜与数据膨胀问题中。因此,本文主要基于团队实际开发经验与积累,并结合业界对大数据SQ
- odps多行合并为一行
MrMua
SQL数据库odps数据库sql
在ODPS中,多行合并为一行可以通过使用ODPSSQL语句中的聚合函数来实现。假设我们有一个表格,其中包含多行数据:namescoreTom20Jack20Lucy30将上述表格中的相同分数的人合并为一行,并用逗号分隔每个值:SELECTscore,CONCAT_WS(',',collect_set(name))ASmerged_dataFROMtable_namegroupbyscore;在这个
- odps-0121145:Data overflow - Convert from 1118542.386 to scale overflow
柳比歇夫
ODPSsqlodps云计算
问题:在使用odpssql做除法运算时,出现如下错误信息:odps-0121145:Dataoverflow-Convertfrom1118542.386toscaleoverflow简化的SQL:SelectCaseWhenNvl(tt.b,0)=0Then0ElseRound(Nvl(tt.a,0)/Nvl(tt.b,0)*100,4)Endcol0From (Selectt.a,t.bFro
- 阿里云大数据实战记录3:MySQL迁移到ODPS SQL
Xin学数据
阿里云大数据mysqlsqlodps大数据
最近在做一些业务宽表的迁移,因为一个比较老的数仓示例已基本已弃用。该仓库为了快速响应数据需求,采用简单模式,没分开发环境和生产环境,使用的查询语言是MySQL。而迁移的目标仓库是标准模式(开发生产分环境跑),使用的ODPSSQL。在迁移的过程中,经常遇到的报错问题就是关于数据类型不一致,一段几百行的SQL,报错,调试,定位到问题,修改好,重跑,又报错……改了又改,最终跑通之后,粗算一下时间,足足得
- 用阿里云平台dataworks创建表三种方式
大数据小理
大数据阿里云dataworks大数据MaxComputedataworks
用阿里云平台dataworks创建表三种方式:1.在临时查询中用odpssql如下2.在数据开发中先新建数据流程再新建表,然后可以一个一个写字段再提交到生产环境也可以ddl模式3.在手动业务流程中新建节点,然后新建odpssql,建多个odpssql,名为要设置的表名,里面写建表语句,这个方式较好,不同表之间可以接线启动。最前面是虚拟节点可以自己设置名字
- 阿里云全链路数据治理
简明编程
笔记linux学习大数据splunk阿里云bigdatajava
阿里云全链路数据治理实验全流程阿里云全链路数据治理实验全流程实验地址实验流程通过DataWorks采集日志数据至MaxCompute创建业务流程配置workshop_start节点新建表配置离线同步节点。提交业务流程。运行业务流程确认数据是否成功导入MaxCompute。通过DataWorks计算和分析已采集的数据新建三张数据表设计业务流程创建用户自定义函数。配置ODPSSQL节点提交业务流程运行
- pyspark 特征工程
卓寿杰_SoulJoy
Spark搜索推荐Spark机器学习
曾经在15、16年那会儿使用Spark做机器学习,那时候pyspark并不成熟,做特征工程主要还是写scala。后来进入阿里工作,特征处理基本上使用PAI可视化特征工程组件+ODPSSQL,复杂的话才会自己写python处理。最近重新学习了下pyspark,笔记下如何使用pyspark做特征工程。我们使用movielens的数据进行,oneHotEncoder、multiHotEncoder和Nu
- MaxCompute(原ODPS)使用总结-初级篇
weixin_33862041
转载自jiyi引言本文面向的读者是要使用ODPSsql进行一些数据查询和挖掘,或者要使用ODPSudf自定义函数的用户。本文试图达到三个目标:(1)针对应用管理者来讲,看完本文后可以比较清晰的去管理自己的应用;(2)针对ODPSsql使用者来讲,本文在sql语句的内建函数使用以及sql语句加速方面,给出了一些例子;(3)针对ODPSUDF使用者和开发者来讲,本文提供了一个UDF函数创建的完整例子并
- MaxCompute平台非标准日期和气象数据处理方法--以电力AI赛为例
weixin_34090562
摘要:MaxCompute平台支持的日期格式通常是对齐的日期格式诸如20170725或2017/07/25这种,而本次电力AI赛提供的日期格式却是未对齐的非标准(相对MaxCompute平台来说)的日期格式2016/1/1这种,使得无法直接使用ODPSSQL中的日期函数来进行处理。同时,电力AI赛提供的气象数据并不是已经数值化的数据,也使得很多团队未能将气象数据利用起来(现已公开解决方案的团队,基
- 阿里云odps基本语法
weixin_33711641
odpssql:与hivesql语法基本一致odpscmd.batSQL语句不分大小写,使用“–”进行注释,使用分号作为语句结束符号数据定义语言(DDL),数据操作语言(DML),数据控制语言(DCL)和事务控制语言(TCL);在ODPS中使用的主要是DDL跟DML查看表空间:1:showtables;2:lstables;3:listtables;查看表:descbiaoming;切库:use库
- 大数据-一站式内容画像数据处理(pyodps+odps)
感性企鹅
大数据
文章目录背景数据流原理实战演示数据集成数据开发(odpssql)数据开发(pyodps)pyodps实战演示在dataworks中使用在本机使用在dsw的helloworld在dsw中进行埋点分析(时间序列分析)工程选择工程中存在以下问题工程选择评价背景公司的pro环境并没有搭建自己存储环境,而是直接使用阿里云的rds,那么数仓的建设也就直接使用了阿里云的dataworks(也就是原odps,也有
- 阿里推荐大赛:ODPS SQL 入门
mishidemudong
用户画像和个性化推荐机器学习数据挖掘
第二季才是真正的开始,第一季的汗水、喜悦、纷争都通通过去了。第二季绝对是拼算法、拼模型、拼平台熟练度的比赛,相信坚持下来的话肯定收获颇丰。昨天也迫不及待地进入「天池」,居然是Windows系统,一点都提升不了逼格啊。看文档的过程中,又是ODPSSQL、MapReduce、XLab/XLib、Tunnel、ODPSSDK什么的,相信很多人都跟我一样看的眼花,茫然不知所措,更别提对MR不熟悉、SQL忘
- 记录我的一次基于dataworks大数据平台的关于多栏位SUM求和的ODPS SQL优化
摇铃唤白鹿
踩过的坑
记录我的一次基于dataworks大数据平台的关于多栏位SUM求和的ODPSSQL优化背景在我所需要做的需求中,有这样一个场景,简化描述即是,基于阿里云dataworks平台用ODPSSQL脚本统计出商品订单表(order_info)的每种商品在每个月的销量情况。订单表主要字段(订单编号、商品编号、销售月份,每笔订单销售多少件)如下,每个分区订单表数据为2.5亿条:需要统计呈现的report效果如
- SQL_ODPS-D2-离线数仓-7-临时查询
in_
大数据MaxComputeDataWorks
SQL_ODPS-D2-离线数仓-7-临时查询包括odsdwddwsads数仓的建表语句以及手动导入数据语句test--odpssql--********************************************************************----author:i--createtime:0000-00-0000:00:00--******************
- 阿里云大数据ACA考试-笔记(三)
didadu
大数据learningdiary
介绍产品概述提供全面托管的工作流服务,一站式开发管理的界面,帮助企业专注于数据价值的挖掘和探索特点:全面托管的调度:具有强大的调度能力,提供完全托管的服务(任务到了指定时间自动调动)多种任务类型:数据同步,odpssql,mr,shell,机器学习可视化开发:提供可视化的代码开发,工作流设计器界面监控报警:可视化的任务监控,人物监控短信报警数据开发流程数据产生->数据收集与存储->数据分析与处理-
- 阿里云odps基本语法
猿程序G
阿里云odpsodps常用操作
odpssql:与hivesql语法基本一致odpscmd.batSQL语句不分大小写,使用“–”进行注释,使用分号作为语句结束符号数据定义语言(DDL),数据操作语言(DML),数据控制语言(DCL)和事务控制语言(TCL);在ODPS中使用的主要是DDL跟DML查看表空间:1:showtables;2:lstables;3:listtables;查看表:descbiaoming;切库:use库
- 使用split_size优化的ODPS SQL的场景
阿里云云栖社区
性能优化大数据数据存储数据库sql
使用split_size优化的ODPSSQL的场景首先有两个大背景需要说明如下:说明1:split_size,设定一个map的最大数据输入量,单位M,默认256M。用户可以通过控制这个变量,从而达到对map端输入的控制。设置语句:setodps.sql.mapper.split.size=256。一般在调整这个设置时,往往是发现一个mapinstance处理的数据行数太多。说明2:小文件越多,需要
- 天池新人实战赛----阿里移动推荐算法大赛(御膳房、DTPAI----ODPS初体验)
光于前裕于后
数据挖掘
几个名词:ODPS(OpenDataProcessingService):开放数据处理服务由阿里云自主研发,提供针对TB/PB级数据、实时性要求不高的分布式处理能力,应用于数据分析、挖掘、商业智能等领域。DT(datatechnology):数据时代PAI(PlatformofArtificialIntelligence):人工智能平台ODPSSQL:ODPSSQL适用于海量数据(TB级别),实时
- 天池新人实战赛----阿里移动推荐算法大赛(御膳房、DTPAI----ODPS初体验)
光于前裕于后
数据挖掘
几个名词:ODPS(OpenDataProcessingService):开放数据处理服务由阿里云自主研发,提供针对TB/PB级数据、实时性要求不高的分布式处理能力,应用于数据分析、挖掘、商业智能等领域。DT(datatechnology):数据时代PAI(PlatformofArtificialIntelligence):人工智能平台ODPSSQL:ODPSSQL适用于海量数据(TB级别),实时
- 天池大数据竞赛(御膳房、DTPAI----ODPS初体验)
Dr_Guo
几个名词:ODPS(OpenDataProcessingService):开放数据处理服务由阿里云自主研发,提供针对TB/PB级数据、实时性要求不高的分布式处理能力,应用于数据分析、挖掘、商业智能等领域。DT(datatechnology):数据时代PAI(PlatformofArtificialIntelligence):人工智能平台ODPSSQL:ODPSSQL适用于海量数据(TB级别),实时
- SQL解析过程
贱一白
PostgreSQL优化
转载自:http://blog.aliyun.com/733简介SQL任务是ODPS中使用最频繁的一类作业,大部分用户开始使用ODPS时要做的第一件事情就是学习怎么写ODPS的SQL。ODPSSQL是一种非常灵活的语言,兼容大部分的SQL92规范,也对大规模计算场景做了一些特别的定制。有些用户写出的SQL让人看了之后茅塞顿开的感觉,也有一些神级用户经常写一些1000多行的SQL,让人看的只想撞墙。
- Java常用排序算法/程序员必须掌握的8大排序算法
cugfy
java
分类:
1)插入排序(直接插入排序、希尔排序)
2)交换排序(冒泡排序、快速排序)
3)选择排序(直接选择排序、堆排序)
4)归并排序
5)分配排序(基数排序)
所需辅助空间最多:归并排序
所需辅助空间最少:堆排序
平均速度最快:快速排序
不稳定:快速排序,希尔排序,堆排序。
先来看看8种排序之间的关系:
1.直接插入排序
(1
- 【Spark102】Spark存储模块BlockManager剖析
bit1129
manager
Spark围绕着BlockManager构建了存储模块,包括RDD,Shuffle,Broadcast的存储都使用了BlockManager。而BlockManager在实现上是一个针对每个应用的Master/Executor结构,即Driver上BlockManager充当了Master角色,而各个Slave上(具体到应用范围,就是Executor)的BlockManager充当了Slave角色
- linux 查看端口被占用情况详解
daizj
linux端口占用netstatlsof
经常在启动一个程序会碰到端口被占用,这里讲一下怎么查看端口是否被占用,及哪个程序占用,怎么Kill掉已占用端口的程序
1、lsof -i:port
port为端口号
[root@slave /data/spark-1.4.0-bin-cdh4]# lsof -i:8080
COMMAND PID USER FD TY
- Hosts文件使用
周凡杨
hostslocahost
一切都要从localhost说起,经常在tomcat容器起动后,访问页面时输入http://localhost:8088/index.jsp,大家都知道localhost代表本机地址,如果本机IP是10.10.134.21,那就相当于http://10.10.134.21:8088/index.jsp,有时候也会看到http: 127.0.0.1:
- java excel工具
g21121
Java excel
直接上代码,一看就懂,利用的是jxl:
import java.io.File;
import java.io.IOException;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
import jxl.write.Label;
import
- web报表工具finereport常用函数的用法总结(数组函数)
老A不折腾
finereportweb报表函数总结
ADD2ARRAY
ADDARRAY(array,insertArray, start):在数组第start个位置插入insertArray中的所有元素,再返回该数组。
示例:
ADDARRAY([3,4, 1, 5, 7], [23, 43, 22], 3)返回[3, 4, 23, 43, 22, 1, 5, 7].
ADDARRAY([3,4, 1, 5, 7], "测试&q
- 游戏服务器网络带宽负载计算
墙头上一根草
服务器
家庭所安装的4M,8M宽带。其中M是指,Mbits/S
其中要提前说明的是:
8bits = 1Byte
即8位等于1字节。我们硬盘大小50G。意思是50*1024M字节,约为 50000多字节。但是网宽是以“位”为单位的,所以,8Mbits就是1M字节。是容积体积的单位。
8Mbits/s后面的S是秒。8Mbits/s意思是 每秒8M位,即每秒1M字节。
我是在计算我们网络流量时想到的
- 我的spring学习笔记2-IoC(反向控制 依赖注入)
aijuans
Spring 3 系列
IoC(反向控制 依赖注入)这是Spring提出来了,这也是Spring一大特色。这里我不用多说,我们看Spring教程就可以了解。当然我们不用Spring也可以用IoC,下面我将介绍不用Spring的IoC。
IoC不是框架,她是java的技术,如今大多数轻量级的容器都会用到IoC技术。这里我就用一个例子来说明:
如:程序中有 Mysql.calss 、Oracle.class 、SqlSe
- 高性能mysql 之 选择存储引擎(一)
annan211
mysqlInnoDBMySQL引擎存储引擎
1 没有特殊情况,应尽可能使用InnoDB存储引擎。 原因:InnoDB 和 MYIsAM 是mysql 最常用、使用最普遍的存储引擎。其中InnoDB是最重要、最广泛的存储引擎。她 被设计用来处理大量的短期事务。短期事务大部分情况下是正常提交的,很少有回滚的情况。InnoDB的性能和自动崩溃 恢复特性使得她在非事务型存储的需求中也非常流行,除非有非常
- UDP网络编程
百合不是茶
UDP编程局域网组播
UDP是基于无连接的,不可靠的传输 与TCP/IP相反
UDP实现私聊,发送方式客户端,接受方式服务器
package netUDP_sc;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.Ine
- JQuery对象的val()方法执行结果分析
bijian1013
JavaScriptjsjquery
JavaScript中,如果id对应的标签不存在(同理JAVA中,如果对象不存在),则调用它的方法会报错或抛异常。在实际开发中,发现JQuery在id对应的标签不存在时,调其val()方法不会报错,结果是undefined。
- http请求测试实例(采用json-lib解析)
bijian1013
jsonhttp
由于fastjson只支持JDK1.5版本,因些对于JDK1.4的项目,可以采用json-lib来解析JSON数据。如下是http请求的另外一种写法,仅供参考。
package com;
import java.util.HashMap;
import java.util.Map;
import
- 【RPC框架Hessian四】Hessian与Spring集成
bit1129
hessian
在【RPC框架Hessian二】Hessian 对象序列化和反序列化一文中介绍了基于Hessian的RPC服务的实现步骤,在那里使用Hessian提供的API完成基于Hessian的RPC服务开发和客户端调用,本文使用Spring对Hessian的集成来实现Hessian的RPC调用。
定义模型、接口和服务器端代码
|---Model
&nb
- 【Mahout三】基于Mahout CBayes算法的20newsgroup流程分析
bit1129
Mahout
1.Mahout环境搭建
1.下载Mahout
http://mirror.bit.edu.cn/apache/mahout/0.10.0/mahout-distribution-0.10.0.tar.gz
2.解压Mahout
3. 配置环境变量
vim /etc/profile
export HADOOP_HOME=/home
- nginx负载tomcat遇非80时的转发问题
ronin47
nginx负载后端容器是tomcat(其它容器如WAS,JBOSS暂没发现这个问题)非80端口,遇到跳转异常问题。解决的思路是:$host:port
详细如下:
该问题是最先发现的,由于之前对nginx不是特别的熟悉所以该问题是个入门级别的:
? 1 2 3 4 5
- java-17-在一个字符串中找到第一个只出现一次的字符
bylijinnan
java
public class FirstShowOnlyOnceElement {
/**Q17.在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b
* 1.int[] count:count[i]表示i对应字符出现的次数
* 2.将26个英文字母映射:a-z <--> 0-25
* 3.假设全部字母都是小写
*/
pu
- mongoDB 复制集
开窍的石头
mongodb
mongo的复制集就像mysql的主从数据库,当你往其中的主复制集(primary)写数据的时候,副复制集(secondary)会自动同步主复制集(Primary)的数据,当主复制集挂掉以后其中的一个副复制集会自动成为主复制集。提供服务器的可用性。和防止当机问题
mo
- [宇宙与天文]宇宙时代的经济学
comsci
经济
宇宙尺度的交通工具一般都体型巨大,造价高昂。。。。。
在宇宙中进行航行,近程采用反作用力类型的发动机,需要消耗少量矿石燃料,中远程航行要采用量子或者聚变反应堆发动机,进行超空间跳跃,要消耗大量高纯度水晶体能源
以目前地球上国家的经济发展水平来讲,
- Git忽略文件
Cwind
git
有很多文件不必使用git管理。例如Eclipse或其他IDE生成的项目文件,编译生成的各种目标或临时文件等。使用git status时,会在Untracked files里面看到这些文件列表,在一次需要添加的文件比较多时(使用git add . / git add -u),会把这些所有的未跟踪文件添加进索引。
==== ==== ==== 一些牢骚
- MySQL连接数据库的必须配置
dashuaifu
mysql连接数据库配置
MySQL连接数据库的必须配置
1.driverClass:com.mysql.jdbc.Driver
2.jdbcUrl:jdbc:mysql://localhost:3306/dbname
3.user:username
4.password:password
其中1是驱动名;2是url,这里的‘dbna
- 一生要养成的60个习惯
dcj3sjt126com
习惯
一生要养成的60个习惯
第1篇 让你更受大家欢迎的习惯
1 守时,不准时赴约,让别人等,会失去很多机会。
如何做到:
①该起床时就起床,
②养成任何事情都提前15分钟的习惯。
③带本可以随时阅读的书,如果早了就拿出来读读。
④有条理,生活没条理最容易耽误时间。
⑤提前计划:将重要和不重要的事情岔开。
⑥今天就准备好明天要穿的衣服。
⑦按时睡觉,这会让按时起床更容易。
2 注重
- [介绍]Yii 是什么
dcj3sjt126com
PHPyii2
Yii 是一个高性能,基于组件的 PHP 框架,用于快速开发现代 Web 应用程序。名字 Yii (读作 易)在中文里有“极致简单与不断演变”两重含义,也可看作 Yes It Is! 的缩写。
Yii 最适合做什么?
Yii 是一个通用的 Web 编程框架,即可以用于开发各种用 PHP 构建的 Web 应用。因为基于组件的框架结构和设计精巧的缓存支持,它特别适合开发大型应
- Linux SSH常用总结
eksliang
linux sshSSHD
转载请出自出处:http://eksliang.iteye.com/blog/2186931 一、连接到远程主机
格式:
ssh name@remoteserver
例如:
ssh
[email protected]
二、连接到远程主机指定的端口
格式:
ssh name@remoteserver -p 22
例如:
ssh i
- 快速上传头像到服务端工具类FaceUtil
gundumw100
android
快速迭代用
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOExceptio
- jQuery入门之怎么使用
ini
JavaScripthtmljqueryWebcss
jQuery的强大我何问起(个人主页:hovertree.com)就不用多说了,那么怎么使用jQuery呢?
首先,下载jquery。下载地址:http://hovertree.com/hvtart/bjae/b8627323101a4994.htm,一个是压缩版本,一个是未压缩版本,如果在开发测试阶段,可以使用未压缩版本,实际应用一般使用压缩版本(min)。然后就在页面上引用。
- 带filter的hbase查询优化
kane_xie
查询优化hbaseRandomRowFilter
问题描述
hbase scan数据缓慢,server端出现LeaseException。hbase写入缓慢。
问题原因
直接原因是: hbase client端每次和regionserver交互的时候,都会在服务器端生成一个Lease,Lease的有效期由参数hbase.regionserver.lease.period确定。如果hbase scan需
- java设计模式-单例模式
men4661273
java单例枚举反射IOC
单例模式1,饿汉模式
//饿汉式单例类.在类初始化时,已经自行实例化
public class Singleton1 {
//私有的默认构造函数
private Singleton1() {}
//已经自行实例化
private static final Singleton1 singl
- mongodb 查询某一天所有信息的3种方法,根据日期查询
qiaolevip
每天进步一点点学习永无止境mongodb纵观千象
// mongodb的查询真让人难以琢磨,就查询单天信息,都需要花费一番功夫才行。
// 第一种方式:
coll.aggregate([
{$project:{sendDate: {$substr: ['$sendTime', 0, 10]}, sendTime: 1, content:1}},
{$match:{sendDate: '2015-
- 二维数组转换成JSON
tangqi609567707
java二维数组json
原文出处:http://blog.csdn.net/springsen/article/details/7833596
public class Demo {
public static void main(String[] args) { String[][] blogL
- erlang supervisor
wudixiaotie
erlang
定义supervisor时,如果是监控celuesimple_one_for_one则删除children的时候就用supervisor:terminate_child (SupModuleName, ChildPid),如果shutdown策略选择的是brutal_kill,那么supervisor会调用exit(ChildPid, kill),这样的话如果Child的behavior是gen_