草庐IT

hadoop - TTL 行为 - HBase

我们在HBase表中有很多数据。我是这个NoSQL世界的新手。我们希望仅在固定时间内保留数据。我们应该编写单独的清理脚本还是可以依赖TTL配置?我浏览了可用的文档,但不理解确切的行为。 最佳答案 HBasedocumentation明确表示早于TTL的数据将被HBase自动删除。 关于hadoop-TTL行为-HBase,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/217205

hadoop - 试图将超过 32 个 hfiles 加载到一个区域的一个家庭

我正在将大量文件导入到HBase表中,所以我决定使用批量加载9.8.BulkLoading.我已经设法通过MapReduce作业准备数据,但是当我尝试使用此命令完成加载时hbaseorg.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles出现以下错误:ERRORmapreduce.LoadIncrementalHFiles:Tryingtoloadmorethan32hfilestofamilydofregionwithstartkeyExceptioninthread"main"java.io.IOException:Tryingt

hadoop - hbase 随机写入是如何工作的

我是Hbase的新手。Hbase适用于对表进行随机更新(放入或删除),但我无法理解hbase如何执行该操作。由于hbase使用HDFS进行存储,因此无法更新HDFS中的任何内容。Hbase使用memstore更新记录并首先将任何编辑写入memstore。因此MemStore包含按排序键顺序排列的任意数量的更新行。当它将数据转储到磁盘到hfile时,这个hfile是否与其他hfiles全局排序.转储所有hfile后,hfile被复制到HDFS。WAL编辑日志也有同样的问题。WAL日志文件是否也在HDFS中复制。对于每次更新,我们都将更新复制到HDFS。 最佳答

hadoop - 通过 API 获取 Hbase 区域大小

我正在尝试为Hbase编写一个平衡器工具,它可以根据区域计数和/或区域大小(存储文件大小的总和)来平衡跨区域服务器的区域。我找不到任何返回区域大小或相关信息的HbaseAPI类。我已经检查了一些可用于获取其他表/区域信息的类,例如org.apache.hadoop.hbase.client.HTable和HBaseAdmin。我在想,另一种实现方法是使用Hadoop类之一,它返回文件系统中目录的大小,例如org.apache.hadoop.fs.FileSystem列出特定HDFS路径下的文件。有什么建议吗? 最佳答案 我用它来进行

c# - 如何使用 C# 连接到 HBase/Hadoop 数据库

最近,ExploringMicrosoftHDInsightHadoopforWindows。但不知道从哪里开始,开始使用apachehadoop和c#/asp.netmvc。我知道http://hadoopsdk.codeplex.com/是最好的可用资源,但找不到从头开始的文档?比如创建集群、数据库,然后将其连接到C#应用程序。 最佳答案 最简单的入门方法是使用HDInsightserviceonAzure(仍在预览中,但效果很好)。这样,您只需登录到您的Azure门户并启动一个集群,该集群将链接到您的Azure存储。如果实在不

mysql - Hadoop 与关系数据库

我是Hadoop的新手,想知道Hadoop在某个场景中的工作原理。在创建DynamicWeb项目期间,我曾经通过从Java/C#发送查询来存储和从MySQL数据库获取数据。我在我的项目中使用Hadoop服务,并且hadoop是否提供任何内置数据库系统,我们可以在其中存储数据并在需要时检索数据,而不是使用外部数据库。提前致谢。 最佳答案 Hadoop不提供任何内置数据库。这只是两件事:分布式文件系统(HDFS)分布式处理框架(MapReduce。我简称为MR)我假设您需要非常快速的响应,因为您正在处理Web服务。恕我直言,Hadoop

hadoop - 一致性在 HBase 中是如何工作的

从CAP上,我读到HBase支持一致性和分区容错性。我想知道HBase中的一致性是如何实现的。是否应用了任何锁定?我在网上查了下没有找到这方面的好资料。任何机构能否提供有关此主题的任何博客/文章。 最佳答案 对行数据的访问是原子的,包括任意数量的正在读取或写入的列到。不存在跨越多行或跨表。原子访问是这种架构的一个因素严格一致,因为每个并发的读者和作者都可以做出安全的假设关于一行的状态。当数据更新时,它首先写入提交日志,称为预写日志(WAL)在HBase中,然后存储在内存中(按RowId排序)memstore。一旦内存中的数据有超过给

java - Result 类型的方法 raw() 已弃用

在我们最新的CDH集群升级中,我们遇到了许多已弃用的方法和类。一个这样的例子是我用来从我们的Hbase表记录中获取epochTimestamp的方法raw(),如下所示:StringepochTimestamp=String.valueOf(values.raw()[0].getTimestamp());我的PM要求我删除所有此类已弃用的功能,并将其替换为最新功能。来自https://hbase.apache.org/apidocs/org/apache/hadoop/hbase/client/Result.html我发现listCells相当于raw(),但是谁能帮助我了解如何使用l

hadoop - 在 oozie Java Action 中传递 HBase 凭据

我需要安排一个与安全hbase交互的oozieJava操作,因此我需要为Java操作提供hbase凭据。我使用的是安全的hortonworks2.2环境,我的工作流XML如下${jobTracker}${nameNode}com.test.hbase.TestHBaseSecure${arg1}Javafailed,errormessage[${wf:errorMessage(wf:lastErrorNode())}]我还修改了oozie属性以包含HbaseCredentials类oozie.credentials.credentialclasses=hcat=org.apache.o

Apache Hbase 安装

我正在尝试在ubuntu12.04环境中安装Hbase(hbase-0.94.8)。我按照本页给出的步骤完全相同http://hbase.apache.org/book/quickstart.html我能够启动Hbase并进入shell,但是当我从shell中键入“create'test','cf'”时,抛出了以下错误hbase(main):001:0>create'test','cf'13/06/1113:01:40ERRORclient.HConnectionManager$HConnectionImplementation:Checkthevalueconfiguredin'zo