数据库
文章平均质量分 57
神龙龙
一只专心学习的龙
展开
-
Hive解决小文件
一、小文件的产生源头1.数据源本身就是有很多小文件2.动态分区插入数据产生大量小文件,导致map数据剧增3.reduce个数越多小文件的个数越多4.insert插入数据时也会产生过多小文件:ReduceTask数量*分区数=文件数或MapTask*分区数=文件数二、小文件产生的影响1.对于它的存储底层Hdfs来说,HDFS本身就不适合存储小文件,每一个小文件就是150Byte如果大量的小文件产生会导致NameNode元数据增多,占用大量内存2.对于hive来说,每一个小文.原创 2021-08-29 09:18:52 · 267 阅读 · 0 评论 -
HBase分区过多的影响
HBase每张表在底层存储上是由至少一个Region组成,Region实际上就是HBase表的分区。HBase新建一张表时默认Region即分区数量为1,一般在生产环境中我们都会手动给Table提前做预分区,使用合适的分区策略创建好一定数量的分区并使分区均匀分布在不同的regionserver上,一个分区在达到一定大小时会自动Split,一分为二。频繁刷写:Region的一个列族对应一个MemStore,假设HBase表都有统一的1个列族配置,则每个Region只包含一个MemStore。通常HBas原创 2021-07-13 11:35:37 · 601 阅读 · 0 评论 -
Hbase架构总结
Hbase定义: HBase是一种分布式、可扩展、支持海量数据存储的NoSQL数据库。是一个高可靠、高性能、面向列、可伸缩的分布式存储系统。 Hbase数据模型: 逻辑上,HBase的数据模型同关系型数据库很类似,数据存储在一张表中,有行有列。但从HBase的底层物理存储结构(K-V)来看,HBase更像是一个multi-dimensional map。 逻辑结构: 物理结构: Hbase基本架构:Region Server...原创 2021-07-11 20:51:39 · 195 阅读 · 2 评论 -
sql中where和on的区别
数据库在通过连接两张或多张表来返回记录时,会生成一张中间的临时表,然后再将这张临时表返回用户,在使用left join时,on和where条件的区别如下:1.on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。2.where条件是在临时表生成好后,再对临时表进行过滤的条件,这时已经没有left join的含义了,条件不为真的就全部过滤掉。...原创 2021-06-14 13:41:03 · 176 阅读 · 1 评论 -
Redis的应用总结
一、Redis概述1.Redis是一个开源的key-value存储系统,支持的value类型相对很多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set有序集合)和hash(哈希类型)2.数据都是保存在内存中3.Redis会周期性的把更新的数据写入磁盘或把修改操作写入追加的记录文件。4.实现master-slave(主从)同步二、应用场景缓存数据用于存放以下特点的数据:1)需要高频次访问2)持久化数据访问较慢3)用key查询临时数据原创 2021-02-21 17:00:58 · 91 阅读 · 0 评论 -
关于MySQL92和99 等值连接、非等值连接、自连接、外连接及多表查询的代码示例总结!
关于MySQL92和99 等值连接、非等值连接、自连接、外连接及多表查询的代码示例总结!一. MySQL92语法*1. 内连接 没有关联关系的数据是不在查询范围之内的*1)等值连接– 查询出101的班级信息(并带上该班级的所有学生信息)SELECT *FROM class,student WHERE class.`id`=student.`clazz_id` AND class.`name`='101';– 查询出rose的所有信息(包括班级信息)原创 2020-12-21 21:05:43 · 2399 阅读 · 4 评论
分享