高性能MySQL笔记-第5章Indexing for High Performance-003索引的作用
1.
1). Indexes reduce the amount of data the server has to examine.2). Indexes help the server avoid sorting and temporary tables.3). Indexes turn random I/O into sequential I/O.
Lahdenmaki and Leach’s book also introduces a three-star system for grading how suitable an index is for a query. The index earns one star if it places relevant rows adjacent to each other, a second star if its rows are sorted in the order the query needs,and a final star if it contains all the columns needed for the query.
高性能MySQL笔记-第5章Indexing for High Performance-003索引的作用
标签:
小编还为您整理了以下内容,可能对您也有帮助:
mySQL的索引功能
hash索引的话,不支持范围查询,因为hash就是一个键对应一个值的,没办法范围查询
二叉树的话,它的特点就是左子树小于根节点小于右子树,如果根节点取值有问题的话,有可能会退化成链表,就是树不分叉了,树一直往左或者一直往右,这样就不能折半查找从而减少IO次数了,不支持范围查询,要是范围查询的话,每次都要从根部遍历,树也太高了,树越高,IO操作越频繁,浪费资源
平衡二叉树的话,它就没有了二叉树的这种退化成链表的缺点,因为他左右子节点最多相差1层,可是他也不支持范围查找这一点和二叉树的问题一样
b树的话,和二叉树比起来树是很矮胖,IO操作减少了,是个多叉树,它每个节点都存了对应的行数据,可是如果这一行的数据的列不断的增加,那么这一页存储的节点就会变少,因为所占的空间不断的变大,树也会越来越高,增加IO操作次数,同时是也不支持范围查找。要是相同大小的空间可以存很多的节点数据的话就更好了,所以就有了下面的b+树
b+树 它非叶子节点只存索引的数据,不存整行数据,但是叶子节点是冗余的,冗余了非叶子节点,叶子节点还都用双向链表链接起来,这样有助于顺序查找,b+树和b树比起来,更加矮胖,磁盘IO次数更少
二、 mysql中索引类型
我们可以简单的理解为聚簇索引就是主键索引,非聚簇索引就是普通索引
本质的区别是
聚簇索引的叶子节点存储的是整行数据
innodb是通过主键来实现聚簇索引的,如果没有主键的话,那么他就会选择一个唯一非空的索引来实现,如果再没有的话,他就会隐式生成一个主键来实现聚簇索引
非聚簇索引存储的是索引值和主键值
普通索引一张表中可以有多个普通索引,随便一个字段都可以建立的索引,我们平常建立的索引大部分都是普通索引
联合索引好几个字段联合起来建立的索引
唯一索引业务中唯一的字段适合建立唯一索引,一个表中可以有多个唯一索引
主键索引和唯一索引一样,主键索引也是唯一的,不同的就是,一个表只能有一个主键索引
三、关于索引的sql
创建主键索引
ALTER TABLE test add PRIMARY KEY (id)复制代码
创建唯一索引
ALTER TABLE test add UNIQUE idx_id_card(id_card)复制代码
创建普通索引
ALTER TABLE test add INDEX idx_name(name)复制代码
创建联合索引
ALTER TABLE test add INDEX idx_age_name(age,name)复制代码
修改索引名称 :先删除再添加
删除索引 (两种方式)
ALTER TABLE test DROP INDEX idx_id_cardDROP INDEX idx_id_card on test --删除主键索引DROP PRIMARY key on test ALTER TABLE test DROP PRIMARY key复制代码
查看表中索引
SHOW INDEX FROM test复制代码
分析索引
EXPLAIN SELECT * from test WHERE name = "xhJaver"复制代码
我们先给name字段添加一个索引,索引名字叫做idx_name
ALTER TABLE test add INDEX idx_name(name)复制代码
查看test表中的索引
SHOW INDEX FROM test复制代码

其中的属性
table: 表名
Non_unique: 能重复的话为1,不能重复的话为0,我们主键的那里是0,而name那里是1,因为name可以重复,而主键不能重复
Key_name: 索引名称
Seq_in_index:索引中列的顺序
Column_name:列名称
Collation:列以什么方式存储的,A升序,null无序
Cardinality:数目越大,则使用该索引的可能性越大
Sub_part:如果列只是部分的编入索引,则被编入索引的字符数目,如果整列被编入索引,则为null
Packed:关键字是否被压缩,null表示没有被压缩
Null:如果该列含有null,则为yes,如果没有null,则为no
Index_type:索引数据结构
Comment:多种评注
四、回表查询
select * from test where name = "xhJaver"复制代码
假如说我们name字段建立了索引,然后当我们运行这一句sql语句的时候,因为建立的是普通索引,所以我们的b+树的叶子节点存储的数据是id,我们会找到name是xhJaver的这条记录的id,再根据这个id,去主键索引的那棵b+树去查询,查询到叶子节点时即查询出这条记录,可见这个过程中,我们从一棵树跑到了另一棵树继续查,这样就叫做“回表查询”,那有没有办法只查一棵树就可以查询出结果呢?
五、覆盖索引
办法当然是有的啦,那就是覆盖索引,我们注意到,刚才这个sql语句时查询出来了所有元素,假如说我们这样写的话
select address from test where name = "xhJaver"复制代码
假如说我们建立的索引是(name,address)那么这个时候(name,address)这棵b+树的叶子节点存储的数据就包括address了,此时就不需要再根据name = "xhJaver"的id去第二棵树查了,这样就避免了回表查询
六、最左匹配原则
假如说现在我们写一个这样的sql语句
select * from test where name = "xhJaver" and age =23 and address="京东"复制代码
并且我们建立的索引是(name,address,age)这样是会用到(name,address,age)索引的,可是如果要这样写的话
select * from test where name = "xhJaver" and age >23 and address="京东"复制代码
这样只会用到(name,age)这两个索引,从左边开始匹配,如果要是遇到范围查询的话,则不继续往右匹配索引
七、explain分析索引语句
我们用explain语句解析一下下面这条sql语句
EXPLAIN SELECT * from test WHERE name = "xhJaver"复制代码

