- 博客(214)
- 资源 (9)
- 收藏
- 关注
原创 HIVE UDF MD5
package org.apache.hadoop.hive.ql.udf.HashMd5UDF;import org.apache.hadoop.hive.ql.exec.UDF;import org.apache.hadoop.io.MD5Hash;public class HashMd5 extends UDF { public String evaluate(String param) { return "UDF:" + MD5Hash.digest(par...
2022-03-11 13:35:53
327
原创 Centos7 WARNING: ‘aclocal-1.15‘ is missing on your system.
wgethttp://ftp.gnu.org/gnu/automake/automake-1.15.tar.gztar -zxvf automake-1.15.tar.gzcd automake-1.15./configure --docdir=/usr/share/doc/automake-1.15makemake install
2021-12-27 14:20:45
1245
原创 usr/local/lib add ld.so.conf
Libraries have been installed in: /usr/local/lib If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag du.
2021-12-22 08:37:57
781
原创 Centos7 CMake升级
wget https://cmake.org/files/v3.9/cmake-3.9.2.tar.gztar zxvf cmake-3.9.2.tar.gzcd cmake-3.9.2./configuremakemake installcmake --version
2021-12-22 08:20:52
637
原创 Centos Flex 2.6.4
wget https://github.com/westes/flex/files/981163/flex-2.6.4.tar.gz./configuremakemake install
2021-12-22 08:19:49
1446
原创 Centos7 更新gcc版本
#安装centos-release-scl#yum install centos-release-scl#安装安装devtoolset#yum install devtoolset-8-gcc*#安装激活对应的devtoolset#可以一次安装多个版本的devtoolset,需要的时候用下面这条命令切换到对应的版本,scl enable devtoolset-8 bash#查看版本#gcc -v#切换gcc版本#source /opt/rh/devtoolset-8/enabl.
2021-12-22 08:17:59
435
原创 Go语言 读写锁&互斥锁原理剖析(2)
互斥锁从原理上要比读写锁复杂,Go语言中提供了标准库sync.Mutex,两种操作模式:正常模式:所有协程以先进先出(FIFO)方式进行排队,被唤醒的协程同样需要竞争方式争夺锁,新协程争抢会有优势,因为他们已经运行在CPU上,更容易抢到锁,如果一个协程在等待超过1毫秒会自动切换到饥饿模式下。 饥饿模式:互斥锁会直接由解锁的协程交给队列头部的等待者,新争抢者不能直接获得锁,不尝试自旋,会老...
2020-04-26 17:24:50
1068
原创 Go语言 读写锁&互斥锁原理剖析(1)
读写锁首先我们看rwmutex.go里面定义了RWMutex结构体,RWMutex继承于Lockertype Locker interface { Lock() Unlock()}type RWMutex struct { w Mutex // 互斥锁,写锁协程获取该锁后,其他写锁处于阻塞等待 writerSem uint32 // 写入等待信号量,...
2020-04-25 15:58:09
961
原创 Nginx反向代理+Go服务实践
前言在后端开发期间,会为前端或者平台上提供API服务接口,这时、我们看完今天的文章可以详细了解到Nginx反向代理到后端服务上的过程。Nginx:是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。可以做反向代理、正向代理,静态服务器等。负载均衡算法:upstrem支持4种负载均衡调度算法:轮询(weight):每个请求按时间顺序逐一...
2020-04-22 22:09:47
1464
原创 Go语言中面向对象
Go语言面向对象: Go语言中没有明确的OOP(Object Oriented Programming)概念, Go语言中只提供了两个关键类型:struct和interface,struct与C++的普通类相似,interface对应的是抽象类的类型。 面积对象是借助struct结构体实现的,interface则是定义接口的。一、类的封装示例讲解:首先我们定义一个汽...
2020-04-20 15:35:41
645
原创 Go语言讲解深拷贝与浅拷贝
一、概念1、深拷贝(Deep Copy):拷贝的是数据本身,创造一个样的新对象,新创建的对象与原对象不共享内存,新创建的对象在内存中开辟一个新的内存地址,新对象值修改时不会影响原对象值。既然内存地址不同,释放内存地址时,可分别释放。值类型的数据,默认全部都是深复制,Array、Int、String、Struct、Float,Bool。2、浅拷贝(Shallow Copy):拷贝...
2020-04-18 17:37:27
3119
原创 Go语言 命令行解析(二)
命令行启动服务的方式,在后端使用非常广泛,如果有写过C语言的同学相信不难理解这一点。在C语言中,我们可以根据argc和argv来获取和解析命令行的参数,从而通过不同的参数调取不同的方法,同时也可以用Usage来打印帮助信息了。在Go语言中urfave/cli是一个简单快速的命令行包,用于在Go语言中构建命令行应用程序,目的是使开发人员能够以表达的方式编写快速分发的命令行应用程序,urfave/...
2020-04-17 16:24:12
880
原创 Go语言 命令行解析(一)
命令行启动服务的方式,在后端使用非常广泛,如果有写过C语言的同学相信不难理解这一点!在C语言中,我们可以根据argc和argv来获取和解析命令行的参数,从而通过不同的参数调取不同的方法,同时也可以用Usage来打印帮助信息了。那么开始今天的话题之前,我们回顾一下在C语言中是如何解析传递的参数的。示例代码:#include <stdio.h>#include <...
2020-04-16 16:16:59
492
原创 Go语言 可变参数
最近与同事讨论时,提到Go语言的可变参数,之前没有总结过相关知识点,今天我们介绍一下Go语言的可变参数。可变参数(Variable Parameters):参数数量可变的函数称之为可变参数函数,主要是在使用语法糖(syntactic sugar)。最经典的例子就是fmt.Printf()和类似的函数,fmt.Printf首先接收一个参数,后面可接收若干个参数。实例一:func1使用的是...
2020-04-14 14:25:48
1208
原创 Hive的列分隔符和行分隔符
在创建Hive表时,默认行分隔符"^A",列分隔符"\n",这两项也是可以设置的。在实际开发中,一般默认使用默认的分隔符,当然有些场景下也会自定义分隔符。创建表1:spark-hiveuse test_db;# 创建外部表CREATE EXTERNAL TABLE test_tb (user_id bigint COMMENT '用户ID',user_name string ...
2020-04-13 12:14:05
10512
1
原创 Druid 分析报表中的实战(二)
今天介绍一下druid常用查询类型的TopN和GroupBy。一、数据分类:Timestamp 将时间相近的一些数据聚合在一起,查询的时候指定时间范围,底层使用绝对毫秒数保存的时间戳,默认使用ISO-8601格式展示时间,格式:YYYY-MM-DDTHH:MM:SSSZ,“Z“代表零时区,中国所在的东八区为:“+08:00” Dimensions 与OLAP中的维度是一样的...
2020-04-10 15:45:25
470
原创 Linux 7 cmake:curses library not found
CentOS7 上面安装MySQL5.7出现以下问题:Curses library not found. Please install appropriate package解决方法:# yum安装yum -y install ncurses-devel# 删除文件rm CMakeCache.txt# 重新编译cmake . -DCMAKE_INSTALL_PREFI...
2020-04-09 22:37:05
943
原创 error while loading shared libraries: libatomic.so.1
安装服务的时候出现的问题:error while loading shared libraries: libatomic.so.1: cannot open shared object file: No such file or directory解决方法:yum -y install libatomic
2020-04-09 22:36:11
11627
原创 Linux 7 pycurl.so: undefined symbol 解决方法
使用yum install 包时出现的undefined symbol问题:yum install libatomic1 -yThere was a problem importing one of the Python modulesrequired to run yum. The error leading to this problem was: /usr/lib64/py...
2020-04-09 22:35:27
1114
原创 Druid 分析报表中的实战(一)
产品又过来提需求了!案例需求需要按日汇总充值总数的数据。过滤条件:用户包括:“Tom”和“Jack” 所有城市:“北京”、“上海”、“广州”和“深圳” 日期范围:“2020-03-01”到“2020-03-05”我们用SQL语句表示一下产品需要什么数据,能够直观的理解需求,SQL表达如下:SELECT date,SUM(rechange) AS re...
2020-04-07 21:46:59
751
原创 实时OLAP分析利器Druid介绍
Apache Druid 是一个高性能实时分析数据库,在复杂的海量数据下进行交互式实时数据展现的OLAP工具。主要特性:列式存储 预聚合 字典编码 位图索引 流式和批量数据摄入 灵活的数据模式、支持SQL查询 扩展方便,容易运维官方网址:http://druid.io目前国内在使用的公司有:阿里、滴滴、知乎、360、eBay,Hulu等。基础概念...
2020-04-05 10:10:28
686
原创 Go语言 Yaml编码和解码
前言Yaml文件mysql: user: root password: 123456 host: 192.198.1.1 port: 3306 dbname: mdbredis: host: 192.168.1.1 port: 1234 auth: 123456nginx_proxy: counter: 3 nginx_list: ...
2020-04-02 23:14:01
1854
原创 Go语言 ProtoBuf 序列化和反序列化
前言Protobuf是Google开发的一个网络通信协议,提供了高效率的序列化和反序列化机制,序列化就是把对象转换成二进制数据发送给服务端,反序列化就是将收到的二进制数据转换成对应的对象。官方版本支持Go,C++,Java,Python等语言。Go语言中Protocol Buffers是一个灵活、高效的、自动化的用于对结构数据进行序列化和反序列化协议,与XML、Json相比,Pro...
2020-04-02 16:30:16
3157
原创 Go语言 XML生成和解析
前言XML解析:实例XML实例<?xml version="1.0" encoding="utf-8"?><devices version="1"> <device> <deviceName>智能摄像头</deviceName> <deviceCode>1000...
2020-03-31 14:24:31
2398
原创 Go语言 模糊搜索实验(一)
模糊搜索要达到的目标是用户不需要关心搜索系统的结构,任意输入一串字符或者数字,只要搜索范围中包含该信息,通过该方法就能够找出该信息包含在哪个表,哪个字段里,或者具体哪个位置,进而可以进行更为详细的查询。系统允许被搜索信息和搜索提问之间存在一定的差异,这种差异就是“模糊”在搜索中的含义。例如,查找名字Smith时,就会找出与之相似的Smithe, Smythe, Smyth, Smitt等。...
2020-03-29 19:05:55
2251
原创 Go语言 gRPC 实践(一)
says_rpc.protosyntax = "proto2";option cc_generic_services = true;option java_generic_services = true;option py_generic_services = true;package says_rpc;option go_package = "pb_models/says...
2020-03-29 13:05:16
2070
原创 Go语言 中文分词技术使用技巧(一)
https://www.kutu66.com//GitHub/article_132948https://php.ctolib.com/gojieba.html
2020-03-27 16:15:51
4065
原创 ClickHouse 在广告系统场景中的实践
前言随着数据量的增长,传统DB已经无法满足实时聚合分组排序分析需求,对现在流行的OLAP(实时联机分析)系统进行了调研和实践来满足业务上数据的快速增长,目前比较流行的OLAP系统有:Presto、Druid、Kylin、TiDB+TiFlash和ClickHouse等,本文主要针对ClickHouse进行调研和实验。需求分析业务需求上需要按照广告维度,时间维度等实现快速分组聚合计算排序...
2020-03-24 21:30:30
905
原创 ClickHouse 详细集群部署方案
安装依赖:yuminstall-y curl pygpgme yum-utils coreutils epel-releaseYum安装:yum install clickhouse-server clickhouse-client clickhouse-server-common clickhouse-compressor验证是否已经安装:yum list ins...
2020-02-12 21:05:27
8775
4
原创 zookeeper centos7 集群部署
环境配置描述:服务器:CentOS Linux release 7.4.1708 (Core) * 3台Zk版本: zookeeper-3.4.14JDK版本:java version 1.8.0_1911、下载安装包wget http://apache.fayea.com/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz...
2019-12-27 14:55:16
248
转载 【转载】MySQL索引背后的数据结构及算法原理
本文转载自http://blog.jobbole.com/24006/摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的...
2019-12-11 16:53:23
164
转载 分布式id生成器
有时我们需要能够生成类似MySQL自增ID这样不断增大,同时又不会重复的id。以支持业务中的高并发场景。比较典型的,电商促销时,短时间内会有大量的订单涌入到系统,比如每秒10w+。明星出轨时,会有大量热情的粉丝发微博以表心意,同样会在短时间内产生大量的消息。在插入数据库之前,我们需要给这些消息、订单先打上一个ID,然后再插入到我们的数据库。对这个id的要求是希望其中能带有一些时间信息,这样即使...
2019-05-27 17:27:10
459
原创 安装MySQL-python报错 error: command 'gcc' failed with exit status 1解决方法
错误如:_mysql.c:2331: error: ‘_mysql_ConnectionObject’ has no member named ‘open’_mysql.c:2338: error: ‘_mysql_ConnectionObject’ has no member named ‘converter’_mysql.c:2345: error: ‘_mysql_Connectio...
2018-10-10 11:26:16
13476
2
转载 域名解析中A记录、CNAME、MX记录、NS记录的区别和联系
1. A记录 又称IP指向,用户可以在此设置子域名并指向到自己的目标主机地址上,从而实现通过域名找到服务器。说明:·指向的目标主机地址类型只能使用IP地址;附加说明: 1) 泛域名解析即将该域名所有未指定的子域名都指向一个空间。在“主机名”中填入*,“类型”为A,“IP地址/主机名”中填入web服务器的IP地址,点击“新增”按钮即可。 2) 负载...
2018-09-28 11:47:07
596
转载 Golang 垃圾回收剖析
1. Golang GC 发展Golang 从第一个版本以来,GC 一直是大家诟病最多的。但是每一个版本的发布基本都伴随着 GC 的改进。下面列出一些比较重要的改动。v1.1 STWv1.3 Mark STW, Sweep 并行v1.5 三色标记法v1.8 hybrid write barrier2. GC 算法简介这一小节介绍三种经典的 GC 算法:引用计数(
2017-10-20 14:27:43
1247
Wrox.-.Beginning.Php,.Apache,.Mysql.Web.Development.(2004)
2011-05-25
比较不错的Flex 教程
2010-05-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人