- 博客(297)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 【SQL】case when语句
CASE input_expressionWHEN when_expression THEN result_expression [...n ] [ELSE else_result_expressionEND
2023-02-23 09:37:28 1024
原创 【Flink】Table API 和 SQL
目录Table API 和 SQL快速上手需要引入的依赖一个简单的事例基本API程序架构创建表环境创建表表的查询输出表表和流的转换流数据的表Table API 和 SQL直到Flink1.12版本才基本做到了功能上的完善,现在仍在不停地调整和更新中,所以这部分内容重点理解含义。快速上手需要引入的依赖planner-blinkstreaming-scala一个简单的事例基本API程序架构创建表环境创建表表的查询输出表表和流的转换流数据的表...
2022-05-09 21:18:16 1158
原创 【Flink】容错机制
目录容错机制检查点检查点的保存从检查点恢复状态检查点算法检查点配置保存点savepoint状态一致性一致性的概念和级别端到端的状态一致性端到端精准一次输入端保证输出端保证Flink和Kafka连接时的精准一次性保证容错机制检查点检查点的保存定期存盘,将状态保存到检查点。保存的时间点:source数据源处记录一个offset,当所有子任务都处理完同一个offset处的数据的时候触发checkpoint保存。每个子任务之间保存快照的具体时间可能不太一样。从检查点恢复状态如果发生故障,Flink
2022-03-28 23:19:35 1974
原创 【Flink】状态编程
状态编程之前的应用:(1)实时对账,联结两条流,定义状态,用于保存已经到达的事件;(2)TopN:定义了一个列表状态,把所有到达的事件全都保存起来。Flink中的状态有状态算子事件模式:event pattern聚合算子:如求和:sum窗口算子ProcessFunction都可以定义状态MyMapFunction extends RichMapFunction,这样也可以有状态状态的管理直接把状态保存在内存里,保证性能。如果数据量太大,可以借助分布式扩展,提高吞吐量。每个算子任务
2022-03-27 20:18:10 2995
原创 【Flink】多流转换
多流转换分流就是基于侧输出流// 定义侧输出流标签OutputTag<String> outputTag = new OutputTag<String>("side-output"){};public void processElement(){ // 转换成Long, 输出到主流中 out.collect(Long.valueof(value)); // 转换成String, 输出到侧输出流中 ctx.output(outputTag, String.valu
2022-03-25 20:38:25 2373
原创 【SQL】SQL中各种各样的时间
%M 月名字(January~December)%W 星期名字(Sunday~Saturday)%D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)%Y 年, 数字, 4 位%y 年, 数字, 2 位%a 缩写的星期名字(Sun~Sat)%d 月份中的天数, 数字(00~31)%e 月份中的天数, 数字(0~31)%m 月, 数字(01~12)%c 月, 数字(1~12)%b 缩写的月份名字(Jan~Dec)%j 一年中的天数(001~366)%H 小时(00~23)
2022-03-25 19:35:08 532
原创 【Flink】处理函数Process
整体框架:处理函数基本处理函数 ProcessFunction处理函数的功能ProcessFunction:能拿到别的API拿不到的东西。处理函数提供了一个定时服务TimerService,可以用它访问流中的事件event、时间戳timestamp,水位线watermark,注册定时事件。处理函数继承自AbstractRichFunction,拥有富函数类的特性,可以访问状态state和其他运行时信息。处理函数可以直接将数据输出到侧输出流side output中。处理函数是DataStre
2022-03-23 22:08:36 4737
原创 【网络】Windows电脑端本地ip和公网ip的获取
cmd调出命令行查电脑本地ip:ipconfig查电脑公网ip:下列命令选一curl ipinfo.iocurl cip.cccurl ifconfig.me curl myip.ipip.netcurl icanhazip.com
2022-03-22 21:45:00 5178 1
原创 【Flink】Flink中的时间和窗口
时间语义涉及的3个时间:1.事件真正发生的时间2.进入Flink系统的时间(一般不关心)3.Flink系统开始处理任务的时间哪个时间语义更重要?事件时间更重要,Flink1.12开始时间语义默认是事件时间。水位线 WaterMarker水位线生成方式一:来一条数据,附带一条水位线。如果数据很多很密集,就给系统平添很多压力。方式二:周期性的产生一条水位线。如果数据很多很密集,这种方式不会增加太大的系统压力;如果数据很稀疏,虽然有时数据是空的,只是单纯的打一条水位线,但系统整体清闲,此时
2022-03-22 20:11:33 2565
原创 【Flink】DataStream API
DataStream API 基础执行环境(1)StreamExecutionEnvironment.getExecutionEnvironment()(2)StreamExecutionEnvironment.createLocalEnvironment()(3)StreamExecutionEnvironment.createRemoteEnvironment()流批一体,可以在提交任务命令中,设置是批处理模式、流处理模式、自动模式,-Dexecution.runtime-mode=BATC
2022-03-20 23:02:21 2003
原创 【Flink】Flink特点、运行时架构
flink特点又快又准,精准一次性。分层APISQL 最高层语言Table API 声明式领域专用语言DataStream / DataSet API 核心API有状态流处理 底层APIflink与spark对比① 数据处理架构spark基于批,flink基于流。针对流数据处理,spark先把流转为微批数据,然后再处理;flink直接处理流数据,来一个处理一个。针对批数据处理,flink认为批数据是有界的流。② 数据模型spark:RDD模型,SparkStreami
2022-03-20 17:54:48 1119
原创 【SQL】SQL如何使0值升序排序时排最后
SELECT mylistFROM mylistORDER BY CASE WHEN t=0 THEN 1 ELSE 0 END, t
2021-12-16 11:30:44 1162
转载 【网络编程】netty
Netty 是一个异步的、基于事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络 IO 程序。Netty主要针对在TCP协议下,面向Clients端的高并发应用,或者Peer-to-Peer场景下的大量数据持续传输的应用。Netty本质是一个NIO框架,适用于服务器通讯相关的多种应用场景要透彻理解Netty , 需要先学习 NIO , 这样我们才能阅读 Netty 的源码。private static final int DEFAULT_EVENT_LOOP_THREADS = Math.m
2021-09-08 19:04:46 307 1
原创 【工具】telnet用法
连接本机的6666端口:启动cmd,输入:telnet 127.0.0.1 6666进入一个只有横短光标闪烁的黑窗口,按住 ctrl + ] 两个按键,可以向指定端口发送数据。
2021-08-14 15:44:43 695
原创 【FFmpeg】SDL音视频渲染
1 SDL编译和安装下载源码:SDL2-2.0.14.tar.gztar -zvxf SDL2-2.0.14.tar.gzcd SDL2-2.0.14./configure --prefix=/usr/local sudo make -j 8 && make install2 SDL使用基本步骤添加头文件:#include<SDL.h>初始化SDL退出SDLSDL渲染窗口SDL_Init() / SDL_Quit()SDL_CreateWindow(
2021-07-22 20:03:50 233
原创 【JAVA】JVM的秘密
https://www.processon.com/view/link/5eea141cf346fb1ae56a44e7#map
2021-07-22 20:02:57 154
原创 【工具】好用的工具
Octotree - GitHub code tree目录树形式展示GitHub内容Save to Pockethttps://chrome.google.com/webstore/detail/save-to-pocket/niloccemoadcdkdjlinkgdfekeahmflj?hl=zh
2021-07-22 20:01:45 82
原创 【数据结构与算法】程序员MS金典 8.1-8.14
面试题 08.01. 三步问题class Solution {public: int waysToStep(int n) { vector<long> memo(n+1,-1);//当使用[]索引时,应该设置初始大小 if(n == 0){return 0;} if(n == 1){return 1;} if(n == 2){return 2;} if(n == 3){return 4;}
2021-07-22 20:00:51 147
原创 【Android】常用依赖
联网:Retrofit:GitHub、官网 implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.retrofit2:converter-gson:2.9.0'生命周期组件 // lifecycle def lifecycle_version = "2.3.1" // ViewModel implementation "android.
2021-07-22 19:50:46 265
原创 【数据结构与算法】最小堆实现优先队列
https://zhuanlan.zhihu.com/p/65051934最小堆堆排序的原理就是,通过维护一个最小堆来进行排序(和没说一样。最小堆在数据结构上是个完全二叉树,即除了叶子结点靠右的部分可能缺失以外,其他的地方都是满的。最小堆在结构上的特点是,所有的父结点都比子结点要小。这个特点天然的用于获取第Top-K小的数或者排序。例如找第三小的数,就是从最小堆里面取的第三个数。最小堆有两个重要的操作,这两个操作都是为了维护最小堆,即在某些结点不满足最小堆属性的时候将堆调节到符合最小堆的状态。Si
2021-07-22 19:50:02 338
原创 【Android】自己手动打包一个apk,了解Android构建流程
1. 配置ANDROID_HOME环境变量以下是在mac下操作的过程。这样便于使用Android SDK自带的工具。vim ~/.bash_profile 以下代码,等号两侧不要有空格:export ANDROID_HOME=/Users/ztc/Library/Android/sdkexport PATH=$PATH:$ANDROID_HOME/toolsexport PATH=$PATH:$ANDROID_HOME/platform-toolsexport PATH=$PATH:$AN
2021-07-22 19:48:52 445
原创 【图像处理】NV21转Bitmap,Bitmap的截图、保存、旋转、镜像
/** * Describe: 将NV21数据转成Bitmap数据,便于截图 */public class NV21ToBitmap { private RenderScript rs; private ScriptIntrinsicYuvToRGB yuvToRgbIntrinsic; public NV21ToBitmap(Context context) { rs = RenderScript.create(context); yuvTo
2021-07-22 19:46:21 1040
原创 【Java】反射
反射:说白了反射主要解决那些我们平时解决不了的问题。比如一个类的构造,属性,普通方法为私有的情况下,或者某些方法虽然不是私有的方法但是是被隐藏的方法,我们就需要使用反射才能获得他们。一般使用Class类来完成反射,这个类把成员变量划分为Filed区域,把构造划分在Construct,把普通方法划分在method区域。、1 通过反射获得构造方法1.1 通过反射获得构造为空的构造方法:首先定义一个TestBean类,testBean的构造方法是私有为空public class TestBean {
2021-06-29 18:27:53 97
原创 【Android】配置HTTP代理
File>Settings>HTTP Proxy Settings> Auto-detect proxy settings>Automatic Proxy configuration URL: https://plugins.jetbrains.com设置HTTP Proxy:
2021-06-27 12:01:33 901
原创 【Android】跳转到指定的系统页:Wifi配置、热点配置
Android10 小米 亲测可用:Wifi配置:startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS));热点配置:// 第一个参为包名,第二个各个设置的类名(可以参考下面,包名不用改变)ComponentName cm = new ComponentName("com.android.settings", "com.android.settings.TetherSettings");Intent intent = new Inte
2021-06-27 12:00:28 1212
原创 【Android】Android热点的开启、关闭、监听
参考1参考2WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);如果wifi打开关闭wifi:在6.0及其以下版本,在开启热点之前要先手动关闭wifi。以后版本就不需要了会自动关闭,热点关闭后也会自动打开。if (wifiManager.isWifiEnabled()) { wifiManager.setWifiEnabled(fal
2021-06-26 22:00:26 1134
原创 【Java】正则表达式的使用:去除字符串中的非法字符
只保留字符串中的字母、数字、下划线,其他字符删掉:public class StringProcess { public static String validify(String input) { String regEx = "[^\\w]"; String replacement = ""; // 定义待替换内容,将特殊字符换为replacement字符串,"_"代表替换为下划线 return input.replaceAll(regEx,
2021-06-26 21:59:12 4244
原创 【C++】STL里的priority_queue用法总结
https://blog.csdn.net/xiaoquantouer/article/details/520159281、头文件#include<queue>2、定义priority_queue<int> p;3、优先输出大数据priority_queue<Type, Container, Functional>Type为数据类型, Container为保存数据的容器,Functional为元素比较方式。如果不写后两个参数,那么容器默认用的是vec
2021-06-26 21:57:56 144 1
原创 【Android Studio】Android Studio ADB Wifi 无线调试
安装Adb Wifi插件打开File->perfrence->plugins->Browse repositories…->搜索 adb wifi->点击安装连接手机先用最普通的方式,用USB连接线,将手机和电脑连接,并成功被AS识别。然后操作如下:会出现:只要显示连接上了,就可以拔掉电脑和手机之间的USB连接线了。成功。...
2021-06-26 10:38:45 6103
原创 【Git】git的流程及常用命令
开始开发:git branch develop 创建develop分支git log 查看日志git checkout develop 切换到develop分支git checkout - 切换回master分支git checkout -b feature/notify 创建分支,并切换到该分支小技巧( git checkout -b feature/chat develop 在develop分支上创建一个chat分支,并切换到chat分支)开发git add .git..
2021-06-22 22:17:33 284
原创 【数据库】sqlite版本升级、降级
定义全局变量:public static SQLiteHelper dbHelper;public static String folder = "android.xxx.xxx"; // 数据库保存地址public static String file = "database.db"; // 数据库名称public static int DB_VERSION = 1; // 数据库的版本号public static SQLiteDatabase db; // 数据库初始化数据库(在M..
2021-06-22 21:40:20 1879 2
原创 【Android】Android studio中的Gradle压缩包存放位置查看
当你去C:\Users\dj\.gradle找Gradle的压缩包,发现这里放了各种版本的压缩包也无效的时候,不妨先去AS中查看一下你的这款AS,它会去哪里读取Gradle的压缩包:
2021-06-04 16:25:54 2683
原创 【Linux命令】《鸟哥Linux基础》第十五章 计划任务(crontab)
第十五章 计划任务(crontab)15.2 什么是计划任务定时提醒,或符合条件就提醒。15.1.1 Linux计划任务的种类:at、cron例行性的:每隔一定的周期要办的事项;突发性的:这次做完以后就没有计划任务的种类:at:可以处理仅执行一次就结束的命令。执行at时,要有atd这个服务的支持才行。crontab:这个命令所设置的任务将会循环执行下去,可循环的时间为分钟、小时、每周、每月或每年等。crontab除了可以使用命令执行外,还可以编辑/etc/crontab来支持,至于让c
2021-06-01 20:33:08 207
原创 【Linux命令】《鸟哥Linux基础》第十四章 磁盘配额(Quota)与高级文件系统管理
第十四章 磁盘配额(Quota)与高级文件系统管理解决的问题:在多人多任务的环境下,如何公平分配空间。通过磁盘配额完成限制额度。14.1 磁盘配额(Quota)的应用与实践14.1.1 磁盘配额概念磁盘配合的规范设置选项,针对XFS文件系统的限制:分别针对用户、用户组、或个别目录(user、group、project)容量限制或文件数量限制(block或inode)通过限制inode使用量,可以限制用户建立的文件数量;通过限制block使用量,可以限制用户磁盘容量(常见)软限制与硬限制(so
2021-06-01 20:32:48 385
原创 【Linux命令】《鸟哥Linux基础》第六章 Linux文件与目录管理
第六章 Linux文件与目录管理6.1 目录操作. 当前目录.. 上层目录- 前一个工作目录~ 当前用户的家目录~account account用户的家目录cd 绝对路径or相对路径 切换到这个指定路径cd 不加任何路径,是回到当前家目录,等于cd ~ cd - 返回刚刚的上个目录pwd 直接就能显示当前目录pwd -P 显示链接文件的真身mkdir test 创建test文件夹,默认权限mkdir -m 711
2021-06-01 20:28:30 138
rxpermission.aar
2021-03-05
订阅了您的专栏,问题:获取到NV21格式的frame后如何转成byte[]数组。
2021-07-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人