大数据
炼丹师666
要学神仙,驾鹤飞天,点石成金,妙不可言!
展开
-
Hbase介绍
大数据,hbase技术介绍原创 2022-06-12 17:34:40 · 253 阅读 · 0 评论 -
Hbase支持随机读写
参考:https://blog.csdn.net/weixin_42796403/article/details/112791732原创 2022-01-25 13:38:32 · 2723 阅读 · 0 评论 -
hive建立临时表
2.1 Hive临时表数据存储设置从Hive1.1开始临时表可以存储在内存或SSD,使用hive.exec.temporary.table.storage参数进行配置,该参数有三种取值:memory、ssd、default。如果内存足够大,将中间数据一直存储在内存,可以大大提升计算性能。2.1 Hive临时表测试代码:set hive.exec.temporary.table.storage = memory;-- 创建临时表 存储在内存中create temporary table原创 2021-12-23 10:12:06 · 2074 阅读 · 0 评论 -
join语法大全
join 大全参考:https://www.toutiao.com/w/i1716998025966600/?tt_from=weixin&utm_campaign=client_share×tamp=1639741630&app=news_article&utm_source=weixin&utm_medium=toutiao_android&use_new_style=1&share_token=e8286077-f4b4-4014原创 2021-12-17 19:50:13 · 252 阅读 · 0 评论 -
impala shuffle和BROADCAST的优化方法
9.join 的算法1. hash join: 对于等值join, impala将采用hash的方式处理, 具体又分两种策略, broadcast 和 Shuffle.broadcast join 非常适合右表是小表的情形, impala 先将右表复制到各个节点, 再和左表做join.shuffle join, 也叫做partitioned join, 适合大表和大表关联. 注意 partitioned join 和右表的 partition 没有直接关系, impala 会将右表打散成N份, 发送到原创 2021-10-31 17:45:10 · 1235 阅读 · 0 评论 -
impala计算年龄
,year(from_unixtime(unix_timestamp(),'yyyy-MM-dd'))-year(from_unixtime(unix_timestamp(CSRQ,'yyyyMMdd'),'yyyy-MM-dd')) as age原创 2021-10-26 20:37:35 · 751 阅读 · 0 评论 -
add_months()函数介绍
add_months 函数主要是对日期函数进行操作,举例子进行说明add_months 有两个参数,第一个参数是日期,第二个参数是对日期进行加减的数字(以月为单位的)如:3个月以后的时间,可以用下列语句SQL> select add_months(sysdate,3) from dual; ADD_MONTHS(SYSDATE,3)---------------------2012-5-16 下午 02:30:473个月以前的时间,可以用下列语句SQL> select原创 2021-10-24 16:30:42 · 5106 阅读 · 0 评论 -
正则表达式函数REGEXP_LIKE(x,pattern)
1.REGEXP_LIKE(x,pattern)函数REGEXP_LIKE(x,pattern)函数的功能类似于like运算符, 用于判断源字符串是否匹配或包含指定模式的子串。 x指定源字符串, pattern是正则表达式字符串。该函数只可用在where子句中。(4) 可在[]中使用-表示范围(6) 元字符 {n}表示重复前面的元素n次;如: {2,5}表示前面的元素重复2到5次; {3,}表示至少重复3次。参考:https://blog.csdn.net/michiko98/artic原创 2021-10-24 16:01:50 · 1801 阅读 · 0 评论 -
replace()函数的使用
REPLACE(String,from_str,to_str) 即:将String中所有出现的from_str替换为to_str。参考:https://blog.csdn.net/bingguang1993/article/details/80592579/原创 2021-10-24 15:42:28 · 552 阅读 · 0 评论 -
用python3读csv文件,出现UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd0 in position 0: invalid con
使用pd.read_csv()读csv文件时,出现如下错误:UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xd0 in position 0: invalid continuation byte出现原因:文件不是 UTF8 编码的,而系统默认采用 UTF8 解码。解决方法是改为对应的解码方式。原文链接:https://blog.csdn.net/moledyzhang/article/details/78978312...原创 2021-09-28 17:20:08 · 362 阅读 · 0 评论 -
CDH中Impala的invalidate metadata与refresh的区别
如何正确使用通过上面的简单分析,容易做出以下总结:如果数仓中发生了增删表或改变表结构的行为,如create table、drop table、alter table add column等,就使用invalidate metadata [table]语句。如果数仓中某表加入了新数据,或者有分区的改动,如load data、alter table add partition等,就使用refresh [table] (partition [partition])语句。invalidate metada原创 2021-09-14 17:42:46 · 242 阅读 · 0 评论 -
HBase scan查询缓存优化 setBatch和setCaching的区别
HBase的查询实现只提供两种方式:1、按指定RowKey获取唯一一条记录,get方法(org.apache.hadoop.hbase.client.Get)2、按指定的条件获取一批记录,scan方法(org.apache.hadoop.hbase.client.Scan)实现条件查询功能使用的就是scan方式,scan在使用时有以下几点值得注意:1、scan可以通过setCaching与setBatch方法提高速度(以空间换时间);2、scan可以通过setStartRow与setEndR原创 2021-09-08 18:24:15 · 722 阅读 · 0 评论 -
hbase常见面试题
Hbase是什么?hbase的特点是什么?Hbase一个分布式的基于列式存储的数据库,基于Hadoop的 hdfs 存储,zookeeper 进行管理。Hbase适合存储半结构化或非结构化数据,对于数据结构字段不够确定或者杂乱无章很难按一个概念去抽取的数据。Hbase 为 null 的记录不会被存储。基于的表包含 rowkey,时间戳,和列族。新写入数据时,时间戳更新, 同时可以查询到以前的版本。hbase 是主从架构。hmaster 作为主节点,hregionserver 作为从节点。hba.原创 2021-07-12 21:09:05 · 194 阅读 · 0 评论 -
impala时间问题时区参数
impala默认时区问题会带来陷阱:衍生出一个问题(可能会遇到hive的数据和parquet中的数据完全一致(特指数据中的TIMESTAMP格式的数据),然而在impala中显示会存在8小时的差距impala时区改成本地模式-use_local_tz_for_unix_timestamp_conversions=true-convert_legacy_hive_parquet_utc_timestamps=true参数设置前后对情况对比如何解决:https://blog.csdn.net/原创 2021-07-01 16:04:03 · 538 阅读 · 0 评论 -
时序数据库与传统数据库的优势
传统关系型数据库存储时序数据的问题有了时序数据后,该存储在哪里呢?首先我们看下传统的关系型数据库解决方案在存储时序数据时会遇到什么问题。很多人可能认为在传统关系型数据库上加上时间戳一列就能作为时序数据库。数据量少的时候确实也没问题。但时序数据往往是由百万级甚至千万级终端设备产生的,写入并发量比较高,属于海量数据场景。MySQL在海量的时序数据场景下存在如下问题:存储成本大:对于时序数据压缩不佳,需占用大量机器资源;维护成本高:单机系统,需要在上层人工的分库分表,维护成本高;写入吞吐低:单机写入吞原创 2021-05-14 17:12:21 · 5422 阅读 · 0 评论 -
Impala中变相实现delete和update
Impala中变相实现删除和更新http://www.voidcn.com/article/p-nvowvqra-bez.htmlimpala的update用法(高版本):https://blog.csdn.net/ClearloveXXX/article/details/100011526原创 2021-04-07 14:35:17 · 2508 阅读 · 0 评论 -
impala两种方式同步hive元数据
1.hue中要使用Perform incremental metadata update,不要使用Invalidate all metadata and rebuild index,如果是invalidate metadata什么都不加,宁愿重新启动catalogd。2.如果涉及到表的schema改变,使用invalidate metadata [table]3.如果只是涉及到表的数据改变,使用refresh [table]。4.如果只是涉及到表的某一个分区数据改变,使用refresh [table]原创 2021-03-31 13:35:30 · 1107 阅读 · 0 评论 -
HBase行锁原理及实现
hbase涉及事务类型操作的时候,为防止数据错乱,有行锁机制:一、什么是行锁? 我们知道,数据库中存在事务的概念。事务是作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全的不执行。而事务的四大特点即原子性、一致性、分离性和持久性。其中,原子性首当其冲,那么在HBase内部实现其原子性的重要保证是什么呢?答案就是行锁。 什么是行锁呢?顾名思义,它就是加在行上的一把锁。在它未释放该行前,最起码其他访问者是无法对该行做修改的,即要修改的话,必须得获得该行的锁才能拥有修改改行数据的权原创 2021-03-31 13:20:45 · 362 阅读 · 0 评论 -
实现impala对HBase数据的查询
impala hive hbase 整合hbaseala hive hbase 整合hbase在这里插入图片描述1、habse 创建表create 'test_info', 'info' 表名test_info 列族: info2.hive中创建外部表 不支持impalaCREATE EXTERNAL TABLE sho.test_info( user_id string, user_type tinyint, gender string, birth原创 2021-03-30 17:01:15 · 671 阅读 · 0 评论 -
hbase查询优化Filter+Scan
Hbase Filter+Scan 查询效率问题1.ScanHBase常用的查看数据方式有scan和get,get是一种特殊的scan,get是scan的startrow和endrow等于同一个值的特殊情况。hbase的rowkey是按照B+树的形式存放的,所以查找一个具体的rowkey速度是非常快的,所以查询数据的时候一般都会设置scan的startrow和endrow,这样可以缩小查找的范围,所以rowkey的设计在hbase里面是极为重要的。可以这样讲,hbase里面的查询数据只有scan一种原创 2021-03-09 15:06:23 · 1315 阅读 · 0 评论 -
hbase预分区问题
预分区通常hbase会自动处理region拆分,当region的大小到达一定阈值后,region将被拆分成两个,之后在两个region都能继续增长数据。然而在这个过程当中,会出现两个问题: 第一点,就是我们所说的热点问题,数据会继续往一个region中写,出现写热点问题; 第二点,则是拆分合并风暴,当用户的region大小以恒定的速度增长,region的拆分会在同一时间发生,因为同时需要压缩region中的存储文件,这个过程会重写拆分后的region,这将会引起磁盘I/O上升 。 压缩:hb原创 2021-03-09 14:54:55 · 1005 阅读 · 0 评论 -
HBase Rowkey的设计和优化实现
大家都知道 HBase 由于它存储和读写的高性能,在 OLAP 即时分析中发挥着非常重要的作用,而 RowKey 作为 HBase 的核心知识点,其设计势必会影响到数据在 HBase 中的分布,甚至会影响我们查询的效率,可以说 RowKey 的设计质量关乎了 HBase 的质量。言归正传,对于关系型数据库,数据定位可以理解为“二维坐标”;但在 HBase 中,定位一条数据(即一个Cell)我们需要4个维度的限定:行键(RowKey)、列族(Column Family)、列限定符(Column Qualif原创 2021-03-04 20:33:33 · 373 阅读 · 1 评论 -
列式存储与行式存储的区别
列式存储与行式存储上面说到HBase是基于列的列式数据库,而常用的关系数据库则是行式数据库,此处对两个概念做简单区分。行式存储是指数据以行为单位进行存储,同一行的数据在存储介质中连续,如Oracle、Mysql、Sql Server列式存储是指数据以列为单位进行存储,同一列的数据在存储介质中连续,如HBase、HP vertica等分布式数据库参考这里:https://blog.csdn.net/hellojoy/article/details/106907093...原创 2021-03-04 20:23:16 · 805 阅读 · 1 评论 -
hbase的命名空间
HBase数据模型命名空间命名空间是对表的逻辑分组,不同的命名空间类似于关系型数据库中的不同的Database数据库。利用命名空间,在多租户场景下可做到更好的资源和数据隔离。表对应于关系型数据库中的一张张表,HBase以“表”为单位组织数据,表由多行组成。行行由一个RowKey和多个列族组成,一个行有一个RowKey,用来唯一标示。列族每一行由若干列族组成,每个列族下可包含多个列,如上ImployeeBasicInfoCLF和DetailInfoCLF即是两个列族。列族是列共性的一些体现。注原创 2021-03-04 20:10:28 · 1876 阅读 · 1 评论 -
对HBase表结构及数据模型的理解
①关系型数据库的表结构例如有一个用户表user_info,有字段:id、name、tel,表名和字段需要在建表时指定create table user_info (id 类型,name 类型,tel 类型)然后插入两条数据insert into user_info values(…)表结构如下:以后再增加需求时,就需要继续新增字段。上面的内容主要说明的是:建表的方式,需提前指定表名和字段插入记录的方式,指定表名和各字段的值数据表是二维结构,行和列添加字段不灵活下面看一原创 2021-03-04 19:38:53 · 472 阅读 · 1 评论 -
时序数据库介绍
什么是时序数据库先来介绍什么是时序数据。时序数据是基于时间的一系列的数据。在有时间的坐标中将这些数据点连成线,往过去看可以做成多纬度报表,揭示其趋势性、规律性、异常性;往未来看可以做大数据分析,机器学习,实现预测和预警。时序数据库就是存放时序数据的数据库,并且需要支持时序数据的快速写入、持久化、多维度的聚合查询等基本功能。对比传统数据库仅仅记录了数据的当前值,时序数据库则记录了所有的历史数据。同时时序数据的查询也总是会带上时间作为过滤条件。p1-北上广三地2015年气温变化图表结构:下面介绍原创 2021-03-04 10:36:18 · 1142 阅读 · 1 评论 -
Logstash日志收集实践
参考这:https://blog.csdn.net/m0_37886429/article/details/72385641原创 2021-03-02 17:37:48 · 123 阅读 · 0 评论 -
ELK工具介绍
一、ELK介绍对于日志来说,最常见的需求就是收集、存储、查询、展示,开源社区正好有相对应的开源项目:logstash(收集)、elasticsearch(存储+搜索)、kibana(展示),我们将这三个组合起来的技术称之为ELKStack,所以说ELKStack指的是Elasticsearch、Logstash、Kibana技术栈的结合。二、Logstash简介Logstash 是一款强大的数据处理工具,它可以实现数据传输,格式处理,格式化输出,还有强大的插件功能,常用于日志处理。输入,常见输入内原创 2021-03-02 17:34:29 · 885 阅读 · 0 评论 -
Impala最佳实践
分区设计规则:文件格式设计内存使用调优基础知识数据倾斜参考这:https://mp.weixin.qq.com/s/OWb3zIflJqoTBh5Imq75hA原创 2021-02-23 18:05:04 · 179 阅读 · 0 评论 -
impala的简介
一、概述Impala是Cloudera公司推出,提供对HDFS、Hbase数据的高性能、低延迟的交互式SQL查询功能。基于Hive使用内存计算,兼顾数据仓库、具有实时、批处理、多并发等优点impala使用hive的元数据, 完全在内存中计算是CDH平台首选的PB级大数据实时查询分析引擎 二、Impala的特点1、基于内存进行计算,能够对PB级数据进行交互式实时查询、分析2、无需转换为MR,直接读取HDFS及Hbase数据 ,从而大大降低了延迟。Impala没有MapReduce批处理,而是原创 2021-02-23 15:10:20 · 376 阅读 · 0 评论 -
Impala和Hive的对比
Impala和Hive的关系Impala是基于Hive的大数据实时分析查询引擎,直接使用Hive的元数据库Metadata,意味着impala元数据都存储在Hive的metastore中。并且impala兼容Hive的sql解析,实现了Hive的SQL语义的子集,功能还在不断的完善中。与Hive的关系 Impala 与Hive都是构建在Hadoop之上的数据查询工具各有不同的侧重适应面,但从客户端使用来看Impala与Hive有很多的共同之处,如数据表元数 据、ODBC/JDBC驱动、SQL语法、灵原创 2021-02-23 15:02:19 · 705 阅读 · 0 评论 -
Hive on Spark与SparkSql的异同
```pythonhive on Spark是由Cloudera发起,由Intel、MapR等公司共同参与的开源项目,其目的是把Spark作为Hive的一个计算引擎,将Hive的查询作为Spark的任务提交到Spark集群上进行计算。通过该项目,可以提高Hive查询的性能,同时为已经部署了Hive或者Spark的用户提供了更加灵活的选择,从而进一步提高Hive和Spark的普及率。...原创 2021-02-23 14:41:10 · 674 阅读 · 0 评论 -
hive on hbas原理场景及性能分析
使用场景熟悉大数据的同学应该都知道,Hive是一个分布式的数据仓库,它能够将海量数据,结构化存储到HDFS上,然后通过SQL的方式对这些海量数据进行业务处理。而且,Hive学习成本很低,熟悉SQL的同学,很快就能编写一个Hive应用程序。我们通过Hive把数据加载到HBase表中时,数据源可以是文件,也可以是表。当HBase集群集成Hive后,如果对Hive表追加数据的同时,HBase表中的数据也会增加。在原生的HBase集群中,HBase表不支持连接查询或是分组查询等,但是我们可以通过Hive On原创 2021-02-19 13:21:24 · 545 阅读 · 0 评论 -
sqoop概念功能及版本区别
2.功能对于hadoop进行大数据处理的数据来源主要有两部分(1)关系数据库,RDBMS(Oracle,MySQL,DB2…)(2)文件(apache,nginx日志数据)hadoop 对于大数据的处理,是将数据存储在HDFS上,sqoop的功能就是将RDBMS中的数据导入HDFS,或者将HDFS中的数据导出到RDBMS。对于文件系统中的数据导入HDFS,可以使用Flume(实时抽取)。sqoop以Hadoop 为主体,RDBMS为客体,使用sqoop的主要功能sqoop import将RD.原创 2021-02-19 10:03:04 · 629 阅读 · 0 评论 -
Hive注释乱码问题/更改元数据库配置
情况: 创建表的时候,comment说明字段包含中文,表成功创建成功之后,中文说明显示乱码 说明: 默认情况下metastore 支持数据库级别,表级别的字符集是 latin1解决方法(修改完成后,已有乱码的表需要重建): 1. 修改metastore元数据库中指定表字段的编码为utf82#修改字段注释字符集3alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;原创 2020-11-23 16:04:01 · 265 阅读 · 0 评论 -
数据中台的使命、愿景、本质和六大核心能力
当我们把数据工厂的概念解耦,一一对应到企业数据体系,我们就能解构出数据中台的六大核心能力参考这:https://mp.weixin.qq.com/s/NkU6rzZexpr6zg6m4khNgQ原创 2020-11-11 09:39:11 · 511 阅读 · 0 评论 -
impala的操作命令
impala-shell -i -d default -k -i hostname, --impalad=hostname指定连接运行 impalad 守护进程的主机。默认端口是 21000。-d或者--database--k或者-kerberos该选项用来指定当shell连接到impalad节点时使用kerberos身份验证.但是如果impalad节点本身没有启用kerberos,连接将会报错.看这https://datamining.blog.csdn.net/article/d原创 2020-10-19 14:07:30 · 480 阅读 · 0 评论 -
HBase查询优化之Short-Circuit
HDFS客户端可能会有经常读取相同Block文件的场景,为了提升这种读取性能,旧的短回路本地读取实现具有Block路径的高速缓存。该缓存允许客户端重新打开其最近已读取的Block文件,而不需要再去访问DataNode路径读取dfs.client.read.shortcircuit.streams.cache.size 客户端维护一个最近打开文件的描述符缓存,默认256参考这里:https://www.cnblogs.com/smartloli/p/9462835.html...原创 2020-09-30 10:27:53 · 404 阅读 · 0 评论 -
hive实现拉链表
创建ods的订单表初始表(相当于是从mysql出来数据的,懒得去走mysql)create table ods_order_init(`id` string COMMENT '订单编号',`order_status` string COMMENT '订单状态',`user_id` string COMMENT '用户id',`create_time` string COMMENT '创建时间',`operate_time` string COMMENT '操作时间') COMMENT '订.原创 2020-07-30 17:05:47 · 675 阅读 · 0 评论 -
关于raid与热插拔重启
RAID0 (又称为Stripe或Striping--分条)即Data Stripping数据分条技术。RAID 0可以把多块硬盘连成一个容量更大的硬盘群,可以提高磁 盘的性能和吞吐量。RAID 0没有冗余或错误修复能力,成本低,要求至少两个磁盘,一般只是在那些对数 据安全性要求不高的情况下才被使用。从理论上讲,三块硬盘的并行操作使同一时间内磁盘读写速度提升了3倍RAID 1 (又称为Mirror或Mirroring--镜像)RAID 1称为磁盘镜像:把一个磁盘的数据镜像到另一个磁盘上,在不影响性原创 2020-06-28 16:56:23 · 7846 阅读 · 0 评论