- 博客(16)
- 收藏
- 关注
原创 hbase几种查询方式对比
数据:9万条1 采用rowfilter查询scan 'testImportCsv',{FILTER => RowFilter.new(CompareFilter::CompareOp.valueOf('EQUAL'), SubstringComparator.new('1130210018008161'))}时间是:0.2400s2 采用值过滤查询scan 'testImportCsv',{FILTER => ValueFilter.new(CompareFilter::Com
2020-12-12 11:37:33 1976
原创 数据入hbase几种方式和对应的效率
使用ImportTsv方式导入类: org.apache.hadoop.hbase.mapreduce.ImportTsv小记:使用awk ‘$0=NR"^"$0’ file_name在文档每一列前面加行号,657680行221M数据用了15分钟平均下来每一行数:346byte数据准备:sma.dwd_nb_prem.20190228.001.i.1.dat列名: num int, eventtype_code STRING(32767), grpc
2020-12-11 15:44:40 306
原创 hbase格式小计
我们通过程序往hbase写数据非String的时候而是Long,如:def monitoringSinglePut(hbasetableName: String, topic: String,execTime:Long,schedulingTime:Long,processTime:Long,num_records:Long, family: String,hbaseconf:Configuration): Unit = { //单个插入 val connection: Connect
2020-07-02 14:12:12 131
翻译 各种二进制转换
整数有四种类型,byte/short/int/long,分别占1/2/4/8个字节,即分别占8/16/32/64位二进制使用最高位表示符号位,用1表示负数,用0表示正数。byte a = -1,如果只是将最高位变为1,二进制应该是10000001,但实际上,它应该是11111111。byte a=-127,如果只是将最高位变为1,二进制应该是11111111,但实际上,它却应该是10000001。和我们的直觉正好相反,这是什么表示法?这种表示法称为补码表示法,而符合我们直觉的表示称为原码表示法,补码
2020-06-08 13:12:29 5152
原创 shuffle源码解读
如果conf.getNumReduceTasks() == 0也就是没有reduce存在,不会触发任何的sortMaptask内存缓冲区(扇形数据结构即字节数)里存取的有分区public synchronized void collect(K key, V value, final int partition) throws IOException// write accounting info索引里记录的有分区kvmeta.put(kvindex + PARTITION, partitio
2020-06-07 20:01:08 261
原创 demo of mapreduce
package com;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Job;impo
2020-06-05 11:36:33 124
原创 mapreduce中log4j日志打印
控制台出现:log4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).log4j:WARN Please initialize the log4j system properly.1.在main下建立resources文件夹,并标记为resource root2.新建log4j.properties3.粘贴内容log
2020-06-05 11:28:22 626
翻译 Spark解决Map算子中调用自定义方法出现的初始化问题
有一批JSON数据需要被要存成parquet格式,但是这些json数据中有一些数据是脏数据,例如:{‘name’:‘zhangsan’,‘age’:14,‘wo}k’:‘teacher’}如果存在这样的数据的话,当我直接用下面spark代码将json文件转成parquet文件时则会报错代码:spark.read.json(“data/data.json”).write.mode(SaveMode.Overwrite).parquet(“data/data.parquet”)异常:19/08/2
2020-05-25 20:15:40 1053 2
原创 spark动态资源参数在代码设置不生效测试
官方解释Spark属性主要可以分为两种:一种与部署相关,例如“ spark.driver.memory”,“ spark.executor.instances”,SparkConf在运行时通过编程设置时,此类属性可能不会受到影响,或者行为取决于您选择的集群管理器和部署模式,因此建议您通过配置文件或spark-submit命令行选项进行设置;另一个主要与Spark运行时控件有关,例如“ spark.task.maxFailures”,可以用任何一种方式设置这种属性。spark.dynamicAlloc
2020-05-22 15:46:56 1698
原创 hive与parquent
hive Text存储与parquent比较准备数据功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入准备数据orderID INT, CustID INT, OrderTotal FLOAT, OrderNumItems INT
2020-05-21 18:35:29 758
翻译 hive SymlinkTextInputFormat介绍及用法
介绍先摘一段官方介绍,如下:Symlink file is a text file which contains a list of filename / dirname.This input method reads symlink files from specified job input paths and takes the files / directories specified in those symlink files as actual map-reduce input. The
2020-05-21 15:40:37 242
原创 hive内部表与外部表区分
官方注释内部表即托管表默认情况下,Hive创建托管表,其中文件,元数据和统计信息由内部Hive进程管理DESCRIBE FORMATTED TABLE_NAME 命令来标识托管表或外部表此命令可以描述表的很多属性功能比较ARCHIVE / UNARCHIVE / TRUNCATE / MERGE / CONCATENATE仅适用于托管表DROP删除托管表的数据,而只删除外部表的元数据ACID /事务处理仅适用于托管表查询结果缓存仅适用于托管表外部表仅允许RELY约束某些物化视图功能仅
2020-05-21 13:51:49 278
原创 hive 中的location
hive##官方注释LOCATION一般与外部表(EXTERNAL)一起使用。一般情况下hive元数据默认保存在<hive.metastore.warehouse.dir>中。EXTERNAL表指向其存储的任何HDFS位置,而不是存储在configuration属性指定的文件夹中hive.metastore.warehouse.dir如:CREATE EXTERNAL TABLE page_view (viewTime INT, userid BIGINT, pa
2020-05-21 10:27:21 10455 1
翻译 kafka数据一致性保证
一致性参数介绍request.required.acks:是否确认消息消费机制 它有三个选项:1,0,-10,意味着producer永远不会等待一个来自broker的ack,这就是0.7版本的行为。这个选项提供了最低的延迟,但是持久化的保证是最弱的,当server挂掉的时候会丢失一些数据。经测试,每10K消息大约会丢几百条消息。1,意味着在leader replica已经接收到数据后,pro...
2019-07-08 14:38:30 127
翻译 认识字符流与字节流
字节流与字符流先来看一下流的概念:在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成。程序中的输入输出都是以流的形式保存的,流中保存的实际上全都是字节文件。字节流与字符流在java.io包中操作文件内容的主要有两大类:字节流、字符流,两类都分为输入和输出操作。在字节流中输出数据主要是使用Out...
2019-07-04 16:13:47 73
翻译 序列化与大数据
序列化与反序列化序列化用途:Java内建的序列化机Hadoop序列化机制的特征欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图...
2019-07-04 14:57:13 238
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人