当前位置: 首页 > news >正文

昆山市建设局网站6网页设计题材

昆山市建设局网站6,网页设计题材,高端网站建设的网站,wordpress编辑器分段HBase数据刷写 之前提到过这个方法,那么BufferedMutator是什么?又应该如何实现呢? 写缓存 HBase的每一个put操作实际上是一个RPC操作,将客户端的数据传输到服务器再返回结果,这只适用于小数据量的操作,如…

HBase数据刷写 之前提到过这个方法,那么BufferedMutator是什么?又应该如何实现呢?

写缓存

HBase的每一个put操作实际上是一个RPC操作,将客户端的数据传输到服务器再返回结果,这只适用于小数据量的操作,如果数据量多的话,每次put都需要建立一次RPC的连接(TCP连接),而建立连接传输数据是需要时间的,因此减少RPC的调用可以提高数据传输的效率,减少建立连接的时间和IO消耗。

HBase的客户端API提供了写缓存区,put的数据一开始放在缓存区内,当数量到达指定的容量或者用户强制提交是才将数据一次性提交到HBase的服务器。这个缓冲区可以通过调用 HTable.setAutoFlush(false) 来开启。而新版HBbase的API中使用了BufferedMutator替换了老版的缓冲区,通过BufferedMutator对象提交的数据自动存放在缓冲区中。

BufferedMutator

通过获取 BufferedMutator 对象,并调用 mutator.mutate(List<Mutation> mutations) 方法来进行批量插入数据。可以使用 Put 类型的对象列表作为 mutations 参数进行插入。BufferedMutator 提供了自动管理缓冲区和写入操作的功能,可以提高插入数据的性能。

单次一张表批量写入

        Configuration conf = HBaseConfiguration.create();conf.set("hbase.zookeeper.quorum", "zookeeperHost");final BufferedMutator.ExceptionListener listener = new BufferedMutator.ExceptionListener() {@Overridepublic void onException(RetriesExhaustedWithDetailsException e, BufferedMutator mutator) {for (int i = 0; i < e.getNumExceptions(); i++) {LOG.info("Failed to sent put " + e.getRow(i) + ".");}}};BufferedMutatorParams params = new BufferedMutatorParams(TABLE).listener(listener);params.writeBufferSize(123123L);try {Connection conn = ConnectionFactory.createConnection(conf);BufferedMutator mutator = conn.getBufferedMutator(params);Put p = new Put(Bytes.toBytes("someRow"));p.addColumn(FAMILY, Bytes.toBytes("someQualifier"), Bytes.toBytes("some value"));mutator.mutate(p);mutator.close();conn.close();} catch (IOException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}

单次多张表批量写入

private static Map<String, BufferedMutator> tableConnectionMgr = new ConcurrentHashMap<>();
private BufferedMutator getTableConnection(String tableName) throws IOException {if (tableConnectionMgr.get(tableName) != null) {return tableConnectionMgr.get(tableName);}Connection connection = ConnectionFactory.createConnection(config);BufferedMutator table = connection.getBufferedMutator(TableName.valueOf(tableName));tableConnectionMgr.put(tableName, table);log.info("hbase table: {} connect established!", tableName);return tableConnectionMgr.get(tableName);
}

http://www.yayakq.cn/news/844914/

相关文章:

  • 网站空间怎么购买网上营销手段
  • 网站改版 信科网络在与客户谈网页广告时如何让客户相信网站流量
  • 宁波做网站优化价格wordpress 单页案例
  • 青岛高端网站制作光电工程东莞网站建设
  • 仙居住房和城乡建设部网站百度打开百度搜索
  • 什么网站做教育的比较多织梦做的网站打包在dw修改
  • 庄河网站建设公司品牌推广名词解释
  • 优秀排版设计网站大型网站开发企业
  • 东莞规划局官方网站中信建设有限责任公司杨建强
  • 家乡ppt模板免费下载网站网站需求建设书
  • 网站的功能建设客户案例 网站设计
  • 绿色大气网站模板wordpress主页不显示
  • 前期的网站建设的难度网页设计知名网站
  • 青海网站建设哪个最好seo推广公司排名
  • html5 手机 手机网站网站做流量怎么赚钱的
  • 四川整站优化专业的机构seo外包方法
  • 浙江电信关于网站备案信息核实的公告护肤网站模版
  • 营销型网站建设熊掌号php做简单网站教程视频教程
  • 51CTO学院个人网站开发视频js网页特效案例
  • 百度建立网站wordpress手机单页面
  • 蚌埠建设银行网站只有域名如何做网站
  • 品牌网站建设目标重庆在线开放课程平台
  • 除尘环保设备网站模板做兼职的网站有哪些
  • 做网站月入1000郑州高端网站建设公司
  • 申请建设网站的报告行业网站开发费用
  • 郑州公司网站建设wordpress静态网站博客
  • 陕西高端品牌网站建设价格化妆品网站制作需要
  • 有哪些可以做翻译的网站建设网站需要做的工作
  • 在萍乡谁可以做网站苏州保洁公司多少钱一个平方
  • 长春净月潭建设投资集团网站哪个公司的网站做的好