既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
执行查询时,包内存超限,瓶颈在big_query_mem_limit
- big_query_mem_limit = mem_limit
设置mem_limit=10G,big_query_mem_limit=10240M
执行查询成功
以上实战足以证明mem_limit是基础的内存限制,而big_query_mem_limit是对查询内存进行进一步限制,若big_query_mem_limit和mem_limit相等,big_query_mem_limit设置限制相当于无效;因此big_query_mem_limit小于mem_limit时,对大内存查询进一步限制才有意义。
设置big_query_scan_rows_limit大小对查询的影响
设置big_query_scan_rows_limit=1000
执行查询时报错误,实际需要扫描12152行的数据,但扫描行数限制1000,所以查询报错。
分类器
可以为每个资源组关联一个或多个分类器。系统将会根据所有分类器中设置的条件,为每个查询任务选择一个匹配度最高的分类器,并根据生效的分类器所属的资源组为该查询任务分配资源。
分类器可以包含以下条件:
- user:用户名。
- role:用户所属的 Role。
- query_type: 查询类型,目前仅支持 SELECT。
- source_ip:发起查询的 IP 地址,类型为 CIDR。
- db:查询所访问的 Database,可以为 , 分割的字符串。
系统在为查询任务匹配分类器时,查询任务的信息与分类器的条件完全相同,才能视为匹配。如果存在多个分类器的条件与查询任务完全匹配,则需要计算不同分类器的匹配度。其中只有匹配度最高的分类器才会生效。
匹配度的计算方式如下
- 如果 user 一致,则该分类器匹配度增加 1。
- 如果 role 一致,则该分类