自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (3)
  • 收藏
  • 关注

原创 Apache Kylin使用MapReduce构建cube的过程

kylin在hive中会使用一个叫做kylindb的库Step #1: Create Intermediate Flat Hive Table做表关联,做一张关联后的宽表,具体步骤如下:1.1 根据cube的维度、度量创建中间宽表 kylin_intermediate_cubeA。DROP TABLE IF EXISTS kylin_intermediate_cubeA;CREATE E...

2021-01-07 14:50:33 414

原创 使用图DFS(Depth-First-Search)解决排列组合问题

背景      在近期的项目中,有一个的功能设计,此功能有一个将指标修饰词进行排列组合的步骤。      一开始的觉得这里使用多重循环就可以解决,随着实践发现了一些暴力算法的局限性,有想起来之前做图计算最短路径的深度优先搜索DFS算法,在这个场景加以变化正好适用。场景需要对多种类型的修饰词进行组合例:类型A的值有: 1,2类型B的值有: a,b,c那么组合的结果就有.

2021-01-07 13:57:07 280

原创 Spark中RDD复杂算子 aggregate()、combineByKeyWithClassTag()与aggregateByKey()

1、aggregate()方法声明:def aggregate[U: ClassTag](zeroValue: U)(seqOp: (U, T) => U, combOp: (U, U) => U): U = withScope {}方法声明中的重点:1、aggregate返回类型为传入的类型参数U2、第一个参数列表zeroValue为U类型的值,是聚合的初始值。3、两个函数类型的参数,官方注释如下: * @param seqOp an operator used to accu

2020-05-18 16:50:16 431

原创 最长公共子序列-LeetCode1143图解

题目:给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列。一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,“ace” 是 “abcde” 的子序列,但 “aec” 不是 “abcde” 的子序列。两个字符串的「公共子序列」是这两个字符串所共同拥有的子序列。若这两个...

2019-12-11 10:36:10 508

原创 Hadoop中Writable类笔记

Writable接口:包名:org.apache.hadoop.io方法:write(DataOutput var1) 用于序列化对象方法:readFields(DataInput var1) 用于反序列化对象Comparable接口:包名:java.lang方法:compareTo(T o) 用于比较大小,排序可能会调用WritableComparable...

2019-08-26 11:11:22 524

原创 Hadoop中MapReduce的自定义分区、排序、分组

