Wesley13 Wesley13
4年前
SQL优化器原理
摘要:在MaxCompute中,Join操作符的实现算法之一名为"HashJoin",其实现原理是,把小表的数据全部读入内存中,并拷贝多份分发到大表数据所在机器,在map阶段直接扫描大表数据与内存中的小表数据进行匹配。    这是MaxCompute有关SQL优化器原理的系列文章之一。我们会陆续推出SQL优化器有关优化规则和框架
Karen110 Karen110
4年前
Python10行代码实现视频人脸追踪打马赛克
一、背景知识1.1、headblur简介追踪人脸打马赛克需要使用headblur函数。调用语法:headblur(clip,fx,fy,rzone,rblurNone)说明:其中参数fx和fy是两个函数,该函数带参数t,用于确认t时刻需要模糊化范围的中心点位置,moviepy将对以中心点为圆心半径r\zone的圆范围内的图像进行模糊化处理,模糊化处理时
Stella981 Stella981
4年前
Dalvik与JVM
Dalvik是Google公司自己设计用于Android平台的Java虚拟机。Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一。它可以支持已转换为.dex格式的Java应用程序的运行,.dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。Dalvik经过优化,允许在有限的内存中同时运
Stella981 Stella981
4年前
Nginx之进程间的通信机制(共享内存、原子操作)
1\.概述Linux提供了多种进程间传递消息的方式,如共享内存、套接字、管道、消息队列、信号等,而Nginx框架使用了3种传递消息的传递方式:共享内存、套接字、信号。在进程间访问共享资源时,还需要提供一种机制使各个进程有序、安全地访问资源,避免并发访问带来的未知结果。Nginx主要使用了3种同步方式:原子操作、信号量、
Wesley13 Wesley13
4年前
mysql在LINUX和WINDOWS系统下设置表名不区分大小写
1.在LINUX系统下,表的名称是区分大小写的,而在WINDOWS环境下,表名不区分大小写;2.设置表名不区分大小写:WINDOWS环境下,修改mysql安装目录下的my.ini配置文件,在【mysqld】下添加lower\_case\_table\_names的参数,将参数值设置为0区分大小写,设置为1不区分大小写
Wesley13 Wesley13
4年前
Java内功系列
面试官:你能简单介绍List和Set有什么区别吗?小憨:List是一个有序的集合,在内存是连续存储的,可以存储重复的元素,List查询快,增删慢;Set是一个无序的集合,在内存中不连续,不可以存储重复的元素,Set增删快,查询慢;面试官:那HashSet是如何保证元素不重复的?小憨:3分钟。。。
Wesley13 Wesley13
4年前
Java 线程池
线程池用的比较多。参考文章http://blog.csdn.net/sd0902/article/details/8395677线程的优点1.减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。2.可以根据系统的承受能力,调整线程池中工作线线程的数目,防止因为消耗过多的内存,而把服务器累趴下(每个线程需要大约1MB内存,线程
Stella981 Stella981
4年前
Redis 持久化(10)
持久化机制Redis速度快,很大一部分原因是因为它所有的数据都存储在内存中。如果断电或者宕机,都会导致内存中的数据丢失。为了实现重启后数据不丢失,Redis提供了两种持久化的方案,一种是RDB快照(RedisDataBase),一种是AOF(AppendOnlyFile)。RDBRDB是Redis默认的持久化方案。当满足一定条
Stella981 Stella981
4年前
SpringBoot 开发秘籍
!(https://oscimg.oschina.net/oscnet/0b0e2e35748141a9a2de5f4eb579de18.png)概述在项目开发过程中,某个功能需要依赖在配置文件中配置的参数。这时候就可能出现下面这种现象问题:有时候经常出现项目启动了,等到使用某个功能组件的时候出现异常,提示参数未配置或者bean
动态线程池思想学习及实践
相关文档美团线程池实践:线程池思想解析:引言在后台项目开发过程中,我们常常借助线程池来实现多线程任务,以此提升系统的吞吐率和响应性;而线程池的参数配置却是一个难以合理评估的值,虽然业界也针对cpu密集型,IO密集型等场景给出了一些参数配置的经验与方案,但是