小编Ola*_*ock的帖子

使用包含单行分区的 Cassandra 表是一种不好的做法吗?

假设我有一张这样的桌子

CREATE TABLE request(
  transaction_id text,
  request_date timestamp,
  data text, 
  PRIMARY KEY (transaction_id)
);
Run Code Online (Sandbox Code Playgroud)

transaction_id 是唯一的,因此据我了解此表中的每个分区只有一行,我不确定这种情况是否会导致操作系统中的性能问题,也许是因为 Cassandra 为每个分区创建一个文件,导致大量文件来管理其托管操作系统,请注意,我不确定 Cassandra 如何为其表创建文件。

在这种情况下,我可以通过其 transaction_id 找到请求,例如

select data from request where transaction_id = 'abc';

如果前面的假设是正确的,那么下一个可能会采用不同的方法?

CREATE TABLE request( 
  the_date date, 
  transaction_id text, 
  request_date timestamp, 
  data text, 
  PRIMARY KEY ((the_date), transaction_id)
);
Run Code Online (Sandbox Code Playgroud)

字段the_date每隔一天都会更改,因此表中的分区将为每一天创建。

在这种情况下,我必须让the_date数据始终可供客户端使用,以便我可以使用下一个查询找到请求

select data from request where the_date = '2020-09-23' and transaction_id = 'abc';

预先感谢您的帮助!

primary-key cassandra partition

6
推荐指数
1
解决办法
1717
查看次数

是否可以将Liferay SDK放在与源代码不同的位置?

我想问一下使用Liferay SDK进行开发的最佳实践.我已经下载了SDK,我已准备好Eclipse,它可以工作,我可以创建新的portlet并运行本地Liferay实例来测试它.

这是我的情况 - 我所拥有的所有源代码都在Eclipse工作区中,目前它只是我正在处理的portlet.

Liferay SDK我的工作区与工作区完全不同.我们说〜/ dev/liferay_sdk.Eclipse工作区位于〜/ workspace中.

在开始时,它没有像那样工作.Eclipse由于某种原因无法找到或使用Liferay SDK.当我将Eclipse/Liferay配置中的"项目验证"更改为"忽略""Liferay插件SDK无效"时,它开始工作没有问题.

例如,当需要构建WAR时,会发生下一个问题.在工作空间的portlet目录中存在"build.xml"文件.但是里面它指的是另一个xml文件,它应该位于一个目录中,而这个文件在相对位置引用更多东西,依此类推.

简而言之,它假设您在Liferay SDK中有portlet等.比如"〜/ dev/liferay_sdk/portlets".

我的问题是,我完全错了,或者你可以建议我最好的做法吗?

我不想混合SDK和代码,这对我来说听起来不对.

感谢帮助!

liferay

5
推荐指数
1
解决办法
3223
查看次数

Apache Airflow - 用户管理和多租户

我正在尝试创建一个可以托管多个用户的 Apache Airflow 实例,并且不会对彼此产生负面影响。这包括但不限于:

  • 维护自己的python环境
  • 管理自己的变量
  • 管理自己的连接
  • 管理自己的DAG

查看官方气流文档。我看到一些可能有帮助的事情。

1) 创建用户的能力和 2) 多租户的能力。

1)如果我遵循用户创建过程https://airflow.apache.org/security.html#web-authentication。创建的所有用户似乎都是管理员,但如何创建非管理员用户并控制他们可以做什么/不能做什么?我似乎无法找到更多文档。

2)链接https://airflow.apache.org/security.html#multi-tenancy说“当通过设置打开身份验证时,您可以按所有者名称过滤网络服务器中的 dags 列表”,但我不知道不知道如何将 dags 分配给特定用户。

谢谢您的帮助。

airflow

5
推荐指数
1
解决办法
4428
查看次数

当我收到已损坏的错误消息时,如何修复 phpmyadmin 中的用户数据库表?

