问题标签 [apache-kudu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1286 浏览

php - 具有实时余额更新的大容量交易的最佳实践

我目前有一个处理大量事务的 MySQL 数据库。为简单起见,它是实时的动作数据流(点击和其他事件)。该结构是这样的,即用户属于子附属公司,而子附属公司属于附属公司。

我需要保持点击的平衡。为简单起见,假设我需要将每个用户、子关联公司和关联公司的点击余额增加 1(实际上取决于事件的处理更多)。目前我做的非常简单——一旦我收到事件,我会在 PHP 中进行顺序查询——我读取用户的余额,加一并存储新值,然后我读取子附属公司的余额,递增并写入, ETC。

用户的余额对我来说是最重要的指标,所以我希望尽可能保持实时。sub-aff 和会员级别的其他指标不太重要,但它们越接近实时越好,但我认为 5 分钟的延迟可能是可以的。

随着项目的发展,它已经成为一个瓶颈,我现在正在寻找替代方案——如何重新设计余额的计算。我想确保新设计每天能够处理 5000 万个事件。对我来说,不要丢失单个事件也很重要,我实际上将每个更改周期包装为在 sql 事务中单击余额。

我正在考虑的一些事情:

1 - 创建一个 cron 作业,它将不实时更新子附属公司和附属公司级别的余额,假设每 5 分钟一次。

2 - 使用存储过程将数字处理和余额更新移动到数据库本身。我正在考虑添加一个单独的数据库,也许 Postgress 会更适合这项工作?我试图看看是否有严重的性能改进,但互联网似乎在这个话题上存在分歧。

3 - 将这个特定的数据流移动到带有 parquet(或 Apache Kudu?)的 hadoop 之类的东西,如果需要,只需添加更多服务器。

4 - 对现有数据库进行分片,基本上为每个会员添加一个单独的数据库服务器。

对于此类任务,是否有一些最佳实践/技术或我可以做的一些明显的事情?非常感谢任何帮助!

0 投票
1 回答
1385 浏览

scala - Apache Kudu 与 Apache Spark NoSuchMethodError:exportAuthenticationCredentials

我在 Spark 和 Scala 中有这个功能:

但是在尝试创建 kuduContext 时会引发异常:

Spark 工作没有任何问题。我已经按照官方文档中的描述安装了 kudu VM,并且我已经从 bash 登录到 impala 实例没有问题。

有人知道我做错了什么吗?

0 投票
1 回答
773 浏览

apache-drill - 将 Apache Drill 连接到 Kudu

有没有办法将 Apache Drill 连接到 Kudu?

我已经看到 Drill 1.5 在 github 上添加了对 Kudu 和 Drill-storage-kudu 的实验性支持,但我不知道如何使它工作......现在这不是实验性的吗?

谢谢

0 投票
1 回答
1277 浏览

apache-spark - 使用 Spark Shell 将行插入 Kudu 时出错

我是 Apache Kudu 的新手,我将它安装在我的 Ubuntu 系统上,后来使用 Apache Spark shell 在其中创建了一个表。现在我正在尝试使用 insertRows() 将数据插入到该表中,因为我正在使用但下面给出的命令,

其中customersDF 是一个数据框,spark_kudu_tbl 是Kudu 数据库中的一个表。我得到以下错误,

... 70 省略

我尝试了不同的选择,但没有人给我结果。任何人都可以为我的问题提供任何解决方案。

0 投票
0 回答
778 浏览

apache-kudu - Streamsets 在使用 Kudu 客户端时抛出异常(MANUAL_FLUSH 缓冲区)

我是 Streamsets 和 Kudu 技术的新手,我正在尝试几种解决方案来实现我的目标:我有一个包含一些 Avro 文件的文件夹,这些文件需要处理并随后发送到 Kudu 模式。

https://i.stack.imgur.com/l5Yf9.jpg

当使用包含数百条记录的 Avro 文件时,一切正常,但是当记录数增加到 16k 时,会显示此错误:

我在 Streamsets 和 Kudu 上搜索了所有可用的配置,我能够应用的唯一解决方案是编辑 Java 源代码,删除从默认刷新模式切换到手动模式的单行;这可行,但它不是最佳解决方案,因为每次我想在新机器上使用它时都需要编辑和编译这个文件。

任何人都知道如何避免这种情况发生?

提前致谢!

0 投票
1 回答
392 浏览

multi-tenant - 使用 Apache Kudu 实现多租户

我正在使用 apache Kudu 实现大数据系统。初步要求如下:

  1. 支持多租户
  2. 前端将使用 Apache Impala JDBC 驱动程序来访问数据。
  3. 客户将在 Kudu 上为分析用例编写 Spark 作业。

由于 Kudu 不支持多租户 OOB,所以我可以想到以下方式来支持多租户。

方法:

每个表都有tenantID 列,所有租户的所有数据都将存储在具有相应tenantID 的同一个表中。

将 Kudu 表映射为 Impala 中的外部表。为这些表创建视图,并为每个租户使用 where 子句,例如

Customer1 将访问表 cust1.table 以使用 impala JDBC 驱动程序或 Spark 访问 cust1 的数据。Customer2 将访问表 cust2.table 以访问 cust2 的数据等。

问题:

  1. 这是实现多租户的可接受方式还是有更好的方法(可能与其他外部服务一起使用)
  2. 如果以这种方式实现,我如何限制 customer2 访问 Kudu 中的 cust1.table,尤其是当客户出于分析目的编写自己的 spark 作业时。
0 投票
3 回答
2593 浏览

apache-spark - 如何使用 apache spark 访问从 impala 创建的 apache kudu 表

我下载了 apache kudu 的快速启动虚拟机,并按照这些示例出现在此页面https://kudu.apache.org/docs/quickstart.html中,实际上我创建了名为“sfmta”的表,但是当我尝试使用带有以下语句的 spark-shell 访问 kudu 表:

我收到这个错误

我也尝试过指定不同的表名,如“default:sfmta”、“default::sfmta”,结果相同。你能告诉我为什么会这样吗?为什么我无法访问 kudu 表?这是用黑斑羚创建的吗?

提前致谢。

0 投票
1 回答
882 浏览

join - Hive Hbase JOIN 性能 & KUDU

阅读 Cloudera 文档,使用 Impala 将 Hive 表与 HBase 较小的表连接起来,如下所述,然后在没有大数据设备(如 OBDA)和较大的可变 HBase 维度表的情况下:

如果您有对大型事实表执行聚合操作并将结果与​​小维度表连接的联接查询,请考虑将 Impala 用于事实表,将 HBase 用于维度表。(因为在这种情况下,Impala 对 HBase 表进行全扫描,而不是基于连接列进行单行 HBase 查找,仅在 HBase 表足够小以至于进行全表扫描不会导致查询的性能瓶颈。)

有没有办法让那个单键以另一种方式查找?

此外,我在 KUDU 和 HDFS 上注意到以下内容,大概是 HIVE。有人在这里有经验吗?很想知道。我会在适当的时候自己尝试,但是在非打包的快速入门上安装包裹并不是那么容易......

在单个应用程序(或查询)中混合和匹配存储管理器

0 投票
1 回答
454 浏览

apache-kudu - 如何获取当前的 kudu master 或 tserver 标志值?

可以从 kudu Web 界面访问 master 和 tserver 标志(通过默认http://127.0.0.1:8051/varzhttp://127.0.0.1:8050/varz)。

但我找不到从命令行获取它的方法。

例如,如何从正在运行的 kudu-tserver 实例中获取 tserver_master_addrs?

就像是 :

0 投票
1 回答
813 浏览

cloudera-cdh - 从单主服务器迁移到多主服务器 Apache KUDU 配置

我们更改了 Apache KUDU 的配置。我们在原来的基础上增加了 2 个新的 kudu 大师。

问题:当我们启动 KUDU 时,它会由老领导(原始大师)启动,现在一切正常。但是一段时间后,领导者更改为添加的主人之一,所有查询都开始失败。

有任何想法吗 ?任何人?

求求你了,谢谢你!