它的属性有
id: 执行的顺序
select_type: 查询的类型
table: 关于哪张表的
partitions: 分区相关(还没搞懂呜呜呜)
type:访问类型
性能由好至坏依次是system > const > eq_ref > ref > fulltext > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALL一般来说,好的sql查询至少达到range级别,最好能达到ref
system:表中只有一行数据
const:常量查询 通常用于比较主键等于一个常量,用索引查询一次就查到了
eq_ref:唯一性索引,每个索引对应一条数据,例如主键索引
ref:非唯一索引,每个索引有可能对应多行数据,例如普通索引
range: 范围查询,用到了>,<,in,between等查询
index:全表扫描,但是是遍历整棵索引树
all:全表扫描,没有用到索引
possible_keys:查询的字段上有索引的话,就会显示出来,
key : 具体用到的索引,若用到了覆盖索引,则possible_keys为null,只会显示在key中
key_len:索引中使用的字节数,最大可能长度,并非实际长度,key_len是根据表定义计算而得的,不是通过表内检索出的
ref: 表示使用索引的是哪一个字段
rows:大致估算出所需要读取的行数
filtered:显示了通过条件过滤出的行数的百分比估计值。
Extra:
Using filesort : mysql无法利用索引完成的排序被称为文件排序
Using temporary: 使用临时表存储了下中间结果,mysql对查询结果排序时是使用了临时表,常见于order by 和 group by
Using index:使用了覆盖索引,查询内容在索引内
如果出现了Using where,表示对查询出来的数据进行了过滤 如果没有出现Using where,表示对查询出来的数据没有进行过滤
只有Using where 查询内容不在索引内,且对查出来的数据进行了过滤
1. EXPLAIN SELECT (select student.id from student WHERE student.`name`="xhJaver") FROM teacher2. EXPLAIN SELECT * FROM teacher where teacher.id = (select student.id from student WHERE student.`name`="xhJaver") 复制代码
我们写几个sql语句实际分析下1.SELECT后面2.where后面
我们就拿后面这个图来实战分析一下,挑几个重要的属性说一下
select_type:
我们最外层的查询是 from teacher 所以table为teacher的那个表的select_type就是primary
select/where后面的括号中的查询语句中的表是student,所以table为student的那个表的select_type就是subquery
table: 这条sql查询用到的表
type: 访问类型
第一行const : teacher.id =巴拉巴拉巴拉(这个是常数)主键和常数比较时,这个表最多有一个匹配数据,只读取一次
第二行ref:代表用到了普通索引,就是这个索引name和xhJaver匹配,可能匹配到很多相同的值
possible_key: 代表可能用到的索引,但是不一定会用到
key: 代表用到的索引, 用到了idx_name,PRIMARY索引
ref: 这一列显示了在key列记录的索引中,表查找值所用到的列或常量,常见的有:const,字段名
extra:
select student.id from student WHERE student.`name`="xhJaver"复制代码
name字段有索引,查询的是id,b+树叶子节点存的数据就是id,所以不需要回表查询了,用到了覆盖索引
八、索引失效原因
遇到范围查询(>,<,like,beetwon),右边的索引列会失效
索引字段不能有函数操作或者不能是表达式的一部分
索引字段隐式类型转换索引字段类型是string,我们传进来个int
使用时or,is null ,is not null , !=, <>, like "%xxx" 索引会失效
但是用覆盖索引就可以解决 like左模糊查询走不到索引的情况如果只select索引字段,或者select索引字段和主键,也会走索引的。
更多相关免费学习推荐:mysql教程(视频)
mySQL的索引功能
hash索引的话,不支持范围查询,因为hash就是一个键对应一个值的,没办法范围查询
二叉树的话,它的特点就是左子树小于根节点小于右子树,如果根节点取值有问题的话,有可能会退化成链表,就是树不分叉了,树一直往左或者一直往右,这样就不能折半查找从而减少IO次数了,不支持范围查询,要是范围查询的话,每次都要从根部遍历,树也太高了,树越高,IO操作越频繁,浪费资源
平衡二叉树的话,它就没有了二叉树的这种退化成链表的缺点,因为他左右子节点最多相差1层,可是他也不支持范围查找这一点和二叉树的问题一样
b树的话,和二叉树比起来树是很矮胖,IO操作减少了,是个多叉树,它每个节点都存了对应的行数据,可是如果这一行的数据的列不断的增加,那么这一页存储的节点就会变少,因为所占的空间不断的变大,树也会越来越高,增加IO操作次数,同时是也不支持范围查找。要是相同大小的空间可以存很多的节点数据的话就更好了,所以就有了下面的b+树
b+树 它非叶子节点只存索引的数据,不存整行数据,但是叶子节点是冗余的,冗余了非叶子节点,叶子节点还都用双向链表链接起来,这样有助于顺序查找,b+树和b树比起来,更加矮胖,磁盘IO次数更少
二、 mysql中索引类型
我们可以简单的理解为聚簇索引就是主键索引,非聚簇索引就是普通索引
本质的区别是
聚簇索引的叶子节点存储的是整行数据
innodb是通过主键来实现聚簇索引的,如果没有主键的话,那么他就会选择一个唯一非空的索引来实现,如果再没有的话,他就会隐式生成一个主键来实现聚簇索引
非聚簇索引存储的是索引值和主键值
普通索引一张表中可以有多个普通索引,随便一个字段都可以建立的索引,我们平常建立的索引大部分都是普通索引
联合索引好几个字段联合起来建立的索引
唯一索引业务中唯一的字段适合建立唯一索引,一个表中可以有多个唯一索引
主键索引和唯一索引一样,主键索引也是唯一的,不同的就是,一个表只能有一个主键索引
三、关于索引的sql
创建主键索引
ALTER TABLE test add PRIMARY KEY (id)复制代码
创建唯一索引
ALTER TABLE test add UNIQUE idx_id_card(id_card)复制代码
创建普通索引
ALTER TABLE test add INDEX idx_name(name)复制代码
创建联合索引
ALTER TABLE test add INDEX idx_age_name(age,name)复制代码
修改索引名称 :先删除再添加
删除索引 (两种方式)
ALTER TABLE test DROP INDEX idx_id_cardDROP INDEX idx_id_card on test --删除主键索引DROP PRIMARY key on test ALTER TABLE test DROP PRIMARY key复制代码
查看表中索引
SHOW INDEX FROM test复制代码
分析索引
EXPLAIN SELECT * from test WHERE name = "xhJaver"复制代码
我们先给name字段添加一个索引,索引名字叫做idx_name
ALTER TABLE test add INDEX idx_name(name)复制代码
查看test表中的索引
SHOW INDEX FROM test复制代码

