草庐IT

hbase-parameter-tuning

全部标签

hadoop - 在 HBase 设置行 TTL

我正在尝试将TTL设置为Hbase中的一行。我无法将TTL设置到列族,因为该表已经存在并且我无法更改它。我尝试的是使用setTTLPut操作中的函数。但这似乎不起作用,因为即使时间已经过去,当我对表进行扫描操作时信息仍然存在。如果我在函数中输入一个负值,表中就没有任何数据,我认为这是有道理的,因为我使用的是负ttl,因此根本不会存储数据。..1)你认为我使用了正确的功能吗?2)有没有办法在HBase中查看此信息(一行的TTL值)?编辑:这是一个describe命令的输出(请注意我无法更改列族的TTL值):hbase(main):010:0>describe"Snapshot"Table

hadoop - 同时使用HBase做小数据集和大数据分析?

我正在构建一个需要大量数据处理和分析(同时处理大量文件)的应用程序。我打算为此使用Hadoop(Map-reduce、Hbase(HDFS文件系统))。同时我有一些小的数据集,比如用户设置、应用程序用户列表、支付信息和其他可以在任何RDMS数据库(如sql或Mongo)上轻松管理的数据集。有时它可能只有很少的由Hadoop计算的聚合和分析数据,但这些数据也不是那么大。我的问题是我是否应该选择2个数据库,如Mysql/Mongo来存储小数据集和HBase来存储大数据集?或者我的HBase可以高效地完成这两项工作? 最佳答案 Myopi

hadoop - 使用 MapReduce 在 HBase 中插入多行

我想从每个映射器批量插入N行到HBase表。我目前知道有两种方法可以做到这一点:创建Put的列表对象和使用put(Listputs)HTable的方法实例并确保禁用autoFlush参数。使用TableOutputFormat类和使用context.write(rowKey,put)方法。哪个更好?第一种方式,context.write()不需要,因为hTable.put(putsList)方法用于直接将数据放入表中。我的映射器类正在扩展ClassMapper,那么我应该为KEYOUT使用什么类呢?和VALUEOUT?在第二种方式中,我必须调用context.write(rowKey,

rest - 如何通过HBase REST服务获取Phoenix表数据

我在以下代码片段中使用PhoenixJDBC驱动程序创建了一个HBase表:Class.forName("org.apache.phoenix.jdbc.PhoenixDriver");Connectionconn=DriverManager.getConnection("jdbc:phoenix:serverurl:/hbase-unsecure");System.out.println("gotconnection");conn.createStatement().execute("CREATETABLEIFNOTEXISTSphoenixtest(idBIGINTnotnullp

java - 使用 Java 准确确定 HDFS 中的文件以加载到一个 Hbase 表中?

我是大数据和Hadoop的新手。我正在学习Hadoop和Hbase。我遇到了问题,但仍然不知道。你能帮帮我吗?我已将3个csv文件放入HDFS,包括:-文件1(Subscribe_info.txt):numID,active_date,status-文件2(Recharge.txt):numID,recharge_history_date,amount,method-文件3(Charge.txt):numID,charge_date,amount_charge所有这些都通过numID相互关联。我需要将上面的所有数据加载到一个Hbase表中,行键是numID并包含所有相关的列,如下所示:

java - HBase:通过 Java API 截断表启用截断表

我在使用JavaAPI截断HBase表时遇到意外行为。具体来说,我在做以下操作:禁用表格截断表格启用表格这些操作对应的代码如下:Configurationconf=HBaseConfiguration.create();//...//Settingproperlytheconfigurationinformation//...try(HBaseAdminadmin=newHBaseAdmin(conf)){if(admin.isTableEnabled(TABLE_NAME)){admin.disableTable(TABLE_NAME);}admin.truncateTable(Ta

java - Phoenix 正在改变 HBase 表的元信息

我正在尝试使用ApachePhoenix在HBase表上运行SQL查询。基于officialdocumetation,需要使用SQL查询为现有表创建模式:CREATETABLETABLE_NAME(....)我试图通过phoenixAPI直接连接到现有表(使用HBaseAPI创建)来避免这种情况,但我遇到了异常。问题是当Phoenix执行这个查询时,它会在表上创建很多东西。例如,在hbase仪表板的tables部分,我可以看到phoenix添加到我的表中的以下元数据:'QUOTES',{METHOD=>'table_att',coprocessor$1=>'|org.apache.ph

hadoop - 使用 Pig 将数据存储到 Hbase 使用 Hue 时出错

我的CDH版本是5.1.2,Hbase版本是0.98.1,Hue版本是3.6.0。我执行了这个pig脚本以在Hue中从Hbase加载数据c=LOAD'hbase://analyze_block_v1'USINGorg.apache.pig.backend.hadoop.hbase.HBaseStorage('d:*','-loadKeytrue');dumpc;我得到了这个错误:ERRORorg.apache.pig.tools.grunt.Grunt-ERROR2998:Unhandledinternalerror.org/apache/hadoop/hbase/mapreduce/

java - 使用 hbase API 获取区域名称的正确方法

我正在尝试使用HBaseAPI获取“表”的“区域名称”。设置如下:Hbase伪分布式安装(0.98.7版本)。Hadoop2.5.1安装。Hbase包含很少的用于测试目的的表。有关可用区域的信息显示在WebUI的下方。“test_table”表对应的“regionname”被特意高亮了。现在,我一直在尝试使用以下代码从基于java的hbaseAPI获取这些区域信息。voidscanTable(StringtabName){org.apache.hadoop.conf.Configurationconfig=HBaseConfiguration.create();try{HTableta

hadoop - 在 hbase 1.0.1 上运行 mapreduce 的问题

我在ApacheHadoop2.7集群环境中独立运行Hbase1.0.1。我在Hbase上运行简单的MapReduce作业时遇到以下问题。Exceptioninthread"main"java.io.FileNotFoundException:Filedoesnotexist:hdfs://hdmaster:9000/usr/hadoop/share/hadoop/common/lib/zookeeper-3.4.6.jaratorg.apache.hadoop.hdfs.DistributedFileSystem$22.doCall(DistributedFileSystem.jav