hbase 相关问题

HBase是Hadoop数据库(columnar)。当您需要对大数据进行随机,实时读/写访问时,请使用它。该项目的目标是托管非常大的表 - 数十亿行X百万列 - 在商品硬件集群上。

Spark 建议列出文档中提供的 Spark 和 Hadoop 依赖项,这是严格要求的吗?

在 Spark 文档中,它指出: 如果您的代码依赖于其他项目,则需要将它们打包 与您的应用程序一起,以便将代码分发到 Spark 簇。为了做到这一点...

回答 1 投票 0

如何计算Hbase的基础设施成本

我正在尝试使用 AWS EMR 计算 Hbase 基础设施的成本,但无法找到用于计算 HBase 读取/存储/写入成本的文档。 我可以得到一些指导/帮助吗?

回答 2 投票 0

Hbase API 从本地迁移到 Bigtable GCP

有多个应用程序在本地使用 Hbase 数据。 现在我们计划将Hbase数据迁移到GCP Bigtable。 将此 Hbase 迁移到 Bigtable 后。多种应用

回答 1 投票 0

hBase java api,批量加载时出错添加了一个词法上不大于先前排序的键(使用 JavaPairRDD<ImmutableBytesWritable, KeyValue>)

我使用bulkLoadHFiles.bulkLoad。我有 org.apache.spark.sql.Dataset,其中包含两列字符串(键和值)。我将把这段文本转换成JavaPairRDD 我使用bulkLoadHFiles.bulkLoad。我有 org.apache.spark.sql.Dataset,其中包含两列字符串(键和值)。我会将这段文本转换为 JavaPairRDD。如果数据集未预先排序,则会收到错误“IOException:添加了一个在词法上不大于先前的键...” JavaPairRDD<ImmutableBytesWritable, KeyValue> pairsToBulkLoad = inputDataset.toJavaRDD().mapToPair(row -> convertToKV (row, "cf", "column")); BulkLoadHFiles bulkLoadHFiles = BulkLoadHFiles.create(jobConfiguration); HFileOutputFormat2.configureIncrementalLoad(job, table, regionLocator); pairsToBulkLoad.saveAsNewAPIHadoopFile(output.toString(), ImmutableBytesWritable.class, KeyValue.class, HFileOutputFormat2.class, jobConfiguration); bulkLoadHFiles.bulkLoad(TableName.valueOf(hbaseFullTableName), output); public Tuple2<ImmutableBytesWritable, KeyValue> convertToKV (final Row row, final String columnFamily,final String column) { final String key = row.getString(0); final String value = row.getString(1); return new Tuple2<>(new ImmutableBytesWritable(Bytes.toBytes(key)), new KeyValue(Bytes.toBytes(key), Bytes.toBytes(columnFamily), Bytes.toBytes(column), Bytes.toBytes(value))); } 如果我提交预排序的数据集,那么此代码可以稳定运行。但实际上,在工业环境中,无序的数据集可能会到达这里。 我尝试插入:pairsToBulkLoad =pairsToBulkLoad.sortByKey(true); JavaPairRDD<ImmutableBytesWritable, KeyValue> pairsToBulkLoad = inputDataset.toJavaRDD().mapToPair(row -> convertToKV (row, "cf", "column")); pairsToBulkLoad = pairsToBulkLoad.sortByKey(true); BulkLoadHFiles bulkLoadHFiles = BulkLoadHFiles.create(jobConfiguration); HFileOutputFormat2.configureIncrementalLoad(job, table, regionLocator); pairsToBulkLoad.saveAsNewAPIHadoopFile(output.toString(), ImmutableBytesWritable.class, KeyValue.class, HFileOutputFormat2.class, jobConfiguration); bulkLoadHFiles.bulkLoad(TableName.valueOf(hbaseFullTableName), output); 在这种情况下,我收到另一个错误:作业由于阶段失败而中止:阶段 0.0 中的任务 0.0 (TID 0) 有一个不可序列化的结果:org.apache.hadoop.hbase.io.ImmutableBytesWritable - 对象不可序列化(类: org.apache.hadoop.hbase.io.ImmutableBytesWritable 我不明白如何寻找解决方案。 如果我使用 Spark 对数据集进行排序,这是否可以保证 JavaPairRDD 的排序? 或者第二种解决方案是对 JavaPairRDD 进行排序,但是为什么它会落在排序“对象不可序列化(类:org.apache.hadoop.hbase.io.ImmutableBytesWritable”? (Java 8、Spark 3.HBase 2.4.2) 我将不胜感激任何建议) 我自己设法解决了这个问题。您可以按如下顺序对对象进行排序: JavaPairRDD<ImmutableBytesWritable, KeyValue> pairsToBulkLoad = inputDataset .rdd() .toJavaRDD() .mapToPair(row -> new Tuple2<>(row.getString("0"),row.getString("1")))); .sortByKey(true) .mapToPair(pair -> convertToKV (row, "cf", "column", pair._1, pair._2)); private static Tuple2<ImmutableBytesWritable, KeyValue> convertToKVCol( final String columnFamily, final String column, final String key, final String value) { return new Tuple2<>(new ImmutableBytesWritable(Bytes.toBytes(key)), new KeyValue(Bytes.toBytes(key), Bytes.toBytes(columnFamily), Bytes.toBytes(column), Bytes.toBytes(value))); }

