- 博客(45)
- 收藏
- 关注
原创 HiveServer2 启动时 datanucleus.schema.autoCreateTables 不生效的问题
HiveServer2 启动时出现 "Either your MetaData is incorrect, or you need to enable "datanucleus.schema.autoCreateTables",而datanucleus.schema.autoCreateTables不生效
2024-09-09 00:15:10 555 1
原创 Hive 本地启动时报错 Persistence Manager has been closed
解决办法是将 ObjectStore 类中静态变量 forTwoMetastoreTesting 为 true
2024-09-07 17:51:15 807
原创 学习Kerberos
用户要去游乐场,首先要在门口检查用户的身份(即 CHECK 用户的 ID 和 PASS), 如果用户通过验证,游乐场的门卫 (AS) 即提供给用户一张门卡 (TGT)。这张卡片的用处就是告诉游乐场的各个场所,用户是通过正门进来,而不是后门偷爬进来的,并且也是获取进入场所一把钥匙。现在用户有张卡,但是这对用户来不重要,因为用户来游乐场不是为了拿这张卡的而是为了游览游乐项目,这时用户摩天楼,并想游玩。
2024-09-01 22:15:00 763
原创 Hive出现BigDecimal wourld overflow supported range问题
hbase shell插入的基础类型数据通过bigdecimal查看数据位数可以看到数据位数变得很大。问题在于BigDecimal设置的精度太小或太大了,例如2^32 - 1或者-2^32。而且如果scale很大的话,就就算没有报错,计算也需要耗费很长的时间。真正的bigDecimal数据正常状态下查看是会乱码的。Jdk17计算后大于MAX_MAG_LENGTH报错。测试jdk11直接大于MAX_VALUE报错。这个问题也和使用的jdk版本也有关系。怀疑是插入了类似数据导致了这个问题。
2024-09-01 07:30:00 218
原创 不想再搬砖了!我给火爆全网的砖了个砖做了个辅助工具!!
但是倔强的我怎么能会因为这点事就退缩了呢,于是我花了一点时间学习了一下简单的图像识别,以及设计了一个简单的算法,接下来就有了下面的辅助工具!但是由于越玩到后面难度越大,还有体力最高只有一格,且一格体力居然几个小时才能恢复,着实劝退了不少人。我花了一个小时的时间,才好不容把第二关通过了,中间还邀请朋友帮忙才通过的。然后呢,我根据规则设计了一个简单的算法,算法的的步骤就不多说了。继羊了个羊之后,又一款小游戏火了起来,那就是《砖了个砖》!参数,依次设置为图片地址,图片中方块的行数和列数。搬砖还是得讲究效率!
2024-08-30 20:00:00 289
原创 Hadoop和Yarn故障切换高可用原理
通常调用Yarn和Hadoop的客户端api时都会经过他们的一层代理类,每次调用代理类方法失败时会进行重试或者故障转移,代理类的创建是通过创建的,例如RMProxy、ServerProxy、NameNodeProxies都会通过它创建相应的客户端代理。下面主要解析一下YarnClient使用的RMProxy(默认Hadoop2):创建RMProxy创建故障切换代理供应者FailoverProxyProvider,默认为ConfiguredRMFailoverProxyProvider,用于出现故障时切换节点
2024-08-30 18:15:00 772
原创 通过写文件方式写入 Hive 数据
Hive最简单的写入数据方式就是通过Hive Jdbc写入Hive数据,但这并不是写入Hive最高效的方法。Hive通过读取相关Hdfs的文件来获取数据信息,而通过直接写入Hdfs文件数据达到写入Hive数据的效果,这是目前最高效的方法
2024-08-28 23:02:02 1083
原创 NodeManager本地缓存源码解析
NodeManager本地缓存中资源有三种可见度:PUBLIC、PRIVATE、APPLICATION,每种可见度都需要不同的处理PUBLIC:全局共享缓存,资源存放在 ${yarn.nodemanager.local-dirs}/filecache/ 目录下PRIVATE:对应用户级别共享资源,资源存放在yarnnodemanagerlocal−dirsusercache{user}/filecache/ 目录下。
2024-08-28 22:48:31 944
原创 YarnClient发送和接收请求源码解析
其中Hadoop和Yarn组件大部分是通过Protobuf(Protocol Buffers)协议进行通信。Protobuf 是一种由 Google 开发的二进制序列化格式和相关的技术,它用于高效地序列化和反序列化结构化数据,通常用于网络通信、数据存储等场景。
2024-08-28 22:42:19 969
原创 Flink内存调优
基于 JVM 内存存在一些问题,并且在大数据场景下,无法在内存中存储海量数据,计算效率无法提高。Flink 社区采用自主内存管理设计,设计了两种内存模型 JobManager 内存模型和 TaskManager 内存模型。
2024-08-24 10:02:23 1197
原创 Mac Hadoop Yarn日志聚合出错
目录下应该就可以看见Hadoop-2.7.3目录,也就是hadoop应用程序了,可以通过判断启动hadoop任意组件是否会发出没有加载native库警告来判断是否生效(注意:通过hadoop checknative -a仍会报错,因为brew上面的库还是无法加载到,但是不影响hadoop启动时加载native库)由于hadoop没有提供mac平台上的包,所以如果我们想要在mac上使用hadoop的native库,那么就只能通过手动构建hadoop了。简单思考是没有加载到Hadoop的native库导致的。
2024-02-11 11:55:36 544
原创 Java NIO和BIO比较
学过计算机组成原理就知道在IO系统中直接内存访问DMA方式相比程序中断方式访问方式,进一步提高了CPU利用率,这里从Java程序通过对读写一个文件来进行一个验证。
2023-03-02 15:49:57 287
原创 Gradle如何排除依赖项目的某些包
在开发一个Gradle相关项目时,遇到了Gradle如何排除依赖项目的某些包这个问题,网上也并不能找到相关问题的解决方案,这就让我需要我仔细阅读官方文档相关部分了。
2022-12-30 18:27:00 8388
原创 记录Gradle中Checkstyle和Spotbugs的使用
Checkstyle 是一个开发工具,用于帮助程序员编写符合编码标准的 Java 代码。它自动化了检查 Java 代码的过程,使人们免于承担这项枯燥(但重要)的任务。这使得它成为希望实施编码标准的项目的理想选择。SpotBugs 是一个在 Java 程序中发现 bug 的程序。它寻找“ bug 模式”的实例ーー可能是错误的代码实例。
2022-12-30 16:29:27 1384
原创 认识PWA(渐进式网页引用)
渐进式 Web 应用程序(PWAs)是使用现代 API 构建和增强的 Web 应用程序,以提供增强的功能、可靠性和可安装性,同时通过单个代码库访问任何人、任何地点、任何设备。
2022-12-30 11:08:58 352
原创 GitHub Actions入门教程
GitHub Actions 是一个持续集成和持续交付(CI/CD)平台,允许您自动化构建、测试和部署流水线。您可以创建工作流来构建和测试存储库中的每个请求,或者将合并的请求部署到生产环境中。
2022-12-30 11:05:00 2091
原创 mybatis-generator如何从环境变量中使用数据库密码
mybatis-generator如何从环境变量中使用数据库密码(使用gradle)
2022-08-31 23:10:27 604
原创 Springdoc、OpenApi如何编写multipart/form-data、文件上传接口
Springdoc、OpenApi如何编写multipart/form-data、文件上传接口
2022-07-13 16:52:00 4760 3
原创 ubuntu “could not store password an apparmor policy mysql workbench” Code Answer
ubuntu “could not store password an apparmor policy mysql workbench” Code Answer
2022-06-15 08:49:32 749
原创 Security Filters顺序
Security Filters顺序 Security Filter通过SecurityFilterChain 被插入到FilterChainProxy中。过滤器的顺序很重要,但通常不需要知道Spring Security过滤器的顺序。然而,有些时候,知道顺序是有益的。你可以通过FilterOrderRegistration查看过滤器的顺序FilterOrderRegistration.javaFilterOrderRegistration() { Step order = new S
2022-05-04 17:00:59 657
原创 SpringSecurity保存登录前的请求页面和跳转回登录前页面的源码分析
SpringSecurity保存登录前的请求页面和跳转回登录前页面的源码分析保存ExceptionTranslationFilter在处理未认证信息异常时会使用RequestCache保存登录前请求页面信息。所以我们就从创建ExceptionTranslationFilter和RequestCache开始分析。ExceptionTranslationFilter和RequestCache都是由ExceptionHandlingConfigurer创建的,如下:ExceptionHandlingC
2022-05-03 18:40:04 1264
原创 SpringSecurity异常处理源码解析
SpringSecurity异常处理源码解析异常处理主要是由ExceptionTranslationFilter完成的,而ExceptionTranslationFilter是由ExceptionHandlingConfigurer配置的,所以我们从ExceptionHandlingConfigurer开始解析我们首先看ExceptionHandlingConfigurer的configure(Httpsecurity security)方法:@Overridepublic void configu
2022-05-03 15:01:25 783
原创 SpringSecurity生成权限流程源码分析
SpringSecurity生成权限流程源码分析自定义match路径,@Overrideprotected void configure(HttpSecurity http) throws Exception { http.authorizeRequests() .antMatchers("/lib/*", "/js/*").permitAll() //配置POST访问/users需要有ADMIN权限 .mvcMatc
2022-05-03 14:59:40 599
原创 个人vim配置
个人vim配置条件:vundle插件plug插件bundle插件了解基本它们的基本用法(知道怎么用它们安装其他插件)功能:java自动补全、其他的基本补全高亮很好看展示如下~/.vimrcset nocompatiblefiletype onset runtimepath+=~/.vim/bundle/neobundle.vim/set runtimepath+=~/.vim/bundle/YouCompleteMeset rtp+=~/.vim/bundle/V
2022-04-24 21:30:35 417
原创 vim快捷键笔记
vim快捷键基本操作单个字符移动h: 向左移动l: 向右移动j: 向下移动k: 向上移动xh: 向左移动x个字符距离单词移动w: 将光标移动到下一个单词的开头b: 将光标移动到前一个单词的开头e: 将光标移动到下一个单词的词末E: 移动到单词的结尾(忽略标点符号)ge: 将光标移动到上一个单词的词末2w: 指定移动的次数行移动$: 将光标移动到当前行的行尾0: 将光标移动到当前行的行首^: 将光标移动到当前行的第一个非空字符(行首和当前行非空字符不是一个位置
2022-04-24 21:15:35 670
原创 Elasticsearch常用术语
学习Elasticsearch建议看官方文档:elasticsearch官方文档Elasticsearch官方网站有时加载较慢,推荐保存下来看推荐一个我喜欢用的离线下载网站的软件:Httrack学习elasticsearch遇到了很多坑,看官方文档因为一些术语经常有时候看不懂,这里我把常用的一些术语分享出来便于大家学习ElasticsearchElasticsearch是一个分布式文档存储。Elasticsearch 为所有类型的数据提供近乎实时的搜索和分析。无论你有结构化或非结构化的
2022-04-24 21:08:05 1626
原创 Java中Collector
用法:直接上代码import org.junit.jupiter.api.Assertions;import org.junit.jupiter.api.BeforeEach;import org.junit.jupiter.api.DisplayName;import org.junit.jupiter.api.Test;import java.util.*;import java.util.function.BinaryOperator;import java.util.stream.
2022-03-20 10:42:00 436
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人