- 博客(52)
- 收藏
- 关注
转载 hive SQL 运行状态监控
引言 目前数据平台使用Hadoop构建,为了方便数据分析师的工作,使用Hive对Hadoop MapReduce任务进行封装,我们面对的不再是一个个的MR任务,而是一条条的SQL语句。数据平台内部通过类似JDBC的接口与HiveServer进行交互,仅仅能够感知到一条SQL的开始与结束,而中间的这个过程通常是漫长的(两个因素:数据量、SQL复杂度),某些场景下用户需要了解这条SQL语句的执...
2018-07-31 21:11:51 1937 1
转载 MySQL的语句执行情况
在写SQL语句时,必须知道语句的执行情况才能对此作出优化。了解SQL语句的执行情况是每个写程序的人必不可少缺的能力。下面是对查询语句执行情况的方法介绍。 一、设置STATISTICSSTATISTICS选项有PROFILE,IO ,TIME。SET STATISTICS PROFILE ON:显示每个查询执行后的结果集,代表查询执行的配置文件。SET STATISTICS IO...
2018-07-31 21:01:04 2487 1
转载 Mysql索引介绍及常见索引的区别
Mysql索引概念:说说Mysql索引,看到一个很少比如:索引就好比一本书的目录,它会让你更快的找到内容,显然目录(索引)并不是越多越好,假如这本书1000页,有500也是目录,它当然效率低,目录是要占纸张的,而索引是要占磁盘空间的。Mysql索引主要有两种结构:B+Tree索引和Hash索引.Hash索引MySQL中,只有Memory(Memory表只存在内存中,断电会消失,适用于...
2018-07-31 20:51:01 136
原创 spark broadcast变量思考
方法1 :val map = sc.textFile("/test.txt").map(line => { val arr = line.split(",") (arr(0), arr(2).toInt) }).distinctvar mapBC = sc.broadcast(map.take(10).toMap)mapBC.unpersistmapBC = sc.broad...
2018-07-31 17:32:45 404
原创 hbase协处理器 动态表关联
协处理器—Coprocessor1、 起源 Hbase 作为列族数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执 行求和、计数、排序等操作。比如,在旧版本的(<0.92)Hbase 中,统计数据表的总行数,需 要使用 Counter 方法,执行一次 MapReduce Job 才能得到。虽然 HBase 在数据存储层中集成 了 MapReduce,能够有效用于数据表的分布...
2018-07-31 16:34:23 690
原创 hbase产生原理 特点 架构 hive区别
Hadoop 的限制Hadoop 只能执行批量处理,并且只以顺序方式访问数据。这意味着必须搜索整个数据集,即使是最简单的搜索工作。当处理结果在另一个庞大的数据集,也是按顺序处理一个巨大的数据集。在这一点上,一个新的解决方案,需要访问数据中的任何点(随机访问)单元。总结: (1)海量数据量存储成为瓶颈,单台机器无法负载大量数据 (2)单台机器 IO 读写请求成为海量数据存储时...
2018-07-31 15:32:35 166
原创 hbase 协处理器操作
// 创建表:create 'guanzhu','cf1'create 'fensi','cf1'// 测试插入数据put 'guanzhu','g','cf1:from','j'put 'fensi','b','cf1:from','a'// 上传jar包到hdfshadoop fs -mkdir /input hadoop fs -put myhbase.jar /inpu...
2018-07-31 14:39:28 193
原创 hbase shell操作
显示hbase中的表list第一个表名,多个列簇create 'user_info',{NAME=>'base_info',VERSIONS=>3 },{NAME=>'extra_info',VERSIONS=>1 } put 'user_info', 'user0000', 'base_info:name', 'luoyufeng'put 'user_info...
2018-07-31 14:35:22 158
原创 hbase复习和压缩算法
问题: 存储在HDFS上的一个大文件有100T,怎么在实时的要求下,快速找出对应的record 实时的增删改查 hbase 根据key 查找value 底层二进制编码 序列化和反序列化 主键 列簇1 列簇2 。。。 设计核心:跳表 + 布隆过滤器 HBase : 数据库 ,底层数据存储在HDFS Hive只要支持 select 查询延...
2018-07-31 11:10:40 652
转载 多线程读取大文件2
一、对文件分区 为了充分利用多线程读取,就需要把文件划分成多个区域,供每个线程读取。那么就需要有一个算法来计算出每个线程读取的开始位置和结束位置。那么首先根据配置的线程数和文件的总长度计,算出每个线程平均分配的读取长度。但是有一点,由于文件是纯文本文件,必须按行来处理,如果分割点在某一行中间,那么这一行数据就会被分成两部分,分别由两个线程同时处理,这种情况是不能出现的。所以各个区...
2018-07-27 15:10:28 791 1
转载 多线程读取文件
package demo.demo;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.RandomAccessFile;import java.io.UnsupportedEncodingException;impo...
2018-07-27 14:54:34 842
转载 脑裂问题以及如何避免
脑裂(brain-split):脑裂是指在主备切换时,由于切换不彻底或其他原因,导致客户端和Slave误以为出现两个active master,最终使得整个集群处于混乱状态。解决脑裂问题,通常采用隔离(Fencing)机制,包括三个方面: 共享存储fencing:确保只有一个Master往共享存储中写数据。 客户端fencing:确保只有一个Master可以响应...
2018-07-26 19:54:16 22307 1
原创 快排
static void quicksort(int n[], int left, int right) { int dp; if (left < right) { dp = partition(n, left, right); quicksort(n, left, dp - 1); ...
2018-07-26 19:45:35 126
原创 数据库发展
在这个云计算的时代,对技术提出了更多的需求,主要体现在下面这四个方面:1. 低延迟的读写速度:应用快速地反应能极大地提升用户的满意度;2. 支撑海量的数据和流量:对于搜索这样大型应用而言,需要利用PB级别的数据和能应对百万级的流量;3. 大规模集群的管理:系统管理员希望分布式应用能更简单的部署和管理;目前世界上主流的存储系统大部分还是采用了关系型数据库,其主要有一下优点:1.事务处理...
2018-07-26 19:33:12 1662
转载 spark到hbase
1)spark把数据写入到hbase需要用到:PairRddFunctions的saveAsHadoopDataset方法,这里用到了 implicit conversion,需要我们引入import org.apache.spark.SparkContext._2)spark写入hbase,实质是借用了org.apache.hadoop.hbase.mapreduce.TableInpu...
2018-07-26 19:12:55 410
原创 虚拟机转移之后的配置使用
1、IP地址 网卡只修改03 04 05 的 02 不修改 IP全部修改 先进行IP分配再修改修改网卡 vi /etc/udev/rules.d/70-persistent-net.rules 删除eth0 将eth1改为eth0vi /etc/sysconfig/network-scripts/ifcfg-eth0 删除UUID,HWAD...
2018-07-26 18:50:28 146
转载 HBase 高性能加入数据 - 按批多“粮仓”式解决办法
摘要:如何从HBase中的海量数据中,以很快的速度的获取大批量数据,这一议题已经在《HBase 高性能获取数据》(http://www.cnblogs.com/wgp13x/p/4245182.html)一文中给出了解决办法。那么,如何向HBase中高性能的插入数据呢?经研究表明,光是批量写入也还是不行。网上没有现成的方法。本文针对这一问题,给出了一个解决方案。它采用了多线程按批“多粮仓”的方式,...
2018-07-26 10:24:30 114
转载 hbase大规模数据写入
业务背景:由于需要将ngix日志过滤出来的1亿+条用户行为记录存入Hbase数据库,以此根据一定的条件来提供近实时查询,比如根据用户id及一定的时间段等条件来过滤符合要求的若干行为记录,满足这一场景的技术包括:Solr,Elasticsearch,hbase等,在此选用了Hbase来实践。step 1 :直接hbase建表,然后读取记录文件逐条写入Hbase。由于hbase实际的写入速度远...
2018-07-26 10:20:44 2284 2
转载 HBASE写性能改善
首先描述一下现象最近对HDFS底层做了许多优化,包括硬件压缩卡,内存盘及SSD。在出测试报告时发现老问题,HBase写入速度不稳定,这个大家都习以为常了吧,就是压测时,只要row size稍小一点,不管你怎么压,HBase的RegionServer总是不愠不火特淡定。有些人就怀疑是磁盘到瓶颈了?还有些人怀疑是不是GC拖累了?总之网上大部分测试都是黑盒测试嘛,大家也就乱猜呗。下面我仔...
2018-07-26 10:01:15 1019
原创 数据提高查询速度的方法:
避免全表扫描的情况 1.避免在 where 子句中使用!=或<>操作符 2.避免全表扫描,在 where 及 order by 涉及的列上建立索引。 3.应尽量避免在 where 子句中对字段进行 null 值判断,可以在num上设置默认值0,确保表中num列没有null值,: 4.应尽量避免在 where 子句中使用 or 来连接条件,unoin al 代替or...
2018-07-25 17:24:50 4197
转载 CDH安装
大家都知道,Apache Hadoop的配置很繁琐,而且很零散,为此Cloudera公司提供了Clouder Manager工具,而且还封装了Apache Hadoop,flume,spark,hive,hbase等大数据产品形成自己特色的CDH产品,再使用CM进行安装,很大程度上方便了集群的搭建,并提供了集群的监控功能。一、环境:1.三台VMware虚拟机(一个做为主节点,两个做为从节点...
2018-07-25 17:23:00 363
原创 hive的优化和注意事项
Hive是将符合SQL语法的字符串解析生成可以在Hadoop上执行的MapReduce的工具。基本原则:1:尽对于分区表要加分区,尽早地过滤数据,减少每个阶段的数据量select ... from A join B on A.key = B.keywhere A.userid>10 and B.userid<10 and A.dt='201204...
2018-07-25 16:13:02 163
原创 sparkpi 源码实现
public final class JavaSparkPi { public static void main(String[] args) throws Exception {//参数个数检查 如果输入一个则转换成int 否则切割二次 int slices = (args.length == 1) ? Integer.parseInt(args[0]) : 2;//n 10 0...
2018-07-23 19:17:17 673
原创 Java 大数据 趣味编程案列
初级:https://blog.csdn.net/zhongqi2513/article/details/79770782高级:https://blog.csdn.net/zhongqi2513/article/details/80059366趣味:https://blog.csdn.net/zhongqi2513/article/details/80015053...
2018-07-23 19:12:53 219
转载 32个Python爬虫项目
整理的原因是,爬虫入门简单快速,也非常适合新入门的小伙伴培养信心。所有链接指向GitHub,祝大家玩的愉快~O(∩_∩)OWechatSogou [1]- 微信公众号爬虫。基于搜狗微信搜索的微信公众号爬虫接口,可以扩展成基于搜狗搜索的爬虫,返回结果是列表,每一项均是公众号具体信息字典。DouBanSpider [2]- 豆瓣读书爬虫。可以爬下豆瓣读书标签下的所有图书,按评分排名依次存储,存...
2018-07-23 19:12:45 531
原创 数据挖掘 大数据电子书 hadoop 区块链
数据挖掘教程视频链接:https://pan.baidu.com/s/1sncBiOH 密码:81n8大数据电子书链接:https://pan.baidu.com/s/1bqVCksn 密码:9ncnhadoop大数据视频教程链接:https://pan.baidu.com/s/1dGvbOAl 密码:xcha新生大学区块链课程-完整版链接:https://pan.baidu.com...
2018-07-23 19:12:20 539
转载 MapReduce编程案例系列篇
转自https://blog.csdn.net/zhongqi2513/article/details/78321664由于本人最开始接触大数据工作,主要以写MapReduce程序为主,虽然现在有流行的言论称MapReduce这种运行很慢的分布式计算编程框架将要被各种内存计算框架取代。但是MapRedcue也会吸收很多流行的内存计算的各种优点,我相信,将来,MapReduce绝对不会沦落到要淘...
2018-07-23 19:12:03 2772
转载 5 分钟上手 ECharts
之前一直在用Chart.js绘制图表,但是用起来相对比较繁琐,并且样式单一,最近在做公司的一个电视频道数据统计项目时,领导给我推荐了百度的EChart.js,于是乎晚上回到家我就研究了下EChart.js的运用,以下是第一次用这个工具的详细教程:下载链接:http://echarts.baidu.com/download.html【01】获取 ECharts你可以通过以下几种方式获取 ...
2018-07-23 19:11:48 107
原创 行式数据和列式数据对比 存储压缩性能
一、行式数据库和列式数据库的对比1、存储比较行式数据库存储在hdfs上式按行进行存储的,一个block存储一或多行数据。而列式数据库在hdfs上则是按照列进行存储,一个block可能有一列或多列数据。2、压缩比较对于行式数据库,必然按行压缩,当一行中有多个字段,各个字段对应的数据类型可能不一致,压缩性能压缩比就比较差。对于列式数据库,必然按列压缩,每一列对应的是相同数据类型的数...
2018-07-23 19:11:35 2516 2
转载 多线程
如果对什么是线程、什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内。用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因为反应“多角色”的程序代码,最起码每个角色要给他一个线程吧,否则连实际场景都无法模拟,当然也没法说能用单线程来实现:比如最常见的“生产者,消费者模型”。很多人都对其中的一些概念不...
2018-07-23 19:11:17 71
转载 Spark动态内存管理
一、Spark内存管理模式 Spark有两种内存管理模式,静态内存管理(Static MemoryManager)和动态(统一)内存管理(Unified MemoryManager)。动态内存管理从Spark1.6开始引入,在SparkEnv.scala中的源码可以看到,Spark目前默认采用动态内存管理模式,若将spark.memory.useLegacyMode设置为true,则会改...
2018-07-22 10:39:26 744
转载 Spark开发指南
目 录6 Spark开发指南6.1 概述6.2 开发环境准备6.2.1 Java开发环境准备6.2.2 Scala开发环境准备6.3 开发指引6.4 Java代码样例6.5 Scala代码样例6.6 对外接口6.6.1 Java API6.6.2 Scala API6.6.3 Python API6.6.4 Web UI6.6.5 JDBC...
2018-07-22 10:08:11 2634
原创 多线程面试重点
关于多线程编程的面试题:https://segmentfault.com/a/1190000013813740https://segmentfault.com/a/1190000013896476
2018-07-22 10:06:26 76
原创 常见端口汇总:
Hadoop: 50070:HDFS WEB UI端口 8020 : 高可用的HDFS RPC端口 9000 : 非高可用的HDFS RPC端口 8088 : Yarn 的WEB UI 接口 8485 : JournalNode 的RPC端口 8019 : ZKFC端口Zookeeper: 2181 : 客户端连接zookeeper的端口 ...
2018-07-22 10:03:41 4387
原创 spark常见的函数
http://spark.apache.org/docs/latest/api/scala/index.html#package
2018-07-22 10:00:19 397
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人