当我尝试在 phpmyadmin 中编辑用户帐户时,我收到错误消息“#1034 表 'db' 的索引已损坏”。我能看到的唯一表“db”在“mysql”数据库中。首先,这是它所指的表吗?因为当我浏览它时,它看起来很好,而且我在那里没有发现任何错误。我只是单击顶部 phpmyadmin 中的“用户帐户”按钮。这就是我通常编辑用户的方式,而不是直接在 db 表中。但我无法克服这一点。我想知道是否需要重新安装 xampp/apache。

phpmyadmin mariadb

5
推荐指数
0
解决办法
8490
查看次数

将指标从 kafka 发送到 grafana

我有一个用例,其中指标将写入 kafka 主题,并且从那里我必须将这些指标发送到 grafana 收集点。

没有数据源可以完成吗?

知道如何做到吗?

metrics apache-kafka grafana

5
推荐指数
1
解决办法
4667
查看次数

如何使用 Apache POI XSSF Excel 的 IndexedColors 中没有的颜色?

我正在查看一个我想要复制的 Excel 工作表,我遇到的唯一问题是颜色。我想要复制的颜色是Blue, Accent 5, Lighter 40%Light Green来自该Standard Colors部分。我正在查看有关在 XSSF 工作簿中使用自定义颜色的文档,它指出执行此操作的方法如下:

XSSFWorkbook wb = new XSSFWorkbook();
XSSFSheet sheet = wb.createSheet();
XSSFRow row = sheet.createRow(0);
XSSFCell cell = row.createCell(0);
cell.setCellValue("custom XSSF colors");

XSSFCellStyle style1 = wb.createCellStyle();
style1.setFillForegroundColor(new XSSFColor(new java.awt.Color(128, 0, 128), new DefaultIndexedColorMap()));
style1.setFillPattern(FillPatternType.SOLID_FOREGROUND);
Run Code Online (Sandbox Code Playgroud)

当我尝试使用时style1.setFillForegroundColor(new XSSFColor(new java.awt.Color(128, 0, 128), new DefaultIndexedColorMap()));出现错误,因为唯一的参数.setFillForegroundColor()只接受一个参数,即 ashort而不是XSSFColor.

有人有这样的运气吗?我已经找了几个小时了,找不到任何 8 年前或不起作用的东西。

java excel apache-poi

5
推荐指数
1
解决办法
1万
查看次数

Apache Airflow - 在 EC2 上运行任务

我们正在考虑将数据管道迁移到 Airflow,我们需要的一项是任务能够创建、执行和销毁 EC2 实例。我知道 Airflow 支持 ECS 和 Fargate,这将具有类似的效果,但并非我们所有的任务都将直接适合该范例,而无需进行重大重构。

我发现我们可以使用分布式执行器并手动扩展工作人员池,但我们确实不需要一直让工作人员处于运行状态,只是偶尔需要,而且当我们这样做时,我们也能得到很好的服务每个任务运行时都有一个专用机器,并在任务完成时销毁每台机器。

我脑海中浮现的想法类似于“EphemeralEC2Operator”,它可以启动一台机器,通过 SSH 连接,运行一个 bash 脚本来编排任务,然后关闭机器。

这种能力是否存在,还是我们必须自己实现?

提前致谢。

amazon-ec2 amazon-web-services airflow

5
推荐指数
0
解决办法
2746
查看次数

Apache flink,以 S3 作为源,S3 作为接收器

是否可以通过 apache Flink 读取事件进入 S3 源存储桶并处理并将其下沉回其他 S3 存储桶?是否有一个特殊的连接器,或者我必须使用 Apache Flink 中提到的可用读取/保存示例?在这种情况下检查点是如何发生的,flink 是否自动跟踪从 S3 源存储桶读取的内容,或者是否需要构建自定义代码。flink 是否也保证 S3 源案例中的恰好一次处理。

streaming event-handling amazon-s3 apache-flink

5
推荐指数
1
解决办法
8759
查看次数

在 Apache Beam 中使用 PAssert containsInAnyOrder 比较对象

在使用 PAssert 为我的光束管道编写单元测试时,管道输出对象很好,但在与以下断言错误进行比较时测试失败:

