关于kudu使用的一些问题及解决办法

2024-06-09 19:58

本文主要是介绍关于kudu使用的一些问题及解决办法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • 在client 1.5之前,由于kudu客户端链接的token有效时间是7天,当时间大于7天的时候token失效,客户端不会主动去刷新token,导致写入数据报错;

 解决办法:kudu-client 版本使用1.5以上的版本

  •  kudu数据flush的模式问题

 AUTO_FLUSH_BACKGROUND:异步刷新可能会导致写入的时候乱序,因此有严格的顺序的写入操作可能要使用AUTO_FLUSH_SYNC模式

具体说明如下:

/**

 * Each {@link KuduSession#apply KuduSession.apply()} call will return only after being* flushed to the server automatically. No batching will occur.** <p>In this mode, the {@link KuduSession#flush} call never has any effect, since each* {@link KuduSession#apply KuduSession.apply()} has already flushed the buffer before* returning.*  * <p><strong>This is the default flush mode.</strong>
 * 使用该模式的时候调用apply以后就直接flush,不回有批量flush的情况,该模式为默认模式*/
AUTO_FLUSH_SYNC,/*** {@link KuduSession#apply KuduSession.apply()} calls will return immediately, but the writes* will be sent in the background, potentially batched together with other writes from* the same session. If there is not sufficient buffer space, then* {@link KuduSession#apply KuduSession.apply()} may block for buffer space to be available.** <p>Because writes are applied in the background, any errors will be stored* in a session-local buffer. Call {@link #countPendingErrors() countPendingErrors()} or* {@link #getPendingErrors() getPendingErrors()} to retrieve them.** <p><strong>Note:</strong> The {@code AUTO_FLUSH_BACKGROUND} mode may result in* out-of-order writes to Kudu. This is because in this mode multiple write* operations may be sent to the server in parallel.* See <a href="https://issues.apache.org/jira/browse/KUDU-1767">KUDU-1767</a> for more* information.** <p>The {@link KuduSession#flush()} call can be used to block until the buffer is empty.
 * 1. 在该模式下,调用apply以后自动返回,写入是在后台异步进行。有可能会和同一个session里面其他的写入操作一起批量提交,如果buffer的
 * 空间不够用的话apply会被阻塞直到有可用空间。
 * 2.由于写入是后台异步操作,可以使用countPendingErrors()或者getPendingErrors()来检索错误。* 3. AUTO_FLUSH_BACKGROUND可能会导致写入的结果是乱序的,因为这个模式可能会并行写入服务器中。*/
AUTO_FLUSH_BACKGROUND,/*** {@link KuduSession#apply KuduSession.apply()} calls will return immediately, but the writes* will not be sent until the user calls {@link KuduSession#flush()}. If the buffer runs past* the configured space limit, then {@link KuduSession#apply KuduSession.apply()} will return* an error.
 * apply以后会立即返回,写操作会在flush以后执行。如果缓冲超过了配置的大小,apply则会
报错 */
MANUAL_FLUSH

这篇关于关于kudu使用的一些问题及解决办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1046157

相关文章

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery

使用Python绘制蛇年春节祝福艺术图

《使用Python绘制蛇年春节祝福艺术图》:本文主要介绍如何使用Python的Matplotlib库绘制一幅富有创意的“蛇年有福”艺术图,这幅图结合了数字,蛇形,花朵等装饰,需要的可以参考下... 目录1. 绘图的基本概念2. 准备工作3. 实现代码解析3.1 设置绘图画布3.2 绘制数字“2025”3.3

详谈redis跟数据库的数据同步问题

《详谈redis跟数据库的数据同步问题》文章讨论了在Redis和数据库数据一致性问题上的解决方案,主要比较了先更新Redis缓存再更新数据库和先更新数据库再更新Redis缓存两种方案,文章指出,删除R... 目录一、Redis 数据库数据一致性的解决方案1.1、更新Redis缓存、删除Redis缓存的区别二

oracle数据库索引失效的问题及解决

《oracle数据库索引失效的问题及解决》本文总结了在Oracle数据库中索引失效的一些常见场景,包括使用isnull、isnotnull、!=、、、函数处理、like前置%查询以及范围索引和等值索引... 目录oracle数据库索引失效问题场景环境索引失效情况及验证结论一结论二结论三结论四结论五总结ora

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

python使用watchdog实现文件资源监控

《python使用watchdog实现文件资源监控》watchdog支持跨平台文件资源监控,可以检测指定文件夹下文件及文件夹变动,下面我们来看看Python如何使用watchdog实现文件资源监控吧... python文件监控库watchdogs简介随着Python在各种应用领域中的广泛使用,其生态环境也

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

element-ui下拉输入框+resetFields无法回显的问题解决

《element-ui下拉输入框+resetFields无法回显的问题解决》本文主要介绍了在使用ElementUI的下拉输入框时,点击重置按钮后输入框无法回显数据的问题,具有一定的参考价值,感兴趣的... 目录描述原因问题重现解决方案方法一方法二总结描述第一次进入页面,不做任何操作,点击重置按钮,再进行下

springboot整合 xxl-job及使用步骤

《springboot整合xxl-job及使用步骤》XXL-JOB是一个分布式任务调度平台,用于解决分布式系统中的任务调度和管理问题,文章详细介绍了XXL-JOB的架构,包括调度中心、执行器和Web... 目录一、xxl-job是什么二、使用步骤1. 下载并运行管理端代码2. 访问管理页面,确认是否启动成功

使用Nginx来共享文件的详细教程

《使用Nginx来共享文件的详细教程》有时我们想共享电脑上的某些文件,一个比较方便的做法是,开一个HTTP服务,指向文件所在的目录,这次我们用nginx来实现这个需求,本文将通过代码示例一步步教你使用... 在本教程中,我们将向您展示如何使用开源 Web 服务器 Nginx 设置文件共享服务器步骤 0 —