其中的属性
table: 表名
Non_unique: 能重复的话为1,不能重复的话为0,我们主键的那里是0,而name那里是1,因为name可以重复,而主键不能重复
Key_name: 索引名称
Seq_in_index:索引中列的顺序
Column_name:列名称
Collation:列以什么方式存储的,A升序,null无序
Cardinality:数目越大,则使用该索引的可能性越大
Sub_part:如果列只是部分的编入索引,则被编入索引的字符数目,如果整列被编入索引,则为null
Packed:关键字是否被压缩,null表示没有被压缩
Null:如果该列含有null,则为yes,如果没有null,则为no
Index_type:索引数据结构
Comment:多种评注
四、回表查询
select * from test where name = "xhJaver"复制代码
假如说我们name字段建立了索引,然后当我们运行这一句sql语句的时候,因为建立的是普通索引,所以我们的b+树的叶子节点存储的数据是id,我们会找到name是xhJaver的这条记录的id,再根据这个id,去主键索引的那棵b+树去查询,查询到叶子节点时即查询出这条记录,可见这个过程中,我们从一棵树跑到了另一棵树继续查,这样就叫做“回表查询”,那有没有办法只查一棵树就可以查询出结果呢?
五、覆盖索引
办法当然是有的啦,那就是覆盖索引,我们注意到,刚才这个sql语句时查询出来了所有元素,假如说我们这样写的话
select address from test where name = "xhJaver"复制代码
假如说我们建立的索引是(name,address)那么这个时候(name,address)这棵b+树的叶子节点存储的数据就包括address了,此时就不需要再根据name = "xhJaver"的id去第二棵树查了,这样就避免了回表查询
六、最左匹配原则
假如说现在我们写一个这样的sql语句
select * from test where name = "xhJaver" and age =23 and address="京东"复制代码
并且我们建立的索引是(name,address,age)这样是会用到(name,address,age)索引的,可是如果要这样写的话
select * from test where name = "xhJaver" and age >23 and address="京东"复制代码
这样只会用到(name,age)这两个索引,从左边开始匹配,如果要是遇到范围查询的话,则不继续往右匹配索引
七、explain分析索引语句
我们用explain语句解析一下下面这条sql语句
EXPLAIN SELECT * from test WHERE name = "xhJaver"复制代码

