自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 Json特殊字符处理

这几天处理存储于json字段中的html文本,碰到特殊字符导致数据与字段错位,很是烦躁。\t:tab,跳格(移至下一列)\r:回车\n:换行解决方法:1、修改表存储格式<失败>2、regexp_replace<替换>hive> select regexp_replace('\t abc \n def \r hij', '\n|\t|\r', '');在网上搜索到解决案例如下:...

2020-07-28 14:33:40 1375

原创 Hive/HBase/MySQL数据库比较

HIve:  属于大数据生态系统中一个技术框架、用于分析数据  数据仓库ETL工具(ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过萃取(extract)、转置(transform)、加载(load)至目的端的过程)  建立在Hadoop之上,为用户提供SQL语句分析海量数据,离线数据分析  底层MapReduce  类似于MYSQL数据库中database和table来组织数据  hive将元数据存储在MYSQL中。mysql:  属于RD

2020-07-08 14:13:36 577

原创 Hive函数总结(最全面的)

一、数学函数 返回类型 函数名/参数 描述 DOUBLE round(DOUBLE a) Returns the roundedBIGINTvalue ofa. 返回对a四舍五入的BIGINT值 DOUBLE round(DOUBLE a, INT d) Returnsarounded toddecimal...

2020-06-08 20:39:26 1049

原创 MYSQL:count(1)/count(*)/count(列名)区别

1. count(1) 和count(*)当表的数据量大些时,对表作分析之后,使用count(1)还要比使用count(*)用时多了!从执行计划来看,count(1)和count(*)的效果是一样的。 但是在表做过分析之后,count(1)会比count(*)的用时少些(1w以内数据量),不过差不了多少。如果count(1)是聚索引,id,那肯定是count(1)快。但是差的很小的。因为count(*),自动会优化指定到那一个字段。所以没必要去count(1),用count(*),...

2020-06-05 11:14:41 201

原创 腾讯实习项目总结

今年5-8月在腾讯实习,有幸参与吃鸡合作项目,现将项目总结如下PPT:

2018-09-13 17:15:48 857

原创 Libevent库源码的剖析

        Libevent是一个轻量级的开源高性能网络库,使用者众多,研究者更甚,它有几个显著的优点 :                          (1)事件驱动(event-driven),高性能;(2)轻量级,专注于网络,不如ACE那么臃肿庞大;(3)源代码相当精炼、易读;(4)跨平台,支持Windows、Linux、*BSD和Mac Os;(5)支持多种I/O多路复用技术, e...

2018-03-06 14:15:22 450

原创 服务器程序框架之4.两种高效的并发模式(2)

本篇主要介绍领导者/追随者模式       领导者/追随者模式是多个工作线程轮流获得事件源集合。轮流监听、分发并处理事件的一种模式。在任意时间点,程序都仅有一个领导者线程,它负责监听I/O事件。而其他线程则都是追随者,它们休眠在线程池中等待成为新的领导者。当前的领导者如果检测到I/O事件,首先要从线程池中推选出新的领导者线程,然后处理I/O事件。此时,新的领导者等待新的I/O事件,而原来的领导者则...

2018-03-02 14:56:55 346

转载 白话解析:一致性哈希函数

学习一致性哈希算法的时候,看了些许文章,觉得这篇文章通俗易懂,可以尝试继续找到一致性哈希算法的具体实现,想收藏分享。没有分享权力,这里直接给我找出来的网址吧:CSDN转载地址:http://blog.csdn.net/justloveyou_/article/details/78313649原文地址:http://www.zsythink.net/archives/1182...

2018-03-01 11:36:31 750

原创 服务器程序框架之4.两种高效的并发模式(1)

新年快乐啊,2018我爱的人和爱我的人,一切顺利开心。服务器程序框架---终章 正文:       并发编程的目的是让程序“同时执行多个任务”。如果程序是计算密集型的,并发编程并没有优势,反而由于任务的切换使效率降低。但如果程序是I/O密集型的,比如经常读写文件,访问数据库等,情况就不同了。由于I/O操作的速度远没有CPU的计算速度快,所以让程序阻塞于I/O于I/O操作将浪费大量的CPU时间。如果...

2018-02-28 20:30:15 308

原创 服务器程序框架之3.两种高效的事件处理模式

       服务器程序通常需要处理三类事件:I/O事件、信号及定时事件。本篇先从整体上介绍一下联众高效的事件处理模式:Reactor和Proactor。        随着网络设计模式的兴起,Reactor和Proactor事件处理模式应运而生。同步I/O模型经常用于实现Reactor模式,异步I/O模式可用于实现Proactor模式。后面会看到,如何使用同步I/O方式模拟出Proactor模式...