分区:在MR的job中,默认使用的分区类为:HashPartitioner.class其源代码为:public class HashPartitioner<K, V> extends Partitioner<K, V> { public HashPartitioner() { } public int getPartition(K key, ...

2019-07-24 16:29:15 647

原创 Java多线程基础

Java实现多线程所有方法都要通过Tread类实现,Thread类中的Start0()方法使用JNI(Java Native Interface)来和操作系统交互,进行线程计算。有三种方法实现Java多线程编程:继承Thread类,在子类中重写Thread类的run()方法。实现Runnable接口,在实现接口的类中实现方法run()。用类A实现callable接口,再用A的对象初始化一...

2019-07-09 15:09:28 143

原创 sqoop更新导入总结,从hive到mysql

首先语句上很简单,sqoop export \--connect jdbc:mysql://192.0.0.1:13308/test?characterEncoding=UTF-8 \--username cxk \--password jinitaimei \--table test_table \--columns a,b,c,d,e \--hcatalog-databa...

2019-06-13 16:33:40 1056

原创 Impala中添加udf总结

在hive中添加udf较为简单,没遇到什么麻烦,但是在impala中添加udf有时候会报错,找不到类,class not found等。一、class not found解决办法:将所缺类的jar包放到impala的lib目录下,如果是cloudera管理的,通常为:/opt/cloudera/parcels/CDH/lib/impala/lib/然后还需要重启impala新放入的jar...

2019-06-13 15:58:56 2883

原创 RDD使用map函数返回多行的解决办法,scala语言

map函数通常为1行数据处理得到1行数据,有时候需要rdd中的一条数据经过处理后可能会返回一行以上的数据,有一种比较妥协的解决办法:平时rdd的map函数返回的是一个tuple,也就是一行数据,现在可以将返回的类型设置为含有多个tuple元素ArrayBuffer,例如比如我们现在有一个rdd叫 inputrddvar newrdd: RDD[ArrayBuffer[(String, Str...

2019-06-13 15:46:37 3358

原创 快速排序算法,python版

a=[46,30,82,90,56,17,95,55,15,1,4,7,4]#a=[15,30,17]def qsort(a,start,end): if(len(a)<=1): return l = len(a)- 1 i, j = start, end base = i cmp = j while(cmp!=base):...

2019-03-29 10:18:26 155

原创 快速排序算法,scala版

def qsort(a:Array[Int],start:Int,end:Int): Unit ={ if(start >= end){return} var i = start var j = end val key = a(start) while(i!=j) { ...

2019-03-29 10:16:57 301

原创 scala中使用HBASE的scan方法查询数据

def scanFunc(uuid: String, table: Table): ListBuffer[String] = { var result = new ListBuffer[String] val scan = new Scan() val filter = new SingleColumnValueExcludeFilter(Bytes.t...

2019-03-05 16:09:12 2732

原创 scala java 使用kill命令终止的回调方法

有时候启动的scala程序或者java程序需要使用kill命令停止,这是又需要再kill的时候销毁一些对象,这时候就需要用到addShutdownHook来触发。注意⚠️:只有使用kill -15才可以触发scala写法:def main(args: Array[String]): Unit = { val jobConf = new JobConf(HBaseConfigurat...

2019-03-05 16:03:33 627

原创 RDD算子实现分组、连接字符串 (sql实现 contact_ws group by)

需求:有一个tuple数组,每个元组四个元素,需求按照 _2 _4 分组,_1 _3拼以 _ 拼接后,组内的再以 | 连接。sql实现为:select _2+_4,contact_ws(_1+_3,'|') from t1 group by _2+_4,改用RDD算子实现为:var arrFriend = ArrayBuffer[(String, String, Int, String)]...

2019-03-05 15:57:12 3068

原创 Spark2.x Java API 移除 DataFrame

Spark2.X 的 Java API 移除了DataFrame类,换为使用DataSet代替。对应的包为:import org.apache.spark.sql.Dataset;import org.apache.spark.sql.Row;

2019-02-18 11:15:11 818 1

原创 Spark的DataFrame、RDD写入到HBase的方法(Scala)

一、使用DataFrame.saveAsHadoopDataset(conn)方法。特点:适合做批量的写入。优点为批量写入方便快捷。缺点对于数据量大的DF写入速度太慢。val conn = new JobConf(HBaseConfigurationcreate())//设置HBase连接conn.set(,)conn.set(,)//设置Host和Portconn.set(TableO...

2019-01-10 14:18:06 3075

原创 windows 下安装jupyer notebook

windows 下安装jupyer notebook配置windows 环境变量,path后追加;D:\Python36;D:\Python36\Scripts在任意目录运行pip install virtualenv,为python安装虚拟环境的依赖在要创建虚拟环境的目录下,比如我在D盘根目录D:\下运行,virtualenv jup_venv,这时候会有一个目录D:\jup_v...

2018-10-31 12:32:12 1252

原创 linux shell中实现循环日期

#!/usr/bin/env bashstart_date=&amp;amp;quot;20180726&amp;amp;quot;end_date=&amp;amp;quot;20180830&amp;amp;quot;while [ &amp;amp;quot;$start_date&amp;amp;quot; -le &amp;amp;quot;$end_date&amp;amp;quot; ];do

2018-09-13 10:37:30 4252

原创 spark中 Dynamic Allocation 以及 num-executors 的问题

之前使用spark2.3.1的sparkstreaming时,发现 spark-submite 设置 num-executors10 时,没有起作用,spark作业的executors一度多大几百个,后来把dynamicAllocation.enabled false ,spark任务的executors才能限制在10。过一段时间,使用spark 1.6的saprk-sql时发现有...

2018-09-12 16:55:41 3337

原创 centos 7 安装 python 3.6

./configure –prefix=/usr/python make make install ln -s /usr/python/bin/python3 /usr/bin/python3 ln -s /usr/python/bin/pip3 /usr/bin/pip3 配置path到/usr/python/bin

2018-08-21 19:33:49 475

原创 使用api查询Kylin数据

1、安装pip必要包 pip install kylinpy pip install sqlalchemy 2、 查询代码:import sqlalchemy as sadef kylin_query(conn_str,query_sql): #查看表(我没跑通) kylin_engine = sa.create_engine(conn_str) ky...

2018-08-20 18:38:26 1519

原创 Superset 在linux( centOS 6\7 )下安装

一、安装python3.6(据说python3.4以上就可以)二、安装mysql(我安装的mysql5.7社区版)三、安装visual c++ build tools 2015,(一会附上csdn下载)四、使用pip 安装superset pip install superset五、依次执行 superset在site-packages/superse...

2018-08-20 15:46:23 1639

原创 Apache Kylin 高基数维度处理 以及 其他优化

第一个问题:在Tableau中显示的度量值如果是SUM计算,那么在Hive中最好使用的字段类型为decimal(20,0),避免使用int以及bigint。 第二个问题:高基数维度的Cube在构建过程中报错,GC limite exceeded 以及java.lang.OutOfMemoryError: Java heap space,需要在~/conf/kylin_job_conf.xml中添...

2018-06-20 14:33:20 3038

原创 HDU4288 Coder

题目大意:add即像数字串中添加数字,del n删除数字串中值为n的元素。sum 按照所给公式求和。 坑点:所给的数字是由小到大排序的,需要注意的是后面如果add一个数字,需要放到合适的位置。比如 3,4,7,9, 如果add 6,6需要放在4,7之间。 这道题一直超时,关键在删除值为n的元素的时候会超时,因为需要遍历。 所以使用二分搜索找到插入n的位置以及删除n的位置。...

2014-09-03 13:24:06 880

原创 HDU4278 Faulty Odometer(进制转化问题)

题目大意:里程表会错过0 1 2 3 4 5 6 7 8 9中的 3 和 8 两个数字 也就是 正常的里程表显示0 1 2 3 4 5 6 7 8 9 坏掉的里程表只会显示 0 1 2 4 5 6 7 9 其实可以看做:0 1 2 3 4 5 6 7 即坏掉的里程表显示的是8进制的数字

2014-09-03 13:21:17 852

原创 HDU2546-饭卡(DP+贪心)

DP动态优化+贪心的算法。#include #include #include using namespace std;int a[1010],V,rest,f[1200],maxm;void DP(){ for(int i=0;i<V;i++){ for(int v=rest-5;v>=0;v--){ if(f[v]==1)

2014-08-27 20:11:51 728

原创 poj3624_Charm Bracelet (01背包问题)

01背包问题:推荐资料《背包问题九讲》#include using namespace std;int cost,ans,val,n,V,f[12890];int maxm(int a,int b){ if(a>b) return a; return b;}int main(){ cin>>n>>V; for(int i=0;i<n;i++){

2014-08-26 17:01:42 705

原创 HDU1003- Max Sum(DP优化入门题目)

DescriptionGiven a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-sequence. For example, given (6,-1,5,4,-7), the max sum in this sequence is 6 + (-1) + 5 + 4 = ...

2014-08-26 12:58:55 808

原创 HDU1240 Asteroids!-题目意思详解( 三维BFS)

题目大意:先输入START N 表示这个立方体的层数是N,每一层为一个NxN的正方形。。其实就是一个NxNxN的正方体,输入时一层一层的输入。输入完立方体后,输入起点和终点的坐标。输出是 先输出 N 再输出最短路径的步数。如果走不到终点,输出NO ROUTE。坑点:它输入的起点和终点坐标不与我们输入的立方体对应。要把输出的起点终点描述看仔细了 不能想当然#include ...

2014-08-15 16:24:18 2966 5

原创 HDU1242 (BFS搜索中使用优先队列)

一道用到优先队列的BFS题目#include #include #include #include #include #define N 201using namespace std;char maze[N][N];int a,b,anw;bool visit[N][N];int dir[4][2]={{0,1},{1,0},{-1,0},{0,-1}};int sx,s

2014-08-13 16:32:18 758

原创 poj1088 滑雪(dfs、dp优化)

#include #include #include #include #include #include #include #include #define N 110int a,b,step=0;int anw=0;int moun[N][N];int dp[N][N];int dir[4][2]={{1,0},{0,1},{-1,0},{0,-1}};using

2014-08-12 15:14:13 1147

原创 8.8学习笔记

bfsdp状态压缩

2014-08-08 19:30:08 565

原创 UVA141- The Spot Game【运行时间:25ms】

题目大意:两个玩家依次在棋盘上xiaqi

2014-08-07 11:27:41 1016 1

原创 HDU4751 -(广义孪生素数猜想)

广义孪生素数猜想:对于任何偶数,存在两个质数之差等于这个偶数#include<cstdio>#include<iostream>#include<cstring>#include<map>#include<vector>#include<queue>#include<cmath>#includ...

2014-08-06 15:18:23 1114

原创 uva 10700 算式的加减乘除的运算优先级,算式的运算顺序处理。

题目:一个只有“+”和“*”的算式,得到的结果做大为

2014-08-06 10:13:26 880

原创 uva11991:一串数中第k个n的位置 FROM shu

题目:Easy Problem from Rujia Liu?Though Rujia Liu usually sets hard problems for contests (for example, regional contests like Xi'an 2006, Beijing 2007 and Wuhan 2009, or UVa OJ contests like Rujia

2014-08-05 19:04:36 706

原创 把整数分解为它的质因子以及质因子的幂次

功能:把N分解成 N=X^a+Y^b+Z^c X,Y,Z时N的质因子 输入:N 输出:X a Y b Z c代码:#include&lt;cstdio&gt;#include&lt;iostream&gt;#include&lt;cstring&gt;#include&lt;...

2014-08-01 10:22:44 1235

原创 POJ 3367 Expression(建立二叉树)

题目大意:大写字母会作为其

2014-07-31 02:06:39 815

原创 POJ 2418 Hardwood Species (map练习)

题目大意:输入一组单词,输出meigeda

2014-07-31 02:00:39 571

Impala ODBC驱动/Impala ODBC Driver

Impala的ODBC去驱动,下载自cloudera官网,留做备份。。。。。。。。。。

2018-11-07

visual c++ 2015 build tools

visual c++ 2015 build tools,可以解决pip 安装时visual c++ 14.0报错。我尽快发

2018-08-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除