它的属性有
id: 执行的顺序
select_type: 查询的类型
table: 关于哪张表的
partitions: 分区相关(还没搞懂呜呜呜)
type:访问类型
性能由好至坏依次是system > const > eq_ref > ref > fulltext > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALL一般来说,好的sql查询至少达到range级别,最好能达到ref
system:表中只有一行数据
const:常量查询 通常用于比较主键等于一个常量,用索引查询一次就查到了
eq_ref:唯一性索引,每个索引对应一条数据,例如主键索引
ref:非唯一索引,每个索引有可能对应多行数据,例如普通索引
range: 范围查询,用到了>,<,in,between等查询
index:全表扫描,但是是遍历整棵索引树
all:全表扫描,没有用到索引
possible_keys:查询的字段上有索引的话,就会显示出来,
key : 具体用到的索引,若用到了覆盖索引,则possible_keys为null,只会显示在key中
key_len:索引中使用的字节数,最大可能长度,并非实际长度,key_len是根据表定义计算而得的,不是通过表内检索出的
ref: 表示使用索引的是哪一个字段
rows:大致估算出所需要读取的行数
filtered:显示了通过条件过滤出的行数的百分比估计值。
Extra:
Using filesort : mysql无法利用索引完成的排序被称为文件排序
Using temporary: 使用临时表存储了下中间结果,mysql对查询结果排序时是使用了临时表,常见于order by 和 group by
Using index:使用了覆盖索引,查询内容在索引内
如果出现了Using where,表示对查询出来的数据进行了过滤 如果没有出现Using where,表示对查询出来的数据没有进行过滤
只有Using where 查询内容不在索引内,且对查出来的数据进行了过滤
1. EXPLAIN SELECT (select student.id from student WHERE student.`name`="xhJaver") FROM teacher2. EXPLAIN SELECT * FROM teacher where teacher.id = (select student.id from student WHERE student.`name`="xhJaver") 复制代码
我们写几个sql语句实际分析下1.SELECT后面2.where后面
我们就拿后面这个图来实战分析一下,挑几个重要的属性说一下
select_type:
我们最外层的查询是 from teacher 所以table为teacher的那个表的select_type就是primary
select/where后面的括号中的查询语句中的表是student,所以table为student的那个表的select_type就是subquery
table: 这条sql查询用到的表
type: 访问类型
第一行const : teacher.id =巴拉巴拉巴拉(这个是常数)主键和常数比较时,这个表最多有一个匹配数据,只读取一次
第二行ref:代表用到了普通索引,就是这个索引name和xhJaver匹配,可能匹配到很多相同的值
possible_key: 代表可能用到的索引,但是不一定会用到
key: 代表用到的索引, 用到了idx_name,PRIMARY索引
ref: 这一列显示了在key列记录的索引中,表查找值所用到的列或常量,常见的有:const,字段名
extra:
select student.id from student WHERE student.`name`="xhJaver"复制代码
name字段有索引,查询的是id,b+树叶子节点存的数据就是id,所以不需要回表查询了,用到了覆盖索引
八、索引失效原因
遇到范围查询(>,<,like,beetwon),右边的索引列会失效
索引字段不能有函数操作或者不能是表达式的一部分
索引字段隐式类型转换索引字段类型是string,我们传进来个int
使用时or,is null ,is not null , !=, <>, like "%xxx" 索引会失效
但是用覆盖索引就可以解决 like左模糊查询走不到索引的情况如果只select索引字段,或者select索引字段和主键,也会走索引的。
更多相关免费学习推荐:mysql教程(视频)
数据分析课程笔记 - 20 - HIVE 核心技能之窗口函数
大家好呀,这节课我们学习 Hive 核心技能中最难的部分——窗口函数。窗口函数我们之前在学 MySQL 的时候有学过一些,但是只学了三个排序的窗口函数。这节课我们会学习更多的窗口函数,包括累计计算、分区排序、切片排序以及偏移分析。
在正式学习之前,我们需要先明确一下窗口函数和GROUP BY分组的区别。二者在功能上有相似之处,但是它们存在本质区别。
1. 分组会改变表的结构,而窗口函数不会改变表的结构。比如原表有10行数据,分成两组后只有两行,而窗口函数仍然返回十行数据。
2. 分组只能查询分组后的字段,包括分组字段(组名)和聚合函数字段。而窗口函数对查询字段没有,也就是可以查询原表的任意字段,再加上窗口函数新增的一列值。
好啦,现在让我们一起进入窗口函数的世界吧~
本节课主要内容:
1、累计计算窗口函数
(1)sum(…) over(……)
(2)avg(…) over(……)
(3)语法总结
2、分区排序窗口函数
(1)row_number()
(2)rank()
(3)dense_rank()
3、切片排序窗口函数
(1)ntile(n) over(……)
4、偏移分析窗口函数
5、重点练习
大家在做报表的时候,经常会遇到计算截止某月的累计数值,通常在EXCEL里可以通过函数来实现。
那么在HiveSQL里,该如何实现这种累计数值的计算呢?那就是利用窗口函数!
关于窗口函数的几点说明:
需求分析 :既然要进行按月累计,我们就先要把2018年的每笔交易时间转换成月并按月分组聚合计算,得出一个2018年每月支付金额总合表,再基于这张表用窗口函数进行累计计算。
2018年每月支付金额总和表:
再用窗口函数进行月度累计:
年度进行汇总。
这个需求比需求1多了一个需求,那就是年度汇总。那我们只需要在上个需求的子查询中加一个 year 字段即可。
说明:
1、over 中的 partition by 起到了窗口内将数据分组的作用。事实上,加上partition by之后,可以理解为分成了多个窗口,并在每个窗口内进行累加计算或者分区。
如果不加 partition by a.year 的话,运行结果就是这样单纯按月份进行分组的:
2、order by 按照什么顺序进行累加,升序ASC、降序DESC,默认是升序。
大家看股票的时候,经常会看到这种K线图,里面经常用到的就是7日、30日移动平均的趋势图,那如何使用窗口函数来计算移动平均值呢?
需求分析 :这个需求要求每个月近三个月的移动平均支付金额,这里我们要用到一个新知识点,在窗口函数 avg over 的 order by a.month 之后加一句 rows between 2 preceding and current row 来设定计算移动平均的范围,这个语句的含义就是包含本行及前两行。其他部分的写法跟前面的需求类似,先取出2018年每个月的支付金额总和,再用窗口函数求移动平均。
注意:
sum(…A…) over(partition by …B… order by …C… rows between …D1… and …D2…)
avg(…A…) over(partition by …B… order by …C… rows between…D1… and …D2…)
A:需要被加工的字段名称
B:分组的字段名称
C:排序的字段名称
D:计算的行数范围
rows between unbounded preceding and current row
——包括本行和之前所有的行
rows between current row and unbounded following
——包括本行和之后所有的行
rows between 3 preceding and current row
——包括本行以内和前三行
rows between 3 preceding and 1 following
——从前三行到下一行(5行)
max(……) over(partition by …… order by …… rows between ……and ……)
min(……) over(partition by …… order by …… rows between ……and ……)
row_number() 、rank()、dense_rank()
用法:这三个函数的作用都是返回相应规则的排序序号
row_number() over(partition by …A… order by …B… )
rank() over(partition by …A… order by …B… )
dense_rank() over(partition by …A… order by …B… )
A:分组的字段名称
B:排序的字段名称
注意: 这3个函数的括号内是不加任何字段名称的!
row_number :它会为查询出来的每一行记录生成一个序号,依次排序且不会重复。
rank&dense_rank :在各个分组内, rank() 是跳跃排序,有两个第一名时接下来就是第三名, dense_rank() 是连续排序,有两个第一名时仍然跟着第二名。
实例练习:
再眼熟一下 user_trade 的表结构:
需求分析 :先限定时间范围,然后根据 user_name 进行分组,接着选出 分组去重后的 user_name,并计算每个用户 goods_category 的数量(记得 distinct 去重),再然后就是用窗口函数对 goods_category 的数量进行排序,当然选择哪一种排序方法要看具体要求,这里我们可以三种方法都试一下看看结果:
注意 :窗口函数中的 order by 字段不能用 select 中字段的重命名,因为二者是同时执行的。
需求分析 : 先用窗口函数将2019年每个用户的支付总金额算出来并进行排序,再以此作为子查询,从中取出排名在第10、20、30名的用户名、支付总金额以及排名次序。企业一般会使用 dense_rank 进行排序,所以我们这里直接用 dense_rank。
2019年每个用户的支付总金额排名:
2019年支付金额排名在第10、20、30名的用户:
ntile(n) over(partition by …A… order by …B… )
n:切分的片数
A:分组的字段名称
B:排序的字段名称
需求分析 :这个需求很简单,把需求5第一步的排序窗口函数变成切片即可。注意时间筛选条件变成2019年1月。
需求分析 : 排名前10%,也就是一共分成10组,取第1组。那么我们先切片分组:
然后再取第一组:
说明:Lag和Lead分析函数可以在同一次查询中取出同一字段的前N行的数据(Lag)和后N行的数据(Lead)作为的列。
在实际应用当中,若要用到取今天和昨天的某字段差值时,Lag和Lead函数的应用就显得尤为重要。当然,这种操作可以用表的自连接实现,但是LAG和LEAD与left join、right join等自连接相比,效率更高,SQL语句更简洁。
lag(exp_str,offset,defval) over(partion by ……order by ……)
lead(exp_str,offset,defval) over(partion by ……order by ……)
lag() 函数示例:
lead() 函数示例:
需求分析: 先要从 user_trade 表中取出每个用户的支付时间,把每个用户放到一个窗口中,按照支付时间进行排序,取出偏移列: lead(dt,1,dt) over(partition by user_name order by dt)。接着基于该子查询,筛选出时间间隔大于100天的用户,并计算数量。
注意 : 如果上面偏移分析函数写成 lead(dt,1,dt) 就不用加后面的 dt is not null 了,因为有默认值的话,间隔就是0,肯定是不满足条件的。
需求分析 :
第一步 :这个需求要用到 user_trade 和 user_info 两张表,前者取支付时间和金额,后者取城市和性别。先对这两张表基于 user_name 进行左连接,并取出相应字段,用窗口函数进行分组排序:
这一步的运行结果是这样的:
第二步 :基于上述结果取出TOP3:
需求分析:
第一步 :这个需求同样要用到两张表 user_refund 和 user_info。我们先把每个退款用户的退款金额和手机品牌取出来,并用窗口函数进行切片排序,25%就是分成4片:
注意 :这里之所以要加 WHERE dt is not null 是因为 user_refund 是一个分区表,分区表要对分区字段进行,否则 hive 会报错。
第二步 :选择前25%,也就是第一片:
最后补充一个从 hive 导出结果数据的命令:
以上就是这节课的全部内容了。做完整个练习,真的半条命都没了。窗口函数果然很难,不过掌握方法、多多练习,学会拆解需求,一步一步来做,就能明显降低难度。希望以后有机会能用到这么复杂的技能,哈哈~!
每次开机时总有个进程"System Idle Process"占用20%的cpu
这个是系统的空闲进程!
意思就是说,你的系统剩余的资源越多,这个进程的CPU占用就越大
另外还提供下系统的进程吧
下仅列出windows系统最常见的一些进程,安装了驱动程序和应用软件后进程会相应有所增加
系统进程(1)
进程文件: [system process] or [system process]
进程名称: Windows内存处理系统进程
描述: Windows页面内存管理进程,拥有0级优先。
常见错误: N/A
是否为系统进程: 是
进程文件: alg or alg.exe
进程名称: 应用层网关服务
描述: 这是一个应用层网关服务用于网络共享。
常见错误: N/A
是否为系统进程: 是
进程文件: csrss or csrss.exe
进程名称: Client/Server Runtime Server Subsystem
描述: 客户端服务子系统,用以控制Windows图形相关子系统。
常见错误: N/A
是否为系统进程: 是
进程文件: ddhelp or ddhelp.exe
进程名称: DirectDraw Helper
描述: DirectDraw Helper是DirectX这个用于图形服务的一个组成部分。
常见错误: N/A
是否为系统进程: 是
进程文件: dllhost or dllhost.exe
进程名称: DCOM DLL Host进程
描述: DCOM DLL Host进程支持基于COM对象支持DLL以运行Windows程序。
常见错误: N/A
是否为系统进程: 是
进程文件: explorer or explorer.exe
进程名称: 程序管理
描述: Windows Program Manager或者Windows Explorer用于控制Windows图形Shell,包括开始菜单、任务栏,桌面和文件管理。
常见错误: N/A
是否为系统进程: 是
系统进程(2)
进程文件: inetinfo or inetinfo.exe
进程名称: IIS Admin Service Helper
描述: InetInfo是Microsoft Internet Infomation Services (IIS)的一部分,用于Debug调试除错。
常见错误: N/A
是否为系统进程: 是
进程文件: internat or internat.exe
进程名称: Input Locales
描述: 这个输入控制图标用于更改类似国家设置、键盘类型和日期格式。
常见错误: N/A
是否为系统进程: 是
进程文件: kernel32 or kernel32.dll
进程名称: Windows壳进程
描述: Windows壳进程用于管理多线程、内存和资源。
常见错误: N/A
是否为系统进程: 是
进程文件: lsass or lsass.exe
进程名称: 本地安全权限服务
描述: 这个本地安全权限服务控制Windows安全机制。
常见错误: N/A
是否为系统进程: 是
进程文件: mdm or mdm.exe
进程名称: Machine Debug Manager
描述: Debug除错管理用于调试应用程序和Microsoft Office中的Microsoft Script Editor脚本编辑器。
常见错误: N/A
是否为系统进程: 是
进程文件: mmtask or mmtask.tsk
进程名称: 多媒体支持进程
描述: 这个Windows多媒体后台程序控制多媒体服务,例如MIDI。
常见错误: N/A
是否为系统进程: 是
系统进程(3)
进程文件: mprexe or mprexe.exe
进程名称: Windows路由进程
描述: Windows路由进程包括向适当的网络部分发出网络请求。
常见错误: N/A
是否为系统进程: 是
进程文件: msgsrv32 or msgsrv32.exe
进程名称: Windows信使服务
描述: Windows信使服务调用Windows驱动和程序管理在启动。
常见错误: N/A
是否为系统进程: 是
进程文件: mstask or mstask.exe
进程名称: Windows计划任务
描述: Windows计划任务用于设定继承在什么时间或者什么日期备份或者运行。
常见错误: N/A
是否为系统进程: 是
进程文件: regsvc or regsvc.exe
进程名称: 远程注册表服务
描述: 远程注册表服务用于访问在远程计算机的注册表。
常见错误: N/A
是否为系统进程: 是
进程文件: rpcss or rpcss.exe
进程名称: RPC Portmapper
描述: Windows 的RPC端口映射进程处理RPC调用(远程模块调用)然后把它们映射给指定的服务提供者。
常见错误: N/A
是否为系统进程: 是
进程文件: services or services.exe
进程名称: Windows Service Controller
描述: 管理Windows服务。
常见错误: N/A
是否为系统进程: 是
系统进程(4)
进程文件: smss or smss.exe
进程名称: Session Manager Subsystem
描述: 该进程为会话管理子系统用以初始化系统变量,MS-DOS驱动名称类似LPT1以及COM,调用Win32壳子系统和运行在Windows登陆过程。
常见错误: N/A
是否为系统进程: 是
进程文件: snmp or snmp.exe
进程名称: Microsoft SNMP Agent
描述: Windows简单的网络协议代理(SNMP)用于监听和发送请求到适当的网络部分。
常见错误: N/A
是否为系统进程: 是
进程文件: spool32 or spool32.exe
进程名称: Printer Spooler
描述: Windows打印任务控制程序,用以打印机就绪。
常见错误: N/A
是否为系统进程: 是
进程文件: spoolsv or spoolsv.exe
进程名称: Printer Spooler Service
描述: Windows打印任务控制程序,用以打印机就绪。
常见错误: N/A
是否为系统进程: 是
进程文件: stisvc or stisvc.exe
进程名称: Still Image Service
描述: Still Image Service用于控制扫描仪和数码相机连接在Windows。
常见错误: N/A
是否为系统进程: 是
进程文件: svchost or svchost.exe
进程名称: Service Host Process
描述: Service Host Process是一个标准的动态连接库主机处理服务。
常见错误: N/A
是否为系统进程: 是
系统进程(5)
进程文件: system or system
进程名称: Windows System Process
描述: Microsoft Windows系统进程。
常见错误: N/A
是否为系统进程: 是
进程文件: taskmon or taskmon.exe
进程名称: Windows Task Optimizer
描述: windows任务优化器监视你使用某个程序的频率,并且通过加载那些经常使用的程序来整理优化硬盘。
常见错误: N/A
是否为系统进程: 是
进程文件: tcpsvcs or tcpsvcs.exe
进程名称: TCP/IP Services
描述: TCP/IP Services Application支持透过TCP/IP连接局域网和Internet。
常见错误: N/A
是否为系统进程: 是
进程文件: winlogon or winlogon.exe
进程名称: Windows Logon Process
描述: Windows NT用户登陆程序。
常见错误: N/A
是否为系统进程: 是
进程文件: winmgmt or winmgmt.exe
进程名称: Windows Management Service
描述: Windows Management Service透过Windows Management Instrumentation data (WMI)技术处理来自应用客户端的请求。
常见错误: N/A
是否为系统进程: 是
一般程序(1)
进程文件: absr or absr.exe
进程名称: Backdoor.Autoupder Virus
描述: 这个进程是Backdoor.Autoupder后门病毒程序创建的。
常见错误: N/A
是否为系统进程: 否
进程文件: acrobat or acrobat.exe
进程名称: Adobe Acrobat
描述: Acrobat Writer用于创建PDF文档。
常见错误: N/A
是否为系统进程: 否
进程文件: acrord32 or acrord32.exe
进程名称: Acrobat Reader
描述: Acrobat Reader是一个用于阅读PDF文档的软件。
常见错误: N/A
是否为系统进程: 否
进程文件: agentsvr or agentsvr.exe
进程名称: OLE automation server
描述: OLE Automation Server是Microsoft Agent的一部分。
常见错误: N/A
是否为系统进程: 否
进程文件: aim or aim.exe
进程名称: AOL Instant Messenger
描述: AOL Instant Messenger是一个在线聊天和即时通讯IM软件客户端。
常见错误: N/A
是否为系统进程: 否
进程文件: airsvcu or airsvcu.exe
进程名称: Microsoft Media Manager
描述: OLE 这是一个用于在硬盘上建立索引文件和文件夹,在Microsoft Media Manager媒体管理启动时运行的进程。它可以在控制面板被禁用。
常见错误: N/A
是否为系统进程: 否
一般程序(2)
进程文件: alogserv or alogserv.exe
进程名称: McAfee VirusScan
描述: McAfee VirusScan是一个反病毒软件用于扫描你的文档和E-mail中的病毒。
常见错误: N/A
是否为系统进程: 否
进程文件: avconsol or avconsol.exe
进程名称: McAfee VirusScan
描述: McAfee VirusScan是一个反病毒软件用于扫描你的文档和E-mail中的病毒。
常见错误: N/A
是否为系统进程: 否
进程文件: avsynmgr or avsynmgr.exe
进程名称: McAfee VirusScan
描述: McAfee VirusScan是一个反病毒软件用于扫描你的文档和E-mail中的病毒。
常见错误: N/A
是否为系统进程: 否
进程文件: backWeb or backWeb.exe
进程名称: Backweb Adware
描述: Backweb是一个Adware(广告插件,一般是由于安装某些免费软件而伴随安装上的程序)来自Backweb Technologies。
常见错误: N/A
是否为系统进程: 否
进程文件: bcb or bcb.exe
进程名称: Borland C++ Builder
描述: Borland C++ Builder
常见错误: N/A
是否为系统进程: 否
进程文件: calc or calc.exe
进程名称: Calculator
描述: Microsoft Windows计算器程序
常见错误: N/A
是否为系统进程: 否
一般程序(3)
进程文件: ccapp or ccapp.exe
进程名称: Symantec Common Client
描述: Symantec公用应用客户端包含在Norton AntiVirus 2003和Norton Personal Firewall 2003。
常见错误: N/A
是否为系统进程: 否
进程文件: cdplayer or cdplayer.exe
进程名称: CD Player
描述: Microsoft Windows包含的CD播放器
常见错误: N/A
是否为系统进程: 否
进程文件: charmap or charmap.exe
进程名称: Windows Character Map
描述: Windows字符映射表用来帮助你寻找不常见的字符。
常见错误: N/A
是否为系统进程: 否
进程文件: cidaemon or cidaemon.exe
进程名称: Microsoft Indexing Service
描述: 在后台运行的Windows索引服务,用于帮助你搜索文件在下次变得更快。
常见错误: N/A
是否为系统进程: 否
进程文件: cisvc or cisvc.exe
进程名称: Microsoft Index Service Helper
描述: Microsoft Index Service Helper监视Microsoft Indexing Service (cidaemon.exe) 的内存占用情况,如果cidaemon.exe内存使用超过了40M,则自动重新启动该进程。
常见错误: N/A
是否为系统进程: 否
进程文件: cmd or cmd.exe
进程名称: Windows Command Prompt
描述: Windows控制台程序。不像旧的command.com,cmd.exe是一个32位的命令行使用在WinNT/2000/XP。
常见错误: N/A
是否为系统进程: 否
一般程序(4)
进程文件: cmesys or cmesys.exe
进程名称: Gator GAIN Adware
描述: Gator GAIN是一个Adware插件(广告插件,一般是由于安装某些免费软件而伴随安装上的程序)。
常见错误: N/A
是否为系统进程: 否
进程文件: ctfmon or ctfmon.exe
进程名称: Alternative User Input Services
描述: 控制Alternative User Input Text Processor (TIP)和Microsoft Office语言条。Ctfmon.exe提供语音识别、手写识别、键盘、翻译和其它用户输入技术的支持。
常见错误: N/A
是否为系统进程: 否
进程文件: ctsvccda or ctsvccda.exe
进程名称: Create CD-ROM Services
描述: 在Win9X创建CD-ROM访问服务。
常见错误: N/A
是否为系统进程: 否
进程文件: cutftp or cutftp.exe
进程名称: CuteFTP
描述: CuteFTP是一个流行的FTP客户端用于从FTP服务器上传/下载文件。
常见错误: N/A
是否为系统进程: 否
进程文件: defwatch or defwatch.exe
进程名称: Norton AntiVirus
描述: Norton Anti-Virus扫描你的文件和email以检查病毒。
常见错误: N/A
是否为系统进程: 否
进程文件: devldr32 or devldr32.exe
进程名称: Create Device Loader
描述: Creative Device Loader属于Create SoundBlaster驱动。
常见错误: N/A
是否为系统进程: 否
一般程序(5)
进程文件: directcd or directcd.exe
进程名称: Adaptec DirectCD
描述: Adaptec DirectCD是一个用文件管理器式的界面,烧录文件到光盘的软件。
常见错误: N/A
是否为系统进程: 否
进程文件: dreamweaver or dreamweaver.exe
进程名称: Macromedia DreamWeaver
描述: Macromedia DreamWeaver是一个HTML编辑器用于创建站点和其它类别的HTML文档。
常见错误: N/A
是否为系统进程: 否
进程文件: em_exec or em_exec.exe
进程名称: Logitech Mouse Settings
描述: 这是Logitech MouseWare状态栏图标的进程,用于用户访问控制鼠标属性和察看MouseWare帮助。
常见错误: N/A
是否为系统进程: 否
进程文件: excel or excel.exe
进程名称: Microsoft Excel
描述: Microsoft Excel是一个电子表格程序包括在Microsoft Office中。
常见错误: N/A
是否为系统进程: 否
进程文件: findfast or findfast.exe
进程名称: Microsoft Office Indexing
描述: Microsoft Office索引程序,用于提高Microsoft Office索引Office文档的速度。
常见错误: N/A
是否为系统进程: 否
进程文件: frontpage or frontpage.exe
进程名称: Microsoft FrontPage
描述: Microsoft FrontPage是一个HTML编辑器用于创建站点和其它类别的HTML文档。
常见错误: N/A
是否为系统进程: 否
一般程序(6)
进程文件: gmt or gmt.exe
进程名称: Gator Spyware Component
描述: Gator Spyware是一个广告插件,随Gator安装和启动。
常见错误: N/A
是否为系统进程: 否
进程文件: hh or hh.exe
进程名称: Gator Windows Help
描述: Windows Help程序用以打开帮助文件和文档,包括在很多Windows程序中。
常见错误: N/A
是否为系统进程: 否
进程文件: hidserv or hidserv.exe
进程名称: Microsoft Human Interface Device Audio Service
描述: 后台服务,用来支持U**音效部件和U**多媒体键盘。
常见错误: N/A
是否为系统进程: 否
进程文件: icq or icq.exe
进程名称: ICQ
描述: ICQ是一个在线聊天和即时通讯客户端。
常见错误: N/A
是否为系统进程: 否
进程文件: iexplore or iexplore.exe
进程名称: Internet Explorer
描述: Microsoft Internet Explorer网络浏览器透过HTTP访问WWW万维网。
常见错误: N/A
是否为系统进程: 否
进程文件: irmon or irmon.exe
进程名称: Windows Infrared Port Monitor
描述: Windows IRMon进程用以监视红外线端口设备。
常见错误: N/A
是否为系统进程: 否
一般程序(7)
进程文件: kodakimage or kodakimage.exe
进程名称: Imaging
描述: Kodak Imaging是一个图片察看软件。包括在Windows,用以打开图像文件。
常见错误: N/A
是否为系统进程: 否
进程文件: loadqm or loadqm.exe
进程名称: MSN Queue Manager Loader
描述: MSN Queue Manager Loader被随着MSN Explorer和MSN Messenger安装。他在一些时候会占用很多系统资源。
常见错误: N/A
是否为系统进程: 否
进程文件: loadwc or loadwc.exe
进程名称: Load WebCheck
描述: Load WebCheck用以定制一些Internet Explorer的设定,添加、删除或者更新用户profiles设定。
常见错误: N/A
是否为系统进程: 否
进程文件: mad or mad.exe
进程名称: System Attendant Service
描述: System Attendant Service是Microsoft Exchange Server的后台程序。它用以读取Microsoft Exchange的DLLs文件,写log信息和生成离线地址薄。
常见错误: N/A
是否为系统进程: 否
进程文件: mcshield or mcshield.exe
进程名称: McAfee VirusScan
描述: McAfee VirusScan是一个反病毒软件用以扫描你的文件和email中的病毒。
常见错误: N/A
是否为系统进程: 否
进程文件: mgabg or mgabg.exe
进程名称: Matrox BIOS Guard
描述: Matrox BIOS守护进程。
常见错误: N/A
是否为系统进程: 否
一般程序(8)
进程文件: mmmc or mmc.exe
进程名称: Microsoft Management Console
描述: Microsoft Management Console管理控制程序集成了很多的系统控制选项。例如设备管理(系统、硬件)或者计算机权限控制(Administr
ative管理工具)。
常见错误: N/A
是否为系统进程: 否
进程文件: mobsync or mobsync.exe
进程名称: Microsoft Synchronization Manager
描述: Internet Explorer的一个组成部分,用以在后台同步离线察看页面。
常见错误: N/A
是否为系统进程: 否
进程文件: mplayer or mplayer.exe
进程名称: Windows Media Player
描述: Windows Media Player是一个用以打开音乐、声音和视频文件的软件。
常见错误: N/A
是否为系统进程: 否
进程文件: mplayer2 or mplayer2.exe
进程名称: Windows Media Player
描述: Windows Media Player是一个用以打开音乐、声音和视频文件的软件。
常见错误: N/A
是否为系统进程: 否
进程文件: msaccess or msaccess.exe
进程名称: Microsoft Access
描述: Microsoft Access是一个数据库软件包括在Microsoft Office。
常见错误: N/A
是否为系统进程: 否
进程文件: m**b or m**b.exe
进程名称: M**B Web3000 Spyware Application
描述: M**B Web3000 Spyware是包括在一些adware产品中,利用注册表随Windows启动。
常见错误: N/A
是否为系统进程: 否
一般程序(9)
进程文件: msdtc or msdtc.exe
进程名称: Distributed Transaction Coordinator
描述: Microsoft Distributed Transaction Coordinator控制多个服务器的传输,被安装在Microsoft Personal Web Server和Microsoft SQL Server。
常见错误: N/A
是否为系统进程: 否
进程文件: msiexec or msiexec.exe
进程名称: Windows Installer Component
描述: Windows Installer的一部分。用来帮助Windows Installer package files (MSI)格式的安装文件。
常见错误: N/A
是否为系统进程: 否
进程文件: msimn or msimn.exe
进程名称: Microsoft Outlook Express
描述: Microsoft Outlook Express是一个Email和新闻组客户端包括在Microsoft Windows。
常见错误: N/A
是否为系统进程: 否
进程文件: msmsgs or msmsgs.exe
进程名称: MSN Messenger Traybar Process
描述: MSN Messenger是一个在线聊天和即时通讯客户端。
常见错误: N/A
是否为系统进程: 否
进程文件: msoobe or msoobe.exe
进程名称: Windows Proct Activation
描述: Windows XP License的Proct Activation产品激活程序。
常见错误: N/A
是否为系统进程: 否
进程文件: mspaint or mspaint.exe
进程名称: Microsoft Paint
描述: Microsoft Paint画图是一个图像编辑器包括在Microsoft Windows,它能够编辑bmp图像。
常见错误: N/A
是否为系统进程: 否
一般程序(10)
进程文件: mspmspsv or mspmspsv.exe
进程名称: WMDM PMSP Service
描述: Windows Media Player 7需要安装的Helper Service。
常见错误: N/A
是否为系统进程: 否
进程文件: mysqld-nt or mysqld-nt.exe
进程名称: MySQL Daemon
描述: MySQL Daemon控制访问MySQL数据库。
常见错误: N/A
是否为系统进程: 否
进程文件: navapsvc or navapsvc.exe
进程名称: Norton AntiVirus Auto-Protect Service
描述: Norton Anti-Virus扫描你的文件和email中的病毒。
常见错误: N/A
是否为系统进程: 否
进程文件: navapw32 or navapw32.exe
进程名称: Norton AntiVirus Agent
描述: Norton Anti-Virus扫描你的文件和email中的病毒。
常见错误: N/A
是否为系统进程: 否
进程文件: ndetect or ndetect.exe
进程名称: ICQ Ndetect Agent
描述: ICQ Ndetect Agent是ICQ用来侦测网络连接的程序。
常见错误: N/A
是否为系统进程: 否
进程文件: netscape or netscape.exe
进程名称: Netscape
描述: Netscape网络浏览器通过HTTP浏览WWW万维网。
常见错误: N/A
是否为系统进程: 否
一般程序(11)
进程文件: notepad or notepad.exe
进程名称: Notepad
描述: Notepad字符编辑器用于打开文档。在Windows中附带。
常见错误: N/A
是否为系统进程: 否
进程文件: ntbackup or ntbackup.exe
进程名称: Windows Backup
描述: Windows备份工具用于备份文件和文件夹。
常见错误: N/A
是否为系统进程: 否
进程文件: ntvdm or ntvdm.exe
进程名称: Windows 16-bit Virtual Machine
描述: Windows Virtual Machine是为了兼容旧的16位Windows和DOS程序而设置的虚拟机。
常见错误: N/A
是否为系统进程: 否
进程文件: nvsvc32 or nvsvc32.exe
进程名称: NVIDIA Driver Helper Service
描述: NVIDIA Driver Helper Service在NVIDA显卡驱动中被安装。
常见错误: N/A
是否为系统进程: 否
进程文件: nwiz or nwiz.exe
进程名称: NVIDIA nView Control Panel
描述: NVIDIA nView控制面板在NVIDA显卡驱动中被安装,用于调整和设定。
常见错误: N/A
是否为系统进程: 否
进程文件: osa or osa.exe
进程名称: Office Startup Assistant
描述: Microsoft Office启动助手,随Windows启动,增强启动、Office字体、命令和Outlook事务提醒等特性。
常见错误: N/A
是否为系统进程: 否
一般程序(12)
进程文件: outlook or outlook.exe
进程名称: Microsoft Outlook
描述: Microsoft Outlook是一个Email客户端包括在Microsoft Office。
常见错误: N/A
是否为系统进程: 否
进程文件: photoshop or photoshop.exe
进程名称: Adobe Photoshop
描述: Adobe Photoshop是一个图像编辑软件,能够打开和编辑照片和其它更多类型格式的图片。
常见错误: N/A
是否为系统进程: 否
进程文件: point32 or point32.exe
进程名称: Microsoft Intellimouse Monitor
描述: Microsoft Intellimouse Monitor添加一个鼠标设定图标在工具栏。
常见错误: N/A
是否为系统进程: 否
进程文件: powerpnt or powerpnt.exe
进程名称: Microsoft PowerPoint
描述: Microsoft PowerPoint是一个演示软件包括在Microsoft Office。
常见错误: N/A
是否为系统进程: 否
进程文件: pstores or pstores.exe
进程名称: Protected Storage Service
描述: Microsoft Protected Storage服务控制保密的内容密码。
常见错误: N/A
是否为系统进程: 否
进程文件: qttask or qttask.exe
进程名称: Quick Time Tray Icon
描述: Quick Time任务栏图标在你运行Quick Time的时候启动。
常见错误: N/A
是否为系统进程: 否
一般程序(13)
进程文件: realplay or realplay.exe
进程名称: Real Player
描述: Real Player是一个媒体播放器用来打开和播放音乐、声音和Real Media格式的视频文件。
常见错误: N/A
是否为系统进程: 否
进程文件: rnaapp or rnaapp.exe
进程名称: Windows Modem Connection
描述: Windows Modem连接控制用以控制拨号modem连接。
常见错误: N/A
是否为系统进程: 否
进程文件: rtvscan or rtvscan.exe
进程名称: Norton AntiVirus
描述: Norton Anti-Virus用以扫描你的文件和email中的病毒。
常见错误: N/A
是否为系统进程: 否
进程文件: rundll32 or rundll32.exe
进程名称: Windows RUNDLL32 Helper
描述: Windows Rundll32为了需要调用DLLs的程序。
常见错误: N/A
是否为系统进程: 否
进程文件: sndrec32 or sndrec32.exe
进程名称: Windows Sound Recorder
描述: Windows录音机用以播放和录制声音文件(.wav)。
常见错误: N/A
是否为系统进程: 否
进程文件: sndvol32 or sndvol32.exe
进程名称: Windows Volume Control
描述: Windows声音控制进程在任务栏驻留用以控制音量和声卡相关。
常见错误: N/A
是否为系统进程: 否
一般程序(14)
进程文件: spoolss or spoolss.exe
进程名称: Printer Spooler Subsystem
描述: Windows打印机控制子程序用以调用需要打印的内容从磁盘到打印机。
常见错误: N/A
是否为系统进程: 否
进程文件: starter or starter.exe
进程名称: Creative Labs Ensoniq Mixer Tray icon
描述: 状态栏图标在Creative Sound Mixer中被安装。为了Creative声卡 (SoundBlaster)。
常见错误: N/A
是否为系统进程: 否
进程文件: systray or systray.exe
进程名称: Windows Power Management
描述: Windows电源管理程序用以控制节能和恢复启动。
常见错误: N/A
是否为系统进程: 否
进程文件: tapisrv or tapisrv.exe
进程名称: TAPI Service
描述: Windows Telephony (TAPI) 的后台服务程序。
常见错误: N/A
是否为系统进程: 否
进程文件: userinit or userinit.exe
进程名称: UserInit Process
描述: UserInit程序运行登陆脚本,建立网络连接和启动Shell壳。
常见错误: N/A
是否为系统进程: 否
进程文件: visio or visio.exe
进程名称: Microsoft Visio
描