欢迎投稿

今日深度:

nodejs+HBase数据库使用方法,nodejshbase数据库

nodejs+HBase数据库使用方法,nodejshbase数据库


nodejs+HBase数据库使用方法

本操作方法是由GitHub项目“node-hbase”总结而出,使用前需要先安装相应的操作模块,通过npm install hbase安装,或者直接下载该GitHub项目,将该项目放到nodejs工程的module下

nodejs操作Hbase数据库是通过Hbase的REST Server,使用前先在集群上启动该服务, bin/hbase-daemon.sh start rest

REST Server默认监听8080端口,如果8080端口被占用,可以修改HBase的hbase-site.xml文件,添加下列属性。

 <property>
          <name>hbase.rest.port</name>
        <value>8090</value>
  </property>
var hbase = require('hbase');
var client = hbase({
      host: '127.0.0.1',
      port:8080
      )}

//插入数据
exports.insertSplitJarInfo = function(req,res){
    var splitName = req.body.splitName;
    var jarName = req.body.jarName.split('\\').pop();
    var timestamp = (new Date()).valueOf();
    var key = jarName +";"+ splitName;
    client.table('SPLITEMETHOND_INFO')
          .row()
          .put([{key:key, column:'splitMethond:splitName',$:splitName},
                {key:key, column:'splitMethond:jarName',$:jarName}
           ],function(err, success){
                if(success)
                  res.json({success:true});
                else res.json({success:false, reason:err});
             })
}
})

//查询数据

exports.getSplitMethond = function(req, res){
     client.table('SPLITEMETHOND_INFO')
           .scan({
                 maxVersions:1
                }, function(err, rows){
                    if(err!=null){
                       res.json({initSuccess:false, reason:err});
                       console.log(err);
                    }
                    else{
                       var result = analyzeRows(rows);
                       res.json({initSuccess:true, result: result});
                    }
                });
}


//删除数据exports.deleteSplitMethond = function(req, res){
      if(req.session.type == 'A'){
          var splitInfo = req.body.splitInfo;
          console.log(splitInfo);
          client.table('SPLITEMETHOND_INFO')
          .row(splitInfo)
          .delete(function(err, success){
               if(!success){
                   res.json({success: false, reason: "数据库删除错误"});
               }else{
                   var targetPath = __dirname + '/public/files/splitjars/';
                   var s0 = 'rm -f ' + targetPath + splitInfo.split(';')[0];
                   var exec = require('child_process').exec;
                   exec(s0,function(error, stdout, stderr){});
                   res.json({success:true});
               }
          })
      }else{
         res.json({success: false, reason: "没有删除权限"});
      }
}


www.htsjk.Com true http://www.htsjk.com/hbase/34581.html NewsArticle nodejs+HBase数据库使用方法,nodejshbase数据库 nodejs+HBase数据库使用方法 本操作方法是由GitHub项目“node-hbase”总结而出,使用前需要先安装相应的操作模块,通过npm install hbase安装,或者直...
相关文章
    暂无相关文章
评论暂时关闭