如何在一个程序中读取4个表并写入1个Hbase表?可能吗?给我一些示例编码。简短的回答是:是
稍长的版本是:视情况而定
我们对你的情况几乎一无所知。这使得很难给出更有意义的答案
我有一个Hadoop作业,它运行一个使用4个表的配置单元查询,结果被放入配置单元。
我已经用三种不同的方法实现了这个过程
有可能。。。但是关于你的案子没有足够的信息来帮助你
在寻求帮助时,最好包括你所做的或你正在考虑的事情,以便人们知道该解决什么问题。我已经使用Hive作为我的4个表的源,也许你正在使用MySQL。。。我
我不熟悉Hbase和pig。
我有一个hbase表,我想从我的pig脚本中获取max rowkey。
有什么方法可以做到这一点吗?您必须对服务器进行互操作,才能获取表中最后一个区域的结束行键。所有值都已排序,因此不难获取最后一个区域
info:regioninfo(此区域的序列化实例)包含您要查找的信息
如果pig不直接支持这一点,您可以编写一个,将它放在类路径中,并从脚本中调用它
我不知道更好的办法 必须对服务器进行互操作才能获取表中最后一个区域的结束行键。所有值都已排序,因此不难获取最后一个
我有一个Hbase表,它只有一个列族(cf1),下面有100列。我需要将cf1更改为新的柱族(cf1)
简而言之,我需要修改列族名称。我已经通过以下链接,但没有用
提前感谢。我认为您应该将列从一个系列复制到另一个系列,然后删除旧的列系列。如果有一个hbase客户端api,我想它也会这样做。因为写入hbase文件的数据中包含列族名称。谢谢Halil。我可以知道如何将数据从一个列族复制到另一个列族吗?我可以通过java api来实现,但是如果您的表很大,例如大于100gb,我认为您可以使用hbase
我正在尝试使用ODBC驱动程序连接hbase,但在选择cData时,无法在我的tableau屏幕中获取表格。我正在使用我的服务器ip和hbase端口16000。如果输入表名,则出现获取错误(与数据源通信时出错。无法连接到服务器。请检查服务器是否正在运行,以及您是否具有访问请求数据库的权限。)
参考资料:我很乐意在这里为我们的ODBC驱动程序提供一些基本的故障排除,但如果涉及更多问题,您可能需要联系我们的ODBC驱动程序
您是否能够成功单击DSN配置向导中显示的“测试连接”按钮
可能的解决办法:
我设计了HBase表,其中我的行键被驱动到需要在其上运行的查询。按照最佳实践,我将散列部分作为行键的前缀,尝试在我的表区域中尽可能均匀地分布行
我担心以下情况:
我的HBase表中有数十亿行被分为3个区域。我使用这个表为RESTAPI提供数据,因此,它需要尽可能快地提供行
不幸的是,我遇到了著名的超时错误无法在超时内得到结果,超时=60000ms,即使我调用了count“table\u name”在hbase外壳中,或用于任何其他扫描,包括startrow和stoprow参数。使用rowkey按
当我们使用zookeeper来协调一组Hbase节点时,然后使用zookeeper
可以与Hbase节点位于同一节点上,还是必须位于单独的群集上?
还有一件事我不太清楚,那就是动物园管理员Znode是什么时候创建的,是什么
动物园管理员的目的是什么?
Zookeeper官方网站说这些是Zookeeper文件系统的一部分,那么到底是什么呢
zookeeper znode是否用于存储?是配置属性、应用程序数据还是确切的内容?您可以在与hbase相同的节点上运行zookeeper,但出于性能原因,您可
我试图将Hbase原子增量列读入Pig,并将其作为长值访问
但是,列值使用HBase十六进制结构:\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01
有人知道一种方法可以将Pig中的值转换为与get_计数器值1等价的值吗
我发布了一个使用UDF的解决方案:
import java.io.IOException;
import org.apache.pig.EvalFunc;
import org.apache.pig.backend.executionengine.
我正在制作一个原型,以评估HBase在实际项目中的使用情况(或者不使用,取决于原型的结果)。在我正在处理的模式中,我在同一列族中有多个列,并且我需要以原子方式更新其中的几个列(总是在同一行中)。我使用客户端api的checkAndPut方法进行了一些测试,但它似乎只支持比较一个值(因此在put参数中设置一个值)。我理解正确吗?如果是这样的话,有没有其他方法可以满足我的需要?您可以使用将一行的所有PUT操作设置在一起,并将所有更改作为原子单元 您可以使用设置一行的所有PUT操作,并将所有更改作为原
如果我有一个十六进制的rowkey,比如x00\x01,我如何在HBASE shell中获取它
hbase(main):004:0> scan 'tsdb-tree'
ROW COLUMN+CELL
\x00\x01 column=t:tree, timestamp=1379421652764, value={"name":"...
您可以使用普通的get命令引用它,但十六进制键必须使用双引号,单引号将不起作用:
例如,您可以使用ge
我正在寻找一个命令,该命令描述HBase外壳中表内的columnfamily。我无法获取任何命令来尝试此操作。如果使用hbase shell中的descripe命令
您将获得每个列族的信息。
目前,无法对单个族进行筛选
例如:
hbase(main):003:0> describe 'TABLE_NAME'
'TABLE_NAME',
{NAME => 'FAMILY_NAME',
DATA_BLOCK_ENCODING => 'NONE',
BLOOMFILTER
我已在mac上安装了hbase view brew。我上次启动hbase集群已经有一段时间了:可以预见zookeeper不起作用
2014-12-02 18:56:40,250 DEBUG [main-EventThread] master.ActiveMasterManager: A master is now available
2014-12-02 18:56:40,250 WARN [M:0;192.168.255.170:51072] hbase.ZNodeClearer: Envi
是否可以在HBase中更改列限定符名称
例如:
from cf:sales
to cf:sales_new
我能找到的唯一方法是添加新的列限定符,然后删除旧的列限定符
hbase> get 'tablename', 'rowkey', {COLUMN => 'colfam:oldqualifier'} value
hbase> put 'tablename', 'rowkey', 'colfam:newqualifier', 'value'
hbase> delet
使用以下哪一项将在put方面提供更好的性能。
HTable.put(列表)或HTable.batch(列表)
对于较小的数据集,我无法推断没有差异。看看这个答案,它也显示了另一种方法:
可能存在的副本
我的HBase独立服务器位于centos虚拟机上,客户端位于windows桌面上。我可以远程连接到HBase独立服务器而不在windows上安装HBase吗?如果是,以下是文件
/etc/hosts文件
172.16.108.1 CentOS60-64#由NetworkManager添加
127.0.0.1 localhost.localdomain localhost
172.29.36.32 localhost.localdomain localhost
172.29.36.32 534中心
我正在尝试导入一个表,该表是从运行在0.98.4上的另一个hbase导出的。我导出如下-
hbase org.apache.hadoop.hbase.mapreduce.Driver export 'tblname' /path/
我正在尝试导入这个表,它已经使用hadoop fs-put放入hdfs中。当我运行下面的import命令时,它给出了一个错误-
hbase org.apache.hadoop.hbase.mapreduce.Driver导入'tblname'/hdfs/path
我在其中看到以下异常跟踪。
有人能告诉我到底出了什么问题吗
regionserver.HRegionServer: Run out of memory; HRegionServer will abort itself immediately
java.lang.OutOfMemoryError: Requested array size exceeds VM limit
at java.nio.HeapByteBuffer.<init>(HeapByteBuffer.java:57)
你好,我是hbase的新手。我想在我的hadoop集群中使用hbase进行查询处理,任何人请告诉我hive和hbase中哪一个更好进行查询处理这取决于您正在使用的数据库。hivequeriesSQL其中ashbase可用于NOSQL数据库。两者都使用是一个很好的选择Hive可用于分析查询,而HBase可用于实时查询。Hello vasanth。我正在将我的oracle数据库移动到hdfs以进行查询处理,并使用tableau进行分析。所以,请告诉我哪一个更好。@reeshu patel您没有具体说
我们在菲尼克斯和HBase面临着奇怪的问题。我们有在HBAse表中加载数据的MR程序。我们使用Phoenix从HBase插入和读取数据。问题是在加载数据后,特定表的计数与我们在extract中得到的匹配。我们指向我们的API应用程序,然后当我们在Hbase表上触发相同的select count语句时,计数增加,我们开始看到重复的值。有人通过Phoenix从Hbase中提取数据时遇到一致性问题吗?我们有凤凰4.7版本
问候,,
Sagar这是一个老问题,但这是我们在开发环境中发现的唯一一个远程相关
我已经阅读了很多关于Titan和HBase使用的文档,大多数情况下都是使用Titan建立图表并将其上传到HBase存储后端。但是,我想知道是否有任何方法可以首先将数据存储到HBase中,然后使用Titan将数据加载到图形类型中?不,这是不可能的。Titan有自己的数据必须符合的标准
因此,如果您在HBase中存储了一些通用数据,那么它仍然需要经历一些迁移过程,以符合模型并可供Titan使用 你需要读谢谢你的提醒,我会读的。
我想在hbase上搜索多个参数。我正在使用JAVA来实现这一点。我有很多数据如下
2017-06-14T13:49:41.677Z,0000000000000001,192.168.028.056 column=log_info:log_data, timestamp=1497452872849, value=log_description=s1<->tcp:192.168.28.56:6633: connection failed (Connection refused),lo
我想从HBase中的数据中获取的所有信息,例如,在两个时间戳之间,并且所有数据都应按时间戳排序
首先,我想在Hbase shell中执行此操作,以测试性能
在RDBMS中,查询可以是
从开始日期>
时间戳和结束日期表的名称
时间范围为历元时间
如果你能编码并找到这个链接
https://hbase.apache.org/apidocs/org/apache/hadoop/hbase/io/TimeRange.html
它拥有您期待的所有可用功能。谢谢本·沃森。这是一个很有帮助的问题,phoen
我是Hbase world的新手,正在尝试下面的查询。
我从shell触发了下面的hbase命令。我希望只检索与筛选条件匹配的行:与列名称“serviceId”和值“61490992624”匹配的行
但是,它也检索其他行(rod ID:100545、100546100547、澳大利亚、新南威尔士州、NT)。
我希望只检索行id TX005
这种行为有什么原因吗
hbase(main):024:0> scan 'api_cus_usage', {FILTER=>"SingleColum
我想阅读一个基于两个家族的HBase表,如姓名和年龄。
我们如何做到这一点?HBase有表、列族和列限定符。一般建议是创建尽可能少的列族(不确定您的意思,特别是为什么名称和年龄会是族。如果您是指列族,请查看
Get g = new Get(rowkey);
HTable t = new HTable(tablename);
Result row = t.get(g);
byte[] value = row.getValue(family, qualifier);
List<KeyVal
我需要HBase来存储大量索引关键字和值(目前使用Redis),但我找不到任何C库来连接、写入或读取HBase
我在谷歌上搜索了一下,但什么也没找到。有人有主意吗?或者是否有任何类似的Hadoop相关数据库具有成熟的C库?有几个选项需要考虑:
这是另一个值得研究的新选择
您可以使用一个简单的RESTAPI调用
关于C和C++客户端的HBASE bug跟踪器的讨论。
查看以上选项,看看什么最适合您的需求
构建hbase的HDFS是一个类似于Hadoop的数据库,它有一个C库
libhdfs是
使用HBase我们可以保存大数据。但是,这些数据必须是键值对。存储sql表中任何不是键值对的数据怎么样?如何将其保存在HBase表中?
谢谢,HAdoop中的Hbase是“NOSQL格式”。配置单元支持SQL格式。您可以尝试在配置单元中加载数据。在Hbase中,数据将以列为导向。最简单的解决方案是使用RDBMS表的主键作为行键。其他列可以对应于HBase表的不同列(某些列或不同的列系列)您要存储哪种类型的数据?多列(如RDBMS)?或者仅仅是一个值?一个RDBMS表数据的多个列。
我正在使用H-Base REST将H-Base表公开为web服务(Restful),现在我正在使用SAX解析器解析这个响应,因为由于大数据处理的缘故,XML预计会非常庞大。这是正确的方法吗。但是假设我不想要所有的数据,我只想要选择性的数据呢?使用这个,我们从h-base表中获取所有数据。假设我需要基于特定标准的数据,例如,基于use rid的表中的所有数据。我不知道如何执行此操作?
谢谢您可以使用POP_HBase API并查看其中的教程。HBase rest被弃用,取而代之的是星际之门项目[1
这是通过HDFS API实现的吗?如果是这种情况,数据局部性是如何实现的[假设区域服务器和同一系统上的Datanode],即NameNode将根据其统计信息分配Datanode以存储数据 是的。HBase使用HFileSystem(文件系统对象的封装)来访问数据。更多信息,请参阅
剩下的问题你可以访问这个。实际上,你必须通过这个链接。Lars对此做了很好的解释。Tariq关于使用HFileSystem为客户端抽象出接口的观点是正确的,但是关于文件如何实际写入HDFS数据节点的更好的解释可以在这个
各位,
我想知道如果Hbase表中的一个列族可以有多个存储,是否有人可以给出一个快速而肮脏的答案
我读过很多文章,听起来好像区域包含多个存储,每个存储对应一个列族
如果一个存储超过10GB的默认大小并被拆分为多个存储,会发生什么情况?在这种情况下,一个列族可以有多个存储
我很困惑 HBase一书比我能解释得更好:
Table (HBase table)
Region (Regions for the table)
Store (Store pe
我使用YCSB-0.1.3测试Hbase 0.96,有一台服务器和三个从属服务器,我配置了我的YCSB,参考了本博客:
但是,当我尝试加载工作负载时,得到以下结果:
[hbase@com YCSB]$ java -cp build/ycsb.jar:db/hbase/lib/* com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.db.HBaseClient -P workloads/workloada -p columnfamily=family -
需要在凤凰城放下系统表
SYSTEM.CATALOG和SYSTEM.SEQUENCE
drop table SYSTEM.CATALOG;
Table undefined. tableName=SYSTEM.CATALOG
从系统中选择*。目录正在工作
也无法从哈伯斯降落。
(表示表未禁用异常)您可以在HBase外壳中删除SYSTEM.CATALOG。我也尝试从HBase外壳中删除。但在启用表时,它会给表未禁用异常。可能您的表元数据是非法的。试试这个怎么样?
我创建了一个表
create 'tablename', 'columnfamily1'
现在是否可以添加另一个列族“columnfamily2”?方法是什么?似乎是这样
alter 'tablename', 'columnfamily2'
这就是诀窍。
可以先禁用“tablename”。但是,即使启用,它也可以正常工作
hbase(main):015:0> alter 'tablename', {NAME=> 'columnfamily2'}
Updating all regio
在Docker中,我有两个容器:
糖化血红蛋白
动物园管理员
我正在配置hbase-site.xml:
<property>
<name>hbase.zookeeper.quorum</name>
<value>zookeeper</value>
</property>
<property>
<name>hbase.zookeeper
标签: Hbase
cloudera-cdhycsb
我正在尝试使用CDH ycsb包在HBase上运行ycsb。我正在关注Cloudera的博客。在这个博客中,我看到了下面的命令
hbase(main):001:0> n_splits = 200 # HBase recommends (10 * number of regionservers)
hbase(main):002:0>创建'usertable','cf',{SPLITS=>(1..n|SPLITS).映射{i|用户{1000+i*(9999-1000)/n|SPLITS}
这
我正在使用HBase外壳,我创建了一个名为“student”的表和一个名为“studentData”的列族
create 'student', 'studentData'
在列族中,我有“studentData:name”和“studentData:姓氏”等列,并且用数据填充了表格
ROW COLUMN+CELL
在我的例子中,我使用rowfilter搜索HBase中的某些行键。我想做模糊查询,所以我使用扫描和行过滤器,而不是使用“Get”。但是,例如,当我在HBase中存储了1000万行键时,扫描结果需要很长时间。那么如何提高rowfilter查询的性能呢
try {
for (String uid : uidsArr) {
Scan scan = new Scan();
Filter filter1 = new RowFilter(CompareFilter
我计划为JSON数据设计Hbase表
由于我不太了解Hbase的概念,我想知道为下面提到的JSON类型设计表的最佳方法是什么
虚线是Json数据中的逻辑划分:
这意味着记录有一个行键,即uid,然后有粗体的请求部分,斜体的响应部分和分类。在分类下有一个类似数组的结构。
我正在考虑为每个逻辑组创建3个列族。但如何将类似数组的结构(“问题原因”)存储到HBASE表中。除了二进制之外,hbase是否有任何特定的数据类型
{
"uid": "abc2342",
-------------
我在ApachePhoenix中使用带有偏移量的orderby进行分页。我在下一页得到一个重复的结果
我看到了ApachePhoenix中的HBase表。我使用TO_NUMBER()将字符串化列转换为整数。我想按降序对转换后的列进行排序
例如:
我有一个Hbase视图,如:
------------------------------
| TITLE | COUNT |
------------------------------
| t8
使用的组件:-
-Ubuntu 12.04,hive(0.9.0),hbase(0.94.3),hadoop(0.20.2)-单节点,zookeeper-3.4.3,guava-11.0.2,hive-hbase-handler-0.9.0
教程:-
台阶
1) 启动hadoop,
2) 启动hbase主机
3) 启动hiveserver
4) 使用教程中的--auxpath参数启动配置单元外壳
(所有操作均无错误-JobTracker、HRegionServer、HMaster、DataNod
我不熟悉Spark和GraphX。到目前为止,我一直在使用Titan DB(HBase存储)和Giraph进行处理。
我需要一个有30亿个顶点和50亿条边的图。存储图形的最佳方式是什么(通过添加顶点和边从头开始创建图形,我还想离开titan API来创建图形)。我找不到任何关于这方面的直接文档。您能告诉我使用GraphX和商品硬件创建/存储图形和处理的最佳方法吗
谢谢。只要您可以将HBase表读入RDD(您可以读入RDD),就不会有问题。查看HBaseTest示例(它位于Spark分发版中)可能
我想使用Hbase shell命令获取firstname='xyz'和lastname=“zzz”的记录,其中firstname和lastname是表的列名。
请告诉我如何对列值进行筛选的命令?我知道我这次迟到了,
我对HBase还是新手,
但我还是建议你试试这个:
scan "<tablename>",{
FILTER =>
"SingleColumnValueFilter('<columnfamily>','firstname',=,'binary:x
我正在通过HBase客户端读取HBase手机标签
我通过Put.addImmutable(cf、col、version、value、tags)写入标记
我可以通过扫描HBase来验证这些标记是否正确写入:
Scan s = new Scan();
s.setFilter(new PageFilter(100));
ResultScanner scanner = table.getScanner(s);
Result[] results = scanner.next(100
我想在创建配置之后,在从Java代码建立到HBase主机的连接之前,与Zookeeper进行快速连接检查。
哪种HBase API方法适合检查我的群集中的Zookeeper连接状态?请尝试以下代码
Configuration config = HBaseConfiguration.create();
config.set("hbase.zookeeper.quorum", "hbase");
config.set("hbase.zookeeper.property.clientPort","2
那么,让我们看看我是否可以简单地解释一下我的问题
假设我们有一个HBase表,其中包含每次访问迪斯科舞厅的信息:
每个迪斯科舞厅都登记了自己的名字,访客的名字,以及他参观的日期。(是的,我知道这是一个愚蠢的例子。)
例如,表中的一些值:
..
ministryOfSoundJamesOliver01022017
ministryOfSoundJamesOliver02022017
ministryOfSoundJamesOliver03022017
ministryOfSoundOliviaNe
我想在调用getChildren()后获取正在“操作”的列的行键和区域。get(0)
public boolean evaluate(Tuple tuple, ImmutableBytesWritable ptr) {
Expression arg = getChildren().get(0);
if (!arg.evaluate(tuple, ptr)) {
return false;
}
}
无法运行HBASE获取错误
主服务器错误:找不到或加载主类org.apache.hadoop hbase.util.HBaseConfTool
错误:无法找到或加载主类org.apache.hadoop.hbase.zookeeper.ZKServerTool
区域服务器错误
错误:无法找到或加载主类org.apache.hadoop.hbase.regionserver.HRegionServer
通过添加到HBASE-SITE.xml中完成配置也完成了将java设置到HBASE env.sh
对于给定的行键,扫描仅返回在时间范围内更新的列,该行键的其余列返回为NULL
如何获取整行而不是特定代码
Scan scan = new Scan();
scan.setTimeRange(1471710010773L, System.currentTimeMillis());
我不认为基于时间范围扫描可以得到整行。
Hbase在列上工作,而不是在行上工作。解决此问题的一个解决方法是:
1.应用时间范围(最小值、最大值)。
2.还应用KeyOnlyFilter仅获取rowKey。
3.因为它们
在恢复之前删除HDFS备份(存储在Amazon S3上)中的“splitlog”目录安全吗
看起来我们的“splitlog”目录已损坏,并阻止我们从备份中执行HBase群集的完整还原
当我试图在Websphere上启动一个将数据存储在HBASE中的应用程序时,遇到了一个问题。我检查了HBASE,发现数据库完好无损,在运行HBASE hbck-fix时没有出现不一致的情况。应用程序的日志文件显示:
HConnectionMa W
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation
预回迁元表时,prefetchRegionCache遇到问题:
org.apache.hadoop.
如何访问jsp页面中存储在Hbase中的数据内容,以便在web浏览器中显示。存储在Hbase中的数据可以是各种类型,如图像、文本数据等。Apache Phoenix是Hbase上的关系数据库层,作为客户端嵌入式JDBC驱动程序提供,用于针对Hbase数据的低延迟查询。ApachePhoenix接受SQL查询,将其编译成一系列HBase扫描,并协调这些扫描的运行以生成常规的JDBC结果集。表元数据存储在HBase表中并进行版本控制,以便对以前版本的快照查询将自动使用正确的架构。直接使用HBase
在HBase中,我想用新值替换该值。在这种情况下,使用PUT命令更新值或删除记录并再次插入哪个操作更快?我认为时间性能没有显著差异,但通过PUT,您将拥有以前值的历史记录,如果您使用DELELE,则不会发生这种情况。我认为时间性能没有显著差异,但使用PUT时,您将拥有以前值的历史记录,如果您使用DELELE,则不会发生这种情况。同意上面的注释删除将创建一个附加调用
更重要的是:请记住,Delete并不是真正删除记录,而是在记录上加上删除标记。该记录仍然存在,只有在执行刷新和主要压缩后才能真正删除
上一页 1 2 ...
4 5 6 7 8 9 10 ...
下一页 最后一页 共 33 页