07 2018 档案
摘要:1、windows 下Java 环境的安装和配置: 下载jdk并安装 配置环境变量: (1) 新建JAVA_HOME环境变量,赋值为JDK的安装目录: (2) 新建CLASSPATH环境变量,赋值为.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
阅读全文
摘要:http://www.aboutyun.com/thread-14942-1-1.html 问题导读 1、Hive查询语句和SQL查询语句区别与联系。 2、distribute by、group by和Sort by的区别。 3、MapJoin的优缺点是什么? 聚合函数 1.count计数 count(*):不全都是NULL,就加1;count(1):当只要有一列是NULL就不会加1;c...
阅读全文
摘要:不知不觉,已经在公司呆了快一个月了。 这一个月主要的任务就是熟悉工作中经常会用到的开发平台、语言,以及将要介入的项目的一些基础业务知识。在最后的几天,开始做一些简单的开发任务。 主要说说感受吧。刚开始工作,发现身边的同事对于工作都很投入,而且大家在某一方面的技术能力也特别出色。在这么多牛人中间,自己
阅读全文
摘要:select * into 新表名 from (select * from T1 union all select * from T2) 这个语句可以实现将合并的数据追加到一个新表中。 不合并重复数据 select * from T1 union all select * from T2 合并重复数
阅读全文
摘要:用户画像(UserProfile) 也叫用户信息标签化、客户标签;从电商的角度看,根据你在电商网站上所填的信息和你的行为,可以用一些标签把你描绘出来,描述你的标签就是用户画像。 构建用户画像技术 用户画像:基本属性、购买能力、行为特征、社交网络、心理特征、兴趣爱好 行为建模:文本挖掘、自然语言处理、
阅读全文
摘要:Hive虽然强大,但是我们遇到的业务需求必定是千奇百怪的。 在做日志解析的时候,我们会遇到访客,和访次的概念。 对于在2个小时之内的访问,我们认为是访问一次,对于两个小时之外的访问,我们认定是再次访问。 也就是是说,最新一次访问,与上一次访问之间间隔超过2个小时,则算是第二次访问。 用Hive来做过
阅读全文
摘要:--Hive中日期函数总结: --1.时间戳函数 --日期转时间戳:从1970-01-01 00:00:00 UTC到指定时间的秒数 select unix_timestamp(); --获得当前时区的UNIX时间戳 select unix_timestamp('2017-09-15 14:23:0
阅读全文
摘要:Expression not in GROUP BY key ‘ xxx’ 遇到这么一个需求,输入数据为一个ID对应多个name,要求输出数据为ID是唯一的,name随便取一个就可以。 执行以下hive ql语句: 1 2 3 4 5 6 SELECT sid, class_id FROM tabl
阅读全文
摘要:Hive的TRANSFORM关键字提供了在SQL中调用自写脚本的功能,适合实现Hive中没有的功能又不想写UDF的情况。例如,按日期统计每天出现的uid数,通常用如下的SQL 但是,如果我想在reduce阶段对每天的uid形成一个列表,进行排序并输出,这在Hive中没有现成的功能。那么,可以自写脚本
阅读全文
摘要:在做Shuffle阶段的优化过程中,遇到了数据倾斜的问题,造成了对一些情况下优化效果不明显。主要是因为在Job完成后的所得到的Counters是整个Job的总和,优化是基于这些Counters得出的平均值,而由于数据倾斜的原因造成map处理数据量的差异过大,使得这些平均值能代表的价值降低。Hive的
阅读全文
摘要:hive文件存储格式包括以下几类: 1、TEXTFILE 2、SEQUENCEFILE 3、RCFILE 4、ORCFILE(0.11以后出现) 其中TEXTFILE为默认格式,建表时不指定默认为这个格式,导入数据时会直接把数据文件拷贝到hdfs上不进行处理; SEQUENCEFILE,RCFILE
阅读全文
摘要:正则匹配字符解释: ^ 表示开头 $ 表示结尾 . 表示任意字符 * 表示任意多个 regexp_extract函数 语法: regexp_extract(string subject, string pattern, int index) 返回值: string 说明: 将字符串subject按照
阅读全文
摘要:hive.exec.parallel参数控制在同一个sql中的不同的job是否可以同时运行,默认为false.下面是对于该参数的测试过程: 测试sql:select r1.a from (select t.a from sunwg_10 t join sunwg_10000000 s on t.a=
阅读全文
摘要:原文地址:电商术语:客单价、UV、PV、转化率、销售额作者:馨闻莲博 UV(独立访客):Unique Visitor,访问您网站的一台电脑客户端为一个访客。00:00-24:00内相同的客户端只会被计算一次。 PV(访问量):PageView,即页面浏览量或点击量,用户每次刷新即被计算一次。 客单价
阅读全文
摘要:很多时候,我们需要将Hive的查询(select)结果保存起来,方便进一步处理或查看。在Hive里面提供了不同的方式来保存查询结果,在这里做下总结: 一、保存结果到本地 方法1:调用hive标准输出,将查询结果写到指定的文件中 这个方法最为常见,笔者也经常使用。sql的查询结果将直接保存到/tmp/
阅读全文
摘要:开发中,经常进行模糊查询或者进行截取字符串进行模糊匹配,常用的就是substr函数或者substring函数。 使用语法: substr(string A, int start),substring(string A, int start) 两者用法一样,两个参数 返回值: string 说明:返回
阅读全文
摘要:补充说明 left outer join where is not null与left semi join的联系与区别:两者均可实现exists in操作,不同的是,前者允许右表的字段在select或where子句中引用,而后者不允许。 除了left outer join,Hive QL中还有rig
阅读全文
摘要:差集定义:一般地,设A,B是两个集合,由所有属于A且不属于B的元素组成的集合,叫做集合A减集合B(或集合A与集合B之差)。 类似地,对于集合A,B,我们把集合{x/x∈A,且x¢B}叫做A与B的差集,记作A-B记作A-B(或A\B); 即A-B={x|x∈A,且x ¢B}(或A\B={x|x∈A,且
阅读全文
摘要:1. If 函数 : if 语法: if(boolean testCondition, T valueTrue, T valueFalseOrNull) 说明: 当条件testCondition为TRUE时,返回valueTrue;否则返回valueFalseOrNull 举例: hive> sel
阅读全文
摘要:1、2018年4月份的用户数、订单量、销量、GMV (不局限与这些统计量,你也可以自己想一些) PS: 订单数就是卖了几单 ; 销量就是卖了多少件,一个订单中可能卖出一件或多件; GMV: Gross Merchandise Volume,是成交总额(一定时间段内)的意思。 在电商网站定义里面是网站
阅读全文
摘要:数据字典:是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。 数据字典的主要作用:数据字典和数据流图共同构成系统的逻辑模型。没有流图数据字典难以发挥作用。没有数据字典,数据流图就不严格。 数据字典(Data dicti
阅读全文
摘要:先MARK一下 ,两个不错的资料,可以加深理解: https://www.zhihu.com/question/34554321 http://sklearn.apachecn.org/cn/0.19.0/modules/clustering.html 【转载】一篇总结不错的博文: https://
阅读全文
摘要:原 Hive作业优化 原 Hive作业优化 原 Hive作业优化 原 Hive学习六:HIVE日志分析(用户画像) 原 Hive学习六:HIVE日志分析(用户画像) 原 Hive学习六:HIVE日志分析(用户画像) 原 Hive学习五--日志案例分析 原 Hive学习五--日志案例分析 原 Hive
阅读全文
摘要:1、Join原则将条目少的表/子查询放在 Join的左边。 原因是在 Join 操作的 Reduce 阶段,位于 Join左边的表的内容会被加载进内存,将条目少的表放在左边,可以有效减少发生内存溢出的几率。当一个小表关联一个超大表时,容易发生数据倾斜,可以用MapJoin把小表全部加载到内存在map
阅读全文
摘要:1. 获取应用安装绝对路径: 方法一:一层层点进去,然后复制路径栏目; 方法二:打开软件执行文件所在目录,按住shift点击鼠标邮件,选择powerShell,现在win10都自带了,输入: 即可看到路径,划选点右键即可复制路径。 2. 查看环境变量: win+R输入cmd,打开命令行; 3. 新添
阅读全文
摘要:具体配置过程如下链接: https://zhuanlan.zhihu.com/p/35178331 但中间出了点问题:CTRL+ALT+n 运行后: PS D:\C++> cd "d:\C++" ; if ($?) { gcc test.c -o test -std=c11 -lm } ; if (
阅读全文
摘要:MinGW-w64 就是 著名C/C++编译器GCC的Windows版本。 一、什么是 MinGW-w64 ?MinGW 的全称是:Minimalist GNU on Windows 。它实际上是将经典的开源 C语言 编译器 GCC 移植到了 Windows 平台下,并且包含了 Win32API ,
阅读全文
摘要:今天用hive查询用户日志表.这是日志表的格式: 创建数据库名: 创建表名: (1)查询10个交易记录: (2)对于复杂的列名,可以使用别名: (3)使用嵌套语句: (4)统计有多少条行数据: (5)统计不重复的数据: (6)使用group by 查询不重复的数据: (7)查询某一天多少人购买了产品
阅读全文
摘要:1、row_number() over()排序功能: (1) row_number() over()分组排序功能: 在使用 row_number() over()函数时候,over()里头的分组以及排序的执行晚于 where group by order by 的执行。 partition by 用
阅读全文
摘要:Python3 range() 函数用法 Python3 内置函数 Python3 range() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表。 Python3 list() 函数是对象迭代器,可以把range()返回的可迭代对象转为一个列表,返回的变量类
阅读全文
摘要:一、XGBoost的优势 XGBoost算法可以给预测模型带来能力的提升。当我对它的表现有更多了解的时候,当我对它的高准确率背后的原理有更多了解的时候,我发现它具有很多优势: 1 正则化 标准GBDT 的实现没有像XGBoost这样的正则化步骤。正则化对减少过拟合也是有帮助的。 实际上,XGBoos
阅读全文
摘要:1. scikit-learn GBDT类库概述 在sacikit-learn中,GradientBoostingClassifier为GBDT的分类类, 而GradientBoostingRegressor为GBDT的回归类。两者的参数类型完全相同,当然有些参数比如损失函数loss的可选择项并不相
阅读全文
摘要:1. 交叉验证概述 进行模型验证的一个重要目的是要选出一个最合适的模型,对于监督学习而言,我们希望模型对于未知数据的泛化能力强,所以就需要模型验证这一过程来体现不同的模型对于未知数据的表现效果。 最先我们用训练准确度(用全部数据进行训练和测试)来衡量模型的表现,这种方法会导致模型过拟合;为了解决这一
阅读全文
摘要:%matplotlib inline 是一个魔法函数(Magic Functions)。官方给出的定义是:IPython有一组预先定义好的所谓的魔法函数(Magic Functions),你可以通过命令行的语法形式来访问它们。可见“%matplotlib inline”就是模仿命令行来访问magic
阅读全文
摘要:在scikit-learn中,RandomForest的分类器是RandomForestClassifier,回归器是RandomForestRegressor,需要调参的参数包括两部分,第一部分是Bagging框架的参数,第二部分是CART决策树的参数。 一、Bagging框架的参数: 1. n_
阅读全文
摘要:sql中的笛卡尔积 我们对数据库表进行操作时,经常会对多张表进行关联,多表连接查询大家肯定不会陌生,但是一不小心很容易出来庞大冗余的数据。 笛卡尔积数学概念 笛卡尔积是指在数学中,两个集合X和Y的笛卡尓积(Cartesian product),又称直积,表示为X × Y,第一个对象是X的成员而第二个
阅读全文