一、KuDuApi常用操作:插入数据
### --- 插入数据
~~~ # 思路:
~~~ 获取客户端
~~~ 打开一张表
~~~ 创建会话
~~~ 设置刷新模式
~~~ 获取插入实例
~~~ 声明带插入数据
~~~ 刷入数据
~~~ 应用插入实例
~~~ 关闭会话
~~~ # AUTO_FLUSH_SYNC(默认)
~~~ 意思是调用 KuduSession.apply() 方法后,
~~~ 客户端会在当数据刷新到服务器后再返回,这种情况就不能批量插入数据,
~~~ 调用 KuduSession.flush() 方法不会起任何作用,应为此时缓冲区数据已经被刷新到了服务器。
~~~ # AUTO_FLUSH_BACKGROUND
~~~ 意思是调用 KuduSession.apply() 方法后,
~~~ 客户端会立即返回,但是写入将在后台发送,可能与来自同一会话的其他写入一起进行批处理。
~~~ 如果没有足够的缓冲空间,KuduSession.apply()会阻塞,缓冲空间不可用。
~~~ 因为写入操作是在后台应用进行的的,因此任何错误都将存储在一个会话本地缓冲区中。
~~~ 注意:这个模式可能会导致数据插入是乱序的,这是因为在这种模式下,
~~~ 多个写操作可以并发地发送到服务器。即此处为 kudu 自身的一个 bug,KUDU-1767 已经说明。