回答 1 投票 0

如何让 HBase 等到 HDFS 准备好后再启动?

我正在为 Hadoop 构建自动安装脚本,但遇到了 HBase 无法启动的问题,因为 HDFS 尚未完全启动并准备就绪。我如何以编程方式(从 Bash、ide...

回答 2 投票 0

我的 hbase 客户端 hconnections 太多

为了获得最大的吞吐量,我使用批量放入和增量将数据放入hbase, 代码示例: 配置配置= HBaseConfiguration.create(); 配置.set("hbase.zookeeper.

回答 2 投票 0

无法在Mac中运行hbase shell

我已经安装了zookeeper和Hbase并启动了Hbase。它的运行我可以查看网络用户界面。 当我开始通过 hbase shell 引入它时,我无法连接到 hbase shell 哈...

回答 1 投票 0

Java 持久键值存储

我知道这可能已经被问过无数次了,但我似乎无法找到适合我的确切用例的黄金解决方案。 我只有一个数据结构,一个键是字符串的映射。对象...

回答 5 投票 0

如何在Python和Pandas(Data Frame)中将条件SQL查询的数据插入到Hbase?

假设我在 table_name_a 中有一些示例数据,如下所示: 代码 val_a val_b 备注 日期 ------------------------------------------ 1 00001 500 0.1 111 20191108 2

回答 1 投票 0

Flink 没有写入 hbase

我在使用 Apache Flink 写入 HBase 表时遇到问题。我已经成功配置了从 Kafka 读取和写入以及从 HBase 读取 RowKey。然而,当尝试...

回答 1 投票 0

在非测试代码中运行 HBaseTestingUtil 失败并出现 ClassNotFoundException:org.junit.Assert

我们有一个非标准设置,在集成测试期间使用 HBaseTestingUtil 运行应用程序,但我们在非测试代码中启动迷你集群。 我们有一个非标准设置,在集成测试期间使用 HBaseTestingUtil 运行应用程序,但我们在非测试代码中启动迷你集群。 <dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-testing-util</artifactId> <version>${hbase.version}</version> <exclusions> <exclusion> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> </exclusion> </exclusions> </dependency> 我们最近从 HBase1.x 升级到了 HBase2.x,它没有停止工作,我们的服务崩溃了 java.lang.NoClassDefFoundError: org/junit/Assert 部分堆栈跟踪: Caused by: java.lang.ClassNotFoundException: org.junit.Assert at java.net.URLClassLoader.findClass(URLClassLoader.java:387) ~[?:1.8.0_372] at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[?:1.8.0_372] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352) ~[?:1.8.0_372] at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_372] at org.apache.hadoop.test.GenericTestUtils.assertExists(GenericTestUtils.java:290) ~[hadoop-common-3.1.1.7.1.6.0-297-tests.jar:?] at org.apache.hadoop.test.GenericTestUtils.getTestDir(GenericTestUtils.java:234) ~[hadoop-common-3.1.1.7.1.6.0-297-tests.jar:?] at org.apache.hadoop.test.GenericTestUtils.getTestDir(GenericTestUtils.java:243) ~[hadoop-common-3.1.1.7.1.6.0-297-tests.jar:?] at org.apache.hadoop.hdfs.MiniDFSCluster.getBaseDirectory(MiniDFSCluster.java:2915) ~[hadoop-hdfs-3.1.1.7.1.6.0-297-tests.jar:?] at org.apache.hadoop.hdfs.MiniDFSCluster.determineDfsBaseDir(MiniDFSCluster.java:2905) ~[hadoop-hdfs-3.1.1.7.1.6.0-297-tests.jar:?] at org.apache.hadoop.hdfs.MiniDFSCluster.initMiniDFSCluster(MiniDFSCluster.java:847) ~[hadoop-hdfs-3.1.1.7.1.6.0-297-tests.jar:?] at org.apache.hadoop.hdfs.MiniDFSCluster.<init>(MiniDFSCluster.java:810) ~[hadoop-hdfs-3.1.1.7.1.6.0-297-tests.jar:?] at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniDFSCluster(HBaseTestingUtility.java:671) ~[hbase-server-2.2.3.7.1.6.0-297-tests.jar:2.2.3.7.1.6.0-297] at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniDFSCluster(HBaseTestingUtility.java:643) ~[hbase-server-2.2.3.7.1.6.0-297-tests.jar:2.2.3.7.1.6.0-297] at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniCluster(HBaseTestingUtility.java:1096) ~[hbase-server-2.2.3.7.1.6.0-297-tests.jar:2.2.3.7.1.6.0-297] at org.apache.hadoop.hbase.HBaseTestingUtility.startMiniCluster(HBaseTestingUtility.java:1071) ~[hbase-server-2.2.3.7.1.6.0-297-tests.jar:2.2.3.7.1.6.0-297] 上面还提供了一些关于我们使用的具体版本的信息。 我尝试添加(无范围,也尝试了运行时范围): <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> 不起作用,所以我假设上面的代码使用了一些特定于测试的类加载器,该类加载器不包含正常依赖项中的所有类?虽然不确定这怎么可能。 还尝试了阴影版本,希望它可以将 junit 打包到其中,但没有成功。 我可以让它以某种方式工作吗? <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.2.1</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/services/*</resource> </transformer> </transformers> </configuration> </execution> </executions> </plugin> </plugins> 您可以尝试将 JUnit 库与非测试代码一起着色。 Maven Shade 插件可以帮助解决这个问题。

回答 1 投票 0

使用Sqoop从MySQL导入数据到HBase时,出现错误

我尝试执行以下命令 ./bin/sqoop import --connect jdbc:mysql://localhost:3306/dblab --用户名 root --密码 123456 --table user_action --hbase-table user_action --column-fa...

回答 1 投票 0

hbase 无法将 org.jruby.RubyString 类的实例转换为 long

HBase 1.0.0 hbase外壳 hbase(main):046:0> 获取 '测试', 'rk0001', {COLUMN => '名称', TIMESTAMP => '1700203128386'} 会出现如下未知错误: `列...

回答 1 投票 0

.format("org.apache.phoenix.spark") vs .format("jdbc")

我想知道在加载 HBase 表(通过 Phoenix)到 Spark 数据帧时使用 .format("org.apache.phoenix.spark") 与 .format("jdbc") 有什么区别。 val 痕迹DF = 火花。

回答 1 投票 0

如何在kubernetes上使用zookeeper(独立Hbase)部署Hbase?

我想要在本地 kubernetes 集群上单节点部署 hbase。我有一个在 kubernetes 上运行的微服务,我想将其与 hbase 连接。应该是什么配置和...

回答 1 投票 0

如何使用 UUID 上的过滤器发出 Apache Phoenix sqlline.py 查询?

我正在处理更复杂的查询,但我的问题已简化为简单的问题。我希望有人能帮助我。 给出下表(请参阅下面的 HOSTED_APPS_METADATA_UUID ) !桌子...

回答 3 投票 0

通过JAVA使用Spark从HBase读取数据

我想使用JAVA通过Spark访问HBase。除了这个之外,我还没有找到任何这方面的例子。答案中写道, 你也可以用Java来写这个 我从如何r... 复制了这段代码

回答 2 投票 0

错误:无法找到或加载主类备份

我在我的Linux系统中的hadoop之上设置了一个Hbase。我在 hbase shell 中创建了一个示例表,它工作正常。但是,当我尝试运行备份命令时,我在终端中收到错误...

回答 1 投票 0

不明白为什么Hbase不是CAP中的A

我看过一篇文档说Hbase就是CAP理论中的一致性和分区。 但我不明白为什么Hbase不是A?我认为Hbase可以一直保持服务可用,为什么A不可以呢? 我的

回答 3 投票 0

使用Spark 2.3写入Hbase并分配时间戳

我正在使用 HBase-Spark 连接器在 Hbase 中编写内容,但我想根据 DS 中的列为每一行分配一个时间戳。有可能做这样的事情吗?这是我想做的一个例子

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.