java.lang.AssertionError: Decode pubsub message/ParMultiDo(DecodePubSubMessage).output: 
Expected: iterable with items [<PubsubMessage{message=[123, 34, 104...], attributes={messageId=2be485e4-3e53-4468-a482-a49842b87ed5, dataPipelineId=bc957aa3-17e7-46d6-bc73-0924fa5674fa, region=us-west1, ingestionTimestamp=2020-02-02T12:34:56.789Z}, messageId=null}>] in any order
     but: not matched: <PubsubMessage{message=[123, 34, 104...], attributes={messageId=2be485e4-3e53-4468-a482-a49842b87ed5, dataPipelineId=bc957aa3-17e7-46d6-bc73-0924fa5674fa, region=us-west1, ingestionTimestamp=2020-02-02T12:34:56.789Z}, messageId=null}>
Run Code Online (Sandbox Code Playgroud)

我还尝试将 expectedOutputPubSubMessage 封装在一个列表中(显然原始输出在一个数组中)但无济于事。文档中所有给定的 PAssert 示例都进行了简单的字符串或键值比较。

@RunWith(PowerMockRunner.class)
public class DataDecodePipelineTest implements Serializable {

  @Rule
  public TestPipeline p = TestPipeline.create();

  @Test
  public void testPipeline(){
      PubsubMessage inputPubSubMessage =
              new PubsubMessage(
                      TEST_ENCODED_PAYLOAD.getBytes(),
                      new HashMap<String, String>() {
                          {
                              put(MESSAGE_ID_NAME, TEST_MESSAGE_ID);
                              put(DATA_PIPELINE_ID_NAME, TEST_DATA_PIPELINE_ID);
                              put(INGESTION_TIMESTAMP_NAME, TEST_INGESTION_TIMESTAMP);
                              put(REGION_NAME, TEST_REGION);
                          }
                      });

      PubsubMessage expectedOutputPubSubMessage =
              new …
Run Code Online (Sandbox Code Playgroud)

apache-beam apache-beam-io

5
推荐指数
1
解决办法
306
查看次数

尝试使用 pip 下载 apache airflow 但在“为收集的包构建轮子:google-re2”时弹出错误

我使用的是 MacOS Mojave、Python 3.8.3 和 pip 23.2。\n我创建了一个 py_env,激活它,然后运行

\n
pip install apache-airflow==2.6.3' \\\n --constraint "https://raw.githubusercontent.com/apache/airflow/constraints-2.6.3/constraints-3.8.txt".\n
Run Code Online (Sandbox Code Playgroud)\n

起初我遇到一个错误,说找不到文件“pybind11”。我通过运行 python -m pip install pybind11 安装了 pybind11,但现在出现多个未知类型错误和其他错误。

\n
python setup.py bdist_wheel did not run successfully.\n  \xe2\x94\x82 exit code: 1\n  \xe2\x95\xb0\xe2\x94\x80> [140 lines of output]\nrunning bdist_wheel\nrunning build\nrunning build_py\ncreating build\ncreating build/lib.macosx-10.9-x86_64-cpython-38\ncopying re2.py -> build/lib.macosx-10.9-x86_64-cpython-38\nrunning build_ext\nbuilding '_re2' extension\ncreating build/temp.macosx-10.9-x86_64-cpython-38\ngcc -Wno-unused-result -Wsign-compare -Wunreachable-code -\nDNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -\nI/Users/chu/opt/anaconda3/include -arch x86_64 -\nI/Users/chu/opt/anaconda3/include -arch x86_64 -\nI/Users/chu/Desktop/Airflow_test/py_env/lib/python3.8/site-\npackages/pybind11/include -\nI/Users/chu/Desktop/Airflow_test/py_env/include -\nI/Users/chu/opt/anaconda3/include/python3.8 -c _re2.cc -o\nbuild/temp.macosx-10.9-x86_64-cpython-38/_re2.o -fvisibility=hidden\nIn file included from _re2.cc:11:\n...\n/Users/chu/Desktop/Airflow_test/py_env/lib/python3.8/site-\npackages/pybind11/include/pybind11/detail/common.h:688:18: warning: …
Run Code Online (Sandbox Code Playgroud)

airflow

5
推荐指数
1
解决办法
4259
查看次数