You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by GitBox <gi...@apache.org> on 2022/05/23 07:15:22 UTC

[GitHub] [flink-table-store] tsreaper opened a new pull request, #135: [FLINK-27739] Add benchmark module for table store

tsreaper opened a new pull request, #135:
URL: https://github.com/apache/flink-table-store/pull/135

   Currently there is no benchmark for table store to measure its performance. We need such module.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink-table-store] tsreaper commented on pull request #135: [FLINK-27739] Add benchmark module for table store

Posted by GitBox <gi...@apache.org>.
tsreaper commented on PR #135:
URL: https://github.com/apache/flink-table-store/pull/135#issuecomment-1188730744

   > Thank @tsreaper for the contribution. I just have a question, can we run this benchmark in local machine? Can it also make some sense if it's just a single parallelism?
   
   This benchmark can run on local machines. I, however, suspect if running on local machines makes any sense. The same with running with just a single parallelism.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink-table-store] tsreaper commented on a diff in pull request #135: [FLINK-27739] Add benchmark module for table store

Posted by GitBox <gi...@apache.org>.
tsreaper commented on code in PR #135:
URL: https://github.com/apache/flink-table-store/pull/135#discussion_r924176603


##########
flink-table-store-benchmark/README.md:
##########
@@ -0,0 +1,57 @@
+# Flink Table Store Benchmark
+
+This is the benchmark module for Flink Table Store. Inspired by [Nexmark](https://github.com/nexmark/nexmark).
+
+## How To Run
+### Environment Preparation
+* This benchmark only runs on Linux. You'll need a Linux environment (preferably an EMR cluster). For a more reasonable result, we recommend this cluster to have:
+  * One master node with 8 cores and 16GB RAM.
+  * Two worker nodes with 8 cores and 32GB RAM.
+* This benchmark runs on a standalone Flink cluster. Download Flink >= 1.15 from the [Apache Flink's website](https://flink.apache.org/downloads.html#apache-flink-1150) and setup a standalone cluster. Flink's job manager must be on the master node of your EMR cluster. We recommend the following Flink configurations:
+    ```yaml
+    jobmanager.memory.process.size: 8192m
+    taskmanager.memory.process.size: 4096m
+    taskmanager.numberOfTaskSlots: 1
+    parallelism.default: 16
+    execution.checkpointing.interval: 3min
+    state.backend: rocksdb

Review Comment:
   Yes. `CommitterOperator` in table store has state.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink-table-store] JingsongLi commented on a diff in pull request #135: [FLINK-27739] Add benchmark module for table store

Posted by GitBox <gi...@apache.org>.
JingsongLi commented on code in PR #135:
URL: https://github.com/apache/flink-table-store/pull/135#discussion_r880220429


##########
flink-table-store-benchmark/README.md:
##########
@@ -0,0 +1,57 @@
+# Flink Table Store Benchmark
+
+This is the benchmark module for Flink Table Store. Inspired by [Nexmark](https://github.com/nexmark/nexmark).
+
+## How To Run
+### Environment Preparation
+* This benchmark only runs on Linux. You'll need a Linux environment (preferably an EMR cluster). For a more reasonable result, we recommend this cluster to have:
+  * One master node with 8 cores and 16GB RAM.
+  * Two worker nodes with 8 cores and 32GB RAM.
+* This benchmark runs on a standalone Flink cluster. Download Flink >= 1.15 from the [Apache Flink's website](https://flink.apache.org/downloads.html#apache-flink-1150) and setup a standalone cluster. Flink's job manager must be on the master node of your EMR cluster. We recommend the following Flink configurations:
+    ```yaml
+    jobmanager.memory.process.size: 8192m
+    taskmanager.memory.process.size: 4096m
+    taskmanager.numberOfTaskSlots: 1
+    parallelism.default: 16
+    execution.checkpointing.interval: 3min
+    state.backend: rocksdb

Review Comment:
   Do we need state backend?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink-table-store] JingsongLi commented on a diff in pull request #135: [FLINK-27739] Add benchmark module for table store

Posted by GitBox <gi...@apache.org>.
JingsongLi commented on code in PR #135:
URL: https://github.com/apache/flink-table-store/pull/135#discussion_r924211770


##########
flink-table-store-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/BenchmarkMetric.java:
##########
@@ -0,0 +1,99 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.store.benchmark.metric;
+
+import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
+
+import javax.annotation.Nullable;
+
+import java.util.Objects;
+
+/**
+ * Metric collected per {@link
+ * org.apache.flink.table.store.benchmark.BenchmarkOptions#METRIC_MONITOR_DURATION} for a single
+ * query.
+ */
+public class BenchmarkMetric {

Review Comment:
   Should we add `copied from nexmark` for classes?



##########
flink-table-store-benchmark/pom.xml:
##########
@@ -0,0 +1,134 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <artifactId>flink-table-store-parent</artifactId>
+        <groupId>org.apache.flink</groupId>
+        <version>0.2-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>flink-table-store-benchmark</artifactId>
+    <name>Flink Table Store : Benchmark</name>
+
+    <properties>
+        <flink.table.api.java.bridge.name>flink-table-api-java-bridge</flink.table.api.java.bridge.name>
+        <flink.streaming.java.name>flink-streaming-java</flink.streaming.java.name>
+    </properties>
+
+    <profiles>
+        <profile>
+            <id>flink-1.14</id>

Review Comment:
   we can use the profile in parent pom.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink-table-store] JingsongLi merged pull request #135: [FLINK-27739] Add benchmark module for table store

Posted by GitBox <gi...@apache.org>.
JingsongLi merged PR #135:
URL: https://github.com/apache/flink-table-store/pull/135


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink-table-store] tsreaper commented on a diff in pull request #135: [FLINK-27739] Add benchmark module for table store

Posted by GitBox <gi...@apache.org>.
tsreaper commented on code in PR #135:
URL: https://github.com/apache/flink-table-store/pull/135#discussion_r924216559


##########
flink-table-store-benchmark/src/main/java/org/apache/flink/table/store/benchmark/metric/BenchmarkMetric.java:
##########
@@ -0,0 +1,99 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.store.benchmark.metric;
+
+import org.apache.flink.table.store.benchmark.utils.BenchmarkUtils;
+
+import javax.annotation.Nullable;
+
+import java.util.Objects;
+
+/**
+ * Metric collected per {@link
+ * org.apache.flink.table.store.benchmark.BenchmarkOptions#METRIC_MONITOR_DURATION} for a single
+ * query.
+ */
+public class BenchmarkMetric {

Review Comment:
   No need. I've asked @wuchong and he says that we just need to add `inspired by Nexmark` in `README.md`.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org