2018-02-09 17:10:31 270

原创 服务器程序框架之2. I/O模型

前面有讲到过,socket在创建的时候是默认阻塞的。我们可以给socket系统调用的第2个参数传递SOCK_NONBLOCK标志,或者通过fcntl系统调用的F_SETFL命令,将其设置为非阻塞的。阻塞和非阻塞的概念能应用于所有文件描述符,而不仅仅是socket。我们称阻塞的文件描述符为阻塞I/O,称非阻塞的文件描述符为非阻塞I/O。       针对阻塞I/O执行的系统调用可能因为无法立即完

2018-02-06 21:26:35 187

原创 服务器程序框架之1.服务器模型

期末的时候做完开题报告,用了半个寒假投了一篇英文论文出去。两本书籍已经阅读完毕,现总结高性能服务器程序框架内容,分四篇文章介绍服务器模型、I/O模型(四种I/O模型)、两种高效事件处理模式和两种高效的并发模式。正文开始:1.C/S模型 TCP/IP协议在设计和实现上并没有客户端和服务器的概念。在通信过程中所有机器都是对等的。但由于资源(视频、资源、软件等)都被数据提供者所垄断,所以几乎

2018-02-05 16:05:07 292

原创 Linux编程之pipe管道通信(2)

上一篇我们介绍过创建管道的pipe函数,下面在代码中我们来实现进程间的通信吧。        管道能在父、子进程间传递数据,利用的是fork调用之后两个管道文件描述符(fd[0],fd[1])都保持打开。一对这样的文件描述符只能保证父、子进程间一个方向的数据传输,父进程和子进程必须有一个关闭fd[0],另一个关闭fd[1]。比如,我们要使用管道实现从父进程向子进程写数据,可按照下图来操作:

2017-10-11 16:49:21 1268

原创 Linux编程之pipe管道通信(1)

管道是为了实现进程间相互通信的。可以形象的比喻它为一个管子,管子有两头,不过只能在一端进行读操作,另一端进行写操作。            管道分为两类(1)无名管道,仅适用父子进程间的通信,pipe(fd) fd[0]读 fd[1] 写                                     (2)有名管道:任意进程可进行通信。            pipe函数可用

2017-10-10 15:49:30 550

原创 Linux编程网络之TCP通信

TCP/IP通信会用到很多API函数,还有许多杂的知识点。       我们知道,TCP协议通信的双方必须先建立连接,然后才能开始数据的读写。双方都必须为该链接分配必要的内和资源,以管理连接的状态和连接上数据的传输。TCP连接是全双工的,完成数据交换后,通信双方必须断开连接以释放系统资源。

2017-08-29 15:46:46 563

原创 小心情:继续未来的路

去年一年忙着研究生一年级的生活,各种课程各种杂念,内心不平静像放羊一样,过程中自学了数据结构,算法,STL、网络编程,做了几个小项目等。但是我知道我没有挖得很深,我该反省,我没有抓住每一天,没有迫切的获取知识的心态,没有那种在黑暗中抓住光亮的孤注一掷。因为被导师分配一些杂活还有学校里的课程耽搁了自己的行程。一开始我的计划统统被打乱,然后六级也没有过,学校里的课程夜并没有觉得学到了什么东西,除了计算

2017-08-23 14:36:25 297

转载 malloc实现

http://blog.csdn.net/hzhzh007/article/details/6424638

2016-12-13 12:08:22 322

原创 可变参数列表的C语言实现举例

函数参数列表最常见的是   返回类型 函数名(参数列表)   eg: int max(int a, int b)。这里还有两种不常见的参数列表形式,简单加以介绍。一、函数默认参:顾名思义,就是在参数列表中直接给每个参数赋初值。这样的好处是,此函数在调用的时候,可以不用完全给定参数。       例如: 这里有一个求平均值的函数,求四个数的平均值。

2016-09-06 13:14:38 304

原创 关于递归的若干问题

编程中,一个很重要的方法是递归。     递归:简单来说,自己调用自己。可以将一个较大的问题分解为同类较小规模的问题,有下到上一一求解。即:大规模---同类小规模---解决。    一、递归条件:           1.调用递归函数。一般都是在main函数中调用递归函数。           2.某些条件下,递归函数不再调用自己,结束当前函数的执行。           3.

2016-09-04 16:05:11 544

原创 一个IT菜鸟的自白

我是一名大四毕业,即将要步入研究生生涯的菜鸟,本科就读的学校是一本里面不算突出

2016-08-27 15:10:09 626

空空如也

空空如也

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

TA关注的人

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