张映 发表于 2020-01-15

分类目录: hadoop/spark/scala

默认情况下,简单的HQL查询会扫描整个表。查询大表时,这会降低性能。可以通过创建分区来解决此问题。在Hive中,每个分区对应于预定义的分区列,这些分区列映射到HDFS中表的目录中的子目录。当查询表时,只读取表中所需的数据分区(目录),因此查询的I/O和时间大大减少。使用分区是提高Hive性能的一种非常简单有效的方法。

阅读全文>>

张映 发表于 2020-01-07

分类目录: hadoop/spark/scala

Kudu和Impala均是Cloudera贡献给Apache基金会的顶级项目。cdh中impala和kudu做了深度整合,性能方面,还是不错的。

阅读全文>>

张映 发表于 2015-12-31

分类目录: linux

lvm的逻辑卷,可能由一个或者多个硬盘或者分区组成,如何才能安全的删除逻辑卷中的硬盘或者分区呢。适用场景,我有二块小硬盘,我想把其中一块小的硬盘换成大的。首先就要把逻辑卷中的小硬盘,安全的删除掉。下面是操作的详细过程。

阅读全文>>

张映 发表于 2011-08-14

分类目录: linux

linux分区方法,不同的人有不同的方法,反正没有统一的方法。在分区方面,我觉得根据自己的实际情况来分是最好的。玩linux也有好几年了,下面说一下,我在分区方面的一些经验。

阅读全文>>

张映 发表于 2010-09-22

分类目录: mysql

一,什么是mysql分表,分区

什么是分表,从表面意思上看呢,就是把一张表分成N多个小表,具体请看mysql分表的3种方法

什么是分区,分区呢就是把一张表的数据分成N多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上,具体请参考mysql分区功能详细介绍,以及实例

阅读全文>>

张映 发表于 2010-09-13

分类目录: mysql

一,什么是数据库分区

前段时间写过一篇关于mysql分表的的文章,下面来说一下什么是数据库分区,以mysql为例。mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面(可以通过my.cnf中的datadir来查看),一张表主要对应着三个文件,一个是frm存放表结构的,一个是myd存放表数据的,一个是myi存表索引的。如果一张表的数据量太大的话,那么myd,myi就会变的很大,查找数据就会变的很慢,这个时候我们可以利用mysql的分区功能,在物理上将这一张表对应的三个文件,分割成许多个小块,这样呢,我们查找一条数据时,就不用全部查找了,只要知道这条数据在哪一块,然后在那一块找就行了。如果表的数据太大,可能一个磁盘放不下,这个时候,我们可以把数据分配到不同的磁盘里面去。
阅读全文>>