You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ej...@apache.org on 2021/02/22 03:17:19 UTC
[iotdb] branch proceeding_vldb updated: add compaction time print
This is an automated email from the ASF dual-hosted git repository.
ejttianyu pushed a commit to branch proceeding_vldb
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/proceeding_vldb by this push:
new b894555 add compaction time print
b894555 is described below
commit b89455579381a634aabbd2de031826a3198c7725
Author: EJTTianyu <16...@qq.com>
AuthorDate: Mon Feb 22 11:16:57 2021 +0800
add compaction time print
---
.../org/apache/iotdb/db/engine/compaction/TsFileManagement.java | 5 ++++-
.../engine/compaction/level/LevelCompactionTsFileManagement.java | 2 ++
.../engine/compaction/tired/TiredCompactionTsFileManagement.java | 4 ++++
server/src/main/java/org/apache/iotdb/db/rescon/SystemInfo.java | 9 +++++++++
4 files changed, 19 insertions(+), 1 deletion(-)
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java
index 3f037d2..b0f8cbd 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/TsFileManagement.java
@@ -242,7 +242,10 @@ public abstract class TsFileManagement {
protected void printInfo() {
logger.info("current compaction num: {}", SystemInfo.getInstance().getCompactionNum());
- System.out.println("current compaction num: " + SystemInfo.getInstance().getCompactionNum());
+ logger.info("current compaction time: {}", SystemInfo.getInstance().getCompactionTime());
+ System.out.println(
+ "current compaction num: " + SystemInfo.getInstance().getCompactionNum() + ", time: "
+ + SystemInfo.getInstance().getCompactionTime());
}
public class CompactionMergeTask implements Runnable {
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java
index 6a3b0e9..afafd01 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java
@@ -719,12 +719,14 @@ public class LevelCompactionTsFileManagement extends TsFileManagement {
// if (isCompactionWorking()) {
// return;
// }
+ long startTime = System.currentTimeMillis();
handleSpecificCase(timePartition);
if (processUnseq()) {
Map<Long, Map<Long, List<TsFileResource>>> selectFiles = selectMergeFile(timePartition);
mergeFiles(selectFiles, timePartition);
}
processSeq(timePartition);
+ SystemInfo.getInstance().incrementCompactionTime(System.currentTimeMillis() - startTime);
printInfo();
}
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/tired/TiredCompactionTsFileManagement.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/tired/TiredCompactionTsFileManagement.java
index e9146b4..0680ac9 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/tired/TiredCompactionTsFileManagement.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/tired/TiredCompactionTsFileManagement.java
@@ -49,6 +49,7 @@ import org.apache.iotdb.db.metadata.mnode.MeasurementMNode;
import org.apache.iotdb.db.query.context.QueryContext;
import org.apache.iotdb.db.query.control.FileReaderManager;
import org.apache.iotdb.db.query.reader.series.SeriesRawDataBatchReader;
+import org.apache.iotdb.db.rescon.SystemInfo;
import org.apache.iotdb.db.utils.MergeUtils;
import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
import org.apache.iotdb.tsfile.read.common.BatchData;
@@ -349,8 +350,11 @@ public class TiredCompactionTsFileManagement extends TsFileManagement {
// if (isCompactionWorking()) {
// return;
// }
+ long startTime = System.currentTimeMillis();
Map<Long, Map<Long, List<TsFileResource>>> selectFiles = selectMergeFile(timePartition);
mergeFiles(selectFiles, timePartition);
+ SystemInfo.getInstance().incrementCompactionTime(System.currentTimeMillis() - startTime);
+ printInfo();
}
@Override
diff --git a/server/src/main/java/org/apache/iotdb/db/rescon/SystemInfo.java b/server/src/main/java/org/apache/iotdb/db/rescon/SystemInfo.java
index 7953882..84fd9a2 100644
--- a/server/src/main/java/org/apache/iotdb/db/rescon/SystemInfo.java
+++ b/server/src/main/java/org/apache/iotdb/db/rescon/SystemInfo.java
@@ -45,6 +45,7 @@ public class SystemInfo {
private Map<StorageGroupInfo, Long> reportedSgMemCostMap = new HashMap<>();
private AtomicLong compactionNum = new AtomicLong(0);
+ private AtomicLong compactionTime = new AtomicLong(0);
private static final double FLUSH_THERSHOLD =
config.getAllocateMemoryForWrite() * config.getFlushProportion();
private static final double REJECT_THERSHOLD =
@@ -213,4 +214,12 @@ public class SystemInfo {
public void incrementCompactionNum(long batchSize) {
compactionNum.getAndAdd(batchSize);
}
+
+ public long getCompactionTime() {
+ return compactionTime.get();
+ }
+
+ public void incrementCompactionTime(long latency) {
+ compactionTime.getAndAdd(latency);
+ }
}