HBase是Hadoop数据库(columnar)。当您需要对大数据进行随机,实时读/写访问时,请使用它。该项目的目标是托管非常大的表 - 数十亿行X百万列 - 在商品硬件集群上。
HBase 连接在 INFO Zookeeper 处挂起。ClientCnxn:服务器上的会话建立完成。如何进一步连接?
我根本无法将我的客户端计算机连接到 HBase。 客户端在 Windows 8 上运行。HBase 在 Fedora VM 上运行。 我导入了以下罐子: 公共配置(commons-configuration-1.6.jar) 公共资源-
我将java对象存储在hbase中(即)假设我有一个对象“User”,它有3个参数,如名字、中间名和姓氏。我在java中使用了以下代码进行序列化 对象对象...
当 Hbase 客户端升级到 2.5.8 时,Cassandra 驱动程序 2.1.10.2 返回 NoHostAvailableException
当 Hbase 客户端升级到 2.5.8 版本并且使用的 cassandra 驱动程序版本为 2.1.10.2 时,Cassandra 给出 NoHostAvailableException 引起的:com.google.common.util.concurrent.
Hbase Region 处于 OFFLINE 状态并且不可分配
我们为 hbase 配置多个网卡,并将 hbase.regionserver.ipc.address 和 hbase.master.ipc.address 设置为 0.0.0.0。这导致了主机名查找问题,这是多年前的一个已知问题......
Spark 建议列出文档中提供的 Spark 和 Hadoop 依赖项,这是严格要求的吗?
在 Spark 文档中,它指出: 如果您的代码依赖于其他项目,则需要将它们打包 与您的应用程序一起,以便将代码分发到 Spark 簇。为了做到这一点...
我正在尝试使用 AWS EMR 计算 Hbase 基础设施的成本,但无法找到用于计算 HBase 读取/存储/写入成本的文档。 我可以得到一些指导/帮助吗?
有多个应用程序在本地使用 Hbase 数据。 现在我们计划将Hbase数据迁移到GCP Bigtable。 将此 Hbase 迁移到 Bigtable 后。多种应用
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))); }
我正在为 Hadoop 构建自动安装脚本,但遇到了 HBase 无法启动的问题,因为 HDFS 尚未完全启动并准备就绪。我如何以编程方式(从 Bash、ide...
为了获得最大的吞吐量,我使用批量放入和增量将数据放入hbase, 代码示例: 配置配置= HBaseConfiguration.create(); 配置.set("hbase.zookeeper.
我已经安装了zookeeper和Hbase并启动了Hbase。它的运行我可以查看网络用户界面。 当我开始通过 hbase shell 引入它时,我无法连接到 hbase shell 哈...
我知道这可能已经被问过无数次了,但我似乎无法找到适合我的确切用例的黄金解决方案。 我只有一个数据结构,一个键是字符串的映射。对象...
如何在Python和Pandas(Data Frame)中将条件SQL查询的数据插入到Hbase?
假设我在 table_name_a 中有一些示例数据,如下所示: 代码 val_a val_b 备注 日期 ------------------------------------------ 1 00001 500 0.1 111 20191108 2
我在使用 Apache Flink 写入 HBase 表时遇到问题。我已经成功配置了从 Kafka 读取和写入以及从 HBase 读取 RowKey。然而,当尝试...
在非测试代码中运行 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 插件可以帮助解决这个问题。
我尝试执行以下命令 ./bin/sqoop import --connect jdbc:mysql://localhost:3306/dblab --用户名 root --密码 123456 --table user_action --hbase-table user_action --column-fa...
hbase 无法将 org.jruby.RubyString 类的实例转换为 long
HBase 1.0.0 hbase外壳 hbase(main):046:0> 获取 '测试', 'rk0001', {COLUMN => '名称', TIMESTAMP => '1700203128386'} 会出现如下未知错误: `列...
.format("org.apache.phoenix.spark") vs .format("jdbc")
我想知道在加载 HBase 表(通过 Phoenix)到 Spark 数据帧时使用 .format("org.apache.phoenix.spark") 与 .format("jdbc") 有什么区别。 val 痕迹DF = 火花。
如何在kubernetes上使用zookeeper(独立Hbase)部署Hbase?
我想要在本地 kubernetes 集群上单节点部署 hbase。我有一个在 kubernetes 上运行的微服务,我想将其与 hbase 连接。应该是什么配置和...
如何使用 UUID 上的过滤器发出 Apache Phoenix sqlline.py 查询?
我正在处理更复杂的查询,但我的问题已简化为简单的问题。我希望有人能帮助我。 给出下表(请参阅下面的 HOSTED_APPS_METADATA_UUID ) !桌子...