- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 Hive中使用 with as 优化SQL
背景: 当我们书写一些结构相对复杂的SQL语句时,可能某个子查询在多个层级多个地方存在重复使用的情况,这个时候我们可以使用 with as 语句将其独立出来,极大提高SQL可读性,简化SQL~ 注:目前 oracle、sql server、hive等均支持 with as 用法,但 mysql并不支持!一、介绍with as 也叫做子查询部分,首先定义一个sql片段,该sql片...
2018-07-31 23:29:06
70316
12
原创 shell统计日志文件实现指定格式Top10
背景: 无论oracle、hive还是spark等都有实现该功能的函数,但我们如何利用 linux-shell命令来处理用户访问日志实现top10功能呢?这相对比较偏底层了,了解下很有好处~一、需求日志文件: haha.txt 字段分隔符为:\t 字段说明: 时间 用户id 访问的url日志文件部分内容如下:2018-05-17 00:00:06 99986406000...
2018-07-29 15:23:53
1746
原创 SQL子查询优化
背景: 在此研究下SQL子查询的相关知识 ~ 以下内容主要参考《数据库查询优化器的艺术》一书一、子查询介绍概念:当一个查询是另一个查询的子部分时,称之为子查询(查询语句中嵌套有查询语句)。子查询出现的位置有:a)目标列位置:子查询如果位于目标列,则只能是标量子查询,否则数据库可能返回类似“错误: 子查询必须只能返回一个字段”的提示。注:标量子查询 - SQL允许子查...
2018-07-26 23:26:36
6821
原创 AWK实现两文本关联join
背景: join是数据处理领域中非常经典的技巧,绝大多数数据库都支持该用法,现在我们研究下AWK命令是如何实现 join的~我们先看看awk中的两个自身变量,NR 和 FNR。 awk可以指定同时读取多个文件,按照指定的先后顺序,逐个读取。NR 指的是awk所读取到所有记录(包括多个文件)的行数索引号,大概是Number Of Record的意思。FNR 指的是awk所读取到...
2018-07-17 23:18:05
4391
原创 Linux文本分析处理工具之awk、sort、uniq、cut
背景: 最近接手一些Linux下日志分析工作,在此整理下常用的分析工具,记录其参数命令~一、AWK 命令(重量级工具)1. 介绍AWK是一种优良的文本处理工具。它不仅是 Linux 中也是任何环境中现有的功能最强大的数据处理引擎之一。AWK 提供了极其强大的功能:可以进行样式装入、流控制、数学运算符、进程控制语句甚至于内置的变量和函数。它具备了一个完整的语言所应具有的几乎所有...
2018-07-17 17:09:22
1805
1
原创 根据关键字读取日志文件,按出现次数排序打印关键字(java实现)
背景: 公众号上偶尔看到一道阿里编程面试题,简单答一下哦 ~直接上代码:package test;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.util.*;/** * @Author: yuanj * @CreateDate: 20...
2018-07-02 23:00:28
4507
2
数据挖掘 你必须知识的32个经典案例
2017-10-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人