• 大小: 5.27MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-09-19
  • 语言: C#
  • 标签: C#  HBase.Client  

资源简介

C# 使用Microsoft.HBase.Client类库以Rest方式访问HBase数据库。实现了基本的增、删、改、查操作。方便新手入门学习。同时提供了Microsoft.HBase.Client源码。这源码是微软提供的,微软已经拥抱开源。

资源截图

代码片段和文件信息

using Microsoft.Hbase.Client;
using Microsoft.Hbase.Client.LoadBalancing;
using org.apache.hadoop.hbase.rest.protobuf.generated;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;

namespace HbaseRestAPI
{
    class Program
    {
        static void Main(string[] args)
        { 
            IHbaseClient hbaseClient = CreateClient();
            GetVersion(hbaseClient);
            Add(hbaseClient“3““辽宁省鞍山市激光产业园“);
            GetSingle(hbaseClient“1“);
            Delete(hbaseClient “1“ “author“ 1484896798481);
            GetScan(hbaseClient “1“ “4“);
            Console.Read();
        }
        /// 
        /// 创建对象
        /// 

        /// 
         static IHbaseClient CreateClient()
        {
            var regionServerIPs = new List();
            // TODO automatically retrieve IPs from Ambari REST APIs   
            regionServerIPs.Add(“192.168.80.100“);
            var options = RequestOptions.GetDefaultOptions();
            options.Port = 8080;
            options.AlternativeEndpoint = ““;
            return new HbaseClient(null options new LoadBalancerRoundRobin(regionServerIPs));
        }
        /// 
        /// 获取Hbase版本
        /// 

        /// 
        static void GetVersion(IHbaseClient client)
        {
            // Retrieve the cluster version
            var version = client.GetVersionAsync();
            version.Wait();
            Console.WriteLine(“The Hbase cluster version is “ + version.Result.ToString());
        }
        /// 
        /// 不存在添加,存在更新
        /// 

        /// 
        static void Add(IHbaseClient clientstring rowKeystring rowValue)
        {
             string testKey = rowKey;
             string testValue = rowValue;
            var set = new CellSet();
            var row = new CellSet.Row { key = Encoding.UTF8.GetBytes(testKey) };
            set.rows.Add(row);
            var value = new Cell { column = Encoding.UTF8.GetBytes(“author:address“) data = Encoding.UTF8.GetBytes(testValue) };
            row.values.Add(value);
            client.StoreCellsAsync(“blog“ set).Wait();        
        }

        static void GetSingle(IHbaseClient clientstring rowKey)
        {           
            CellSet cells = client.GetCellsAsync(“blog“ rowKey).Result;
            foreach(CellSet.Row row in cells.rows)
            {
                Console.WriteLine(“查找行rowKey:{0}“ Encoding.UTF8.GetString(row.key));
                foreach(Cell cell in row.values)
                {
                    string column = Encoding.UTF8.GetString(cell.column);
                    string data= Encoding.UTF8.GetString(cell.data);
                    Console.WriteLine(“列名称:{0}值:{1}“ column data);
                }
            }
   

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.    109056  2017-01-23 17:01  HbaseRestAPI\.vs\HbaseRestAPI\v14\.suo

     文件     140288  2017-01-23 17:01  HbaseRestAPI\bin\debug\Microsoft.Hbase.Client\Microsoft.Hbase.Client.dll

     文件       1907  2017-01-23 17:01  HbaseRestAPI\bin\debug\Microsoft.Hbase.Client\Microsoft.Hbase.Client.dll.CodeAnalysisLog.xml

     文件          0  2017-01-23 17:01  HbaseRestAPI\bin\debug\Microsoft.Hbase.Client\Microsoft.Hbase.Client.dll.lastcodeanalysissucceeded

     文件     282112  2017-01-23 17:01  HbaseRestAPI\bin\debug\Microsoft.Hbase.Client\Microsoft.Hbase.Client.pdb

     文件      32432  2013-04-25 10:04  HbaseRestAPI\bin\debug\Microsoft.Hbase.Client\Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.dll

     文件      57354  2013-04-25 10:04  HbaseRestAPI\bin\debug\Microsoft.Hbase.Client\Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.xml

     文件     197632  2013-09-30 09:20  HbaseRestAPI\bin\debug\Microsoft.Hbase.Client\protobuf-net.dll

     文件     650752  2013-09-30 09:20  HbaseRestAPI\bin\debug\Microsoft.Hbase.Client\protobuf-net.pdb

     文件     162411  2013-09-30 09:20  HbaseRestAPI\bin\debug\Microsoft.Hbase.Client\protobuf-net.xml

     文件        161  2017-01-23 16:56  HbaseRestAPI\HbaseRestAPI\app.config

     文件       7680  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\bin\Debug\HbaseRestAPI.exe

     文件        161  2017-01-23 16:56  HbaseRestAPI\HbaseRestAPI\bin\Debug\HbaseRestAPI.exe.config

     文件      15872  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\bin\Debug\HbaseRestAPI.pdb

     文件      22688  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\bin\Debug\HbaseRestAPI.vshost.exe

     文件        161  2017-01-23 16:56  HbaseRestAPI\HbaseRestAPI\bin\Debug\HbaseRestAPI.vshost.exe.config

     文件        490  2016-07-16 19:44  HbaseRestAPI\HbaseRestAPI\bin\Debug\HbaseRestAPI.vshost.exe.manifest

     文件     140288  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\bin\Debug\Microsoft.Hbase.Client.dll

     文件     282112  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\bin\Debug\Microsoft.Hbase.Client.pdb

     文件      32432  2013-04-25 10:04  HbaseRestAPI\HbaseRestAPI\bin\Debug\Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.dll

     文件      57354  2013-04-25 10:04  HbaseRestAPI\HbaseRestAPI\bin\Debug\Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.xml

     文件     197632  2013-09-30 09:20  HbaseRestAPI\HbaseRestAPI\bin\Debug\protobuf-net.dll

     文件     650752  2013-09-30 09:20  HbaseRestAPI\HbaseRestAPI\bin\Debug\protobuf-net.pdb

     文件     162411  2013-09-30 09:20  HbaseRestAPI\HbaseRestAPI\bin\Debug\protobuf-net.xml

     文件       3742  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\HbaseRestAPI.csproj

     文件      13343  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件       1014  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\obj\Debug\HbaseRestAPI.csproj.FileListAbsolute.txt

     文件      31506  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\obj\Debug\HbaseRestAPI.csprojResolveAssemblyReference.cache

     文件       7680  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\obj\Debug\HbaseRestAPI.exe

     文件      15872  2017-01-23 17:01  HbaseRestAPI\HbaseRestAPI\obj\Debug\HbaseRestAPI.pdb

............此处省略187个文件信息

评论

共有 条评论