You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ja...@apache.org on 2024/04/02 07:07:02 UTC

(iotdb) 01/01: Delete Tsfile Module in IoTDB

This is an automated email from the ASF dual-hosted git repository.

jackietien pushed a commit to branch ty/removeTsFileModule
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 6ec34e9dfd52887a4b6dd58c9bf927bb5d8786ac
Author: JackieTien97 <ja...@gmail.com>
AuthorDate: Tue Apr 2 15:06:42 2024 +0800

    Delete Tsfile Module in IoTDB
---
 example/flink/pom.xml                              |    4 +-
 .../org/apache/iotdb/flink/FlinkIoTDBSink.java     |    6 +-
 .../org/apache/iotdb/flink/FlinkIoTDBSource.java   |    8 +-
 .../apache/iotdb/flink/FlinkTsFileBatchSink.java   |   12 +-
 .../apache/iotdb/flink/FlinkTsFileBatchSource.java |    6 +-
 .../apache/iotdb/flink/FlinkTsFileStreamSink.java  |   12 +-
 .../iotdb/flink/FlinkTsFileStreamSource.java       |    6 +-
 .../java/org/apache/iotdb/flink/TsFileUtils.java   |   31 +-
 .../iotdb/hadoop/tsfile/TSMRWriteExample.java      |   14 +-
 .../apache/iotdb/hadoop/tsfile/TsFileHelper.java   |   17 +-
 .../iotdb/hadoop/tsfile/TsFileWriteToHDFS.java     |   25 +-
 .../main/java/org/apache/iotdb/kafka/Consumer.java |    6 +-
 .../org/apache/iotdb/kafka/ConsumerThread.java     |    2 +-
 example/pipe-count-point-processor/pom.xml         |    6 +-
 .../java/org/apache/iotdb/CountPointProcessor.java |    7 +-
 example/pom.xml                                    |    1 -
 .../org/apache/iotdb/pulsar/PulsarConsumer.java    |    6 +-
 .../apache/iotdb/pulsar/PulsarConsumerThread.java  |    2 +-
 .../apache/iotdb/rabbitmq/RabbitMQConsumer.java    |    6 +-
 .../apache/iotdb/rocketmq/RocketMQConsumer.java    |    6 +-
 example/schema/pom.xml                             |    4 +-
 .../org/apache/iotdb/schema/PathCheckExample.java  |    5 +-
 .../iotdb/AlignedTimeseriesSessionExample.java     |   13 +-
 .../org/apache/iotdb/DataMigrationExample.java     |    6 +-
 .../iotdb/HybridTimeseriesSessionExample.java      |    6 +-
 .../org/apache/iotdb/SessionConcurrentExample.java |   10 +-
 .../main/java/org/apache/iotdb/SessionExample.java |   17 +-
 .../java/org/apache/iotdb/SessionPoolExample.java  |    2 +-
 .../iotdb/SyntaxConventionRelatedExample.java      |    6 +-
 .../main/java/org/apache/iotdb/TabletExample.java  |    9 +-
 .../org/apache/iotdb/trigger/LoggerTrigger.java    |    8 +-
 .../iotdb/trigger/StatisticsUpdaterTrigger.java    |    6 +-
 example/tsfile/pom.xml                             |   38 -
 example/tsfile/readme.md                           |   84 -
 .../java/org/apache/iotdb/tsfile/Constant.java     |   33 -
 .../iotdb/tsfile/TsFileForceAppendWrite.java       |  124 -
 .../java/org/apache/iotdb/tsfile/TsFileRead.java   |  106 -
 .../apache/iotdb/tsfile/TsFileSequenceRead.java    |  205 --
 .../tsfile/TsFileWriteAlignedWithTSRecord.java     |   97 -
 .../iotdb/tsfile/TsFileWriteAlignedWithTablet.java |  149 --
 .../iotdb/tsfile/TsFileWriteWithTSRecord.java      |   99 -
 .../apache/iotdb/tsfile/TsFileWriteWithTablet.java |  109 -
 .../java/org/apache/iotdb/udf/UDAFExample.java     |    7 +-
 integration-test/pom.xml                           |    4 +-
 .../apache/iotdb/db/query/udf/example/Adder.java   |    2 +-
 .../iotdb/db/query/udf/example/TwoSumBlock.java    |    5 +-
 .../apache/iotdb/db/query/udf/example/UDAFAvg.java |    7 +-
 .../iotdb/db/query/udf/example/UDAFCount.java      |    5 +-
 .../apache/iotdb/db/query/udf/example/UDAFSum.java |    7 +-
 .../trigger/example/TriggerFireTimesCounter.java   |    2 +-
 .../org/apache/iotdb/it/env/cluster/EnvUtils.java  |    2 +-
 .../iotdb/it/env/cluster/env/Cluster1Env.java      |    3 +-
 .../iotdb/it/env/cluster/env/MultiClusterEnv.java  |    3 +-
 .../org/apache/iotdb/it/utils/TsFileGenerator.java |   16 +-
 .../apache/iotdb/itbase/constant/TestConstant.java |    7 +-
 .../confignode/it/utils/ConfigNodeTestUtils.java   |    2 +-
 .../org/apache/iotdb/db/it/IOTDBLoadTsFileIT.java  |    8 +-
 .../iotdb/db/it/IoTDBPartialInsertionIT.java       |   12 +-
 .../org/apache/iotdb/db/it/IoTDBRepairDataIT.java  |   10 +-
 .../iotdb/db/it/selectinto/IoTDBSelectIntoIT.java  |    2 +-
 .../org/apache/iotdb/db/it/utils/TestUtils.java    |    2 +-
 .../test/java/org/apache/iotdb/flink/it/Utils.java |    3 +-
 .../pipe/it/autocreate/IoTDBPipeNullValueIT.java   |    8 +-
 .../session/it/IoTDBSessionAlignedInsertIT.java    |    8 +-
 .../iotdb/session/it/IoTDBSessionComplexIT.java    |   12 +-
 .../it/IoTDBSessionDisableMemControlIT.java        |   16 +-
 .../iotdb/session/it/IoTDBSessionInsertNullIT.java |   10 +-
 .../IoTDBSessionInsertWithTriggerExecutionIT.java  |   10 +-
 .../session/it/IoTDBSessionSchemaTemplateIT.java   |    8 +-
 .../iotdb/session/it/IoTDBSessionSimpleIT.java     |   22 +-
 .../session/it/IoTDBSessionSyntaxConventionIT.java |   14 +-
 .../org/apache/iotdb/session/it/SessionIT.java     |   16 +-
 .../iotdb/session/it/pool/SessionPoolIT.java       |    2 +-
 .../it/dual/IoTDBSubscriptionConsumerGroupIT.java  |    2 +-
 .../it/dual/IoTDBSubscriptionTopicIT.java          |    2 +-
 iotdb-api/common-api/pom.xml                       |   60 -
 .../write/UnSupportedDataTypeException.java        |   31 -
 .../tsfile/file/metadata/enums/TSDataType.java     |  193 --
 .../read/common/block/TsBlockBuilderStatus.java    |   70 -
 .../tsfile/read/common/block/column/Column.java    |  155 --
 .../read/common/block/column/ColumnBuilder.java    |  106 -
 .../common/block/column/ColumnBuilderStatus.java   |   91 -
 .../read/common/block/column/ColumnEncoding.java   |   68 -
 .../org/apache/iotdb/tsfile/utils/Accountable.java |   25 -
 .../java/org/apache/iotdb/tsfile/utils/Binary.java |  122 -
 .../java/org/apache/iotdb/tsfile/utils/BitMap.java |  194 --
 .../org/apache/iotdb/tsfile/utils/Constants.java   |  100 -
 .../iotdb/tsfile/utils/RamUsageEstimator.java      |  576 -----
 .../apache/iotdb/tsfile/utils/TsPrimitiveType.java |  695 ------
 iotdb-api/pipe-api/pom.xml                         |    4 +-
 .../java/org/apache/iotdb/pipe/api/access/Row.java |    3 +-
 .../event/dml/insertion/TabletInsertionEvent.java  |    3 +-
 iotdb-api/pom.xml                                  |    1 -
 iotdb-api/trigger-api/pom.xml                      |    4 +-
 .../java/org/apache/iotdb/trigger/api/Trigger.java |    3 +-
 .../iotdb/trigger/api/enums/FailureStrategy.java   |    3 +-
 iotdb-api/udf-api/pom.xml                          |    6 +-
 .../main/java/org/apache/iotdb/udf/api/UDAF.java   |    5 +-
 .../main/java/org/apache/iotdb/udf/api/UDTF.java   |    7 +-
 .../apache/iotdb/udf/api/utils/ResultValue.java    |    4 +-
 .../org/apache/iotdb/udf/api/utils/RowImpl.java    |    3 +-
 iotdb-client/cli/pom.xml                           |   10 +-
 .../java/org/apache/iotdb/tool/ExportData.java     |    8 +-
 .../java/org/apache/iotdb/tool/ExportTsFile.java   |   22 +-
 .../java/org/apache/iotdb/tool/ImportData.java     |   20 +-
 iotdb-client/isession/pom.xml                      |   10 +-
 .../java/org/apache/iotdb/isession/ISession.java   |    8 +-
 .../org/apache/iotdb/isession/ISessionDataSet.java |    2 +-
 .../org/apache/iotdb/isession/SessionDataSet.java  |    8 +-
 .../apache/iotdb/isession/pool/ISessionPool.java   |    9 +-
 .../iotdb/isession/pool/SessionDataSetWrapper.java |    3 +-
 .../apache/iotdb/isession/template/Template.java   |    7 +-
 iotdb-client/jdbc/pom.xml                          |   10 +-
 .../iotdb/jdbc/GroupedLSBWatermarkEncoder.java     |    7 +-
 .../apache/iotdb/jdbc/IoTDBDatabaseMetadata.java   |   12 +-
 .../iotdb/jdbc/IoTDBNonAlignJDBCResultSet.java     |    8 +-
 .../apache/iotdb/jdbc/IoTDBPreparedStatement.java  |    4 +-
 .../org/apache/iotdb/jdbc/WatermarkEncoder.java    |    2 +-
 .../apache/iotdb/jdbc/IoTDBJDBCResultSetTest.java  |    6 +-
 iotdb-client/service-rpc/pom.xml                   |   10 +-
 .../org/apache/iotdb/rpc/IoTDBJDBCDataSet.java     |    8 +-
 .../java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java |   10 +-
 .../rpc/subscription/config/ConsumerConfig.java    |    3 +-
 .../iotdb/rpc/subscription/config/TopicConfig.java |    3 +-
 .../rpc/subscription/payload/EnrichedTablets.java  |    4 +-
 .../payload/request/PipeSubscribeCommitReq.java    |    5 +-
 .../payload/request/PipeSubscribeHandshakeReq.java |    3 +-
 .../payload/request/PipeSubscribePollReq.java      |    5 +-
 .../payload/request/PipeSubscribeSubscribeReq.java |    5 +-
 .../request/PipeSubscribeUnsubscribeReq.java       |    5 +-
 .../response/PipeSubscribeHandshakeResp.java       |    5 +-
 .../payload/response/PipeSubscribePollResp.java    |    5 +-
 iotdb-client/session/pom.xml                       |   10 +-
 .../java/org/apache/iotdb/session/Session.java     |   20 +-
 .../apache/iotdb/session/SessionConnection.java    |    2 +-
 .../org/apache/iotdb/session/pool/SessionPool.java |    8 +-
 .../session/subscription/SubscriptionSession.java  |    5 +-
 .../subscription/SubscriptionSessionDataSet.java   |   15 +-
 .../subscription/SubscriptionSessionDataSets.java  |    2 +-
 .../iotdb/session/template/MeasurementNode.java    |    9 +-
 .../apache/iotdb/session/util/SessionUtils.java    |   19 +-
 .../iotdb/session/SessionCacheLeaderTest.java      |    6 +-
 .../java/org/apache/iotdb/session/SessionTest.java |   16 +-
 .../java/org/apache/iotdb/session/TabletTest.java  |    9 +-
 .../session/pool/SessionPoolExceptionTest.java     |   12 +-
 .../apache/iotdb/session/pool/SessionPoolTest.java |   16 +-
 .../iotdb/session/util/SessionUtilsTest.java       |   14 +-
 iotdb-connector/flink-iotdb-connector/pom.xml      |   10 +-
 .../iotdb/flink/DefaultIoTSerializationSchema.java |    2 +-
 .../main/java/org/apache/iotdb/flink/Event.java    |    2 +-
 .../java/org/apache/iotdb/flink/IoTDBSink.java     |    4 +-
 .../java/org/apache/iotdb/flink/IoTDBSource.java   |    2 +-
 .../iotdb/flink/options/IoTDBSinkOptions.java      |    6 +-
 iotdb-connector/flink-sql-iotdb-connector/pom.xml  |   10 +-
 .../flink/sql/client/IoTDBWebSocketClient.java     |    2 +-
 .../org/apache/iotdb/flink/sql/common/Utils.java   |   12 +-
 .../sql/function/IoTDBBoundedScanFunction.java     |    4 +-
 .../flink/sql/function/IoTDBCDCSourceFunction.java |   12 +-
 .../flink/sql/function/IoTDBLookupFunction.java    |    6 +-
 .../flink/sql/function/IoTDBSinkFunction.java      |    2 +-
 .../iotdb/flink/sql/wrapper/TabletWrapper.java     |    3 +-
 iotdb-connector/flink-tsfile-connector/pom.xml     |   10 +-
 .../apache/iotdb/flink/tsfile/RowRecordParser.java |    3 +-
 .../iotdb/flink/tsfile/RowRowRecordParser.java     |    9 +-
 .../iotdb/flink/tsfile/RowTSRecordConverter.java   |   27 +-
 .../iotdb/flink/tsfile/TSRecordConverter.java      |    5 +-
 .../iotdb/flink/tsfile/TSRecordOutputFormat.java   |    9 +-
 .../iotdb/flink/tsfile/TsFileInputFormat.java      |   16 +-
 .../iotdb/flink/tsfile/TsFileOutputFormat.java     |   10 +-
 .../iotdb/flink/tsfile/util/TSFileConfigUtil.java  |    4 +-
 .../flink/tsfile/RowTsFileConnectorTestBase.java   |    6 +-
 .../flink/tsfile/RowTsFileInputFormatTest.java     |    3 +-
 .../flink/tsfile/RowTsFileInputFormatTestBase.java |    2 +-
 .../tsfile/RowTsFileOutputFormatTestBase.java      |   21 +-
 .../util/TSFileConfigUtilCompletenessTest.java     |    3 +-
 .../apache/iotdb/flink/util/TsFileWriteUtil.java   |   18 +-
 iotdb-connector/grafana-connector/pom.xml          |    4 +-
 .../controller/DatabaseConnectController.java      |    2 +-
 .../org/apache/iotdb/web/grafana/dao/BasicDao.java |    3 +-
 .../iotdb/web/grafana/dao/impl/BasicDaoImpl.java   |    2 +-
 .../grafana/service/DatabaseConnectService.java    |    3 +-
 .../service/impl/DatabaseConnectServiceImpl.java   |    2 +-
 iotdb-connector/hadoop/pom.xml                     |   10 +-
 .../iotdb/hadoop/fileSystem/HDFSConfUtil.java      |    9 +-
 .../apache/iotdb/hadoop/fileSystem/HDFSInput.java  |    3 +-
 .../apache/iotdb/hadoop/fileSystem/HDFSOutput.java |    3 +-
 .../org/apache/iotdb/hadoop/tsfile/IReaderSet.java |    2 +-
 .../apache/iotdb/hadoop/tsfile/TSFInputFormat.java |    2 +-
 .../iotdb/hadoop/tsfile/TSFOutputFormat.java       |    2 +-
 .../iotdb/hadoop/tsfile/TSFRecordReader.java       |   16 +-
 .../iotdb/hadoop/tsfile/TSFRecordWriter.java       |    6 +-
 .../iotdb/hadoop/tsfile/record/HDFSTSRecord.java   |   25 +-
 .../apache/iotdb/hadoop/tsfile/TSFHadoopTest.java  |    6 +-
 .../iotdb/hadoop/tsfile/TsFileTestHelper.java      |   17 +-
 iotdb-connector/hive-connector/pom.xml             |   10 +-
 .../org/apache/iotdb/hive/TSFHiveRecordReader.java |    8 +-
 .../org/apache/iotdb/hive/TSFHiveRecordWriter.java |    6 +-
 .../apache/iotdb/hive/TSFHiveInputFormatTest.java  |    4 +-
 .../apache/iotdb/hive/TSFHiveRecordReaderTest.java |    4 +-
 .../org/apache/iotdb/hive/TsFileTestHelper.java    |   19 +-
 iotdb-connector/spark-iotdb-connector/pom.xml      |    6 +-
 .../org/apache/iotdb/spark/db/DataFrameTools.scala |    4 +-
 iotdb-connector/spark-tsfile/pom.xml               |   10 +-
 .../iotdb/spark/tsfile/io/TsFileOutputFormat.java  |    5 +-
 .../iotdb/spark/tsfile/io/TsFileRecordWriter.java  |    8 +-
 .../org/apache/iotdb/spark/tsfile/qp/Executor.java |    7 +-
 .../iotdb/spark/tsfile/qp/QueryProcessor.java      |    3 +-
 .../spark/tsfile/qp/common/FilterOperator.java     |    2 +-
 .../tsfile/qp/optimizer/PhysicalOptimizer.java     |    9 +-
 .../org/apache/iotdb/spark/tsfile/Converter.scala  |    4 +-
 .../apache/iotdb/spark/tsfile/DefaultSource.scala  |   10 +-
 .../iotdb/spark/tsfile/NarrowConverter.scala       |   22 +-
 .../spark/tsfile/NarrowTsFileOutputWriter.scala    |    2 +-
 .../apache/iotdb/spark/tsfile/Transformer.scala    |    2 +-
 .../apache/iotdb/spark/tsfile/WideConverter.scala  |   26 +-
 .../spark/tsfile/WideTsFileOutputWriter.scala      |    2 +-
 .../org/apache/iotdb/spark/tool/TsFileExample.java |   24 +-
 .../apache/iotdb/spark/tool/TsFileWriteTool.java   |   28 +-
 .../apache/iotdb/spark/tsfile/ConverterTest.scala  |   12 +-
 .../org/apache/iotdb/spark/tsfile/TSFileSuit.scala |    4 +-
 iotdb-core/confignode/pom.xml                      |   10 +-
 .../heartbeat/DataNodeHeartbeatHandler.java        |    2 +-
 .../consensus/request/ConfigPhysicalPlan.java      |    2 +-
 .../consensus/request/auth/AuthorPlan.java         |    2 +-
 .../request/read/function/GetUDFJarPlan.java       |    3 +-
 .../read/partition/CountTimeSlotListPlan.java      |    3 +-
 .../read/partition/GetSeriesSlotListPlan.java      |    3 +-
 .../read/partition/GetTimeSlotListPlan.java        |    3 +-
 .../read/pipe/plugin/GetPipePluginJarPlan.java     |    3 +-
 .../request/read/region/GetRegionIdPlan.java       |    3 +-
 .../request/read/region/GetRegionInfoListPlan.java |    3 +-
 .../read/template/CheckTemplateSettablePlan.java   |    3 +-
 .../read/template/GetPathsSetTemplatePlan.java     |    3 +-
 .../read/template/GetSchemaTemplatePlan.java       |    3 +-
 .../read/template/GetTemplateSetInfoPlan.java      |    3 +-
 .../request/read/trigger/GetTriggerJarPlan.java    |    3 +-
 .../read/trigger/GetTriggerLocationPlan.java       |    3 +-
 .../request/read/trigger/GetTriggerTablePlan.java  |    3 +-
 .../write/confignode/ApplyConfigNodePlan.java      |    3 +-
 .../write/confignode/RemoveConfigNodePlan.java     |    3 +-
 .../write/confignode/UpdateClusterIdPlan.java      |    3 +-
 .../write/confignode/UpdateVersionInfoPlan.java    |    3 +-
 .../consensus/request/write/cq/ActiveCQPlan.java   |    2 +-
 .../consensus/request/write/cq/AddCQPlan.java      |    2 +-
 .../consensus/request/write/cq/DropCQPlan.java     |    2 +-
 .../request/write/cq/UpdateCQLastExecTimePlan.java |    2 +-
 .../database/AdjustMaxRegionGroupNumPlan.java      |    5 +-
 .../request/write/function/CreateFunctionPlan.java |    5 +-
 .../request/write/function/DropFunctionPlan.java   |    3 +-
 .../pipe/payload/PipeDeactivateTemplatePlan.java   |    3 +-
 .../pipe/payload/PipeDeleteLogicalViewPlan.java    |    3 +-
 .../pipe/payload/PipeDeleteTimeSeriesPlan.java     |    3 +-
 .../pipe/payload/PipeUnsetSchemaTemplatePlan.java  |    3 +-
 .../write/pipe/plugin/CreatePipePluginPlan.java    |    5 +-
 .../write/pipe/plugin/DropPipePluginPlan.java      |    3 +-
 .../pipe/runtime/PipeHandleLeaderChangePlan.java   |    3 +-
 .../pipe/task/OperateMultiplePipesPlanV2.java      |    3 +-
 .../write/pipe/task/SetPipeStatusPlanV2.java       |    3 +-
 .../topic/AlterMultipleTopicsPlan.java             |    3 +-
 .../write/subscription/topic/DropTopicPlan.java    |    3 +-
 .../request/write/sync/SetPipeStatusPlanV1.java    |    3 +-
 .../template/CommitSetSchemaTemplatePlan.java      |    3 +-
 .../write/template/CreateSchemaTemplatePlan.java   |    3 +-
 .../write/template/DropSchemaTemplatePlan.java     |    3 +-
 .../write/template/PreSetSchemaTemplatePlan.java   |    3 +-
 .../write/template/PreUnsetSchemaTemplatePlan.java |    3 +-
 .../RollbackPreUnsetSchemaTemplatePlan.java        |    3 +-
 .../write/template/SetSchemaTemplatePlan.java      |    3 +-
 .../write/template/UnsetSchemaTemplatePlan.java    |    3 +-
 .../write/trigger/AddTriggerInTablePlan.java       |    5 +-
 .../write/trigger/DeleteTriggerInTablePlan.java    |    3 +-
 .../write/trigger/UpdateTriggerLocationPlan.java   |    3 +-
 .../trigger/UpdateTriggerStateInTablePlan.java     |    3 +-
 .../trigger/UpdateTriggersOnTransferNodesPlan.java |    3 +-
 .../response/datanode/DataNodeRegisterResp.java    |    3 +-
 .../iotdb/confignode/manager/ConfigManager.java    |    2 +-
 .../iotdb/confignode/manager/ProcedureManager.java |    4 +-
 .../iotdb/confignode/manager/TriggerManager.java   |    2 +-
 .../iotdb/confignode/manager/UDFManager.java       |    2 +-
 .../iotdb/confignode/manager/load/LoadManager.java |    2 +-
 .../manager/load/balancer/PartitionBalancer.java   |    2 +-
 .../manager/load/balancer/RouteBalancer.java       |    2 +-
 .../region/GreedyRegionGroupAllocator.java         |    3 +-
 .../router/priority/GreedyPriorityBalancer.java    |    3 +-
 .../confignode/manager/load/cache/LoadCache.java   |    2 +-
 .../manager/load/cache/node/NodeStatistics.java    |    3 +-
 .../load/cache/region/RegionGroupStatistics.java   |    3 +-
 .../load/cache/region/RegionStatistics.java        |    3 +-
 .../manager/load/cache/route/RegionRouteCache.java |    2 +-
 .../manager/load/service/HeartbeatService.java     |    2 +-
 .../manager/load/service/StatisticsService.java    |    2 +-
 .../manager/load/subscriber/RouteChangeEvent.java  |    3 +-
 .../load/subscriber/StatisticsChangeEvent.java     |    3 +-
 .../manager/partition/PartitionManager.java        |    2 +-
 .../payload/PipeTransferConfigPlanReq.java         |    7 +-
 .../protocol/IoTDBConfigRegionConnector.java       |    2 +-
 .../runtime/PipeLeaderChangeHandler.java           |    3 +-
 .../pipe/event/PipeConfigRegionSnapshotEvent.java  |    2 +-
 .../pipe/event/PipeConfigRegionWritePlanEvent.java |    3 +-
 .../pipe/extractor/ConfigRegionListeningQueue.java |    2 +-
 .../manager/schema/ClusterSchemaManager.java       |    2 +-
 .../iotdb/confignode/persistence/ClusterInfo.java  |    2 +-
 .../confignode/persistence/ProcedureInfo.java      |    2 +-
 .../iotdb/confignode/persistence/TriggerInfo.java  |    2 +-
 .../iotdb/confignode/persistence/UDFInfo.java      |    2 +-
 .../iotdb/confignode/persistence/cq/CQInfo.java    |    2 +-
 .../persistence/executor/ConfigPlanExecutor.java   |    2 +-
 .../confignode/persistence/node/NodeInfo.java      |    2 +-
 .../partition/DatabasePartitionTable.java          |    4 +-
 .../persistence/partition/PartitionInfo.java       |    4 +-
 .../persistence/partition/RegionGroup.java         |    2 +-
 .../partition/maintainer/RegionCreateTask.java     |    2 +-
 .../partition/maintainer/RegionDeleteTask.java     |    2 +-
 .../partition/maintainer/RegionMaintainTask.java   |    2 +-
 .../confignode/persistence/quota/QuotaInfo.java    |    2 +-
 .../schema/CNPhysicalPlanGenerator.java            |    4 +-
 .../persistence/schema/ClusterSchemaInfo.java      |    2 +-
 .../confignode/persistence/schema/ConfigMTree.java |    4 +-
 .../schema/ConfignodeSnapshotParser.java           |    2 +-
 .../persistence/schema/TemplatePreSetTable.java    |    2 +-
 .../persistence/schema/TemplateTable.java          |   12 +-
 .../schema/mnode/factory/ConfigMNodeFactory.java   |    3 +-
 .../procedure/env/ConfigNodeProcedureEnv.java      |    2 +-
 .../procedure/impl/cq/CreateCQProcedure.java       |    2 +-
 .../impl/node/AddConfigNodeProcedure.java          |    2 +-
 .../impl/pipe/AbstractOperatePipeProcedureV2.java  |    2 +-
 .../pipe/plugin/CreatePipePluginProcedure.java     |    4 +-
 .../impl/pipe/plugin/DropPipePluginProcedure.java  |    2 +-
 .../runtime/PipeHandleLeaderChangeProcedure.java   |    4 +-
 .../runtime/PipeHandleMetaChangeProcedure.java     |    2 +-
 .../impl/pipe/task/AlterPipeProcedureV2.java       |    2 +-
 .../impl/pipe/task/CreatePipeProcedureV2.java      |    2 +-
 .../impl/pipe/task/DropPipeProcedureV2.java        |    2 +-
 .../impl/pipe/task/StartPipeProcedureV2.java       |    2 +-
 .../impl/pipe/task/StopPipeProcedureV2.java        |    2 +-
 .../impl/schema/AlterLogicalViewProcedure.java     |    2 +-
 .../impl/schema/DeactivateTemplateProcedure.java   |    2 +-
 .../impl/schema/DeleteLogicalViewProcedure.java    |    2 +-
 .../impl/schema/DeleteTimeSeriesProcedure.java     |    2 +-
 .../impl/schema/SetTemplateProcedure.java          |    2 +-
 .../impl/schema/UnsetTemplateProcedure.java        |    2 +-
 .../consumer/AlterConsumerGroupProcedure.java      |    2 +-
 .../consumer/CreateConsumerProcedure.java          |    3 +-
 .../consumer/DropConsumerProcedure.java            |    3 +-
 .../subscription/CreateSubscriptionProcedure.java  |    2 +-
 .../subscription/DropSubscriptionProcedure.java    |    2 +-
 .../subscription/topic/AlterTopicProcedure.java    |    2 +-
 .../subscription/topic/CreateTopicProcedure.java   |    2 +-
 .../subscription/topic/DropTopicProcedure.java     |    2 +-
 .../impl/sync/AuthOperationProcedure.java          |    4 +-
 .../procedure/impl/sync/CreatePipeProcedure.java   |    3 +-
 .../procedure/impl/sync/DropPipeProcedure.java     |    3 +-
 .../procedure/impl/sync/StartPipeProcedure.java    |    3 +-
 .../procedure/impl/sync/StopPipeProcedure.java     |    3 +-
 .../impl/trigger/CreateTriggerProcedure.java       |    4 +-
 .../impl/trigger/DropTriggerProcedure.java         |    2 +-
 .../confignode/procedure/store/ProcedureWAL.java   |    2 +-
 .../request/ConfigPhysicalPlanSerDeTest.java       |   12 +-
 .../leader/LeaderBalancerComparisonTest.java       |    2 +-
 .../manager/load/cache/LoadCacheTest.java          |    2 +-
 .../manager/load/cache/RegionRouteCacheTest.java   |    2 +-
 .../persistence/CNPhysicalPlanGeneratorTest.java   |    6 +-
 .../iotdb/confignode/persistence/PipeInfoTest.java |    4 +-
 .../confignode/persistence/TriggerInfoTest.java    |    2 +-
 .../iotdb/confignode/persistence/UDFInfoTest.java  |    2 +-
 .../persistence/node/NodeStatisticsTest.java       |    2 +-
 .../statistics/RegionGroupStatisticsTest.java      |    2 +-
 .../partition/statistics/RegionStatisticsTest.java |    2 +-
 .../persistence/schema/ClusterSchemaInfoTest.java  |    8 +-
 .../persistence/schema/ConfigMTreeTest.java        |    2 +-
 .../persistence/schema/TemplateTableTest.java      |    6 +-
 .../procedure/impl/CreateCQProcedureTest.java      |    2 +-
 .../impl/CreateRegionGroupsProcedureTest.java      |    2 +-
 .../procedure/impl/CreateTriggerProcedureTest.java |    4 +-
 .../procedure/impl/DropTriggerProcedureTest.java   |    2 +-
 .../impl/node/AddConfigNodeProcedureTest.java      |    2 +-
 .../impl/node/RemoveConfigNodeProcedureTest.java   |    2 +-
 .../impl/node/RemoveDataNodeProcedureTest.java     |    2 +-
 .../pipe/plugin/CreatePipePluginProcedureTest.java |    4 +-
 .../pipe/plugin/DropPipePluginProcedureTest.java   |    2 +-
 .../pipe/receiver/PipeEnrichedProcedureTest.java   |   10 +-
 .../PipeHandleLeaderChangeProcedureTest.java       |    4 +-
 .../runtime/PipeHandleMetaChangeProcedureTest.java |    2 +-
 .../pipe/runtime/PipeMetaSyncProcedureTest.java    |    2 +-
 .../impl/pipe/task/AlterPipeProcedureV2Test.java   |    2 +-
 .../impl/pipe/task/CreatePipeProcedureV2Test.java  |    2 +-
 .../impl/pipe/task/DropPipeProcedureV2Test.java    |    2 +-
 .../impl/pipe/task/StartPipeProcedureV2Test.java   |    2 +-
 .../impl/pipe/task/StopPipeProcedureV2Test.java    |    2 +-
 .../impl/region/AddRegionPeerProcedureTest.java    |    2 +-
 .../impl/region/RegionMigrateProcedureTest.java    |    2 +-
 .../impl/region/RemoveRegionPeerProcedureTest.java |    2 +-
 .../impl/schema/AlterLogicalViewProcedureTest.java |    2 +-
 .../schema/DeactivateTemplateProcedureTest.java    |    6 +-
 .../impl/schema/DeleteDatabaseProcedureTest.java   |    2 +-
 .../impl/schema/UnsetTemplateProcedureTest.java    |    6 +-
 .../consumer/CreateConsumerProcedureTest.java      |    2 +-
 .../consumer/DropConsumerProcedureTest.java        |    2 +-
 .../ConsumerGroupMetaSyncProcedureTest.java        |    2 +-
 .../CreateSubscriptionProcedureTest.java           |    2 +-
 .../DropSubscriptionProcedureTest.java             |    2 +-
 .../topic/AlterTopicProcedureTest.java             |    2 +-
 .../topic/CreateTopicProcedureTest.java            |    2 +-
 .../subscription/topic/DropTopicProcedureTest.java |    2 +-
 .../topic/runtime/TopicMetaSyncProcedureTest.java  |    2 +-
 .../impl/sync/AuthOperationProcedureTest.java      |    2 +-
 .../impl/sync/CreatePipeProcedureTest.java         |    2 +-
 .../procedure/impl/sync/DropPipeProcedureTest.java |    2 +-
 .../impl/sync/StartPipeProcedureTest.java          |    2 +-
 .../procedure/impl/sync/StopPipeProcedureTest.java |    2 +-
 iotdb-core/consensus/pom.xml                       |    4 +-
 .../apache/iotdb/consensus/iot/ReplicateTest.java  |    2 +-
 .../apache/iotdb/consensus/iot/util/TestEntry.java |    3 +-
 iotdb-core/datanode/pom.xml                        |   10 +-
 .../src/main/codegen/templates/ModeAccumulator.ftl |   16 +-
 .../codegen/templates/abstractVariationWindow.ftl  |    4 +-
 .../src/main/codegen/templates/constantFill.ftl    |   10 +-
 .../src/main/codegen/templates/linearFill.ftl      |    6 +-
 .../src/main/codegen/templates/previousFill.ftl    |   12 +-
 .../src/main/codegen/templates/variationWindow.ftl |    2 +-
 .../codegen/templates/variationWindowManager.ftl   |    8 +-
 .../org/apache/iotdb/db/audit/AuditLogger.java     |    6 +-
 .../org/apache/iotdb/db/auth/AuthorityChecker.java |    8 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |   14 +-
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |   10 +-
 .../org/apache/iotdb/db/conf/IoTDBStartCheck.java  |    2 +-
 .../schemaregion/SchemaExecutionVisitor.java       |    8 +-
 .../schemaregion/SchemaRegionStateMachine.java     |    2 +-
 .../metadata/DataTypeMismatchException.java        |    3 +-
 .../agent/runtime/PipePeriodicalJobExecutor.java   |    2 +-
 .../client/IoTDBDataNodeSyncClientManager.java     |    2 +-
 .../builder/PipeTransferBatchReqBuilder.java       |    4 +-
 .../evolvable/request/PipeTransferPlanNodeReq.java |    7 +-
 .../request/PipeTransferTabletBatchReq.java        |    9 +-
 .../request/PipeTransferTabletBinaryReq.java       |    7 +-
 .../request/PipeTransferTabletInsertNodeReq.java   |    7 +-
 .../request/PipeTransferTabletRawReq.java          |   16 +-
 .../connector/payload/legacy/DeletionPipeData.java |    3 +-
 .../connector/payload/legacy/TsFilePipeData.java   |    3 +-
 .../protocol/legacy/IoTDBLegacyPipeConnector.java  |    2 +-
 .../connector/protocol/opcua/OpcUaConnector.java   |   10 +-
 .../thrift/sync/IoTDBDataNodeSyncConnector.java    |    2 +-
 .../thrift/sync/IoTDBDataRegionSyncConnector.java  |    2 +-
 .../thrift/sync/IoTDBSchemaRegionConnector.java    |    2 +-
 .../websocket/WebSocketConnectorServer.java        |    2 +-
 .../event/common/row/PipeDataTypeTransformer.java  |    3 +-
 .../pipe/event/common/row/PipeResetTabletRow.java  |    8 +-
 .../iotdb/db/pipe/event/common/row/PipeRow.java    |   11 +-
 .../db/pipe/event/common/row/PipeRowCollector.java |    5 +-
 .../schema/PipeSchemaRegionSnapshotEvent.java      |    2 +-
 .../schema/PipeSchemaRegionWritePlanEvent.java     |    3 +-
 .../tablet/PipeInsertNodeTabletInsertionEvent.java |    4 +-
 .../common/tablet/PipeRawTabletInsertionEvent.java |    3 +-
 .../tablet/TabletInsertionDataContainer.java       |   12 +-
 .../tsfile/TsFileInsertionDataContainer.java       |   24 +-
 .../tsfile/TsFileInsertionDataTabletIterator.java  |   23 +-
 .../dataregion/DataRegionListeningFilter.java      |    3 +-
 .../dataregion/IoTDBDataRegionExtractor.java       |    2 +-
 .../realtime/PipeRealtimeDataRegionExtractor.java  |    2 +-
 .../realtime/epoch/TsFileEpochManager.java         |    2 +-
 .../listener/PipeTimePartitionListener.java        |    2 +-
 .../processor/aggregate/AggregateProcessor.java    |   11 +-
 .../aggregate/TimeSeriesRuntimeState.java          |    7 +-
 .../aggregatedresult/AggregatedResultOperator.java |    5 +-
 .../standardstatistics/AverageOperator.java        |    5 +-
 .../ClearanceFactorOperator.java                   |    5 +-
 .../standardstatistics/CrestFactorOperator.java    |    5 +-
 .../standardstatistics/FormFactorOperator.java     |    5 +-
 .../standardstatistics/KurtosisOperator.java       |    5 +-
 .../standardstatistics/PeakOperator.java           |    5 +-
 .../standardstatistics/PulseFactorOperator.java    |    5 +-
 .../standardstatistics/RootMeanSquareOperator.java |    5 +-
 .../standardstatistics/SkewnessOperator.java       |    5 +-
 .../standardstatistics/VarianceOperator.java       |    5 +-
 .../CustomizedReadableIntermediateResults.java     |    4 +-
 .../IntermediateResultOperator.java                |    4 +-
 .../numeric/AbstractSameTypeNumericOperator.java   |    7 +-
 .../doubletype/FractionPoweredSumOperator.java     |    7 +-
 .../specifictype/integertype/CountOperator.java    |    7 +-
 .../window/datastructure/TimeSeriesWindow.java     |    6 +-
 .../window/datastructure/WindowOutput.java         |    4 +-
 .../AbstractSimpleTimeWindowingProcessor.java      |    3 +-
 .../processor/AbstractWindowingProcessor.java      |    3 +-
 .../processor/TumblingWindowingProcessor.java      |    3 +-
 .../downsampling/DownSamplingProcessor.java        |    3 +-
 .../sdt/SwingingDoorTrendingSamplingProcessor.java |    2 +-
 .../tumbling/TumblingTimeSamplingProcessor.java    |    2 +-
 .../protocol/airgap/IoTDBAirGapReceiver.java       |    4 +-
 .../protocol/thrift/IoTDBDataNodeReceiver.java     |    2 +-
 .../visitor/PipePlanToStatementVisitor.java        |    7 +-
 .../db/pipe/resource/memory/PipeMemoryManager.java |    8 +-
 .../pipe/resource/memory/PipeMemoryWeighUtil.java  |    5 +-
 .../pipe/resource/tsfile/PipeTsFileResource.java   |   10 +-
 .../resource/tsfile/PipeTsFileResourceManager.java |    4 +-
 .../iotdb/db/protocol/mqtt/MPPPublishHandler.java  |    2 +-
 .../org/apache/iotdb/db/protocol/mqtt/Message.java |    2 +-
 .../db/protocol/rest/utils/InsertRowDataUtils.java |    5 +-
 .../rest/v1/handler/QueryDataSetHandler.java       |    9 +-
 .../v1/handler/StatementConstructionHandler.java   |    7 +-
 .../rest/v2/handler/QueryDataSetHandler.java       |    9 +-
 .../rest/v2/handler/RequestValidationHandler.java  |    2 +-
 .../v2/handler/StatementConstructionHandler.java   |    7 +-
 .../protocol/thrift/impl/ClientRPCServiceImpl.java |   30 +-
 .../impl/DataNodeInternalRPCServiceImpl.java       |   12 +-
 .../db/queryengine/common/FragmentInstanceId.java  |    3 +-
 .../db/queryengine/common/MPPQueryContext.java     |    3 +-
 .../db/queryengine/common/PlanFragmentId.java      |    2 +-
 .../iotdb/db/queryengine/common/QueryId.java       |    3 +-
 .../iotdb/db/queryengine/common/SessionInfo.java   |    3 +-
 .../db/queryengine/common/header/ColumnHeader.java |    4 +-
 .../common/header/ColumnHeaderConstant.java        |    3 +-
 .../queryengine/common/header/DatasetHeader.java   |    3 +-
 .../common/schematree/ClusterSchemaTree.java       |    7 +-
 .../common/schematree/DeviceSchemaInfo.java        |    3 +-
 .../common/schematree/IMeasurementSchemaInfo.java  |    5 +-
 .../queryengine/common/schematree/ISchemaTree.java |    3 +-
 .../common/schematree/MeasurementSchemaInfo.java   |    5 +-
 .../common/schematree/node/SchemaEntityNode.java   |    2 +-
 .../common/schematree/node/SchemaInternalNode.java |    2 +-
 .../schematree/node/SchemaMeasurementNode.java     |    9 +-
 .../schematree/visitor/SchemaTreeVisitor.java      |    3 +-
 .../execution/aggregation/Accumulator.java         |   10 +-
 .../execution/aggregation/AccumulatorFactory.java  |    3 +-
 .../execution/aggregation/Aggregator.java          |   13 +-
 .../execution/aggregation/AvgAccumulator.java      |   14 +-
 .../execution/aggregation/CountAccumulator.java    |   10 +-
 .../execution/aggregation/CountIfAccumulator.java  |   10 +-
 .../aggregation/CountTimeAccumulator.java          |   10 +-
 .../execution/aggregation/ExtremeAccumulator.java  |   14 +-
 .../aggregation/FirstValueAccumulator.java         |   16 +-
 .../aggregation/FirstValueDescAccumulator.java     |    6 +-
 .../aggregation/LastValueAccumulator.java          |   16 +-
 .../aggregation/LastValueDescAccumulator.java      |    6 +-
 .../execution/aggregation/MaxByAccumulator.java    |    2 +-
 .../aggregation/MaxMinByBaseAccumulator.java       |   20 +-
 .../execution/aggregation/MaxTimeAccumulator.java  |   10 +-
 .../aggregation/MaxTimeDescAccumulator.java        |    4 +-
 .../execution/aggregation/MaxValueAccumulator.java |   14 +-
 .../execution/aggregation/MinByAccumulator.java    |    2 +-
 .../execution/aggregation/MinTimeAccumulator.java  |   10 +-
 .../aggregation/MinTimeDescAccumulator.java        |    4 +-
 .../execution/aggregation/MinValueAccumulator.java |   14 +-
 .../execution/aggregation/SumAccumulator.java      |   14 +-
 .../aggregation/TimeDurationAccumulator.java       |   10 +-
 .../execution/aggregation/UDAFAccumulator.java     |   12 +-
 .../execution/aggregation/VarianceAccumulator.java |   16 +-
 .../MonotonicQueueSlidingWindowAggregator.java     |    3 +-
 .../slidingwindow/SlidingWindowAggregator.java     |   11 +-
 .../SlidingWindowAggregatorFactory.java            |    7 +-
 .../timerangeiterator/AggrWindowIterator.java      |    5 +-
 .../timerangeiterator/ITimeRangeIterator.java      |    2 +-
 .../timerangeiterator/PreAggrWindowIterator.java   |    2 +-
 .../PreAggrWindowWithNaturalMonthIterator.java     |    5 +-
 .../SingleTimeWindowIterator.java                  |    2 +-
 .../TimeRangeIteratorFactory.java                  |    3 +-
 .../db/queryengine/execution/driver/Driver.java    |    2 +-
 .../execution/exchange/MPPDataExchangeManager.java |    2 +-
 .../execution/exchange/SharedTsBlockQueue.java     |    4 +-
 .../execution/exchange/TsBlockSerdeFactory.java    |    2 +-
 .../exchange/sink/DownStreamChannelLocation.java   |    3 +-
 .../queryengine/execution/exchange/sink/ISink.java |    2 +-
 .../execution/exchange/sink/LocalSinkChannel.java  |    2 +-
 .../execution/exchange/sink/ShuffleSinkHandle.java |    2 +-
 .../execution/exchange/sink/SinkChannel.java       |    8 +-
 .../execution/exchange/source/ISourceHandle.java   |    2 +-
 .../exchange/source/LocalSourceHandle.java         |    4 +-
 .../execution/exchange/source/SourceHandle.java    |    6 +-
 .../execution/executor/RegionWriteExecutor.java    |    2 +-
 .../execution/fragment/DataNodeQueryContext.java   |    5 +-
 .../fragment/FragmentInstanceContext.java          |    2 +-
 .../fragment/FragmentInstanceFailureInfo.java      |    5 +-
 .../execution/fragment/QueryContext.java           |    3 +-
 .../execution/load/AlignedChunkData.java           |   37 +-
 .../db/queryengine/execution/load/ChunkData.java   |   13 +-
 .../queryengine/execution/load/DeletionData.java   |    3 +-
 .../execution/load/LoadTsFileManager.java          |    6 +-
 .../execution/load/NonAlignedChunkData.java        |   31 +-
 .../db/queryengine/execution/load/TsFileData.java  |    5 +-
 .../queryengine/execution/load/TsFileSplitter.java |   44 +-
 .../queryengine/execution/memory/MemoryPool.java   |    2 +-
 .../execution/operator/AbstractOperator.java       |    5 +-
 .../execution/operator/AggregationUtil.java        |   31 +-
 .../execution/operator/ExplainAnalyzeOperator.java |   12 +-
 .../queryengine/execution/operator/Operator.java   |    3 +-
 .../process/AbstractConsumeAllOperator.java        |    2 +-
 .../operator/process/AbstractIntoOperator.java     |   18 +-
 .../process/AggregationMergeSortOperator.java      |   16 +-
 .../operator/process/AggregationOperator.java      |    9 +-
 .../operator/process/ColumnInjectOperator.java     |    4 +-
 .../operator/process/DeviceViewIntoOperator.java   |   17 +-
 .../operator/process/DeviceViewOperator.java       |   20 +-
 .../execution/operator/process/FillOperator.java   |    4 +-
 .../operator/process/FilterAndProjectOperator.java |   18 +-
 .../execution/operator/process/IntoOperator.java   |   17 +-
 .../execution/operator/process/LimitOperator.java  |    2 +-
 .../operator/process/LinearFillOperator.java       |    4 +-
 .../operator/process/MergeSortOperator.java        |   12 +-
 .../execution/operator/process/OffsetOperator.java |    2 +-
 .../operator/process/ProjectOperator.java          |    4 +-
 .../process/RawDataAggregationOperator.java        |    7 +-
 .../operator/process/SingleDeviceViewOperator.java |   18 +-
 .../process/SingleInputAggregationOperator.java    |    4 +-
 .../process/SlidingWindowAggregationOperator.java  |    7 +-
 .../execution/operator/process/SortOperator.java   |   12 +-
 .../operator/process/TagAggregationOperator.java   |   14 +-
 .../execution/operator/process/TopKOperator.java   |   30 +-
 .../operator/process/TransformOperator.java        |   14 +-
 .../execution/operator/process/fill/IFill.java     |    4 +-
 .../operator/process/fill/ILinearFill.java         |    4 +-
 .../process/fill/identity/IdentityFill.java        |    5 +-
 .../process/fill/identity/IdentityLinearFill.java  |    5 +-
 .../operator/process/fill/linear/LinearFill.java   |    7 +-
 .../process/join/FullOuterTimeJoinOperator.java    |   10 +-
 .../process/join/HorizontallyConcatOperator.java   |   15 +-
 .../process/join/InnerTimeJoinOperator.java        |   14 +-
 .../process/join/LeftOuterTimeJoinOperator.java    |   16 +-
 .../operator/process/join/merge/ColumnMerger.java  |    6 +-
 .../process/join/merge/MergeSortComparator.java    |    2 +-
 .../process/join/merge/MultiColumnMerger.java      |   11 +-
 .../join/merge/NonOverlappedMultiColumnMerger.java |    7 +-
 .../process/join/merge/SingleColumnMerger.java     |   11 +-
 .../last/AbstractUpdateLastCacheOperator.java      |   12 +-
 .../last/AlignedUpdateLastCacheOperator.java       |    5 +-
 .../AlignedUpdateViewPathLastCacheOperator.java    |    3 +-
 .../process/last/LastQueryCollectOperator.java     |    2 +-
 .../process/last/LastQueryMergeOperator.java       |   10 +-
 .../operator/process/last/LastQueryOperator.java   |    6 +-
 .../process/last/LastQuerySortOperator.java        |    8 +-
 .../process/last/LastQueryTransformOperator.java   |    4 +-
 .../operator/process/last/LastQueryUtil.java       |   18 +-
 .../process/last/UpdateLastCacheOperator.java      |    7 +-
 .../last/UpdateViewPathLastCacheOperator.java      |    5 +-
 .../schema/CountGroupByLevelMergeOperator.java     |   10 +-
 .../schema/CountGroupByLevelScanOperator.java      |   12 +-
 .../operator/schema/CountMergeOperator.java        |    6 +-
 .../schema/NodeManageMemoryMergeOperator.java      |   12 +-
 .../operator/schema/NodePathsConvertOperator.java  |   10 +-
 .../operator/schema/NodePathsCountOperator.java    |    8 +-
 .../operator/schema/SchemaCountOperator.java       |    6 +-
 .../operator/schema/SchemaFetchMergeOperator.java  |   10 +-
 .../operator/schema/SchemaFetchScanOperator.java   |   13 +-
 .../operator/schema/SchemaQueryMergeOperator.java  |    2 +-
 .../schema/SchemaQueryOrderByHeatOperator.java     |    8 +-
 .../operator/schema/SchemaQueryScanOperator.java   |    8 +-
 .../operator/schema/SchemaTsBlockUtil.java         |    8 +-
 .../operator/schema/source/DeviceSchemaSource.java |    7 +-
 .../operator/schema/source/ISchemaSource.java      |    3 +-
 .../schema/source/LogicalViewSchemaSource.java     |    3 +-
 .../operator/schema/source/NodeSchemaSource.java   |    7 +-
 .../schema/source/PathsUsingTemplateSource.java    |    6 +-
 .../schema/source/TimeSeriesSchemaSource.java      |    5 +-
 .../operator/sink/IdentitySinkOperator.java        |    2 +-
 .../operator/sink/ShuffleHelperOperator.java       |    2 +-
 .../execution/operator/sink/SinkOperator.java      |    3 +-
 .../source/AbstractDataSourceOperator.java         |    5 +-
 .../AbstractSeriesAggregationScanOperator.java     |   13 +-
 .../operator/source/AlignedSeriesScanOperator.java |   17 +-
 .../operator/source/AlignedSeriesScanUtil.java     |   13 +-
 .../operator/source/ExchangeOperator.java          |    4 +-
 .../execution/operator/source/FileLoaderUtils.java |   21 +-
 .../operator/source/LastCacheScanOperator.java     |    3 +-
 .../operator/source/SeriesScanOperator.java        |   15 +-
 .../execution/operator/source/SeriesScanUtil.java  |   35 +-
 .../operator/source/ShowQueriesOperator.java       |   15 +-
 .../operator/window/AbstractVariationWindow.java   |    4 +-
 .../execution/operator/window/ConditionWindow.java |    4 +-
 .../operator/window/ConditionWindowManager.java    |   11 +-
 .../execution/operator/window/CountWindow.java     |    4 +-
 .../operator/window/CountWindowManager.java        |   11 +-
 .../execution/operator/window/IWindow.java         |    4 +-
 .../execution/operator/window/IWindowManager.java  |   11 +-
 .../execution/operator/window/SessionWindow.java   |    6 +-
 .../operator/window/SessionWindowManager.java      |    9 +-
 .../execution/operator/window/TimeWindow.java      |    8 +-
 .../operator/window/TimeWindowManager.java         |    9 +-
 .../operator/window/VariationWindowManager.java    |    5 +-
 .../operator/window/VariationWindowParameter.java  |    2 +-
 .../operator/window/WindowManagerFactory.java      |    3 +-
 .../db/queryengine/plan/analyze/Analysis.java      |   11 +-
 .../queryengine/plan/analyze/AnalyzeVisitor.java   |   10 +-
 .../plan/analyze/ExpressionAnalyzer.java           |    3 +-
 .../plan/analyze/ExpressionTypeAnalyzer.java       |    5 +-
 .../plan/analyze/GroupByLevelHelper.java           |    3 +-
 .../db/queryengine/plan/analyze/IAnalysis.java     |    3 +-
 .../plan/analyze/LoadTsfileAnalyzer.java           |   22 +-
 .../queryengine/plan/analyze/PredicateUtils.java   |    7 +-
 .../queryengine/plan/analyze/SelectIntoUtils.java  |    5 +-
 .../queryengine/plan/analyze/TemplatedAnalyze.java |    8 +-
 .../db/queryengine/plan/analyze/TemplatedInfo.java |    9 +-
 .../db/queryengine/plan/analyze/TypeProvider.java  |    4 +-
 .../analyze/cache/schema/DataNodeSchemaCache.java  |    6 +-
 .../schema/DeviceUsingTemplateSchemaCache.java     |    4 +-
 .../analyze/cache/schema/SchemaCacheEntry.java     |    9 +-
 .../cache/schema/TimeSeriesSchemaCache.java        |    6 +-
 .../schema/lastcache/DataNodeLastCacheManager.java |    2 +-
 .../schema/lastcache/ILastCacheContainer.java      |    2 +-
 .../cache/schema/lastcache/LastCacheContainer.java |    5 +-
 .../schema/lastcache/value/ILastCacheValue.java    |    4 +-
 .../schema/lastcache/value/LastCacheValue.java     |    4 +-
 .../analyze/schema/AutoCreateSchemaExecutor.java   |   13 +-
 .../analyze/schema/ClusterSchemaFetchExecutor.java |    9 +-
 .../plan/analyze/schema/ClusterSchemaFetcher.java  |   11 +-
 .../plan/analyze/schema/ISchemaAutoCreation.java   |    7 +-
 .../plan/analyze/schema/ISchemaComputation.java    |    3 +-
 .../plan/analyze/schema/ISchemaFetcher.java        |    9 +-
 .../plan/analyze/schema/NormalSchemaFetcher.java   |    5 +-
 .../plan/analyze/schema/SchemaValidator.java       |    7 +-
 .../plan/analyze/schema/TemplateSchemaFetcher.java |    7 +-
 .../plan/execution/IQueryExecution.java            |    3 +-
 .../queryengine/plan/execution/QueryExecution.java |    2 +-
 .../plan/execution/config/ConfigExecution.java     |    4 +-
 .../plan/execution/config/ConfigTaskResult.java    |    3 +-
 .../plan/execution/config/ConfigTaskVisitor.java   |    3 +-
 .../config/executor/ClusterConfigTaskExecutor.java |    2 +-
 .../config/metadata/CountDatabaseTask.java         |    4 +-
 .../config/metadata/CountTimeSlotListTask.java     |    4 +-
 .../execution/config/metadata/GetRegionIdTask.java |    4 +-
 .../config/metadata/GetSeriesSlotListTask.java     |    4 +-
 .../config/metadata/GetTimeSlotListTask.java       |    8 +-
 .../config/metadata/ShowClusterDetailsTask.java    |    8 +-
 .../config/metadata/ShowClusterIdTask.java         |    8 +-
 .../execution/config/metadata/ShowClusterTask.java |    8 +-
 .../config/metadata/ShowConfigNodesTask.java       |    6 +-
 .../config/metadata/ShowContinuousQueriesTask.java |   10 +-
 .../config/metadata/ShowDataNodesTask.java         |    6 +-
 .../config/metadata/ShowFunctionsTask.java         |    8 +-
 .../config/metadata/ShowPipePluginsTask.java       |    8 +-
 .../execution/config/metadata/ShowRegionTask.java  |   10 +-
 .../execution/config/metadata/ShowTTLTask.java     |    8 +-
 .../config/metadata/ShowTriggersTask.java          |    6 +-
 .../config/metadata/ShowVariablesTask.java         |    8 +-
 .../template/ShowNodesInSchemaTemplateTask.java    |   10 +-
 .../metadata/template/ShowPathSetTemplateTask.java |    8 +-
 .../metadata/template/ShowSchemaTemplateTask.java  |    8 +-
 .../execution/config/sys/pipe/ShowPipeTask.java    |    8 +-
 .../config/sys/quota/ShowSpaceQuotaTask.java       |    6 +-
 .../config/sys/quota/ShowThrottleQuotaTask.java    |    6 +-
 .../sys/subscription/ShowSubscriptionTask.java     |    6 +-
 .../config/sys/subscription/ShowTopicsTask.java    |    6 +-
 .../plan/execution/memory/MemorySourceHandle.java  |    4 +-
 .../execution/memory/StatementMemorySource.java    |    3 +-
 .../memory/StatementMemorySourceVisitor.java       |   11 +-
 .../db/queryengine/plan/expression/Expression.java |    5 +-
 .../plan/expression/ExpressionFactory.java         |    5 +-
 .../plan/expression/binary/BinaryExpression.java   |    3 +-
 .../plan/expression/leaf/ConstantOperand.java      |    5 +-
 .../plan/expression/leaf/LeafOperand.java          |    3 +-
 .../plan/expression/leaf/TimeSeriesOperand.java    |    3 +-
 .../plan/expression/multi/FunctionExpression.java  |    5 +-
 .../multi/builtin/BuiltInScalarFunctionHelper.java |    3 +-
 .../multi/builtin/helper/CastFunctionHelper.java   |    5 +-
 .../multi/builtin/helper/DiffFunctionHelper.java   |    5 +-
 .../builtin/helper/ReplaceFunctionHelper.java      |    5 +-
 .../multi/builtin/helper/RoundFunctionHelper.java  |    5 +-
 .../builtin/helper/SubStringFunctionHelper.java    |    5 +-
 .../expression/other/CaseWhenThenExpression.java   |    4 +-
 .../expression/other/GroupByTimeExpression.java    |    7 +-
 .../plan/expression/ternary/BetweenExpression.java |    3 +-
 .../plan/expression/ternary/TernaryExpression.java |    3 +-
 .../plan/expression/unary/InExpression.java        |    3 +-
 .../plan/expression/unary/IsNullExpression.java    |    3 +-
 .../plan/expression/unary/LikeExpression.java      |    7 +-
 .../plan/expression/unary/RegularExpression.java   |    4 +-
 .../plan/expression/unary/UnaryExpression.java     |    3 +-
 .../visitor/ColumnTransformerVisitor.java          |    9 +-
 .../visitor/IntermediateLayerVisitor.java          |    3 +-
 .../visitor/ReplaceLogicalViewVisitor.java         |    5 +-
 .../visitor/ReplaceSubTreeWithViewVisitor.java     |    3 +-
 ...edConcatRemoveUnExistentMeasurementVisitor.java |    3 +-
 .../visitor/TransformToViewExpressionVisitor.java  |    3 +-
 .../cartesian/BindSchemaForExpressionVisitor.java  |    3 +-
 .../ConcatExpressionWithSuffixPathsVisitor.java    |    3 +-
 .../predicate/ConvertPredicateToFilterVisitor.java |   19 +-
 .../ConvertPredicateToTimeFilterVisitor.java       |   13 +-
 .../predicate/PredicatePushIntoScanChecker.java    |    2 +-
 .../plan/optimization/LimitOffsetPushDown.java     |    3 +-
 .../db/queryengine/plan/parser/ASTVisitor.java     |   14 +-
 .../plan/parser/StatementGenerator.java            |   12 +-
 .../plan/planner/LocalExecutionPlanContext.java    |   12 +-
 .../plan/planner/LogicalPlanBuilder.java           |    6 +-
 .../plan/planner/LogicalPlanVisitor.java           |    4 +-
 .../plan/planner/OperatorTreeGenerator.java        |   20 +-
 .../plan/planner/TemplatedLogicalPlan.java         |    3 +-
 .../plan/planner/TemplatedLogicalPlanBuilder.java  |    3 +-
 .../distribution/DistributionPlanContext.java      |    3 +-
 .../SimpleFragmentParallelPlanner.java             |    4 +-
 .../plan/planner/distribution/SourceRewriter.java  |    3 +-
 .../plan/planner/plan/FragmentInstance.java        |    4 +-
 .../plan/planner/plan/PlanFragment.java            |    3 +-
 .../plan/planner/plan/TimePredicate.java           |    3 +-
 .../plan/planner/plan/TreeModelTimePredicate.java  |    3 +-
 .../plan/planner/plan/node/ExplainAnalyzeNode.java |    3 +-
 .../plan/planner/plan/node/PlanGraphPrinter.java   |    2 +-
 .../plan/planner/plan/node/PlanNode.java           |    4 +-
 .../plan/planner/plan/node/PlanNodeId.java         |    2 +-
 .../plan/planner/plan/node/PlanNodeType.java       |    3 +-
 .../plan/node/load/LoadSingleTsFileNode.java       |    6 +-
 .../planner/plan/node/load/LoadTsFileNode.java     |    3 +-
 .../plan/node/load/LoadTsFilePieceNode.java        |    6 +-
 .../plan/node/metedata/read/DevicesCountNode.java  |    3 +-
 .../node/metedata/read/DevicesSchemaScanNode.java  |    3 +-
 .../metedata/read/LevelTimeSeriesCountNode.java    |    3 +-
 .../metedata/read/LogicalViewSchemaScanNode.java   |    3 +-
 .../read/NodeManagementMemoryMergeNode.java        |    2 +-
 .../metedata/read/PathsUsingTemplateScanNode.java  |    3 +-
 .../node/metedata/read/SchemaFetchMergeNode.java   |    3 +-
 .../node/metedata/read/SchemaFetchScanNode.java    |    2 +-
 .../node/metedata/read/TimeSeriesCountNode.java    |    3 +-
 .../metedata/read/TimeSeriesSchemaScanNode.java    |    3 +-
 .../node/metedata/write/ActivateTemplateNode.java  |    2 +-
 .../node/metedata/write/AlterTimeSeriesNode.java   |    4 +-
 .../metedata/write/BatchActivateTemplateNode.java  |    5 +-
 .../write/CreateAlignedTimeSeriesNode.java         |   10 +-
 .../metedata/write/CreateMultiTimeSeriesNode.java  |   11 +-
 .../node/metedata/write/CreateTimeSeriesNode.java  |   10 +-
 .../metedata/write/DeactivateTemplateNode.java     |    3 +-
 .../write/InternalBatchActivateTemplateNode.java   |    5 +-
 .../write/InternalCreateMultiTimeSeriesNode.java   |    5 +-
 .../write/InternalCreateTimeSeriesNode.java        |    4 +-
 .../plan/node/metedata/write/MeasurementGroup.java |    8 +-
 .../metedata/write/PreDeactivateTemplateNode.java  |    3 +-
 .../write/RollbackPreDeactivateTemplateNode.java   |    3 +-
 .../metedata/write/view/AlterLogicalViewNode.java  |    5 +-
 .../metedata/write/view/CreateLogicalViewNode.java |    5 +-
 .../plan/node/pipe/PipeEnrichedInsertNode.java     |    7 +-
 .../plan/node/pipe/PipeOperateSchemaQueueNode.java |    3 +-
 .../node/process/AggregationMergeSortNode.java     |    3 +-
 .../planner/plan/node/process/AggregationNode.java |    3 +-
 .../plan/node/process/ColumnInjectNode.java        |    5 +-
 .../planner/plan/node/process/DeviceMergeNode.java |    3 +-
 .../planner/plan/node/process/DeviceViewNode.java  |    3 +-
 .../planner/plan/node/process/ExchangeNode.java    |    3 +-
 .../plan/planner/plan/node/process/FillNode.java   |    3 +-
 .../plan/planner/plan/node/process/FilterNode.java |    3 +-
 .../plan/node/process/GroupByLevelNode.java        |    3 +-
 .../planner/plan/node/process/GroupByTagNode.java  |    2 +-
 .../plan/planner/plan/node/process/LimitNode.java  |    3 +-
 .../planner/plan/node/process/MergeSortNode.java   |    3 +-
 .../plan/planner/plan/node/process/OffsetNode.java |    3 +-
 .../planner/plan/node/process/ProjectNode.java     |    3 +-
 .../plan/node/process/SingleDeviceViewNode.java    |    3 +-
 .../node/process/SlidingWindowAggregationNode.java |    3 +-
 .../plan/planner/plan/node/process/TopKNode.java   |    3 +-
 .../planner/plan/node/process/TransformNode.java   |    3 +-
 .../node/process/join/FullOuterTimeJoinNode.java   |    3 +-
 .../plan/node/process/join/InnerTimeJoinNode.java  |    3 +-
 .../node/process/join/LeftOuterTimeJoinNode.java   |    3 +-
 .../plan/node/process/last/LastQueryMergeNode.java |    3 +-
 .../plan/node/process/last/LastQueryNode.java      |    3 +-
 .../node/process/last/LastQueryTransformNode.java  |    3 +-
 .../planner/plan/node/sink/IdentitySinkNode.java   |    3 +-
 .../planner/plan/node/sink/ShuffleSinkNode.java    |    3 +-
 .../plan/node/source/AlignedLastQueryScanNode.java |    2 +-
 .../source/AlignedSeriesAggregationScanNode.java   |    2 +-
 .../plan/node/source/AlignedSeriesScanNode.java    |    5 +-
 .../plan/node/source/LastQueryScanNode.java        |    2 +-
 .../node/source/SeriesAggregationScanNode.java     |    2 +-
 .../planner/plan/node/source/SeriesScanNode.java   |    2 +-
 .../planner/plan/node/write/DeleteDataNode.java    |    5 +-
 .../plan/node/write/InsertMultiTabletsNode.java    |    5 +-
 .../plan/planner/plan/node/write/InsertNode.java   |    9 +-
 .../planner/plan/node/write/InsertRowNode.java     |   17 +-
 .../planner/plan/node/write/InsertRowsNode.java    |    5 +-
 .../plan/node/write/InsertRowsOfOneDeviceNode.java |    7 +-
 .../planner/plan/node/write/InsertTabletNode.java  |   21 +-
 .../plan/parameter/AggregationDescriptor.java      |    3 +-
 .../planner/plan/parameter/AggregationStep.java    |    2 +-
 .../CrossSeriesAggregationDescriptor.java          |    3 +-
 .../parameter/DeviceViewIntoPathDescriptor.java    |    7 +-
 .../planner/plan/parameter/FillDescriptor.java     |    5 +-
 .../plan/parameter/GroupByConditionParameter.java  |    3 +-
 .../plan/parameter/GroupByCountParameter.java      |    3 +-
 .../planner/plan/parameter/GroupByParameter.java   |    3 +-
 .../plan/parameter/GroupBySessionParameter.java    |    3 +-
 .../plan/parameter/GroupByTimeParameter.java       |    5 +-
 .../plan/parameter/GroupByVariationParameter.java  |    3 +-
 .../plan/planner/plan/parameter/InputLocation.java |    2 +-
 .../planner/plan/parameter/IntoPathDescriptor.java |    6 +-
 .../planner/plan/parameter/OrderByParameter.java   |    3 +-
 .../plan/planner/plan/parameter/OutputColumn.java  |    3 +-
 .../planner/plan/parameter/SeriesScanOptions.java  |    9 +-
 .../plan/scheduler/load/LoadTsFileScheduler.java   |    8 +-
 .../plan/statement/component/FillComponent.java    |    3 +-
 .../statement/component/GroupByTimeComponent.java  |    3 +-
 .../plan/statement/component/SortItem.java         |    3 +-
 .../plan/statement/crud/DeleteDataStatement.java   |    3 +-
 .../plan/statement/crud/InsertBaseStatement.java   |    7 +-
 .../crud/InsertMultiTabletsStatement.java          |    5 +-
 .../plan/statement/crud/InsertRowStatement.java    |   12 +-
 .../crud/InsertRowsOfOneDeviceStatement.java       |    5 +-
 .../plan/statement/crud/InsertRowsStatement.java   |    5 +-
 .../plan/statement/crud/InsertTabletStatement.java |   16 +-
 .../plan/statement/crud/LoadTsFileStatement.java   |    3 +-
 .../InternalBatchActivateTemplateStatement.java    |    3 +-
 .../InternalCreateMultiTimeSeriesStatement.java    |    3 +-
 .../InternalCreateTimeSeriesStatement.java         |    7 +-
 .../plan/statement/literal/BooleanLiteral.java     |    8 +-
 .../plan/statement/literal/DoubleLiteral.java      |    8 +-
 .../plan/statement/literal/Literal.java            |    7 +-
 .../plan/statement/literal/LongLiteral.java        |    8 +-
 .../plan/statement/literal/NullLiteral.java        |    8 +-
 .../plan/statement/literal/StringLiteral.java      |    8 +-
 .../metadata/CreateAlignedTimeSeriesStatement.java |    7 +-
 .../metadata/CreateMultiTimeSeriesStatement.java   |    7 +-
 .../metadata/CreateTimeSeriesStatement.java        |    7 +-
 .../statement/metadata/ShowDatabaseStatement.java  |    8 +-
 .../template/ActivateTemplateStatement.java        |    3 +-
 .../template/AlterSchemaTemplateStatement.java     |    7 +-
 .../template/BatchActivateTemplateStatement.java   |    3 +-
 .../template/CreateSchemaTemplateStatement.java    |    7 +-
 .../metadata/view/CreateLogicalViewStatement.java  |    3 +-
 .../transformation/api/LayerPointReader.java       |    5 +-
 .../transformation/api/LayerRowReader.java         |    3 +-
 .../transformation/api/LayerRowWindowReader.java   |    3 +-
 ...ializableRowRecordListBackedMultiColumnRow.java |    5 +-
 ...izableRowRecordListBackedMultiColumnWindow.java |    3 +-
 .../LayerPointReaderBackedSingleColumnRow.java     |    3 +-
 .../dag/builder/EvaluationDAGBuilder.java          |    3 +-
 .../dag/column/CaseWhenThenColumnTransformer.java  |   21 +-
 .../transformation/dag/column/ColumnCache.java     |    2 +-
 .../dag/column/ColumnTransformer.java              |    7 +-
 .../ArithmeticAdditionColumnTransformer.java       |    3 +-
 .../binary/ArithmeticBinaryColumnTransformer.java  |    7 +-
 .../ArithmeticDivisionColumnTransformer.java       |    3 +-
 .../binary/ArithmeticModuloColumnTransformer.java  |    3 +-
 .../ArithmeticMultiplicationColumnTransformer.java |    3 +-
 .../ArithmeticSubtractionColumnTransformer.java    |    3 +-
 .../dag/column/binary/BinaryColumnTransformer.java |    7 +-
 .../binary/CompareBinaryColumnTransformer.java     |   11 +-
 .../binary/CompareEqualToColumnTransformer.java    |    3 +-
 .../CompareGreaterEqualColumnTransformer.java      |    3 +-
 .../CompareGreaterThanColumnTransformer.java       |    3 +-
 .../binary/CompareLessEqualColumnTransformer.java  |    3 +-
 .../binary/CompareLessThanColumnTransformer.java   |    3 +-
 .../binary/CompareNonEqualColumnTransformer.java   |    3 +-
 .../column/binary/LogicAndColumnTransformer.java   |    7 +-
 .../binary/LogicBinaryColumnTransformer.java       |    5 +-
 .../column/binary/LogicOrColumnTransformer.java    |    7 +-
 .../dag/column/leaf/ConstantColumnTransformer.java |    8 +-
 .../dag/column/leaf/IdentityColumnTransformer.java |    4 +-
 .../dag/column/leaf/LeafColumnTransformer.java     |    5 +-
 .../dag/column/leaf/NullColumnTransformer.java     |    4 +-
 .../dag/column/leaf/TimeColumnTransformer.java     |    4 +-
 .../column/multi/MappableUDFColumnTransformer.java |    7 +-
 .../column/ternary/BetweenColumnTransformer.java   |    9 +-
 .../ternary/CompareTernaryColumnTransformer.java   |    9 +-
 .../column/ternary/TernaryColumnTransformer.java   |    3 +-
 .../unary/ArithmeticNegationColumnTransformer.java |    7 +-
 .../dag/column/unary/InColumnTransformer.java      |   11 +-
 .../dag/column/unary/IsNullColumnTransformer.java  |    7 +-
 .../column/unary/LogicNotColumnTransformer.java    |    9 +-
 .../dag/column/unary/RegularColumnTransformer.java |   11 +-
 .../dag/column/unary/UnaryColumnTransformer.java   |    7 +-
 .../scalar/CastFunctionColumnTransformer.java      |   15 +-
 .../scalar/DiffFunctionColumnTransformer.java      |    7 +-
 .../scalar/ReplaceFunctionColumnTransformer.java   |   11 +-
 .../scalar/RoundFunctionColumnTransformer.java     |    9 +-
 .../scalar/SubStringFunctionColumnTransformer.java |   11 +-
 .../dag/input/ConstantInputReader.java             |    4 +-
 .../transformation/dag/input/IUDFInputDataSet.java |    3 +-
 .../dag/input/QueryDataSetInputLayer.java          |    5 +-
 .../dag/input/TsBlockInputDataSet.java             |    7 +-
 .../MultiInputColumnIntermediateLayer.java         |    4 +-
 ...InputColumnMultiReferenceIntermediateLayer.java |    4 +-
 ...nputColumnSingleReferenceIntermediateLayer.java |    2 +-
 .../dag/transformer/Transformer.java               |    3 +-
 .../binary/ArithmeticBinaryTransformer.java        |    5 +-
 .../dag/transformer/binary/BinaryTransformer.java  |    3 +-
 .../binary/CompareBinaryTransformer.java           |    5 +-
 .../binary/CompareNonEqualTransformer.java         |    3 +-
 .../transformer/binary/LogicBinaryTransformer.java |    5 +-
 .../multi/MappableUDFQueryRowTransformer.java      |    5 +-
 .../dag/transformer/multi/UDFQueryTransformer.java |    3 +-
 .../multi/UniversalUDFQueryTransformer.java        |    3 +-
 .../ternary/CompareTernaryTransformer.java         |    5 +-
 .../transformer/ternary/TernaryTransformer.java    |    3 +-
 .../unary/ArithmeticNegationTransformer.java       |    3 +-
 .../dag/transformer/unary/InTransformer.java       |    7 +-
 .../dag/transformer/unary/IsNullTransformer.java   |    3 +-
 .../dag/transformer/unary/LogicNotTransformer.java |    5 +-
 .../dag/transformer/unary/RegularTransformer.java  |    9 +-
 .../transformer/unary/TransparentTransformer.java  |    3 +-
 .../dag/transformer/unary/UnaryTransformer.java    |    3 +-
 .../unary/scalar/CastFunctionTransformer.java      |    9 +-
 .../unary/scalar/DiffFunctionTransformer.java      |    3 +-
 .../unary/scalar/ReplaceFunctionTransformer.java   |    7 +-
 .../unary/scalar/RoundFunctionTransformer.java     |    3 +-
 .../unary/scalar/SubStringFunctionTransformer.java |    7 +-
 .../dag/udf/UDAFInformationInferrer.java           |    2 +-
 .../dag/udf/UDFParametersFactory.java              |    3 +-
 .../transformation/dag/udf/UDTFExecutor.java       |    6 +-
 .../dag/udf/UDTFInformationInferrer.java           |    2 +-
 .../transformation/dag/util/LayerCacheUtils.java   |    3 +-
 .../transformation/dag/util/TransformUtils.java    |   21 +-
 .../datastructure/SerializableList.java            |    3 +-
 .../row/ElasticSerializableRowRecordList.java      |    7 +-
 .../row/SerializableRowRecordList.java             |   11 +-
 .../tv/ElasticSerializableBinaryTVList.java        |    5 +-
 .../tv/ElasticSerializableTVList.java              |   13 +-
 .../datastructure/tv/SerializableBinaryTVList.java |    8 +-
 .../tv/SerializableBooleanTVList.java              |    8 +-
 .../datastructure/tv/SerializableDoubleTVList.java |    8 +-
 .../datastructure/tv/SerializableFloatTVList.java  |    8 +-
 .../datastructure/tv/SerializableIntTVList.java    |    8 +-
 .../datastructure/tv/SerializableLongTVList.java   |    8 +-
 .../datastructure/tv/SerializableTVList.java       |    7 +-
 .../schemaregion/impl/SchemaRegionMemoryImpl.java  |    8 +-
 .../schemaregion/impl/SchemaRegionPBTreeImpl.java  |   10 +-
 .../schemaregion/logfile/MLogDescription.java      |    2 +-
 .../schemaregion/logfile/SchemaLogReader.java      |    2 +-
 .../visitor/SchemaRegionPlanDeserializer.java      |    8 +-
 .../visitor/SchemaRegionPlanSerializer.java        |    9 +-
 .../visitor/SchemaRegionPlanTxtSerializer.java     |    7 +-
 .../mtree/impl/mem/MTreeBelowSGMemoryImpl.java     |   12 +-
 .../impl/mem/mnode/factory/MemMNodeFactory.java    |    3 +-
 .../impl/mem/mnode/impl/MeasurementMNode.java      |    3 +-
 .../mtree/impl/mem/mnode/info/LogicalViewInfo.java |    5 +-
 .../mtree/impl/mem/mnode/info/MeasurementInfo.java |    5 +-
 .../impl/mem/snapshot/MemMTreeSnapshotUtil.java    |    4 +-
 .../mtree/impl/pbtree/MTreeBelowSGCachedImpl.java  |   12 +-
 .../impl/pbtree/memory/ReleaseFlushMonitor.java    |    2 +-
 .../pbtree/mnode/factory/CacheMNodeFactory.java    |    3 +-
 .../pbtree/mnode/impl/CachedMeasurementMNode.java  |    3 +-
 .../impl/pbtree/schemafile/AliasIndexPage.java     |    3 +-
 .../mtree/impl/pbtree/schemafile/ISchemaPage.java  |    3 +-
 .../mtree/impl/pbtree/schemafile/InternalPage.java |    3 +-
 .../mtree/impl/pbtree/schemafile/RecordUtils.java  |   13 +-
 .../mtree/impl/pbtree/schemafile/SchemaFile.java   |    2 +-
 .../mtree/impl/pbtree/schemafile/SchemaPage.java   |    3 +-
 .../impl/pbtree/schemafile/SegmentedPage.java      |    3 +-
 .../impl/pbtree/schemafile/WrappedSegment.java     |   11 +-
 .../read/resp/info/ITimeSeriesSchemaInfo.java      |    2 +-
 .../read/resp/info/impl/ShowTimeSeriesResult.java  |    9 +-
 .../read/resp/info/impl/TimeseriesSchemaInfo.java  |    3 +-
 .../reader/impl/TimeseriesReaderWithViewFetch.java |    2 +-
 .../schemaengine/schemaregion/tag/TagLogFile.java  |    4 +-
 .../schemaengine/schemaregion/tag/TagManager.java  |    2 +-
 .../schemaregion/utils/MNodeUtils.java             |    3 +-
 .../schemaengine/schemaregion/utils/MetaUtils.java |    7 +-
 .../schemaregion/utils/ResourceByPathUtils.java    |   31 +-
 .../schemaengine/schemaregion/view/ViewPaths.java  |    3 +-
 .../view/visitor/TransformToExpressionVisitor.java |    3 +-
 .../write/req/ICreateAlignedTimeSeriesPlan.java    |    7 +-
 .../write/req/ICreateTimeSeriesPlan.java           |    7 +-
 .../write/req/SchemaRegionWritePlanFactory.java    |    7 +-
 .../req/impl/CreateAlignedTimeSeriesPlanImpl.java  |    9 +-
 .../write/req/impl/CreateTimeSeriesPlanImpl.java   |    9 +-
 .../template/ClusterTemplateManager.java           |    6 +-
 .../db/schemaengine/template/ITemplateManager.java |    3 +-
 .../iotdb/db/schemaengine/template/Template.java   |   14 +-
 .../template/TemplateAlterOperationType.java       |    2 +-
 .../template/TemplateInternalRPCUpdateType.java    |    2 +-
 .../template/TemplateInternalRPCUtil.java          |    4 +-
 .../template/alter/TemplateAlterInfo.java          |    2 +-
 .../template/alter/TemplateExtendInfo.java         |    8 +-
 .../metrics/IoTDBInternalLocalReporter.java        |    2 +-
 .../db/service/metrics/file/TsFileMetrics.java     |    2 +-
 .../iotdb/db/storageengine/StorageEngine.java      |    4 +-
 .../db/storageengine/buffer/BloomFilterCache.java  |    6 +-
 .../iotdb/db/storageengine/buffer/ChunkCache.java  |   10 +-
 .../buffer/TimeSeriesMetadataCache.java            |   16 +-
 .../db/storageengine/dataregion/DataRegion.java    |   24 +-
 .../dataregion/DeviceLastFlushTime.java            |    2 +-
 .../dataregion/HashLastFlushTimeMap.java           |    3 +-
 .../dataregion/IDataRegionForQuery.java            |    3 +-
 .../storageengine/dataregion/ILastFlushTime.java   |    2 +-
 .../dataregion/ILastFlushTimeMap.java              |    2 +-
 .../dataregion/PartitionLastFlushTime.java         |    2 +-
 .../dataregion/VirtualDataRegion.java              |    3 +-
 .../exception/CompactionExceptionHandler.java      |    2 +-
 .../performer/impl/FastCompactionPerformer.java    |   12 +-
 .../impl/ReadChunkCompactionPerformer.java         |   15 +-
 .../impl/ReadPointCompactionPerformer.java         |   16 +-
 .../execute/recover/CompactionRecoverTask.java     |    4 +-
 .../execute/task/AbstractCompactionTask.java       |    2 +-
 .../execute/task/CrossSpaceCompactionTask.java     |    2 +-
 .../execute/task/InnerSpaceCompactionTask.java     |    9 +-
 .../subtask/FastCompactionPerformerSubTask.java    |   11 +-
 .../task/subtask/ReadPointPerformerSubTask.java    |    6 +-
 .../execute/utils/CompactionPathUtils.java         |    7 +-
 .../compaction/execute/utils/CompactionUtils.java  |   10 +-
 .../execute/utils/MultiTsFileDeviceIterator.java   |   21 +-
 .../fast/AlignedSeriesCompactionExecutor.java      |   25 +-
 .../fast/NonAlignedSeriesCompactionExecutor.java   |   27 +-
 .../executor/fast/SeriesCompactionExecutor.java    |   17 +-
 .../executor/fast/element/AlignedPageElement.java  |    3 +-
 .../fast/element/ChunkMetadataElement.java         |    4 +-
 .../fast/element/NonAlignedPageElement.java        |    5 +-
 .../utils/executor/fast/element/PageElement.java   |    2 +-
 .../utils/executor/fast/element/PointElement.java  |    4 +-
 .../fast/reader/CompactionAlignedChunkReader.java  |   24 +-
 .../fast/reader/CompactionChunkReader.java         |   26 +-
 .../readchunk/AlignedSeriesCompactionExecutor.java |   33 +-
 .../ReadChunkAlignedSeriesCompactionExecutor.java  |   45 +-
 .../readchunk/SingleSeriesCompactionExecutor.java  |   29 +-
 .../executor/readchunk/loader/ChunkLoader.java     |   11 +-
 .../readchunk/loader/InstantChunkLoader.java       |   11 +-
 .../readchunk/loader/InstantPageLoader.java        |   17 +-
 .../executor/readchunk/loader/PageLoader.java      |   15 +-
 .../execute/utils/log/TsFileIdentifier.java        |    3 +-
 .../execute/utils/reader/IDataBlockReader.java     |    2 +-
 .../execute/utils/reader/PointPriorityReader.java  |    5 +-
 .../utils/reader/SeriesDataBlockReader.java        |    2 +-
 .../utils/writer/AbstractCompactionWriter.java     |   35 +-
 .../writer/AbstractCrossCompactionWriter.java      |   13 +-
 .../writer/AbstractInnerCompactionWriter.java      |    7 +-
 .../utils/writer/FastCrossCompactionWriter.java    |   19 +-
 .../utils/writer/FastInnerCompactionWriter.java    |   17 +-
 .../writer/ReadPointCrossCompactionWriter.java     |   19 +-
 .../writer/ReadPointInnerCompactionWriter.java     |   17 +-
 .../writer/RepairUnsortedFileCompactionWriter.java |   11 +-
 .../compaction/io/CompactionTsFileInput.java       |    4 +-
 .../compaction/io/CompactionTsFileReader.java      |   25 +-
 .../compaction/io/CompactionTsFileWriter.java      |   19 +-
 .../compaction/repair/RepairDataFileScanUtil.java  |   38 +-
 .../estimator/AbstractCompactionEstimator.java     |    4 +-
 .../estimator/AbstractCrossSpaceEstimator.java     |    3 +-
 .../estimator/AbstractInnerSpaceEstimator.java     |    3 +-
 .../estimator/CompactionEstimateUtils.java         |   11 +-
 .../impl/RewriteCrossSpaceCompactionSelector.java  |    4 +-
 .../utils/CrossSpaceCompactionCandidate.java       |    3 +-
 .../compaction/selector/utils/DeviceInfo.java      |    2 +-
 .../selector/utils/TsFileResourceCandidate.java    |    3 +-
 .../compaction/settle/SettleRequestHandler.java    |    2 +-
 .../compaction/tool/OverlapStatisticTool.java      |    4 +-
 .../compaction/tool/SingleSequenceFileTask.java    |    4 +-
 .../compaction/tool/TimePartitionProcessTask.java  |    4 +-
 .../compaction/tool/TsFileStatisticReader.java     |   10 +-
 .../compaction/tool/UnseqSpaceStatistics.java      |    2 +-
 .../dataregion/flush/CompressionRatio.java         |    2 +-
 .../dataregion/flush/MemTableFlushTask.java        |    6 +-
 .../dataregion/memtable/AbstractMemTable.java      |   13 +-
 .../memtable/AlignedReadOnlyMemChunk.java          |   21 +-
 .../memtable/AlignedWritableMemChunk.java          |   21 +-
 .../memtable/AlignedWritableMemChunkGroup.java     |    7 +-
 .../dataregion/memtable/DeviceIDFactory.java       |    5 +-
 .../dataregion/memtable/IMemTable.java             |    7 +-
 .../dataregion/memtable/IWritableMemChunk.java     |   11 +-
 .../memtable/IWritableMemChunkGroup.java           |    5 +-
 .../dataregion/memtable/PrimitiveMemTable.java     |    2 +-
 .../dataregion/memtable/ReadOnlyMemChunk.java      |   20 +-
 .../dataregion/memtable/TsFileProcessor.java       |   14 +-
 .../dataregion/memtable/WritableMemChunk.java      |   16 +-
 .../dataregion/memtable/WritableMemChunkGroup.java |    7 +-
 .../dataregion/modification/Deletion.java          |    5 +-
 .../dataregion/modification/ModificationFile.java  |    4 +-
 .../io/LocalTextModificationAccessor.java          |    2 +-
 .../dataregion/read/QueryDataSource.java           |    5 +-
 .../dataregion/read/control/FileReaderManager.java |    6 +-
 .../read/reader/chunk/DiskAlignedChunkLoader.java  |   17 +-
 .../read/reader/chunk/DiskChunkLoader.java         |   15 +-
 .../read/reader/chunk/MemAlignedChunkLoader.java   |   13 +-
 .../read/reader/chunk/MemAlignedChunkReader.java   |   11 +-
 .../read/reader/chunk/MemAlignedPageReader.java    |   30 +-
 .../read/reader/chunk/MemChunkLoader.java          |   13 +-
 .../read/reader/chunk/MemChunkReader.java          |   13 +-
 .../read/reader/chunk/MemPageReader.java           |   30 +-
 .../metadata/DiskAlignedChunkMetadataLoader.java   |   12 +-
 .../chunk/metadata/DiskChunkMetadataLoader.java    |   10 +-
 .../metadata/MemAlignedChunkMetadataLoader.java    |    9 +-
 .../chunk/metadata/MemChunkMetadataLoader.java     |    9 +-
 .../common/AlignedDescPriorityMergeReader.java     |    2 +-
 .../reader/common/AlignedPriorityMergeReader.java  |    4 +-
 .../reader/common/CachedPriorityMergeReader.java   |    5 +-
 .../reader/common/DescPriorityMergeReader.java     |    2 +-
 .../dataregion/read/reader/common/Element.java     |    4 +-
 .../read/reader/common/PriorityMergeReader.java    |    5 +-
 .../dataregion/snapshot/SnapshotFileSet.java       |    3 +-
 .../storageengine/dataregion/tsfile/TsFileID.java  |    2 +-
 .../dataregion/tsfile/TsFileManager.java           |    3 +-
 .../dataregion/tsfile/TsFileResource.java          |   24 +-
 .../dataregion/tsfile/TsFileResourceBlockType.java |    2 +-
 .../dataregion/tsfile/TsFileResourceList.java      |    3 +-
 .../tsfile/generator/TsFileNameGenerator.java      |    9 +-
 .../tsfile/timeindex/DeviceTimeIndex.java          |   12 +-
 .../dataregion/tsfile/timeindex/FileTimeIndex.java |   12 +-
 .../dataregion/tsfile/timeindex/ITimeIndex.java    |    7 +-
 .../dataregion/utils/TsFileResourceUtils.java      |   46 +-
 .../dataregion/wal/checkpoint/MemTableInfo.java    |    3 +-
 .../storageengine/dataregion/wal/node/WALNode.java |    4 +-
 .../file/AbstractTsFileRecoverPerformer.java       |    8 +-
 .../file/UnsealedTsFileRecoverPerformer.java       |    6 +-
 .../dataregion/wal/utils/WALEntryPosition.java     |    3 +-
 .../dataregion/wal/utils/WALInsertNodeCache.java   |    2 +-
 .../dataregion/wal/utils/WALWriteUtils.java        |   15 +-
 .../rescon/disk/DirectoryChecker.java              |    2 +-
 .../db/storageengine/rescon/disk/TierManager.java  |    6 +-
 .../rescon/memory/PrimitiveArrayManager.java       |    6 +-
 .../rescon/memory/TimePartitionManager.java        |    2 +-
 .../rescon/quotas/DefaultOperationQuota.java       |    5 +-
 .../broker/EnrichedTabletsBinaryCache.java         |    2 +-
 .../broker/SubscriptionPrefetchingQueue.java       |    2 +-
 .../receiver/SubscriptionReceiverV1.java           |    2 +-
 .../apache/iotdb/db/tools/IoTDBDataDirViewer.java  |    5 +-
 .../iotdb/db/tools/TsFileResourcePrinter.java      |    7 +-
 .../apache/iotdb/db/tools/TsFileSelfCheckTool.java |   22 +-
 .../apache/iotdb/db/tools/TsFileSketchTool.java    |   44 +-
 .../iotdb/db/tools/TsFileSplitByPartitionTool.java |   52 +-
 .../org/apache/iotdb/db/tools/TsFileSplitTool.java |   44 +-
 .../db/tools/schema/SRStatementGenerator.java      |    4 +-
 .../tools/schema/SchemaRegionSnapshotParser.java   |    2 +-
 .../db/tools/settle/TsFileAndModSettleTool.java    |    8 +-
 .../TsFileOverlapValidationAndRepairTool.java      |    7 +-
 .../db/tools/validate/TsFileValidationTool.java    |   36 +-
 .../iotdb/db/trigger/executor/TriggerExecutor.java |    2 +-
 .../db/trigger/executor/TriggerFireVisitor.java    |    6 +-
 .../org/apache/iotdb/db/utils/CommonUtils.java     |    6 +-
 .../org/apache/iotdb/db/utils/DateTimeUtils.java   |    3 +-
 .../iotdb/db/utils/EncodingInferenceUtils.java     |    7 +-
 .../apache/iotdb/db/utils/ErrorHandlingUtils.java  |    2 +-
 .../java/org/apache/iotdb/db/utils/MathUtils.java  |    2 +-
 .../java/org/apache/iotdb/db/utils/MemUtils.java   |   24 +-
 .../apache/iotdb/db/utils/ModificationUtils.java   |    7 +-
 .../apache/iotdb/db/utils/QueryDataSetUtils.java   |   17 +-
 .../org/apache/iotdb/db/utils/SchemaUtils.java     |    5 +-
 .../apache/iotdb/db/utils/TimeValuePairUtils.java  |   26 +-
 .../apache/iotdb/db/utils/TypeInferenceUtils.java  |    2 +-
 .../db/utils/columngenerator/ColumnGenerator.java  |    2 +-
 .../SlidingTimeColumnGenerator.java                |    5 +-
 .../parameter/ColumnGeneratorParameter.java        |    5 +-
 .../SlidingTimeColumnGeneratorParameter.java       |    5 +-
 .../iotdb/db/utils/constant/TestConstant.java      |    2 +-
 .../db/utils/datastructure/AlignedTVList.java      |   31 +-
 .../db/utils/datastructure/BackAlignedTVList.java  |    3 +-
 .../db/utils/datastructure/BackBinaryTVList.java   |    5 +-
 .../db/utils/datastructure/BackBooleanTVList.java  |    3 +-
 .../db/utils/datastructure/BackDoubleTVList.java   |    3 +-
 .../db/utils/datastructure/BackFloatTVList.java    |    3 +-
 .../db/utils/datastructure/BackIntTVList.java      |    3 +-
 .../db/utils/datastructure/BackLongTVList.java     |    3 +-
 .../iotdb/db/utils/datastructure/BinaryTVList.java |   19 +-
 .../db/utils/datastructure/BooleanTVList.java      |   17 +-
 .../iotdb/db/utils/datastructure/DoubleTVList.java |   15 +-
 .../iotdb/db/utils/datastructure/FloatTVList.java  |   15 +-
 .../iotdb/db/utils/datastructure/IntTVList.java    |   15 +-
 .../iotdb/db/utils/datastructure/LongTVList.java   |   15 +-
 .../iotdb/db/utils/datastructure/MergeSortKey.java |    2 +-
 .../utils/datastructure/PatternTreeMapFactory.java |    5 +-
 .../db/utils/datastructure/QuickAlignedTVList.java |    2 +-
 .../db/utils/datastructure/QuickBinaryTVList.java  |    2 +-
 .../iotdb/db/utils/datastructure/SortKey.java      |    2 +-
 .../iotdb/db/utils/datastructure/TVList.java       |   23 +-
 .../db/utils/datastructure/TimAlignedTVList.java   |    3 +-
 .../db/utils/datastructure/TimBinaryTVList.java    |    5 +-
 .../db/utils/datastructure/TimBooleanTVList.java   |    3 +-
 .../db/utils/datastructure/TimDoubleTVList.java    |    3 +-
 .../db/utils/datastructure/TimFloatTVList.java     |    3 +-
 .../iotdb/db/utils/datastructure/TimIntTVList.java |    3 +-
 .../db/utils/datastructure/TimLongTVList.java      |    3 +-
 .../apache/iotdb/db/utils/sort/DiskSpiller.java    |   11 +-
 .../iotdb/db/utils/sort/FileSpillerReader.java     |    7 +-
 .../iotdb/db/utils/sort/SortBufferManager.java     |    3 +-
 .../iotdb/db/utils/windowing/api/Window.java       |    4 +-
 .../windowing/configuration/Configuration.java     |    3 +-
 .../SlidingSizeWindowConfiguration.java            |    3 +-
 .../SlidingTimeWindowConfiguration.java            |    3 +-
 .../handler/SlidingWindowEvaluationHandler.java    |    5 +-
 .../utils/windowing/window/EvictableBatchList.java |    9 +-
 .../db/utils/windowing/window/WindowImpl.java      |    7 +-
 .../dataregion/DataRegionStateMachineTest.java     |    2 +-
 .../apache/iotdb/db/metadata/MetaUtilsTest.java    |    4 +-
 .../db/metadata/cache/DataNodeSchemaCacheTest.java |   12 +-
 .../cache/dualkeycache/DualKeyCacheTest.java       |    8 +-
 .../db/metadata/idtable/entry/DeviceIDTest.java    |    2 +-
 .../metadata/mtree/schemafile/RecordUtilTests.java |   10 +-
 .../metadata/mtree/schemafile/SchemaFileTest.java  |    6 +-
 .../metadata/mtree/schemafile/SchemaPageTest.java  |    6 +-
 .../mtree/schemafile/WrappedSegmentTest.java       |    6 +-
 .../db/metadata/path/MeasurementPathTest.java      |    8 +-
 .../schemaRegion/SchemaRegionAliasAndTagTest.java  |    6 +-
 .../schemaRegion/SchemaRegionBasicTest.java        |    6 +-
 .../schemaRegion/SchemaRegionManagementTest.java   |    6 +-
 .../SchemaRegionSimpleRecoverTest.java             |    6 +-
 .../schemaRegion/SchemaRegionTemplateTest.java     |    6 +-
 .../schemaRegion/SchemaRegionTestUtil.java         |    7 +-
 .../schemaRegion/SchemaStatisticsTest.java         |    8 +-
 .../metadata/view/ViewExpressionToStringTest.java  |    2 +-
 .../connector/PipeDataNodeThriftRequestTest.java   |   14 +-
 .../iotdb/db/pipe/connector/PipeReceiverTest.java  |    6 +-
 .../db/pipe/event/PipeDataTypeTransformerTest.java |    2 +-
 .../pipe/event/PipeTabletInsertionEventTest.java   |   12 +-
 .../event/TsFileInsertionDataContainerTest.java    |   10 +-
 .../db/pipe/extractor/PipeRealtimeExtractTest.java |    4 +-
 .../extractor/SchemaRegionListeningQueueTest.java  |    6 +-
 .../pattern/CachedSchemaPatternMatcherTest.java    |    2 +-
 .../resource/PipeTsFileResourceManagerTest.java    |   18 +-
 .../apache/iotdb/db/query/udf/example/Adder.java   |    2 +-
 .../common/schematree/ClusterSchemaTreeTest.java   |   10 +-
 .../queryengine/common/schematree/NodeRefTest.java |    2 +-
 .../queryengine/execution/ConfigExecutionTest.java |    8 +-
 .../db/queryengine/execution/DataDriverTest.java   |   10 +-
 .../execution/aggregation/AccumulatorTest.java     |   28 +-
 .../aggregation/TimeRangeIteratorTest.java         |    4 +-
 .../execution/exchange/SinkChannelTest.java        |    4 +-
 .../execution/exchange/SourceHandleTest.java       |    2 +-
 .../queryengine/execution/exchange/StubSink.java   |    2 +-
 .../db/queryengine/execution/exchange/Utils.java   |    6 +-
 .../executor/RegionWriteExecutorTest.java          |    2 +-
 .../execution/memory/MemorySourceHandleTest.java   |    2 +-
 .../operator/AggregationOperatorTest.java          |   12 +-
 .../AlignedSeriesAggregationScanOperatorTest.java  |   20 +-
 .../operator/AlignedSeriesScanOperatorTest.java    |   22 +-
 .../execution/operator/AlignedSeriesTestUtil.java  |   20 +-
 .../execution/operator/DeviceViewOperatorTest.java |   10 +-
 .../execution/operator/FillOperatorTest.java       |    6 +-
 .../operator/HorizontallyConcatOperatorTest.java   |   12 +-
 .../operator/LastQueryMergeOperatorTest.java       |    6 +-
 .../execution/operator/LastQueryOperatorTest.java  |   12 +-
 .../operator/LastQuerySortOperatorTest.java        |   12 +-
 .../execution/operator/LimitOperatorTest.java      |   10 +-
 .../execution/operator/LinearFillOperatorTest.java |    6 +-
 .../execution/operator/MergeSortOperatorTest.java  |   14 +-
 .../execution/operator/MultiColumnMergerTest.java  |   12 +-
 .../NonOverlappedMultiColumnMergerTest.java        |   12 +-
 .../execution/operator/OffsetOperatorTest.java     |   10 +-
 .../execution/operator/OperatorMemoryTest.java     |   22 +-
 .../operator/RawDataAggregationOperatorTest.java   |   16 +-
 .../SeriesAggregationScanOperatorTest.java         |   18 +-
 .../execution/operator/SeriesScanOperatorTest.java |   10 +-
 .../execution/operator/SingleColumnMergerTest.java |   12 +-
 .../operator/SingleDeviceViewOperatorTest.java     |    8 +-
 .../SlidingWindowAggregationOperatorTest.java      |   12 +-
 .../execution/operator/SortOperatorTest.java       |   10 +-
 .../execution/operator/TopKOperatorTest.java       |   16 +-
 .../operator/UpdateLastCacheOperatorTest.java      |   14 +-
 .../process/join/InnerTimeJoinOperatorTest.java    |   10 +-
 .../join/LeftOuterTimeJoinOperatorTest.java        |    8 +-
 .../schema/CountGroupByLevelMergeOperatorTest.java |    4 +-
 .../operator/schema/SchemaCountOperatorTest.java   |    4 +-
 .../schema/SchemaFetchScanOperatorTest.java        |   18 +-
 .../schema/SchemaQueryScanOperatorTest.java        |   14 +-
 .../operator/sink/IdentitySinkOperatorTest.java    |   10 +-
 .../ConvertPredicateToTimeFilterTest.java          |   10 +-
 .../plan/analyze/AggregationDescriptorTest.java    |    2 +-
 .../db/queryengine/plan/analyze/AnalyzeTest.java   |    4 +-
 .../plan/analyze/FakeSchemaFetcherImpl.java        |   11 +-
 .../plan/analyze/QueryTimePartitionTest.java       |   10 +-
 .../optimization/ColumnInjectionPushDownTest.java  |    2 +-
 .../plan/optimization/OptimizationTestUtil.java    |    2 +-
 .../plan/parser/StatementGeneratorTest.java        |    8 +-
 .../queryengine/plan/planner/ExpressionTest.java   |    2 +-
 .../plan/planner/PipelineBuilderTest.java          |    2 +-
 .../distribution/AggregationDistributionTest.java  |    2 +-
 .../distribution/DistributionPlannerBasicTest.java |    4 +-
 .../plan/planner/distribution/Util.java            |   10 +-
 .../plan/planner/distribution/Util2.java           |   10 +-
 .../logical/DataQueryLogicalPlannerTest.java       |    2 +-
 .../logical/SchemaQueryLogicalPlannerTest.java     |    6 +-
 .../plan/planner/node/load/LoadTsFileNodeTest.java |    2 +-
 .../metadata/write/MetadataWriteNodeSerDeTest.java |    8 +-
 .../node/pipe/PipeEnrichedInsertNodeSerdeTest.java |    2 +-
 .../pipe/PipeEnrichedWritePlanNodeSerdeTest.java   |    2 +-
 .../node/process/AggregationNodeSerdeTest.java     |    4 +-
 .../planner/node/process/FilterNodeSerdeTest.java  |    2 +-
 .../node/process/GroupByLevelNodeSerdeTest.java    |    4 +-
 .../node/process/GroupByTagNodeSerdeTest.java      |    4 +-
 .../planner/node/process/LimitNodeSerdeTest.java   |    2 +-
 .../planner/node/process/OffsetNodeSerdeTest.java  |    2 +-
 .../planner/node/process/SortNodeSerdeTest.java    |    2 +-
 .../node/process/TimeJoinNodeSerdeTest.java        |    2 +-
 .../source/SeriesAggregationScanNodeSerdeTest.java |    4 +-
 .../node/source/SeriesScanNodeSerdeTest.java       |    2 +-
 .../write/InsertMultiTabletsNodeSerdeTest.java     |    6 +-
 .../planner/node/write/InsertRowNodeSerdeTest.java |    4 +-
 .../node/write/InsertRowsNodeSerdeTest.java        |    2 +-
 .../write/InsertRowsOfOneDeviceNodeSerdeTest.java  |    2 +-
 .../node/write/InsertTabletNodeSerdeTest.java      |    4 +-
 .../planner/node/write/WritePlanNodeSplitTest.java |    2 +-
 .../plan/statement/QueryStatementTest.java         |    2 +-
 ...meticAndCompareBinaryColumnTransformerTest.java |   16 +-
 .../binary/LogicBinaryColumnTransformerTest.java   |   16 +-
 .../column/unary/UnaryColumnTransformerTest.java   |   16 +-
 .../ElasticSerializableRowRecordListTest.java      |    4 +-
 .../ElasticSerializableTVListTest.java             |    4 +-
 .../SerializableBinaryTVListTest.java              |    6 +-
 .../SerializableBooleanTVListTest.java             |    2 +-
 .../SerializableDoubleTVListTest.java              |    2 +-
 .../datastructure/SerializableFloatTVListTest.java |    2 +-
 .../datastructure/SerializableIntTVListTest.java   |    2 +-
 .../datastructure/SerializableLongTVListTest.java  |    2 +-
 .../SerializableRowRecordListTest.java             |    8 +-
 .../DataNodeInternalRPCServiceImplTest.java        |    6 +-
 .../storageengine/buffer/BloomFilterCacheTest.java |   20 +-
 .../db/storageengine/buffer/ChunkCacheTest.java    |   30 +-
 .../storageengine/dataregion/DataRegionTest.java   |   20 +-
 .../dataregion/LastFlushTimeMapTest.java           |   10 +-
 .../iotdb/db/storageengine/dataregion/TTLTest.java |   12 +-
 .../dataregion/TsFileManagerTest.java              |    2 +-
 .../TsFileResourceProgressIndexTest.java           |    6 +-
 .../compaction/AbstractCompactionTest.java         |   42 +-
 .../compaction/CompactionDataTypeNotMatchTest.java |   20 +-
 .../compaction/CompactionOverlapCheckTest.java     |    8 +-
 .../compaction/CompactionValidationTest.java       |   22 +-
 .../compaction/CompactionWorkerTest.java           |    2 +-
 .../CrossSpaceCompactionWithUnusualCasesTest.java  |   22 +-
 .../compaction/FastAlignedCrossCompactionTest.java |   24 +-
 .../FastCompactionPerformerWithEmptyPageTest.java  |   16 +-
 ...InconsistentCompressionTypeAndEncodingTest.java |   30 +-
 .../FastCrossCompactionPerformerTest.java          |   22 +-
 .../FastInnerCompactionPerformerTest.java          |   46 +-
 .../FastNonAlignedCrossCompactionTest.java         |   24 +-
 .../compaction/ReadChunkInnerCompactionTest.java   |   38 +-
 .../ReadPointAlignedCrossCompactionTest.java       |   24 +-
 .../ReadPointCompactionPerformerTest.java          |   24 +-
 .../ReadPointNonAlignedCrossCompactionTest.java    |   24 +-
 .../compaction/TestUtilsForAlignedSeries.java      |   15 +-
 .../TsFileValidationCorrectnessTests.java          |   18 +-
 .../cross/CrossSpaceCompactionExceptionTest.java   |   14 +-
 .../cross/CrossSpaceCompactionSelectorTest.java    |    2 +-
 .../CrossSpaceCompactionWithFastPerformerTest.java |    4 +-
 ...eCompactionWithFastPerformerValidationTest.java |   20 +-
 ...sSpaceCompactionWithReadPointPerformerTest.java |    4 +-
 ...actionWithReadPointPerformerValidationTest.java |   18 +-
 .../InsertionCrossSpaceCompactionRecoverTest.java  |   22 +-
 .../InsertionCrossSpaceCompactionSelectorTest.java |   20 +-
 .../cross/InsertionCrossSpaceCompactionTest.java   |    8 +-
 .../dataregion/compaction/cross/MergeTest.java     |   22 +-
 .../compaction/cross/MergeUpgradeTest.java         |   24 +-
 .../cross/RewriteCompactionFileSelectorTest.java   |   14 +-
 .../RewriteCrossSpaceCompactionRecoverTest.java    |    8 +-
 ...eCrossSpaceCompactionWithFastPerformerTest.java |   18 +-
 ...sSpaceCompactionWithReadPointPerformerTest.java |   18 +-
 .../inner/AbstractInnerSpaceCompactionTest.java    |   22 +-
 .../inner/FastCompactionPerformerAlignedTest.java  |   10 +-
 .../FastCompactionPerformerNoAlignedTest.java      |   12 +-
 .../inner/InnerCompactionEmptyTsFileTest.java      |    2 +-
 .../compaction/inner/InnerCompactionLogTest.java   |    2 +-
 .../inner/InnerCompactionMoreDataTest.java         |   20 +-
 .../inner/InnerCompactionSchedulerTest.java        |    2 +-
 .../compaction/inner/InnerCompactionTest.java      |   22 +-
 .../InnerSeqCompactionWithFastPerformerTest.java   |    8 +-
 ...nerSeqCompactionWithReadChunkPerformerTest.java |    6 +-
 .../inner/InnerSpaceCompactionExceptionTest.java   |    6 +-
 .../inner/InnerSpaceCompactionSelectorTest.java    |    2 +-
 .../InnerUnseqCompactionWithFastPerformerTest.java |    4 +-
 ...rUnseqCompactionWithReadPointPerformerTest.java |    4 +-
 ...nkCompactionPerformerWithAlignedSeriesTest.java |   12 +-
 .../ReadChunkCompactionPerformerAlignedTest.java   |   24 +-
 .../ReadChunkCompactionPerformerNoAlignedTest.java |   14 +-
 .../inner/ReadChunkCompactionPerformerOldTest.java |   12 +-
 .../SizeTieredCompactionRecoverTest.java           |   14 +-
 .../SizeTieredCompactionSelectorTest.java          |    2 +-
 .../inner/sizetiered/SizeTieredCompactionTest.java |   22 +-
 .../recover/SizeTieredCompactionRecoverTest.java   |   10 +-
 .../compaction/repair/AbstractRepairDataTest.java  |    3 +-
 .../repair/RepairDataFileScanUtilTest.java         |    8 +-
 .../compaction/repair/RepairLoggerTest.java        |    2 +-
 .../repair/RepairUnsortedFileCompactionTest.java   |   28 +-
 .../settle/SettleRequestHandlerTest.java           |    6 +-
 .../compaction/tools/UnseqSpaceStatisticsTest.java |    2 +-
 .../compaction/utils/CompactionCheckerUtils.java   |   47 +-
 .../compaction/utils/CompactionClearUtils.java     |    4 +-
 .../utils/CompactionFileGeneratorUtils.java        |   21 +-
 .../utils/CompactionTaskMemCostEstimatorTest.java  |    2 +-
 .../compaction/utils/CompactionTaskQueueTest.java  |    2 +-
 .../compaction/utils/CompactionTestFileWriter.java |   25 +-
 .../utils/CompactionTestFileWriterTest.java        |    8 +-
 .../utils/CompactionUpdateFileCountTest.java       |    2 +-
 .../utils/MultiTsFileDeviceIteratorTest.java       |   18 +-
 .../compaction/utils/TsFileGeneratorUtils.java     |   39 +-
 .../dataregion/flush/CompressionRatioTest.java     |    2 +-
 .../dataregion/memtable/MemTableFlushTaskTest.java |    8 +-
 .../dataregion/memtable/MemTableTestUtils.java     |   17 +-
 .../dataregion/memtable/MemtableBenchmark.java     |    7 +-
 .../dataregion/memtable/PrimitiveMemTableTest.java |   26 +-
 .../dataregion/memtable/TsFileProcessorTest.java   |   22 +-
 .../reader/chunk/AlignedMemPageReaderTest.java     |   23 +-
 .../reader/chunk/MemAlignedChunkLoaderTest.java    |   22 +-
 .../read/reader/chunk/MemChunkLoaderTest.java      |   20 +-
 .../read/reader/chunk/MemPageReaderTest.java       |   19 +-
 .../MemAlignedChunkMetadataLoaderTest.java         |    8 +-
 .../chunk/metadata/MemChunkMetadataLoaderTest.java |    8 +-
 .../common/AlignedPriorityMergeReaderTest.java     |    9 +-
 .../read/reader/common/FakedSeriesReader.java      |    8 +-
 .../reader/common/PriorityMergeReaderTest.java     |    3 +-
 .../reader/common/PriorityMergeReaderTest2.java    |    3 +-
 .../series/AbstractAlignedSeriesScanTest.java      |   28 +-
 .../read/reader/series/AbstractSeriesScanTest.java |   22 +-
 .../AlignedSeriesScanLimitOffsetPushDownTest.java  |    8 +-
 .../AlignedSeriesScanPredicatePushDownTest.java    |   16 +-
 ...gleColumnSeriesScanLimitOffsetPushDownTest.java |    8 +-
 .../read/reader/series/SeriesReaderTestUtil.java   |   18 +-
 .../series/SeriesScanLimitOffsetPushDownTest.java  |    4 +-
 .../series/SeriesScanPredicatePushDownTest.java    |   10 +-
 .../dataregion/snapshot/IoTDBSnapshotTest.java     |    8 +-
 .../dataregion/tsfile/TsFileResourceTest.java      |    4 +-
 .../dataregion/wal/WALManagerTest.java             |    8 +-
 .../wal/allocation/ElasticStrategyTest.java        |    8 +-
 .../wal/allocation/FirstCreateStrategyTest.java    |    8 +-
 .../wal/allocation/RoundRobinStrategyTest.java     |    8 +-
 .../dataregion/wal/buffer/WALBufferCommonTest.java |    8 +-
 .../dataregion/wal/io/WALFileTest.java             |   10 +-
 .../wal/node/ConsensusReqReaderTest.java           |   10 +-
 .../dataregion/wal/node/WALEntryHandlerTest.java   |    8 +-
 .../dataregion/wal/node/WALNodeTest.java           |   12 +-
 .../wal/node/WalDeleteOutdatedNewTest.java         |    8 +-
 .../wal/recover/WALRecoverManagerTest.java         |   38 +-
 .../wal/recover/WALRecoverWriterTest.java          |    8 +-
 .../file/SealedTsFileRecoverPerformerTest.java     |   32 +-
 .../wal/recover/file/TsFilePlanRedoerTest.java     |   46 +-
 .../file/UnsealedTsFileRecoverPerformerTest.java   |   32 +-
 .../wal/utils/TsFileUtilsForRecoverTest.java       |    3 +-
 .../wal/utils/WALInsertNodeCacheTest.java          |    8 +-
 .../rescon/memory/ResourceManagerTest.java         |   22 +-
 .../rescon/memory/TimePartitionManagerTest.java    |    2 +-
 .../org/apache/iotdb/db/tools/MLogParserTest.java  |    6 +-
 .../iotdb/db/tools/PBTreeFileSketchTest.java       |    6 +-
 .../iotdb/db/tools/TsFileAndModSettleToolTest.java |   22 +-
 .../TsFileOverlapValidationAndRepairToolTest.java  |    6 +-
 .../iotdb/db/tools/TsFileSelfCheckToolTest.java    |   28 +-
 .../iotdb/db/tools/TsFileSketchToolTest.java       |   25 +-
 .../db/trigger/executor/TriggerExecuteTest.java    |    6 +-
 .../apache/iotdb/db/utils/DateTimeUtilsTest.java   |    3 +-
 .../iotdb/db/utils/EncodingInferenceUtilsTest.java |    2 +-
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |    4 +-
 .../org/apache/iotdb/db/utils/MemUtilsTest.java    |   24 +-
 .../iotdb/db/utils/QueryDataSetUtilsTest.java      |   14 +-
 .../db/utils/SchemaRegionSnapshotParserTest.java   |    6 +-
 .../org/apache/iotdb/db/utils/SchemaTestUtils.java |    9 +-
 .../org/apache/iotdb/db/utils/SchemaUtilsTest.java |    4 +-
 .../apache/iotdb/db/utils/SerializeUtilsTest.java  |   18 +-
 .../iotdb/db/utils/TypeInferenceUtilsTest.java     |    4 +-
 .../db/utils/datastructure/AlignedTVListTest.java  |    9 +-
 .../db/utils/datastructure/BinaryTVListTest.java   |    7 +-
 .../db/utils/datastructure/BooleanTVListTest.java  |    3 +-
 .../db/utils/datastructure/DoubleTVListTest.java   |    3 +-
 .../db/utils/datastructure/FloatTVListTest.java    |    3 +-
 .../db/utils/datastructure/IntTVListTest.java      |    3 +-
 .../db/utils/datastructure/LongTVListTest.java     |    7 +-
 .../db/utils/datastructure/MergeSortHeapTest.java  |   10 +-
 .../datastructure/PrimitiveArrayManagerTest.java   |    4 +-
 .../apache/iotdb/db/utils/sort/SortUtilTest.java   |   14 +-
 .../SlidingSizeWindowEvaluationHandlerTest.java    |    4 +-
 .../SlidingTimeWindowEvaluationHandlerTest.java    |    4 +-
 iotdb-core/metrics/interface/pom.xml               |   10 +-
 .../iotdb/metrics/AbstractMetricManager.java       |    3 +-
 .../iotdb/metrics/AbstractMetricService.java       |    2 +-
 .../metrics/metricsets/system/SystemMetrics.java   |    2 +-
 .../metrics/reporter/iotdb/IoTDBReporter.java      |    3 +-
 .../reporter/iotdb/IoTDBSessionReporter.java       |    2 +-
 .../iotdb/metrics/utils/IoTDBMetricsUtils.java     |    4 +-
 .../org/apache/iotdb/metrics/utils/MetricInfo.java |    3 +-
 iotdb-core/node-commons/pom.xml                    |   10 +-
 .../commons/auth/role/LocalFileRoleAccessor.java   |    2 +-
 .../commons/auth/user/LocalFileUserAccessor.java   |    2 +-
 .../apache/iotdb/commons/conf/CommonConfig.java    |    2 +-
 .../commons/consensus/index/ProgressIndexType.java |    3 +-
 .../consensus/index/impl/HybridProgressIndex.java  |    3 +-
 .../consensus/index/impl/IoTProgressIndex.java     |    3 +-
 .../consensus/index/impl/MetaProgressIndex.java    |    3 +-
 .../consensus/index/impl/RecoverProgressIndex.java |    3 +-
 .../consensus/index/impl/SimpleProgressIndex.java  |    3 +-
 .../index/impl/TimeWindowStateProgressIndex.java   |    5 +-
 .../PipeRuntimeConnectorCriticalException.java     |    3 +-
 .../pipe/PipeRuntimeCriticalException.java         |    3 +-
 .../exception/pipe/PipeRuntimeExceptionType.java   |    3 +-
 .../pipe/PipeRuntimeNonCriticalException.java      |    3 +-
 .../PipeRuntimeOutOfMemoryCriticalException.java   |    3 +-
 .../commons/executable/ExecutableManager.java      |    2 +-
 .../iotdb/commons/file/SystemFileFactory.java      |    2 +-
 .../iotdb/commons/partition/DataPartition.java     |    3 +-
 .../commons/partition/DataPartitionTable.java      |    2 +-
 .../commons/partition/SchemaPartitionTable.java    |    2 +-
 .../commons/partition/SeriesPartitionTable.java    |    2 +-
 .../org/apache/iotdb/commons/path/AlignedPath.java |   16 +-
 .../apache/iotdb/commons/path/MeasurementPath.java |   16 +-
 .../org/apache/iotdb/commons/path/PartialPath.java |   16 +-
 .../iotdb/commons/path/PathDeserializeUtil.java    |    2 +-
 .../apache/iotdb/commons/path/PathPatternNode.java |    4 +-
 .../apache/iotdb/commons/path/PathPatternTree.java |    5 +-
 .../org/apache/iotdb/commons/path/PathType.java    |    4 +-
 .../connector/client/IoTDBSyncClientManager.java   |    2 +-
 .../thrift/request/PipeTransferFilePieceReq.java   |    7 +-
 .../thrift/request/PipeTransferFileSealReqV1.java  |    5 +-
 .../thrift/request/PipeTransferFileSealReqV2.java  |    5 +-
 .../thrift/request/PipeTransferHandshakeV1Req.java |    5 +-
 .../thrift/request/PipeTransferHandshakeV2Req.java |    5 +-
 .../thrift/response/PipeTransferFilePieceResp.java |    5 +-
 .../connector/protocol/IoTDBAirGapConnector.java   |    2 +-
 .../connector/protocol/IoTDBSslSyncConnector.java  |    2 +-
 .../listening/AbstractPipeListeningQueue.java      |    2 +-
 .../AbstractSerializableListeningQueue.java        |    2 +-
 .../queue/serializer/PlainQueueSerializer.java     |    3 +-
 .../extractor/IoTDBNonDataRegionExtractor.java     |    3 +-
 .../commons/pipe/pattern/PrefixPipePattern.java    |    2 +-
 .../meta/ConfigNodePipePluginMetaKeeper.java       |    2 +-
 .../commons/pipe/plugin/meta/PipePluginMeta.java   |    4 +-
 .../pipe/plugin/meta/PipePluginMetaKeeper.java     |    3 +-
 .../commons/pipe/receiver/IoTDBFileReceiver.java   |    2 +-
 .../iotdb/commons/pipe/task/meta/PipeMeta.java     |    2 +-
 .../commons/pipe/task/meta/PipeMetaKeeper.java     |    2 +-
 .../commons/pipe/task/meta/PipeRuntimeMeta.java    |    5 +-
 .../pipe/task/meta/PipeRuntimeMetaVersion.java     |    2 +-
 .../commons/pipe/task/meta/PipeStaticMeta.java     |    5 +-
 .../iotdb/commons/pipe/task/meta/PipeTaskMeta.java |    3 +-
 .../iotdb/commons/schema/filter/SchemaFilter.java  |    3 +-
 .../commons/schema/filter/SchemaFilterFactory.java |    3 +-
 .../commons/schema/filter/impl/DataTypeFilter.java |    3 +-
 .../schema/filter/impl/PathContainsFilter.java     |    3 +-
 .../commons/schema/filter/impl/TagFilter.java      |    3 +-
 .../commons/schema/filter/impl/TemplateFilter.java |    3 +-
 .../iotdb/commons/schema/node/MNodeType.java       |    2 +-
 .../node/common/AbstractMeasurementMNode.java      |    4 +-
 .../commons/schema/node/info/IMeasurementInfo.java |    5 +-
 .../schema/node/role/IMeasurementMNode.java        |    5 +-
 .../commons/schema/node/utils/IMNodeFactory.java   |    3 +-
 .../commons/schema/view/LogicalViewSchema.java     |   15 +-
 .../schema/view/viewExpression/ViewExpression.java |    3 +-
 .../viewExpression/leaf/ConstantViewOperand.java   |    4 +-
 .../viewExpression/leaf/TimeSeriesViewOperand.java |    3 +-
 .../multi/FunctionViewExpression.java              |    3 +-
 .../ternary/BetweenViewExpression.java             |    3 +-
 .../viewExpression/unary/InViewExpression.java     |    3 +-
 .../viewExpression/unary/IsNullViewExpression.java |    3 +-
 .../viewExpression/unary/LikeViewExpression.java   |    3 +-
 .../unary/RegularViewExpression.java               |    2 +-
 .../meta/consumer/ConsumerGroupMeta.java           |    5 +-
 .../meta/consumer/ConsumerGroupMetaKeeper.java     |    2 +-
 .../subscription/meta/consumer/ConsumerMeta.java   |    5 +-
 .../meta/subscription/SubscriptionMeta.java        |    4 +-
 .../commons/subscription/meta/topic/TopicMeta.java |    5 +-
 .../subscription/meta/topic/TopicMetaKeeper.java   |    2 +-
 .../org/apache/iotdb/commons/sync/PipeInfo.java    |    4 +-
 .../org/apache/iotdb/commons/sync/PipeMessage.java |    2 +-
 .../apache/iotdb/commons/sync/TsFilePipeInfo.java  |    3 +-
 .../iotdb/commons/trigger/TriggerInformation.java  |    5 +-
 .../apache/iotdb/commons/trigger/TriggerTable.java |    3 +-
 .../apache/iotdb/commons/udf/UDFInformation.java   |    4 +-
 .../org/apache/iotdb/commons/udf/UDFTable.java     |    3 +-
 .../commons/udf/builtin/String/UDTFConcat.java     |   11 +-
 .../commons/udf/builtin/String/UDTFEndsWith.java   |    9 +-
 .../commons/udf/builtin/String/UDTFLower.java      |   11 +-
 .../commons/udf/builtin/String/UDTFStartsWith.java |    9 +-
 .../commons/udf/builtin/String/UDTFStrCompare.java |    9 +-
 .../commons/udf/builtin/String/UDTFStrLength.java  |    9 +-
 .../commons/udf/builtin/String/UDTFStrLocate.java  |    9 +-
 .../iotdb/commons/udf/builtin/String/UDTFTrim.java |   11 +-
 .../commons/udf/builtin/String/UDTFUpper.java      |   11 +-
 .../apache/iotdb/commons/udf/builtin/UDTFAbs.java  |    5 +-
 .../iotdb/commons/udf/builtin/UDTFBottomK.java     |    3 +-
 .../iotdb/commons/udf/builtin/UDTFConst.java       |   11 +-
 .../iotdb/commons/udf/builtin/UDTFConstE.java      |    5 +-
 .../iotdb/commons/udf/builtin/UDTFConstPi.java     |    5 +-
 .../iotdb/commons/udf/builtin/UDTFContains.java    |    9 +-
 .../udf/builtin/UDTFContinuouslySatisfy.java       |    5 +-
 .../udf/builtin/UDTFEqualSizeBucketAggSample.java  |    3 +-
 .../builtin/UDTFEqualSizeBucketOutlierSample.java  |    3 +-
 .../udf/builtin/UDTFEqualSizeBucketSample.java     |    3 +-
 .../iotdb/commons/udf/builtin/UDTFInRange.java     |    7 +-
 .../apache/iotdb/commons/udf/builtin/UDTFJexl.java |    2 +-
 .../apache/iotdb/commons/udf/builtin/UDTFM4.java   |    3 +-
 .../iotdb/commons/udf/builtin/UDTFMatches.java     |    9 +-
 .../apache/iotdb/commons/udf/builtin/UDTFMath.java |    7 +-
 .../iotdb/commons/udf/builtin/UDTFOnOff.java       |    7 +-
 .../iotdb/commons/udf/builtin/UDTFSelectK.java     |    5 +-
 .../apache/iotdb/commons/udf/builtin/UDTFTopK.java |    3 +-
 .../iotdb/commons/udf/builtin/UDTFValueTrend.java  |    3 +-
 .../commons/udf/utils/UDFDataTypeTransformer.java  |    3 +-
 .../org/apache/iotdb/commons/utils/IOUtils.java    |    3 +-
 .../apache/iotdb/commons/utils/JVMCommonUtils.java |    3 +-
 .../org/apache/iotdb/commons/utils/PathUtils.java  |    9 +-
 .../apache/iotdb/commons/utils/SerializeUtils.java |   16 +-
 .../iotdb/commons/utils/TimePartitionUtils.java    |    3 +-
 .../commons/partition/DataPartitionTableTest.java  |    2 +-
 .../partition/SchemaPartitionTableTest.java        |    2 +-
 .../partition/SeriesPartitionTableTest.java        |    2 +-
 .../commons/pipe/task/meta/PipeMetaDeSerTest.java  |    6 +-
 .../commons/utils/ThriftCommonsSerDeUtilsTest.java |    2 +-
 iotdb-core/pom.xml                                 |    1 -
 iotdb-core/tsfile/README.md                        |   63 -
 iotdb-core/tsfile/format-changelist.md             |   56 -
 iotdb-core/tsfile/pom.xml                          |  278 ---
 .../antlr4/org/apache/tsfile/parser/PathLexer.g4   |  212 --
 .../antlr4/org/apache/tsfile/parser/PathParser.g4  |   67 -
 .../apache/iotdb/tsfile/common/cache/Cache.java    |   31 -
 .../apache/iotdb/tsfile/common/cache/LRUCache.java |   68 -
 .../iotdb/tsfile/common/conf/TSFileConfig.java     |  528 -----
 .../iotdb/tsfile/common/conf/TSFileDescriptor.java |  200 --
 .../tsfile/common/constant/JsonFormatConstant.java |   44 -
 .../tsfile/common/constant/QueryConstant.java      |   33 -
 .../tsfile/common/constant/TsFileConstant.java     |   52 -
 .../apache/iotdb/tsfile/compress/ICompressor.java  |  466 ----
 .../iotdb/tsfile/compress/IUnCompressor.java       |  405 ----
 .../tsfile/encoding/bitpacking/IntPacker.java      |  162 --
 .../tsfile/encoding/bitpacking/LongPacker.java     |  176 --
 .../tsfile/encoding/decoder/BitmapDecoder.java     |  221 --
 .../iotdb/tsfile/encoding/decoder/Decoder.java     |  204 --
 .../encoding/decoder/DeltaBinaryDecoder.java       |  247 --
 .../tsfile/encoding/decoder/DictionaryDecoder.java |   86 -
 .../decoder/DoublePrecisionChimpDecoder.java       |   50 -
 .../encoding/decoder/DoublePrecisionDecoderV1.java |  117 -
 .../encoding/decoder/DoublePrecisionDecoderV2.java |   53 -
 .../tsfile/encoding/decoder/DoubleRLBEDecoder.java |  197 --
 .../encoding/decoder/DoubleSprintzDecoder.java     |  139 --
 .../tsfile/encoding/decoder/FloatDecoder.java      |  146 --
 .../tsfile/encoding/decoder/FloatRLBEDecoder.java  |  197 --
 .../encoding/decoder/FloatSprintzDecoder.java      |  141 --
 .../tsfile/encoding/decoder/GorillaDecoderV1.java  |  128 -
 .../tsfile/encoding/decoder/GorillaDecoderV2.java  |  123 -
 .../tsfile/encoding/decoder/IntChimpDecoder.java   |  156 --
 .../tsfile/encoding/decoder/IntGorillaDecoder.java |   90 -
 .../tsfile/encoding/decoder/IntRLBEDecoder.java    |  196 --
 .../tsfile/encoding/decoder/IntRleDecoder.java     |  124 -
 .../tsfile/encoding/decoder/IntSprintzDecoder.java |  129 -
 .../tsfile/encoding/decoder/IntZigzagDecoder.java  |   94 -
 .../tsfile/encoding/decoder/LongChimpDecoder.java  |  155 --
 .../encoding/decoder/LongGorillaDecoder.java       |   89 -
 .../tsfile/encoding/decoder/LongRLBEDecoder.java   |  196 --
 .../tsfile/encoding/decoder/LongRleDecoder.java    |  119 -
 .../encoding/decoder/LongSprintzDecoder.java       |  127 -
 .../tsfile/encoding/decoder/LongZigzagDecoder.java |  101 -
 .../tsfile/encoding/decoder/PlainDecoder.java      |   88 -
 .../encoding/decoder/RegularDataDecoder.java       |  282 ---
 .../iotdb/tsfile/encoding/decoder/RleDecoder.java  |  230 --
 .../decoder/SinglePrecisionChimpDecoder.java       |   50 -
 .../encoding/decoder/SinglePrecisionDecoderV1.java |  113 -
 .../encoding/decoder/SinglePrecisionDecoderV2.java |   53 -
 .../tsfile/encoding/decoder/SprintzDecoder.java    |   54 -
 .../tsfile/encoding/encoder/BitmapEncoder.java     |  131 -
 .../encoding/encoder/DeltaBinaryEncoder.java       |  336 ---
 .../tsfile/encoding/encoder/DictionaryEncoder.java |  116 -
 .../encoder/DoublePrecisionChimpEncoder.java       |   55 -
 .../encoding/encoder/DoublePrecisionEncoderV1.java |  117 -
 .../encoding/encoder/DoublePrecisionEncoderV2.java |   55 -
 .../iotdb/tsfile/encoding/encoder/DoubleRLBE.java  |  293 ---
 .../encoding/encoder/DoubleSprintzEncoder.java     |  162 --
 .../iotdb/tsfile/encoding/encoder/Encoder.java     |  111 -
 .../tsfile/encoding/encoder/FloatEncoder.java      |  138 --
 .../iotdb/tsfile/encoding/encoder/FloatRLBE.java   |  273 ---
 .../encoding/encoder/FloatSprintzEncoder.java      |  156 --
 .../tsfile/encoding/encoder/GorillaEncoderV1.java  |   85 -
 .../tsfile/encoding/encoder/GorillaEncoderV2.java  |  105 -
 .../tsfile/encoding/encoder/IntChimpEncoder.java   |  188 --
 .../tsfile/encoding/encoder/IntGorillaEncoder.java |  158 --
 .../iotdb/tsfile/encoding/encoder/IntRLBE.java     |  280 ---
 .../tsfile/encoding/encoder/IntRleEncoder.java     |  129 -
 .../tsfile/encoding/encoder/IntSprintzEncoder.java |  158 --
 .../tsfile/encoding/encoder/IntZigzagEncoder.java  |  101 -
 .../tsfile/encoding/encoder/LongChimpEncoder.java  |  199 --
 .../encoding/encoder/LongGorillaEncoder.java       |  158 --
 .../iotdb/tsfile/encoding/encoder/LongRLBE.java    |  276 ---
 .../tsfile/encoding/encoder/LongRleEncoder.java    |  122 -
 .../encoding/encoder/LongSprintzEncoder.java       |  159 --
 .../tsfile/encoding/encoder/LongZigzagEncoder.java |  112 -
 .../tsfile/encoding/encoder/PlainEncoder.java      |  138 --
 .../apache/iotdb/tsfile/encoding/encoder/RLBE.java |   61 -
 .../encoding/encoder/RegularDataEncoder.java       |  364 ---
 .../iotdb/tsfile/encoding/encoder/RleEncoder.java  |  331 ---
 .../iotdb/tsfile/encoding/encoder/SDTEncoder.java  |  438 ----
 .../encoder/SinglePrecisionChimpEncoder.java       |   55 -
 .../encoding/encoder/SinglePrecisionEncoderV1.java |  113 -
 .../encoding/encoder/SinglePrecisionEncoderV2.java |   55 -
 .../tsfile/encoding/encoder/SprintzEncoder.java    |   70 -
 .../tsfile/encoding/encoder/TSEncodingBuilder.java |  416 ----
 .../apache/iotdb/tsfile/encoding/fire/Fire.java    |   56 -
 .../apache/iotdb/tsfile/encoding/fire/IntFire.java |   52 -
 .../iotdb/tsfile/encoding/fire/LongFire.java       |   48 -
 .../exception/NotCompatibleTsFileException.java    |   29 -
 .../tsfile/exception/NotImplementedException.java  |   33 -
 .../iotdb/tsfile/exception/NullFieldException.java |   27 -
 .../iotdb/tsfile/exception/PathParseException.java |   27 -
 .../StopReadTsFileByInterruptException.java        |   24 -
 .../tsfile/exception/TsFileRuntimeException.java   |   33 -
 ...eReaderTimeseriesMetadataIteratorException.java |   27 -
 .../TsFileStatisticsMistakesException.java         |   27 -
 .../tsfile/exception/cache/CacheException.java     |   26 -
 .../CompressionTypeNotSupportedException.java      |   39 -
 .../compress/GZIPCompressOverflowException.java    |   27 -
 .../encoding/TsFileDecodingException.java          |   34 -
 .../encoding/TsFileEncodingException.java          |   35 -
 .../filter/QueryFilterOptimizationException.java   |   27 -
 .../exception/filter/StatisticsClassException.java |   35 -
 .../filter/UnSupportFilterDataTypeException.java   |   27 -
 .../exception/write/NoMeasurementException.java    |   30 -
 .../tsfile/exception/write/PageException.java      |   38 -
 .../write/TsFileNotCompleteException.java          |   29 -
 .../write/UnknownColumnTypeException.java          |   35 -
 .../exception/write/WriteProcessException.java     |   38 -
 .../iotdb/tsfile/file/IMetadataIndexEntry.java     |   36 -
 .../org/apache/iotdb/tsfile/file/MetaMarker.java   |   74 -
 .../iotdb/tsfile/file/header/ChunkGroupHeader.java |  132 --
 .../iotdb/tsfile/file/header/ChunkHeader.java      |  347 ---
 .../iotdb/tsfile/file/header/PageHeader.java       |  180 --
 .../tsfile/file/metadata/AlignedChunkMetadata.java |  214 --
 .../file/metadata/AlignedTimeSeriesMetadata.java   |  216 --
 .../tsfile/file/metadata/ChunkGroupMetadata.java   |   43 -
 .../iotdb/tsfile/file/metadata/ChunkMetadata.java  |  387 ---
 .../file/metadata/DeviceMetadataIndexEntry.java    |   92 -
 .../iotdb/tsfile/file/metadata/IChunkMetadata.java |   69 -
 .../iotdb/tsfile/file/metadata/IDeviceID.java      |   50 -
 .../iotdb/tsfile/file/metadata/IMetadata.java      |   44 -
 .../tsfile/file/metadata/ITimeSeriesMetadata.java  |   48 -
 .../metadata/MeasurementMetadataIndexEntry.java    |   93 -
 .../file/metadata/MetadataIndexConstructor.java    |  181 --
 .../tsfile/file/metadata/MetadataIndexNode.java    |  178 --
 .../iotdb/tsfile/file/metadata/PlainDeviceID.java  |  105 -
 .../tsfile/file/metadata/TimeseriesMetadata.java   |  381 ---
 .../iotdb/tsfile/file/metadata/TsFileMetadata.java |  128 -
 .../file/metadata/enums/CompressionType.java       |   97 -
 .../file/metadata/enums/MetadataIndexNodeType.java |   99 -
 .../tsfile/file/metadata/enums/TSEncoding.java     |   99 -
 .../file/metadata/statistics/BinaryStatistics.java |  204 --
 .../metadata/statistics/BooleanStatistics.java     |  211 --
 .../file/metadata/statistics/DoubleStatistics.java |  254 --
 .../file/metadata/statistics/FloatStatistics.java  |  245 --
 .../metadata/statistics/IntegerStatistics.java     |  245 --
 .../file/metadata/statistics/LongStatistics.java   |  254 --
 .../file/metadata/statistics/Statistics.java       |  420 ----
 .../file/metadata/statistics/TimeStatistics.java   |  135 --
 .../iotdb/tsfile/fileSystem/FSFactoryProducer.java |   57 -
 .../org/apache/iotdb/tsfile/fileSystem/FSPath.java |   37 -
 .../org/apache/iotdb/tsfile/fileSystem/FSType.java |   26 -
 .../fileInputFactory/FileInputFactory.java         |   29 -
 .../fileInputFactory/HDFSInputFactory.java         |   61 -
 .../fileInputFactory/HybridFileInputFactory.java   |   62 -
 .../fileInputFactory/LocalFSInputFactory.java      |   34 -
 .../fileInputFactory/OSFileInputFactory.java       |   59 -
 .../fileOutputFactory/FileOutputFactory.java       |   27 -
 .../fileOutputFactory/HDFSOutputFactory.java       |   60 -
 .../fileOutputFactory/HybridFileOutputFactory.java |   61 -
 .../fileOutputFactory/LocalFSOutputFactory.java    |   50 -
 .../fileOutputFactory/OSFileOutputFactory.java     |   58 -
 .../tsfile/fileSystem/fsFactory/FSFactory.java     |  150 --
 .../tsfile/fileSystem/fsFactory/HDFSFactory.java   |  269 ---
 .../fileSystem/fsFactory/HybridFSFactory.java      |  165 --
 .../fileSystem/fsFactory/LocalFSFactory.java       |  142 --
 .../tsfile/fileSystem/fsFactory/OSFSFactory.java   |  271 ---
 .../apache/iotdb/tsfile/read/TimeValuePair.java    |  102 -
 .../read/TsFileAlignedSeriesReaderIterator.java    |  119 -
 .../iotdb/tsfile/read/TsFileCheckStatus.java       |   31 -
 .../iotdb/tsfile/read/TsFileDeviceIterator.java    |   99 -
 .../org/apache/iotdb/tsfile/read/TsFileReader.java |   61 -
 .../iotdb/tsfile/read/TsFileRestorableReader.java  |   71 -
 .../iotdb/tsfile/read/TsFileSequenceReader.java    | 2495 --------------------
 ...leSequenceReaderTimeseriesMetadataIterator.java |  264 ---
 .../iotdb/tsfile/read/UnClosedTsFileReader.java    |   45 -
 .../apache/iotdb/tsfile/read/common/BatchData.java |  919 -------
 .../iotdb/tsfile/read/common/BatchDataFactory.java |   44 -
 .../org/apache/iotdb/tsfile/read/common/Chunk.java |  174 --
 .../tsfile/read/common/DescReadBatchData.java      |   86 -
 .../tsfile/read/common/DescReadWriteBatchData.java |  510 ----
 .../org/apache/iotdb/tsfile/read/common/Field.java |  254 --
 .../tsfile/read/common/IBatchDataIterator.java     |   37 -
 .../org/apache/iotdb/tsfile/read/common/Path.java  |  302 ---
 .../apache/iotdb/tsfile/read/common/RowRecord.java |  133 --
 .../iotdb/tsfile/read/common/SignalBatchData.java  |   44 -
 .../apache/iotdb/tsfile/read/common/TimeRange.java |  404 ----
 .../iotdb/tsfile/read/common/block/TsBlock.java    |  556 -----
 .../tsfile/read/common/block/TsBlockBuilder.java   |  339 ---
 .../tsfile/read/common/block/TsBlockUtil.java      |  123 -
 .../block/column/BinaryArrayColumnEncoder.java     |   92 -
 .../read/common/block/column/BinaryColumn.java     |  170 --
 .../common/block/column/BinaryColumnBuilder.java   |  155 --
 .../read/common/block/column/BooleanColumn.java    |  168 --
 .../common/block/column/BooleanColumnBuilder.java  |  156 --
 .../block/column/ByteArrayColumnEncoder.java       |   62 -
 .../read/common/block/column/ColumnEncoder.java    |  127 -
 .../common/block/column/ColumnEncoderFactory.java  |   48 -
 .../read/common/block/column/ColumnUtil.java       |   98 -
 .../read/common/block/column/DoubleColumn.java     |  169 --
 .../common/block/column/DoubleColumnBuilder.java   |  156 --
 .../read/common/block/column/FloatColumn.java      |  168 --
 .../common/block/column/FloatColumnBuilder.java    |  156 --
 .../block/column/Int32ArrayColumnEncoder.java      |  110 -
 .../block/column/Int64ArrayColumnEncoder.java      |  120 -
 .../tsfile/read/common/block/column/IntColumn.java |  168 --
 .../read/common/block/column/IntColumnBuilder.java |  156 --
 .../read/common/block/column/LongColumn.java       |  168 --
 .../common/block/column/LongColumnBuilder.java     |  156 --
 .../read/common/block/column/NullColumn.java       |  127 -
 .../block/column/RunLengthColumnEncoder.java       |   54 -
 .../block/column/RunLengthEncodedColumn.java       |  216 --
 .../read/common/block/column/TimeColumn.java       |  152 --
 .../common/block/column/TimeColumnBuilder.java     |  148 --
 .../read/common/block/column/TsBlockSerde.java     |  127 -
 .../read/common/parser/PathNodesGenerator.java     |  100 -
 .../tsfile/read/common/parser/PathParseError.java  |   63 -
 .../tsfile/read/common/parser/PathVisitor.java     |  105 -
 .../iotdb/tsfile/read/common/type/BinaryType.java  |   55 -
 .../iotdb/tsfile/read/common/type/BooleanType.java |   55 -
 .../iotdb/tsfile/read/common/type/DoubleType.java  |   85 -
 .../iotdb/tsfile/read/common/type/FloatType.java   |   85 -
 .../iotdb/tsfile/read/common/type/IntType.java     |   85 -
 .../iotdb/tsfile/read/common/type/LongType.java    |   85 -
 .../apache/iotdb/tsfile/read/common/type/Type.java |  104 -
 .../iotdb/tsfile/read/common/type/TypeEnum.java    |   34 -
 .../iotdb/tsfile/read/common/type/TypeFactory.java |   49 -
 .../read/controller/CachedChunkLoaderImpl.java     |  144 --
 .../iotdb/tsfile/read/controller/IChunkLoader.java |   40 -
 .../read/controller/IChunkMetadataLoader.java      |   31 -
 .../tsfile/read/controller/IMetadataQuerier.java   |   68 -
 .../read/controller/MetadataQuerierByFileImpl.java |  258 --
 .../tsfile/read/expression/ExpressionType.java     |   48 -
 .../tsfile/read/expression/IBinaryExpression.java  |   31 -
 .../iotdb/tsfile/read/expression/IExpression.java  |   32 -
 .../tsfile/read/expression/IUnaryExpression.java   |   29 -
 .../tsfile/read/expression/QueryExpression.java    |  103 -
 .../read/expression/impl/BinaryExpression.java     |  189 --
 .../read/expression/impl/GlobalTimeExpression.java |   99 -
 .../expression/impl/SingleSeriesExpression.java    |  107 -
 .../read/expression/util/ExpressionOptimizer.java  |  240 --
 .../read/filter/PredicateRemoveNotRewriter.java    |   50 -
 .../read/filter/basic/BinaryLogicalFilter.java     |   68 -
 .../filter/basic/DisableStatisticsTimeFilter.java  |   33 -
 .../filter/basic/DisableStatisticsValueFilter.java |   46 -
 .../iotdb/tsfile/read/filter/basic/Filter.java     |  233 --
 .../tsfile/read/filter/basic/OperatorType.java     |   75 -
 .../iotdb/tsfile/read/filter/basic/TimeFilter.java |   68 -
 .../tsfile/read/filter/basic/ValueFilter.java      |  141 --
 .../tsfile/read/filter/factory/FilterFactory.java  |   61 -
 .../tsfile/read/filter/factory/TimeFilterApi.java  |  101 -
 .../tsfile/read/filter/factory/ValueFilterApi.java |  194 --
 .../iotdb/tsfile/read/filter/operator/And.java     |  137 --
 .../tsfile/read/filter/operator/GroupByFilter.java |  155 --
 .../read/filter/operator/GroupByMonthFilter.java   |  270 ---
 .../iotdb/tsfile/read/filter/operator/Not.java     |  159 --
 .../iotdb/tsfile/read/filter/operator/Or.java      |  185 --
 .../read/filter/operator/TimeFilterOperators.java  |  601 -----
 .../read/filter/operator/ValueFilterOperators.java |  954 --------
 .../query/dataset/DataSetWithTimeGenerator.java    |  100 -
 .../query/dataset/DataSetWithoutTimeGenerator.java |  188 --
 .../tsfile/read/query/dataset/QueryDataSet.java    |  266 ---
 .../query/executor/ExecutorWithTimeGenerator.java  |  128 -
 .../tsfile/read/query/executor/QueryExecutor.java  |   30 -
 .../tsfile/read/query/executor/TsFileExecutor.java |  198 --
 .../read/query/timegenerator/TimeGenerator.java    |  139 --
 .../query/timegenerator/TsFileTimeGenerator.java   |   65 -
 .../read/query/timegenerator/node/AndNode.java     |  106 -
 .../read/query/timegenerator/node/LeafNode.java    |   93 -
 .../tsfile/read/query/timegenerator/node/Node.java |   31 -
 .../read/query/timegenerator/node/NodeType.java    |   27 -
 .../read/query/timegenerator/node/OrNode.java      |  119 -
 .../iotdb/tsfile/read/reader/IBatchReader.java     |   33 -
 .../iotdb/tsfile/read/reader/IChunkReader.java     |   36 -
 .../iotdb/tsfile/read/reader/IPageReader.java      |   49 -
 .../iotdb/tsfile/read/reader/IPointReader.java     |   37 -
 .../iotdb/tsfile/read/reader/LocalTsFileInput.java |  124 -
 .../iotdb/tsfile/read/reader/TsFileInput.java      |  134 --
 .../read/reader/chunk/AbstractChunkReader.java     |   83 -
 .../read/reader/chunk/AlignedChunkReader.java      |  261 --
 .../tsfile/read/reader/chunk/ChunkReader.java      |  191 --
 .../tsfile/read/reader/page/AlignedPageReader.java |  437 ----
 .../page/LazyLoadAlignedPagePointReader.java       |  105 -
 .../iotdb/tsfile/read/reader/page/PageReader.java  |  383 ---
 .../tsfile/read/reader/page/TimePageReader.java    |  118 -
 .../tsfile/read/reader/page/ValuePageReader.java   |  556 -----
 .../reader/series/AbstractFileSeriesReader.java    |   94 -
 .../read/reader/series/EmptyFileSeriesReader.java  |   57 -
 .../read/reader/series/FileSeriesReader.java       |   67 -
 .../reader/series/FileSeriesReaderByTimestamp.java |  169 --
 .../read/reader/series/PaginationController.java   |   97 -
 .../org/apache/iotdb/tsfile/utils/BloomFilter.java |  148 --
 .../apache/iotdb/tsfile/utils/ByteArrayList.java   |  135 --
 .../org/apache/iotdb/tsfile/utils/BytesUtils.java  |  934 --------
 .../org/apache/iotdb/tsfile/utils/FSUtils.java     |  153 --
 .../apache/iotdb/tsfile/utils/FilePathUtils.java   |  128 -
 .../java/org/apache/iotdb/tsfile/utils/Loader.java |   59 -
 .../iotdb/tsfile/utils/MeasurementGroup.java       |   65 -
 .../apache/iotdb/tsfile/utils/Murmur128Hash.java   |  184 --
 .../java/org/apache/iotdb/tsfile/utils/Pair.java   |   99 -
 .../apache/iotdb/tsfile/utils/Preconditions.java   |   39 -
 .../org/apache/iotdb/tsfile/utils/PublicBAOS.java  |   95 -
 .../tsfile/utils/ReadWriteForEncodingUtils.java    |  341 ---
 .../iotdb/tsfile/utils/ReadWriteIOUtils.java       | 1175 ---------
 .../org/apache/iotdb/tsfile/utils/RegexUtils.java  |   92 -
 .../apache/iotdb/tsfile/utils/StringContainer.java |  392 ---
 .../apache/iotdb/tsfile/utils/TimeDuration.java    |  193 --
 .../iotdb/tsfile/utils/TsFileGeneratorUtils.java   |  405 ----
 .../org/apache/iotdb/tsfile/utils/TsFileUtils.java |   58 -
 .../apache/iotdb/tsfile/write/TsFileWriter.java    |  651 -----
 .../write/chunk/AlignedChunkGroupWriterImpl.java   |  343 ---
 .../tsfile/write/chunk/AlignedChunkWriterImpl.java |  452 ----
 .../iotdb/tsfile/write/chunk/ChunkWriterImpl.java  |  492 ----
 .../tsfile/write/chunk/IChunkGroupWriter.java      |   96 -
 .../iotdb/tsfile/write/chunk/IChunkWriter.java     |   63 -
 .../chunk/NonAlignedChunkGroupWriterImpl.java      |  197 --
 .../iotdb/tsfile/write/chunk/TimeChunkWriter.java  |  325 ---
 .../iotdb/tsfile/write/chunk/ValueChunkWriter.java |  431 ----
 .../apache/iotdb/tsfile/write/page/PageWriter.java |  296 ---
 .../iotdb/tsfile/write/page/TimePageWriter.java    |  183 --
 .../iotdb/tsfile/write/page/ValuePageWriter.java   |  343 ---
 .../apache/iotdb/tsfile/write/record/TSRecord.java |   89 -
 .../apache/iotdb/tsfile/write/record/Tablet.java   |  794 -------
 .../write/record/datapoint/BooleanDataPoint.java   |   62 -
 .../tsfile/write/record/datapoint/DataPoint.java   |  147 --
 .../write/record/datapoint/DoubleDataPoint.java    |   62 -
 .../write/record/datapoint/FloatDataPoint.java     |   62 -
 .../write/record/datapoint/IntDataPoint.java       |   62 -
 .../write/record/datapoint/LongDataPoint.java      |   62 -
 .../write/record/datapoint/StringDataPoint.java    |   63 -
 .../tsfile/write/schema/IMeasurementSchema.java    |   91 -
 .../tsfile/write/schema/MeasurementSchema.java     |  449 ----
 .../tsfile/write/schema/MeasurementSchemaType.java |   38 -
 .../apache/iotdb/tsfile/write/schema/Schema.java   |  110 -
 .../tsfile/write/schema/TimeseriesSchema.java      |  272 ---
 .../write/schema/VectorMeasurementSchema.java      |  425 ----
 .../write/writer/ForceAppendTsFileWriter.java      |   87 -
 .../iotdb/tsfile/write/writer/IDataWriter.java     |   21 -
 .../tsfile/write/writer/LocalTsFileOutput.java     |  106 -
 .../write/writer/RestorableTsFileIOWriter.java     |  269 ---
 .../iotdb/tsfile/write/writer/TsFileIOWriter.java  |  694 ------
 .../write/writer/TsFileIOWriterEndFileTest.java    |   51 -
 .../iotdb/tsfile/write/writer/TsFileOutput.java    |   94 -
 .../write/writer/tsmiterator/DiskTSMIterator.java  |  133 --
 .../write/writer/tsmiterator/TSMIterator.java      |  157 --
 .../apache/iotdb/tsfile/common/LRUCacheTest.java   |   55 -
 .../common/block/BinaryArrayColumnEncoderTest.java |   82 -
 .../common/block/ByteArrayColumnEncoderTest.java   |   79 -
 .../tsfile/common/block/ColumnEncoderTest.java     |  144 --
 .../common/block/Int32ArrayColumnEncoderTest.java  |  119 -
 .../common/block/Int64ArrayColumnEncoderTest.java  |  122 -
 .../tsfile/common/block/NullColumnUnitTest.java    |   90 -
 .../common/block/RunLengthColumnEncoderTest.java   |  104 -
 .../tsfile/common/block/TsBlockSerdeTest.java      |  190 --
 .../iotdb/tsfile/common/block/TsBlockTest.java     |  456 ----
 .../tsfile/common/conf/TSFileDescriptorTest.java   |   85 -
 .../apache/iotdb/tsfile/compress/CompressTest.java |  145 --
 .../org/apache/iotdb/tsfile/compress/GZIPTest.java |  104 -
 .../org/apache/iotdb/tsfile/compress/LZ4Test.java  |  104 -
 .../apache/iotdb/tsfile/compress/LZMA2Test.java    |  104 -
 .../apache/iotdb/tsfile/compress/SnappyTest.java   |  101 -
 .../org/apache/iotdb/tsfile/compress/ZstdTest.java |   88 -
 .../apache/iotdb/tsfile/constant/TestConstant.java |   34 -
 .../iotdb/tsfile/encoding/SDTEncoderTest.java      |  177 --
 .../tsfile/encoding/bitpacking/IntPackerTest.java  |   79 -
 .../tsfile/encoding/bitpacking/LongPackerTest.java |  131 -
 .../tsfile/encoding/decoder/BitmapDecoderTest.java |   97 -
 .../tsfile/encoding/decoder/ChimpDecoderTest.java  |  594 -----
 .../encoding/decoder/DictionaryDecoderTest.java    |   86 -
 .../tsfile/encoding/decoder/FloatDecoderTest.java  |  233 --
 .../encoding/decoder/GorillaDecoderV1Test.java     |  258 --
 .../encoding/decoder/GorillaDecoderV2Test.java     |  594 -----
 .../tsfile/encoding/decoder/IntRleDecoderTest.java |  217 --
 .../encoding/decoder/IntZigzagDecoderTest.java     |   99 -
 .../encoding/decoder/LongRleDecoderTest.java       |  221 --
 .../encoding/decoder/LongZigzagDecoderTest.java    |   94 -
 .../tsfile/encoding/decoder/RLBEDecoderTest.java   |  257 --
 .../encoding/decoder/SprintzDecoderTest.java       |  593 -----
 .../delta/DeltaBinaryEncoderIntegerTest.java       |  110 -
 .../decoder/delta/DeltaBinaryEncoderLongTest.java  |  201 --
 .../regular/RegularDataEncoderIntegerTest.java     |  157 --
 .../regular/RegularDataEncoderLongTest.java        |  252 --
 .../tsfile/exception/TsFileExceptionTest.java      |  187 --
 .../iotdb/tsfile/file/header/PageHeaderTest.java   |  108 -
 .../tsfile/file/metadata/ChunkMetadataTest.java    |   70 -
 .../file/metadata/MetadataIndexNodeTest.java       |   51 -
 .../file/metadata/TimeseriesMetadataTest.java      |  138 --
 .../tsfile/file/metadata/TsFileMetadataTest.java   |  106 -
 .../metadata/statistics/BooleanStatisticsTest.java |   83 -
 .../metadata/statistics/DoubleStatisticsTest.java  |   94 -
 .../metadata/statistics/FloatStatisticsTest.java   |   94 -
 .../metadata/statistics/IntegerStatisticsTest.java |   93 -
 .../metadata/statistics/LongStatisticsTest.java    |  121 -
 .../metadata/statistics/StringStatisticsTest.java  |   86 -
 .../tsfile/file/metadata/utils/TestHelper.java     |   78 -
 .../iotdb/tsfile/file/metadata/utils/Utils.java    |   97 -
 .../apache/iotdb/tsfile/read/ExpressionTest.java   |   65 -
 .../iotdb/tsfile/read/GetAllDevicesTest.java       |   89 -
 ...easurementChunkMetadataListMapIteratorTest.java |  205 --
 .../iotdb/tsfile/read/ReadInPartitionTest.java     |  230 --
 .../org/apache/iotdb/tsfile/read/ReadTest.java     |  390 ---
 .../iotdb/tsfile/read/TimePlainEncodeReadTest.java |  388 ---
 .../tsfile/read/TimeSeriesMetadataReadTest.java    |   96 -
 .../apache/iotdb/tsfile/read/TsFileReaderTest.java |  523 ----
 .../tsfile/read/TsFileRestorableReaderTest.java    |   65 -
 .../tsfile/read/TsFileSequenceReaderTest.java      |  179 --
 ...quenceReaderTimeseriesMetadataIteratorTest.java |   62 -
 .../iotdb/tsfile/read/common/BatchDataTest.java    |   84 -
 .../iotdb/tsfile/read/common/ColumnTest.java       |  198 --
 .../apache/iotdb/tsfile/read/common/FieldTest.java |   32 -
 .../apache/iotdb/tsfile/read/common/PathTest.java  |  206 --
 .../iotdb/tsfile/read/common/TimeRangeTest.java    |  492 ----
 .../tsfile/read/controller/ChunkLoaderTest.java    |   67 -
 .../controller/IMetadataQuerierByFileImplTest.java |  150 --
 .../tsfile/read/filter/FilterSerializeTest.java    |  147 --
 .../iotdb/tsfile/read/filter/FilterTestUtil.java   |  105 -
 .../tsfile/read/filter/GroupByFilterTest.java      |  127 -
 .../tsfile/read/filter/GroupByMonthFilterTest.java |  278 ---
 .../read/filter/IExpressionOptimizerTest.java      |  275 ---
 .../read/filter/MinTimeMaxTimeFilterTest.java      |  209 --
 .../iotdb/tsfile/read/filter/OperatorTest.java     |  176 --
 .../filter/PredicateRemoveNotRewriterTest.java     |   82 -
 .../tsfile/read/filter/StatisticsFilterTest.java   |  283 ---
 .../read/query/executor/QueryExecutorTest.java     |  158 --
 .../tsfile/read/query/timegenerator/NodeTest.java  |  100 -
 .../read/query/timegenerator/ReadWriteTest.java    |  185 --
 .../query/timegenerator/ReaderByTimestampTest.java |  109 -
 .../timegenerator/TimeGeneratorReadEmptyTest.java  |  149 --
 .../timegenerator/TimeGeneratorReadWriteTest.java  |  185 --
 .../query/timegenerator/TimeGeneratorTest.java     |   91 -
 .../TsFileGeneratorForSeriesReaderByTimestamp.java |  280 ---
 .../read/reader/AlignedPageReaderPushDownTest.java |  322 ---
 .../iotdb/tsfile/read/reader/ChunkReaderTest.java  |  109 -
 .../iotdb/tsfile/read/reader/FakedBatchReader.java |   55 -
 .../tsfile/read/reader/FakedMultiBatchReader.java  |   59 -
 .../reader/LazyLoadAlignedPagePointReaderTest.java |  177 --
 .../tsfile/read/reader/PageReaderPushDownTest.java |  145 --
 .../iotdb/tsfile/read/reader/PageReaderTest.java   |  314 ---
 .../iotdb/tsfile/read/reader/ReaderTest.java       |  134 --
 .../org/apache/iotdb/tsfile/utils/BitMapTest.java  |   67 -
 .../apache/iotdb/tsfile/utils/BloomFilterTest.java |   66 -
 .../apache/iotdb/tsfile/utils/BytesUtilsTest.java  |  430 ----
 .../apache/iotdb/tsfile/utils/FileGenerator.java   |  360 ---
 .../iotdb/tsfile/utils/FilePathUtilsTest.java      |  100 -
 .../org/apache/iotdb/tsfile/utils/FileUtils.java   |   83 -
 .../apache/iotdb/tsfile/utils/FileUtilsTest.java   |   51 -
 .../org/apache/iotdb/tsfile/utils/PairTest.java    |   72 -
 .../utils/ReadWriteForEncodingUtilsTest.java       |   55 -
 .../iotdb/tsfile/utils/ReadWriteIOUtilsTest.java   |  191 --
 .../tsfile/utils/ReadWriteStreamUtilsTest.java     |  157 --
 .../tsfile/utils/ReadWriteToBytesUtilsTest.java    |   66 -
 .../org/apache/iotdb/tsfile/utils/RecordUtils.java |  116 -
 .../apache/iotdb/tsfile/utils/RecordUtilsTest.java |  186 --
 .../iotdb/tsfile/utils/StringContainerTest.java    |  175 --
 .../iotdb/tsfile/utils/TimeDurationTest.java       |   73 -
 .../iotdb/tsfile/utils/TsFileGeneratorForTest.java |  338 ---
 .../apache/iotdb/tsfile/utils/TsFileUtilsTest.java |   72 -
 .../iotdb/tsfile/utils/TsPrimitiveTypeTest.java    |   62 -
 .../tsfile/write/DefaultSchemaTemplateTest.java    |  113 -
 .../tsfile/write/MetadataIndexConstructorTest.java |  503 ----
 .../org/apache/iotdb/tsfile/write/PerfTest.java    |  234 --
 .../iotdb/tsfile/write/ReadPageInMemTest.java      |  189 --
 ...SameMeasurementsWithDifferentDataTypesTest.java |  215 --
 .../iotdb/tsfile/write/TsFileIOWriterTest.java     |  229 --
 .../tsfile/write/TsFileIntegrityCheckingTool.java  |  253 --
 .../iotdb/tsfile/write/TsFileReadWriteTest.java    |  254 --
 .../iotdb/tsfile/write/TsFileWriteApiTest.java     |  692 ------
 .../iotdb/tsfile/write/TsFileWriterTest.java       |  364 ---
 .../org/apache/iotdb/tsfile/write/WriteTest.java   |  288 ---
 .../iotdb/tsfile/write/record/TabletTest.java      |  110 -
 .../write/schema/converter/SchemaBuilderTest.java  |  153 --
 .../write/writer/AlignedChunkWriterImplTest.java   |  181 --
 .../write/writer/ForceAppendTsFileWriterTest.java  |  123 -
 .../writer/MeasurementSchemaSerializeTest.java     |   57 -
 .../iotdb/tsfile/write/writer/PageWriterTest.java  |  220 --
 .../write/writer/RestorableTsFileIOWriterTest.java |  507 ----
 .../tsfile/write/writer/TestTsFileOutput.java      |   75 -
 .../tsfile/write/writer/TimeChunkWriterTest.java   |  165 --
 .../tsfile/write/writer/TimePageWriterTest.java    |  171 --
 .../writer/TsFileIOWriterMemoryControlTest.java    | 1322 -----------
 .../tsfile/write/writer/ValueChunkWriterTest.java  |  109 -
 .../tsfile/write/writer/ValuePageWriterTest.java   |  291 ---
 .../write/writer/VectorMeasurementSchemaStub.java  |  138 --
 iotdb-core/tsfile/src/test/resources/logback.xml   |  124 -
 library-udf/pom.xml                                |    6 +-
 .../iotdb/library/string/UDTFRegexMatch.java       |    7 +-
 .../iotdb/library/string/UDTFRegexReplace.java     |    6 +-
 .../iotdb/library/string/UDTFRegexSplit.java       |    7 +-
 .../iotdb/library/string/UDTFStrReplace.java       |    7 +-
 pom.xml                                            |    1 +
 2150 files changed, 6191 insertions(+), 89943 deletions(-)

diff --git a/example/flink/pom.xml b/example/flink/pom.xml
index 1c1c0a61b5e..8215b4e0f1f 100644
--- a/example/flink/pom.xml
+++ b/example/flink/pom.xml
@@ -43,9 +43,9 @@
             </exclusions>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>${project.version}</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
diff --git a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkIoTDBSink.java b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkIoTDBSink.java
index 2469f1c0e2e..91adae8cb56 100644
--- a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkIoTDBSink.java
+++ b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkIoTDBSink.java
@@ -19,13 +19,13 @@
 package org.apache.iotdb.flink;
 
 import org.apache.iotdb.flink.options.IoTDBSinkOptions;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
 
 import com.google.common.collect.Lists;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.streaming.api.functions.source.SourceFunction;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
 
 import java.security.SecureRandom;
 import java.util.HashMap;
diff --git a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkIoTDBSource.java b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkIoTDBSource.java
index 175b96d33b3..4341d118072 100644
--- a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkIoTDBSource.java
+++ b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkIoTDBSource.java
@@ -23,12 +23,12 @@ import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.rpc.TSStatusCode;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileBatchSink.java b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileBatchSink.java
index e2fddb5cbe6..8e9c68be2aa 100644
--- a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileBatchSink.java
+++ b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileBatchSink.java
@@ -20,12 +20,6 @@ package org.apache.iotdb.flink;
 
 import org.apache.iotdb.flink.tsfile.RowTSRecordConverter;
 import org.apache.iotdb.flink.tsfile.TSRecordOutputFormat;
-import org.apache.iotdb.tsfile.common.constant.QueryConstant;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.Schema;
 
 import org.apache.flink.api.common.typeinfo.TypeInformation;
 import org.apache.flink.api.common.typeinfo.Types;
@@ -34,6 +28,12 @@ import org.apache.flink.api.java.ExecutionEnvironment;
 import org.apache.flink.api.java.tuple.Tuple7;
 import org.apache.flink.api.java.typeutils.RowTypeInfo;
 import org.apache.flink.types.Row;
+import org.apache.tsfile.common.constant.QueryConstant;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileBatchSource.java b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileBatchSource.java
index fae69970a7d..439f32007f9 100644
--- a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileBatchSource.java
+++ b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileBatchSource.java
@@ -20,9 +20,6 @@ package org.apache.iotdb.flink;
 
 import org.apache.iotdb.flink.tsfile.RowRowRecordParser;
 import org.apache.iotdb.flink.tsfile.TsFileInputFormat;
-import org.apache.iotdb.tsfile.common.constant.QueryConstant;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.read.expression.QueryExpression;
 
 import org.apache.flink.api.common.typeinfo.TypeInformation;
 import org.apache.flink.api.common.typeinfo.Types;
@@ -30,6 +27,9 @@ import org.apache.flink.api.java.DataSet;
 import org.apache.flink.api.java.ExecutionEnvironment;
 import org.apache.flink.api.java.typeutils.RowTypeInfo;
 import org.apache.flink.types.Row;
+import org.apache.tsfile.common.constant.QueryConstant;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.read.expression.QueryExpression;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileStreamSink.java b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileStreamSink.java
index 8146ce10719..9155f188074 100644
--- a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileStreamSink.java
+++ b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileStreamSink.java
@@ -20,12 +20,6 @@ package org.apache.iotdb.flink;
 
 import org.apache.iotdb.flink.tsfile.RowTSRecordConverter;
 import org.apache.iotdb.flink.tsfile.TSRecordOutputFormat;
-import org.apache.iotdb.tsfile.common.constant.QueryConstant;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.Schema;
 
 import org.apache.flink.api.common.typeinfo.TypeInformation;
 import org.apache.flink.api.common.typeinfo.Types;
@@ -34,6 +28,12 @@ import org.apache.flink.api.java.typeutils.RowTypeInfo;
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.types.Row;
+import org.apache.tsfile.common.constant.QueryConstant;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileStreamSource.java b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileStreamSource.java
index 330705eda5c..7890142bf7e 100644
--- a/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileStreamSource.java
+++ b/example/flink/src/main/java/org/apache/iotdb/flink/FlinkTsFileStreamSource.java
@@ -20,9 +20,6 @@ package org.apache.iotdb.flink;
 
 import org.apache.iotdb.flink.tsfile.RowRowRecordParser;
 import org.apache.iotdb.flink.tsfile.TsFileInputFormat;
-import org.apache.iotdb.tsfile.common.constant.QueryConstant;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.read.expression.QueryExpression;
 
 import org.apache.flink.api.common.typeinfo.TypeInformation;
 import org.apache.flink.api.common.typeinfo.Types;
@@ -30,6 +27,9 @@ import org.apache.flink.api.java.typeutils.RowTypeInfo;
 import org.apache.flink.streaming.api.datastream.DataStream;
 import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
 import org.apache.flink.types.Row;
+import org.apache.tsfile.common.constant.QueryConstant;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.read.expression.QueryExpression;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/flink/src/main/java/org/apache/iotdb/flink/TsFileUtils.java b/example/flink/src/main/java/org/apache/iotdb/flink/TsFileUtils.java
index 60161824060..4a4de7eeac9 100644
--- a/example/flink/src/main/java/org/apache/iotdb/flink/TsFileUtils.java
+++ b/example/flink/src/main/java/org/apache/iotdb/flink/TsFileUtils.java
@@ -18,22 +18,21 @@
 
 package org.apache.iotdb.flink;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
-import org.apache.iotdb.tsfile.read.TsFileReader;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.read.expression.QueryExpression;
-import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.LongDataPoint;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.Schema;
-
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.fileSystem.FSFactoryProducer;
+import org.apache.tsfile.read.TsFileReader;
+import org.apache.tsfile.read.TsFileSequenceReader;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.read.expression.QueryExpression;
+import org.apache.tsfile.read.query.dataset.QueryDataSet;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.record.datapoint.DataPoint;
+import org.apache.tsfile.write.record.datapoint.LongDataPoint;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSMRWriteExample.java b/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSMRWriteExample.java
index 674a8b71f9e..b946acaa0a9 100644
--- a/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSMRWriteExample.java
+++ b/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSMRWriteExample.java
@@ -20,13 +20,6 @@
 package org.apache.iotdb.hadoop.tsfile;
 
 import org.apache.iotdb.hadoop.tsfile.record.HDFSTSRecord;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.DoubleDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.LongDataPoint;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.Schema;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
@@ -39,6 +32,13 @@ import org.apache.hadoop.io.Text;
 import org.apache.hadoop.mapreduce.Job;
 import org.apache.hadoop.mapreduce.Mapper;
 import org.apache.hadoop.mapreduce.Reducer;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.write.record.datapoint.DataPoint;
+import org.apache.tsfile.write.record.datapoint.DoubleDataPoint;
+import org.apache.tsfile.write.record.datapoint.LongDataPoint;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TsFileHelper.java b/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TsFileHelper.java
index 03d54c3e24a..6f43a77b59e 100644
--- a/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TsFileHelper.java
+++ b/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TsFileHelper.java
@@ -19,15 +19,14 @@
 
 package org.apache.iotdb.hadoop.tsfile;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.Schema;
-
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.TsFileSequenceReader;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TsFileWriteToHDFS.java b/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TsFileWriteToHDFS.java
index 4bbf4b42203..1b15c5c30f9 100644
--- a/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TsFileWriteToHDFS.java
+++ b/example/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TsFileWriteToHDFS.java
@@ -19,19 +19,18 @@
 
 package org.apache.iotdb.hadoop.tsfile;
 
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
-import org.apache.iotdb.tsfile.fileSystem.FSType;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.LongDataPoint;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.common.conf.TSFileDescriptor;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.fileSystem.FSFactoryProducer;
+import org.apache.tsfile.fileSystem.FSType;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.record.datapoint.DataPoint;
+import org.apache.tsfile.write.record.datapoint.LongDataPoint;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/kafka/src/main/java/org/apache/iotdb/kafka/Consumer.java b/example/kafka/src/main/java/org/apache/iotdb/kafka/Consumer.java
index 9771b85f37c..1e09e09050e 100644
--- a/example/kafka/src/main/java/org/apache/iotdb/kafka/Consumer.java
+++ b/example/kafka/src/main/java/org/apache/iotdb/kafka/Consumer.java
@@ -22,13 +22,13 @@ package org.apache.iotdb.kafka;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.pool.SessionPool;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
 
 import org.apache.kafka.clients.consumer.ConsumerConfig;
 import org.apache.kafka.clients.consumer.KafkaConsumer;
 import org.apache.kafka.common.serialization.StringDeserializer;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/kafka/src/main/java/org/apache/iotdb/kafka/ConsumerThread.java b/example/kafka/src/main/java/org/apache/iotdb/kafka/ConsumerThread.java
index 93752ac2055..deddee50d39 100644
--- a/example/kafka/src/main/java/org/apache/iotdb/kafka/ConsumerThread.java
+++ b/example/kafka/src/main/java/org/apache/iotdb/kafka/ConsumerThread.java
@@ -22,11 +22,11 @@ package org.apache.iotdb.kafka;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.pool.SessionPool;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 
 import org.apache.kafka.clients.consumer.ConsumerRecord;
 import org.apache.kafka.clients.consumer.ConsumerRecords;
 import org.apache.kafka.clients.consumer.KafkaConsumer;
+import org.apache.tsfile.enums.TSDataType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/pipe-count-point-processor/pom.xml b/example/pipe-count-point-processor/pom.xml
index 9a0573bb581..c487ea15a77 100644
--- a/example/pipe-count-point-processor/pom.xml
+++ b/example/pipe-count-point-processor/pom.xml
@@ -47,9 +47,9 @@
             <scope>provided</scope>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>${project.version}</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
             <scope>provided</scope>
         </dependency>
     </dependencies>
diff --git a/example/pipe-count-point-processor/src/main/java/org/apache/iotdb/CountPointProcessor.java b/example/pipe-count-point-processor/src/main/java/org/apache/iotdb/CountPointProcessor.java
index 766c1ce67b0..838090e7a3a 100644
--- a/example/pipe-count-point-processor/src/main/java/org/apache/iotdb/CountPointProcessor.java
+++ b/example/pipe-count-point-processor/src/main/java/org/apache/iotdb/CountPointProcessor.java
@@ -29,9 +29,10 @@ import org.apache.iotdb.pipe.api.customizer.parameter.PipeParameterValidator;
 import org.apache.iotdb.pipe.api.customizer.parameter.PipeParameters;
 import org.apache.iotdb.pipe.api.event.Event;
 import org.apache.iotdb.pipe.api.event.dml.insertion.TabletInsertionEvent;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
+
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 
 import java.util.Collections;
 import java.util.concurrent.atomic.AtomicLong;
diff --git a/example/pom.xml b/example/pom.xml
index 520600ce57c..e3ed3505a7d 100644
--- a/example/pom.xml
+++ b/example/pom.xml
@@ -33,7 +33,6 @@
         <module>kafka</module>
         <module>rocketmq</module>
         <module>session</module>
-        <module>tsfile</module>
         <module>jdbc</module>
         <module>hadoop</module>
         <module>flink</module>
diff --git a/example/pulsar/src/main/java/org/apache/iotdb/pulsar/PulsarConsumer.java b/example/pulsar/src/main/java/org/apache/iotdb/pulsar/PulsarConsumer.java
index b48217e54e5..54adbb38468 100644
--- a/example/pulsar/src/main/java/org/apache/iotdb/pulsar/PulsarConsumer.java
+++ b/example/pulsar/src/main/java/org/apache/iotdb/pulsar/PulsarConsumer.java
@@ -22,15 +22,15 @@ package org.apache.iotdb.pulsar;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.pool.SessionPool;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
 
 import org.apache.pulsar.client.api.Consumer;
 import org.apache.pulsar.client.api.KeySharedPolicy;
 import org.apache.pulsar.client.api.PulsarClient;
 import org.apache.pulsar.client.api.PulsarClientException;
 import org.apache.pulsar.client.api.SubscriptionType;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/pulsar/src/main/java/org/apache/iotdb/pulsar/PulsarConsumerThread.java b/example/pulsar/src/main/java/org/apache/iotdb/pulsar/PulsarConsumerThread.java
index aa871a055e2..fce2baa9d97 100644
--- a/example/pulsar/src/main/java/org/apache/iotdb/pulsar/PulsarConsumerThread.java
+++ b/example/pulsar/src/main/java/org/apache/iotdb/pulsar/PulsarConsumerThread.java
@@ -22,11 +22,11 @@ package org.apache.iotdb.pulsar;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.pool.SessionPool;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 
 import org.apache.pulsar.client.api.Consumer;
 import org.apache.pulsar.client.api.Message;
 import org.apache.pulsar.client.api.Messages;
+import org.apache.tsfile.enums.TSDataType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/rabbitmq/src/main/java/org/apache/iotdb/rabbitmq/RabbitMQConsumer.java b/example/rabbitmq/src/main/java/org/apache/iotdb/rabbitmq/RabbitMQConsumer.java
index 5c21258d699..f8f93c307d3 100644
--- a/example/rabbitmq/src/main/java/org/apache/iotdb/rabbitmq/RabbitMQConsumer.java
+++ b/example/rabbitmq/src/main/java/org/apache/iotdb/rabbitmq/RabbitMQConsumer.java
@@ -22,15 +22,15 @@ package org.apache.iotdb.rabbitmq;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
 
 import com.rabbitmq.client.AMQP;
 import com.rabbitmq.client.BuiltinExchangeType;
 import com.rabbitmq.client.Channel;
 import com.rabbitmq.client.DefaultConsumer;
 import com.rabbitmq.client.Envelope;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/rocketmq/src/main/java/org/apache/iotdb/rocketmq/RocketMQConsumer.java b/example/rocketmq/src/main/java/org/apache/iotdb/rocketmq/RocketMQConsumer.java
index 336a2c75a5f..4d4585898e6 100644
--- a/example/rocketmq/src/main/java/org/apache/iotdb/rocketmq/RocketMQConsumer.java
+++ b/example/rocketmq/src/main/java/org/apache/iotdb/rocketmq/RocketMQConsumer.java
@@ -22,9 +22,6 @@ package org.apache.iotdb.rocketmq;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
 
 import org.apache.rocketmq.client.consumer.DefaultMQPushConsumer;
 import org.apache.rocketmq.client.consumer.listener.ConsumeOrderlyStatus;
@@ -32,6 +29,9 @@ import org.apache.rocketmq.client.consumer.listener.MessageListenerOrderly;
 import org.apache.rocketmq.client.exception.MQClientException;
 import org.apache.rocketmq.common.consumer.ConsumeFromWhere;
 import org.apache.rocketmq.common.message.MessageExt;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/schema/pom.xml b/example/schema/pom.xml
index c1e5f1821e4..1ac5536b4f6 100644
--- a/example/schema/pom.xml
+++ b/example/schema/pom.xml
@@ -35,9 +35,9 @@
             <version>1.3.13</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
             <scope>compile</scope>
         </dependency>
     </dependencies>
diff --git a/example/schema/src/main/java/org/apache/iotdb/schema/PathCheckExample.java b/example/schema/src/main/java/org/apache/iotdb/schema/PathCheckExample.java
index 8e8d154f728..5c2eea3c1a7 100644
--- a/example/schema/src/main/java/org/apache/iotdb/schema/PathCheckExample.java
+++ b/example/schema/src/main/java/org/apache/iotdb/schema/PathCheckExample.java
@@ -19,9 +19,8 @@
 
 package org.apache.iotdb.schema;
 
-import org.apache.iotdb.tsfile.exception.PathParseException;
-import org.apache.iotdb.tsfile.read.common.parser.PathNodesGenerator;
-
+import org.apache.tsfile.exception.PathParseException;
+import org.apache.tsfile.read.common.parser.PathNodesGenerator;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/session/src/main/java/org/apache/iotdb/AlignedTimeseriesSessionExample.java b/example/session/src/main/java/org/apache/iotdb/AlignedTimeseriesSessionExample.java
index fc0b2120ad7..1bded669794 100644
--- a/example/session/src/main/java/org/apache/iotdb/AlignedTimeseriesSessionExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/AlignedTimeseriesSessionExample.java
@@ -26,12 +26,13 @@ import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
 import org.apache.iotdb.session.template.InternalNode;
 import org.apache.iotdb.session.template.MeasurementNode;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
+
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 
 import java.io.IOException;
 import java.security.SecureRandom;
diff --git a/example/session/src/main/java/org/apache/iotdb/DataMigrationExample.java b/example/session/src/main/java/org/apache/iotdb/DataMigrationExample.java
index 13805b93ba5..67431242769 100644
--- a/example/session/src/main/java/org/apache/iotdb/DataMigrationExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/DataMigrationExample.java
@@ -25,10 +25,10 @@ import org.apache.iotdb.isession.pool.SessionDataSetWrapper;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.pool.SessionPool;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/session/src/main/java/org/apache/iotdb/HybridTimeseriesSessionExample.java b/example/session/src/main/java/org/apache/iotdb/HybridTimeseriesSessionExample.java
index df5cd566546..79b6f89051d 100644
--- a/example/session/src/main/java/org/apache/iotdb/HybridTimeseriesSessionExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/HybridTimeseriesSessionExample.java
@@ -23,10 +23,10 @@ import org.apache.iotdb.isession.SessionDataSet;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/session/src/main/java/org/apache/iotdb/SessionConcurrentExample.java b/example/session/src/main/java/org/apache/iotdb/SessionConcurrentExample.java
index e44654b0157..1aa3a962da8 100644
--- a/example/session/src/main/java/org/apache/iotdb/SessionConcurrentExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/SessionConcurrentExample.java
@@ -24,12 +24,12 @@ import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
 import org.apache.iotdb.session.template.MeasurementNode;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/session/src/main/java/org/apache/iotdb/SessionExample.java b/example/session/src/main/java/org/apache/iotdb/SessionExample.java
index d5f40452ea8..0daec0885bf 100644
--- a/example/session/src/main/java/org/apache/iotdb/SessionExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/SessionExample.java
@@ -29,14 +29,15 @@ import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.rpc.TSStatusCode;
 import org.apache.iotdb.session.Session;
 import org.apache.iotdb.session.template.MeasurementNode;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
+
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/example/session/src/main/java/org/apache/iotdb/SessionPoolExample.java b/example/session/src/main/java/org/apache/iotdb/SessionPoolExample.java
index 1857b71ff4e..578a82d4b84 100644
--- a/example/session/src/main/java/org/apache/iotdb/SessionPoolExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/SessionPoolExample.java
@@ -24,8 +24,8 @@ import org.apache.iotdb.isession.pool.SessionDataSetWrapper;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.pool.SessionPool;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 
+import org.apache.tsfile.enums.TSDataType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/session/src/main/java/org/apache/iotdb/SyntaxConventionRelatedExample.java b/example/session/src/main/java/org/apache/iotdb/SyntaxConventionRelatedExample.java
index 7cdd3384dd2..5831eeaea79 100644
--- a/example/session/src/main/java/org/apache/iotdb/SyntaxConventionRelatedExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/SyntaxConventionRelatedExample.java
@@ -25,10 +25,10 @@ import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.rpc.TSStatusCode;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/session/src/main/java/org/apache/iotdb/TabletExample.java b/example/session/src/main/java/org/apache/iotdb/TabletExample.java
index ce116ccbd0b..2b2d595e2e8 100644
--- a/example/session/src/main/java/org/apache/iotdb/TabletExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/TabletExample.java
@@ -20,10 +20,11 @@
 package org.apache.iotdb;
 
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.utils.BytesUtils;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
+
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.utils.BytesUtils;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 
 import java.io.BufferedReader;
 import java.io.FileReader;
diff --git a/example/trigger/src/main/java/org/apache/iotdb/trigger/LoggerTrigger.java b/example/trigger/src/main/java/org/apache/iotdb/trigger/LoggerTrigger.java
index 1ee403ffcdf..f1b5730e3e6 100644
--- a/example/trigger/src/main/java/org/apache/iotdb/trigger/LoggerTrigger.java
+++ b/example/trigger/src/main/java/org/apache/iotdb/trigger/LoggerTrigger.java
@@ -20,11 +20,11 @@
 package org.apache.iotdb.trigger;
 
 import org.apache.iotdb.trigger.api.Trigger;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/trigger/src/main/java/org/apache/iotdb/trigger/StatisticsUpdaterTrigger.java b/example/trigger/src/main/java/org/apache/iotdb/trigger/StatisticsUpdaterTrigger.java
index 8c3c0236824..6d9f260175a 100644
--- a/example/trigger/src/main/java/org/apache/iotdb/trigger/StatisticsUpdaterTrigger.java
+++ b/example/trigger/src/main/java/org/apache/iotdb/trigger/StatisticsUpdaterTrigger.java
@@ -27,10 +27,10 @@ import org.apache.iotdb.session.Session;
 import org.apache.iotdb.trigger.api.Trigger;
 import org.apache.iotdb.trigger.api.TriggerAttributes;
 import org.apache.iotdb.trigger.api.enums.FailureStrategy;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.write.record.Tablet;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.write.record.Tablet;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/example/tsfile/pom.xml b/example/tsfile/pom.xml
deleted file mode 100644
index 5c8b9cc51fb..00000000000
--- a/example/tsfile/pom.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?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>
-        <groupId>org.apache.iotdb</groupId>
-        <artifactId>iotdb-examples</artifactId>
-        <version>1.3.2-SNAPSHOT</version>
-    </parent>
-    <artifactId>tsfile-example</artifactId>
-    <name>IoTDB: Example: TSFile</name>
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>tsfile</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-    </dependencies>
-</project>
diff --git a/example/tsfile/readme.md b/example/tsfile/readme.md
deleted file mode 100644
index 46b8895d5ba..00000000000
--- a/example/tsfile/readme.md
+++ /dev/null
@@ -1,84 +0,0 @@
-<!--
-
-    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.
-
--->
-
-# Function
-```
-The example is to show how to write and read a TsFile File.
-```
-# Usage
-## Dependencies with Maven
-
-```
-<dependencies>
-    <dependency>
-        <groupId>org.apache.iotdb</groupId>
-        <artifactId>tsfile</artifactId>
-     	  <version>1.0.0</version>
-    </dependency>
-</dependencies>
-```
-
-
-## Run TsFileWrite.java
-
-
-  This class is to show how to write a TsFile. It provided two ways:
-  
-   The first one is using a JSON string for measurement(s). The JSON string is an array of JSON 
-   objects(schema). The object must include the *measurement_id*, *datatype*, *encoding*, and 
-   *compressor*. 
-   
-   An example JSON string is provided in the comments in 
-   the method
-   
-        public static void tsFileWriteWithJson() throws IOException,WriteProcessException
-   It uses this interface
-   
-        public void addMeasurementByJson(JSONObject measurement) throws WriteProcessException  
-   An alternative way is to add these measurements directly(manually) by the second interface: 
-   
-         public void addMeasurement(MeasurementSchema measurementSchema) throws WriteProcessException
-   
-   The method
-   
-         public static void tsFileWriteDirect() throws IOException,WriteProcessException
-   shows how to use that interface.
-   
-   Note that the measurements in the two methods are the same therefore there output TsFile should also be identical.
-
-
-  
-## Run TsFileRead.java
-
- This class is to show how to read TsFile file named "testDirect.tsfile".
- 
- The TsFile file "testDirect.tsfile" is generated from class TsFileWrite.
- 
- It generates the same TsFile(testDirect.tsfile and testWithJson.tsfile) file by two different ways
- 
- Run TsFileWrite to generate the testDirect.tsfile first
- 
-## Run TsFileSequenceRead.java
-
-  This class is to show the structure of a TsFile.
-
-### Notice 
-  For detail, please refer to https://github.com/apache/iotdb/blob/master/tsfile/README.md.
diff --git a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/Constant.java b/example/tsfile/src/main/java/org/apache/iotdb/tsfile/Constant.java
deleted file mode 100644
index 3218470aaa5..00000000000
--- a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/Constant.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * 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.iotdb.tsfile;
-
-public class Constant {
-
-  private Constant() {}
-
-  static final String SENSOR_1 = "sensor_1";
-  static final String SENSOR_2 = "sensor_2";
-  static final String SENSOR_3 = "sensor_3";
-
-  static final String DEVICE_PREFIX = "device_";
-  static final String DEVICE_1 = "root.sg.device_1";
-  static final String DEVICE_2 = "root.sg.device_2";
-}
diff --git a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileForceAppendWrite.java b/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileForceAppendWrite.java
deleted file mode 100644
index a165cce2e30..00000000000
--- a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileForceAppendWrite.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * 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.iotdb.tsfile;
-
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.LongDataPoint;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.writer.ForceAppendTsFileWriter;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.IOException;
-import java.nio.file.Files;
-
-public class TsFileForceAppendWrite {
-
-  private static final Logger LOGGER = LoggerFactory.getLogger(TsFileForceAppendWrite.class);
-
-  public static void main(String[] args) throws IOException {
-    String path = "test.tsfile";
-    File f = FSFactoryProducer.getFSFactory().getFile(path);
-    if (f.exists()) {
-      Files.delete(f.toPath());
-    }
-
-    try (TsFileWriter tsFileWriter = new TsFileWriter(f)) {
-
-      // add measurements into file schema
-      for (int i = 0; i < 4; i++) {
-        tsFileWriter.registerTimeseries(
-            new Path(Constant.DEVICE_PREFIX + i),
-            new MeasurementSchema(Constant.SENSOR_1, TSDataType.INT64, TSEncoding.RLE));
-        tsFileWriter.registerTimeseries(
-            new Path(Constant.DEVICE_PREFIX + i),
-            new MeasurementSchema(Constant.SENSOR_2, TSDataType.INT64, TSEncoding.RLE));
-        tsFileWriter.registerTimeseries(
-            new Path(Constant.DEVICE_PREFIX + i),
-            new MeasurementSchema(Constant.SENSOR_3, TSDataType.INT64, TSEncoding.RLE));
-      }
-
-      // construct TSRecord
-      for (int i = 0; i < 100; i++) {
-        TSRecord tsRecord = new TSRecord(i, Constant.DEVICE_PREFIX + (i % 4));
-        DataPoint dPoint1 = new LongDataPoint(Constant.SENSOR_1, i);
-        DataPoint dPoint2 = new LongDataPoint(Constant.SENSOR_2, i);
-        DataPoint dPoint3 = new LongDataPoint(Constant.SENSOR_3, i);
-        tsRecord.addTuple(dPoint1);
-        tsRecord.addTuple(dPoint2);
-        tsRecord.addTuple(dPoint3);
-
-        // write TSRecord
-        tsFileWriter.write(tsRecord);
-      }
-    } catch (Exception e) {
-      LOGGER.error("meet error in TsFileWrite ", e);
-    }
-
-    // open the closed file with ForceAppendTsFileWriter
-
-    try (ForceAppendTsFileWriter fwriter = new ForceAppendTsFileWriter(f)) {
-      fwriter.doTruncate();
-      write(fwriter);
-    } catch (Exception e) {
-      LOGGER.error("ForceAppendTsFileWriter truncate or write error ", e);
-    }
-  }
-
-  private static void write(ForceAppendTsFileWriter fwriter) {
-    try (TsFileWriter tsFileWriter1 = new TsFileWriter(fwriter)) {
-      // add measurements into file schema
-      for (int i = 0; i < 4; i++) {
-        tsFileWriter1.registerTimeseries(
-            new Path(Constant.DEVICE_PREFIX + i),
-            new MeasurementSchema(Constant.SENSOR_1, TSDataType.INT64, TSEncoding.RLE));
-        tsFileWriter1.registerTimeseries(
-            new Path(Constant.DEVICE_PREFIX + i),
-            new MeasurementSchema(Constant.SENSOR_2, TSDataType.INT64, TSEncoding.RLE));
-        tsFileWriter1.registerTimeseries(
-            new Path(Constant.DEVICE_PREFIX + i),
-            new MeasurementSchema(Constant.SENSOR_3, TSDataType.INT64, TSEncoding.RLE));
-      }
-      // construct TSRecord
-      for (int i = 100; i < 120; i++) {
-        TSRecord tsRecord = new TSRecord(i, Constant.DEVICE_PREFIX + (i % 4));
-        DataPoint dPoint1 = new LongDataPoint(Constant.SENSOR_1, i);
-        DataPoint dPoint2 = new LongDataPoint(Constant.SENSOR_2, i);
-        DataPoint dPoint3 = new LongDataPoint(Constant.SENSOR_3, i);
-        tsRecord.addTuple(dPoint1);
-        tsRecord.addTuple(dPoint2);
-        tsRecord.addTuple(dPoint3);
-
-        // write TSRecord
-        tsFileWriter1.write(tsRecord);
-      }
-    } catch (Exception e) {
-      LOGGER.error("meet error in TsFileWrite ", e);
-    }
-  }
-}
diff --git a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileRead.java b/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileRead.java
deleted file mode 100644
index d664db474cb..00000000000
--- a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileRead.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * 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.iotdb.tsfile;
-
-import org.apache.iotdb.tsfile.read.TsFileReader;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.read.expression.IExpression;
-import org.apache.iotdb.tsfile.read.expression.QueryExpression;
-import org.apache.iotdb.tsfile.read.expression.impl.BinaryExpression;
-import org.apache.iotdb.tsfile.read.expression.impl.GlobalTimeExpression;
-import org.apache.iotdb.tsfile.read.expression.impl.SingleSeriesExpression;
-import org.apache.iotdb.tsfile.read.filter.factory.TimeFilterApi;
-import org.apache.iotdb.tsfile.read.filter.factory.ValueFilterApi;
-import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.IOException;
-import java.util.ArrayList;
-
-import static org.apache.iotdb.tsfile.Constant.DEVICE_1;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_1;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_2;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_3;
-
-/**
- * The class is to show how to read TsFile file named "test.tsfile". The TsFile file "test.tsfile"
- * is generated from class TsFileWriteWithTSRecord or TsFileWriteWithTablet. Run
- * TsFileWriteWithTSRecord or TsFileWriteWithTablet to generate the test.tsfile first
- */
-public class TsFileRead {
-
-  private static final Logger LOGGER = LoggerFactory.getLogger(TsFileRead.class);
-
-  private static void queryAndPrint(
-      ArrayList<Path> paths, TsFileReader readTsFile, IExpression statement) throws IOException {
-    QueryExpression queryExpression = QueryExpression.create(paths, statement);
-    QueryDataSet queryDataSet = readTsFile.query(queryExpression);
-    while (queryDataSet.hasNext()) {
-      String next = queryDataSet.next().toString();
-      LOGGER.info(next);
-    }
-    LOGGER.info("----------------");
-  }
-
-  public static void main(String[] args) throws IOException {
-
-    // file path
-    String path = "test.tsfile";
-
-    // create reader and get the readTsFile interface
-    try (TsFileSequenceReader reader = new TsFileSequenceReader(path);
-        TsFileReader readTsFile = new TsFileReader(reader)) {
-
-      // use these paths(all measurements) for all the queries
-      ArrayList<Path> paths = new ArrayList<>();
-      paths.add(new Path(DEVICE_1, SENSOR_1, true));
-      paths.add(new Path(DEVICE_1, SENSOR_2, true));
-      paths.add(new Path(DEVICE_1, SENSOR_3, true));
-
-      // no filter, should select 1 2 3 4 6 7 8
-      queryAndPrint(paths, readTsFile, null);
-
-      // time filter : 4 <= time <= 10, should select 4 6 7 8
-      IExpression timeFilter =
-          BinaryExpression.and(
-              new GlobalTimeExpression(TimeFilterApi.gtEq(4L)),
-              new GlobalTimeExpression(TimeFilterApi.ltEq(10L)));
-      queryAndPrint(paths, readTsFile, timeFilter);
-
-      // value filter : device_1.sensor_2 <= 20, should select 1 2 4 6 7
-      IExpression valueFilter =
-          new SingleSeriesExpression(new Path(DEVICE_1, SENSOR_2, true), ValueFilterApi.ltEq(20L));
-      queryAndPrint(paths, readTsFile, valueFilter);
-
-      // time filter : 4 <= time <= 10, value filter : device_1.sensor_3 >= 20, should select 4 7 8
-      timeFilter =
-          BinaryExpression.and(
-              new GlobalTimeExpression(TimeFilterApi.gtEq(4L)),
-              new GlobalTimeExpression(TimeFilterApi.ltEq(10L)));
-      valueFilter =
-          new SingleSeriesExpression(new Path(DEVICE_1, SENSOR_3, true), ValueFilterApi.gtEq(20L));
-      IExpression finalFilter = BinaryExpression.and(timeFilter, valueFilter);
-      queryAndPrint(paths, readTsFile, finalFilter);
-    }
-  }
-}
diff --git a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileSequenceRead.java b/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileSequenceRead.java
deleted file mode 100644
index 62ba2d1e94a..00000000000
--- a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileSequenceRead.java
+++ /dev/null
@@ -1,205 +0,0 @@
-/*
- * 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.iotdb.tsfile;
-
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
-import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
-import org.apache.iotdb.tsfile.encoding.decoder.Decoder;
-import org.apache.iotdb.tsfile.file.MetaMarker;
-import org.apache.iotdb.tsfile.file.header.ChunkGroupHeader;
-import org.apache.iotdb.tsfile.file.header.ChunkHeader;
-import org.apache.iotdb.tsfile.file.header.PageHeader;
-import org.apache.iotdb.tsfile.file.metadata.ChunkMetadata;
-import org.apache.iotdb.tsfile.file.metadata.IDeviceID;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.read.common.BatchData;
-import org.apache.iotdb.tsfile.read.reader.page.PageReader;
-import org.apache.iotdb.tsfile.read.reader.page.TimePageReader;
-import org.apache.iotdb.tsfile.read.reader.page.ValuePageReader;
-import org.apache.iotdb.tsfile.utils.TsPrimitiveType;
-
-import java.io.IOException;
-import java.nio.ByteBuffer;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-/** This tool is used to read TsFile sequentially, including nonAligned or aligned timeseries. */
-public class TsFileSequenceRead {
-  // if you wanna print detailed datas in pages, then turn it true.
-  private static boolean printDetail = false;
-  public static final String POINT_IN_PAGE = "\t\tpoints in the page: ";
-
-  @SuppressWarnings({
-    "squid:S3776",
-    "squid:S106"
-  }) // Suppress high Cognitive Complexity and Standard outputs warning
-  public static void main(String[] args) throws IOException {
-    String filename = "test.tsfile";
-    if (args.length >= 1) {
-      filename = args[0];
-    }
-    try (TsFileSequenceReader reader = new TsFileSequenceReader(filename)) {
-      System.out.println(
-          "file length: " + FSFactoryProducer.getFSFactory().getFile(filename).length());
-      System.out.println("file magic head: " + reader.readHeadMagic());
-      System.out.println("file magic tail: " + reader.readTailMagic());
-      System.out.println("Level 1 metadata position: " + reader.getFileMetadataPos());
-      System.out.println("Level 1 metadata size: " + reader.getTsFileMetadataSize());
-      // Sequential reading of one ChunkGroup now follows this order:
-      // first the CHUNK_GROUP_HEADER, then SeriesChunks (headers and data) in one ChunkGroup
-      // Because we do not know how many chunks a ChunkGroup may have, we should read one byte (the
-      // marker) ahead and judge accordingly.
-      reader.position((long) TSFileConfig.MAGIC_STRING.getBytes().length + 1);
-      System.out.println("position: " + reader.position());
-      List<long[]> timeBatch = new ArrayList<>();
-      int pageIndex = 0;
-      byte marker;
-      while ((marker = reader.readMarker()) != MetaMarker.SEPARATOR) {
-        switch (marker) {
-          case MetaMarker.CHUNK_HEADER:
-          case MetaMarker.TIME_CHUNK_HEADER:
-          case MetaMarker.VALUE_CHUNK_HEADER:
-          case MetaMarker.ONLY_ONE_PAGE_CHUNK_HEADER:
-          case MetaMarker.ONLY_ONE_PAGE_TIME_CHUNK_HEADER:
-          case MetaMarker.ONLY_ONE_PAGE_VALUE_CHUNK_HEADER:
-            System.out.println("\t[Chunk]");
-            System.out.println("\tchunk type: " + marker);
-            System.out.println("\tposition: " + reader.position());
-            ChunkHeader header = reader.readChunkHeader(marker);
-            System.out.println("\tMeasurement: " + header.getMeasurementID());
-            if (header.getDataSize() == 0) {
-              // empty value chunk
-              System.out.println("\t-- Empty Chunk ");
-              break;
-            }
-            System.out.println(
-                "\tChunk Size: " + (header.getDataSize() + header.getSerializedSize()));
-            Decoder defaultTimeDecoder =
-                Decoder.getDecoderByType(
-                    TSEncoding.valueOf(TSFileDescriptor.getInstance().getConfig().getTimeEncoder()),
-                    TSDataType.INT64);
-            Decoder valueDecoder =
-                Decoder.getDecoderByType(header.getEncodingType(), header.getDataType());
-            int dataSize = header.getDataSize();
-            pageIndex = 0;
-            if (header.getDataType() == TSDataType.VECTOR) {
-              timeBatch.clear();
-            }
-            while (dataSize > 0) {
-              valueDecoder.reset();
-              System.out.println(
-                  "\t\t[Page" + pageIndex + "]\n \t\tPage head position: " + reader.position());
-              PageHeader pageHeader =
-                  reader.readPageHeader(
-                      header.getDataType(),
-                      (header.getChunkType() & 0x3F) == MetaMarker.CHUNK_HEADER);
-              System.out.println("\t\tPage data position: " + reader.position());
-              ByteBuffer pageData = reader.readPage(pageHeader, header.getCompressionType());
-              System.out.println(
-                  "\t\tUncompressed page data size: " + pageHeader.getUncompressedSize());
-              System.out.println(
-                  "\t\tCompressed page data size: " + pageHeader.getCompressedSize());
-              if ((header.getChunkType() & TsFileConstant.TIME_COLUMN_MASK)
-                  == TsFileConstant.TIME_COLUMN_MASK) { // Time Chunk
-                TimePageReader timePageReader =
-                    new TimePageReader(pageHeader, pageData, defaultTimeDecoder);
-                timeBatch.add(timePageReader.getNextTimeBatch());
-                System.out.println(POINT_IN_PAGE + timeBatch.get(pageIndex).length);
-                if (printDetail) {
-                  for (int i = 0; i < timeBatch.get(pageIndex).length; i++) {
-                    System.out.println("\t\t\ttime: " + timeBatch.get(pageIndex)[i]);
-                  }
-                }
-              } else if ((header.getChunkType() & TsFileConstant.VALUE_COLUMN_MASK)
-                  == TsFileConstant.VALUE_COLUMN_MASK) { // Value Chunk
-                ValuePageReader valuePageReader =
-                    new ValuePageReader(pageHeader, pageData, header.getDataType(), valueDecoder);
-                TsPrimitiveType[] valueBatch =
-                    valuePageReader.nextValueBatch(timeBatch.get(pageIndex));
-                if (valueBatch.length == 0) {
-                  System.out.println("\t\t-- Empty Page ");
-                } else {
-                  System.out.println(POINT_IN_PAGE + valueBatch.length);
-                }
-                if (printDetail) {
-                  for (TsPrimitiveType batch : valueBatch) {
-                    System.out.println("\t\t\tvalue: " + batch);
-                  }
-                }
-              } else { // NonAligned Chunk
-                PageReader pageReader =
-                    new PageReader(
-                        pageData, header.getDataType(), valueDecoder, defaultTimeDecoder);
-                BatchData batchData = pageReader.getAllSatisfiedPageData();
-                if (header.getChunkType() == MetaMarker.CHUNK_HEADER) {
-                  System.out.println(POINT_IN_PAGE + pageHeader.getNumOfValues());
-                } else {
-                  System.out.println(POINT_IN_PAGE + batchData.length());
-                }
-                if (printDetail) {
-                  while (batchData.hasCurrent()) {
-                    System.out.println(
-                        "\t\t\ttime, value: "
-                            + batchData.currentTime()
-                            + ", "
-                            + batchData.currentValue());
-                    batchData.next();
-                  }
-                }
-              }
-              pageIndex++;
-              dataSize -= pageHeader.getSerializedPageSize();
-            }
-            break;
-          case MetaMarker.CHUNK_GROUP_HEADER:
-            System.out.println("[Chunk Group]");
-            System.out.println("Chunk Group Header position: " + reader.position());
-            ChunkGroupHeader chunkGroupHeader = reader.readChunkGroupHeader();
-            System.out.println("device: " + chunkGroupHeader.getDeviceID());
-            break;
-          case MetaMarker.OPERATION_INDEX_RANGE:
-            reader.readPlanIndex();
-            System.out.println("minPlanIndex: " + reader.getMinPlanIndex());
-            System.out.println("maxPlanIndex: " + reader.getMaxPlanIndex());
-            break;
-          default:
-            MetaMarker.handleUnexpectedMarker(marker);
-        }
-      }
-      System.out.println("[Metadata]");
-      for (IDeviceID device : reader.getAllDevices()) {
-        Map<String, List<ChunkMetadata>> seriesMetaData = reader.readChunkMetadataInDevice(device);
-        System.out.printf(
-            "\t[Device]Device %s, Number of Measurements %d%n", device, seriesMetaData.size());
-        for (Map.Entry<String, List<ChunkMetadata>> serie : seriesMetaData.entrySet()) {
-          System.out.println("\t\tMeasurement:" + serie.getKey());
-          for (ChunkMetadata chunkMetadata : serie.getValue()) {
-            System.out.println("\t\tFile offset:" + chunkMetadata.getOffsetOfChunkHeader());
-          }
-        }
-      }
-    }
-  }
-}
diff --git a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteAlignedWithTSRecord.java b/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteAlignedWithTSRecord.java
deleted file mode 100644
index 0a38aa8b882..00000000000
--- a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteAlignedWithTSRecord.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * 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.iotdb.tsfile;
-
-import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.LongDataPoint;
-import org.apache.iotdb.tsfile.write.schema.IMeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.IOException;
-import java.nio.file.Files;
-import java.util.ArrayList;
-import java.util.List;
-
-import static org.apache.iotdb.tsfile.Constant.DEVICE_1;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_1;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_2;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_3;
-
-public class TsFileWriteAlignedWithTSRecord {
-  private static final Logger logger =
-      LoggerFactory.getLogger(TsFileWriteAlignedWithTSRecord.class);
-
-  public static void main(String[] args) throws IOException {
-    File f = FSFactoryProducer.getFSFactory().getFile("alignedRecord.tsfile");
-    if (f.exists()) {
-      try {
-        Files.delete(f.toPath());
-      } catch (IOException e) {
-        throw new IOException("can not delete " + f.getAbsolutePath());
-      }
-    }
-
-    try (TsFileWriter tsFileWriter = new TsFileWriter(f)) {
-      List<MeasurementSchema> measurementSchemas = new ArrayList<>();
-      measurementSchemas.add(new MeasurementSchema(SENSOR_1, TSDataType.INT64, TSEncoding.RLE));
-      measurementSchemas.add(new MeasurementSchema(SENSOR_2, TSDataType.INT64, TSEncoding.RLE));
-      measurementSchemas.add(new MeasurementSchema(SENSOR_3, TSDataType.INT64, TSEncoding.RLE));
-
-      // register timeseries
-      tsFileWriter.registerAlignedTimeseries(new Path(DEVICE_1), measurementSchemas);
-
-      // example1
-      writeAligned(tsFileWriter, DEVICE_1, measurementSchemas, 1000000, 0, 0);
-    } catch (WriteProcessException e) {
-      logger.error("write TSRecord failed", e);
-    }
-  }
-
-  private static void writeAligned(
-      TsFileWriter tsFileWriter,
-      String deviceId,
-      List<MeasurementSchema> schemas,
-      long rowSize,
-      long startTime,
-      long startValue)
-      throws IOException, WriteProcessException {
-    for (long time = startTime; time < rowSize + startTime; time++) {
-      // construct TsRecord
-      TSRecord tsRecord = new TSRecord(time, deviceId);
-      for (IMeasurementSchema schema : schemas) {
-        DataPoint dPoint = new LongDataPoint(schema.getMeasurementId(), startValue++);
-        tsRecord.addTuple(dPoint);
-      }
-      // write
-      tsFileWriter.writeAligned(tsRecord);
-    }
-  }
-}
diff --git a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteAlignedWithTablet.java b/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteAlignedWithTablet.java
deleted file mode 100644
index 88b70eaf732..00000000000
--- a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteAlignedWithTablet.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * 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.iotdb.tsfile;
-
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.IOException;
-import java.nio.file.Files;
-import java.util.ArrayList;
-import java.util.List;
-
-import static org.apache.iotdb.tsfile.Constant.DEVICE_1;
-import static org.apache.iotdb.tsfile.Constant.DEVICE_2;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_1;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_2;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_3;
-
-public class TsFileWriteAlignedWithTablet {
-  private static final Logger LOGGER = LoggerFactory.getLogger(TsFileWriteAlignedWithTablet.class);
-
-  public static void main(String[] args) throws IOException {
-    File f = FSFactoryProducer.getFSFactory().getFile("alignedTablet.tsfile");
-    if (f.exists()) {
-      try {
-        Files.delete(f.toPath());
-      } catch (IOException e) {
-        throw new IOException("can not delete " + f.getAbsolutePath());
-      }
-    }
-
-    try (TsFileWriter tsFileWriter = new TsFileWriter(f)) {
-      List<MeasurementSchema> measurementSchemas = new ArrayList<>();
-      measurementSchemas.add(new MeasurementSchema(SENSOR_1, TSDataType.TEXT, TSEncoding.PLAIN));
-      measurementSchemas.add(new MeasurementSchema(SENSOR_2, TSDataType.TEXT, TSEncoding.PLAIN));
-      measurementSchemas.add(new MeasurementSchema(SENSOR_3, TSDataType.TEXT, TSEncoding.PLAIN));
-
-      // register align timeseries
-      tsFileWriter.registerAlignedTimeseries(new Path(DEVICE_1), measurementSchemas);
-
-      // example 1
-      writeAlignedWithTablet(tsFileWriter, DEVICE_1, measurementSchemas, 200000, 0, 0);
-
-      writeNonAlignedWithTablet(tsFileWriter); // write nonAligned timeseries
-    } catch (WriteProcessException e) {
-      LOGGER.error("write Tablet failed", e);
-    }
-  }
-
-  private static void writeAlignedWithTablet(
-      TsFileWriter tsFileWriter,
-      String deviceId,
-      List<MeasurementSchema> schemas,
-      long rowNum,
-      long startTime,
-      long startValue)
-      throws IOException, WriteProcessException {
-    Tablet tablet = new Tablet(deviceId, schemas);
-    long[] timestamps = tablet.timestamps;
-    Object[] values = tablet.values;
-    long sensorNum = schemas.size();
-
-    for (long r = 0; r < rowNum; r++, startValue++) {
-      int row = tablet.rowSize++;
-      timestamps[row] = startTime++;
-      for (int i = 0; i < sensorNum; i++) {
-        Binary[] textSensor = (Binary[]) values[i];
-        textSensor[row] = new Binary("testString.........", TSFileConfig.STRING_CHARSET);
-      }
-      // write
-      if (tablet.rowSize == tablet.getMaxRowNumber()) {
-        tsFileWriter.writeAligned(tablet);
-        tablet.reset();
-      }
-    }
-    // write
-    if (tablet.rowSize != 0) {
-      tsFileWriter.writeAligned(tablet);
-      tablet.reset();
-    }
-  }
-
-  private static void writeNonAlignedWithTablet(TsFileWriter tsFileWriter)
-      throws WriteProcessException, IOException {
-    // register nonAlign timeseries
-    tsFileWriter.registerTimeseries(
-        new Path(DEVICE_2), new MeasurementSchema(SENSOR_1, TSDataType.INT64, TSEncoding.RLE));
-    tsFileWriter.registerTimeseries(
-        new Path(DEVICE_2), new MeasurementSchema(SENSOR_2, TSDataType.INT64, TSEncoding.RLE));
-    // construct Tablet
-    List<MeasurementSchema> measurementSchemas = new ArrayList<>();
-    measurementSchemas.add(new MeasurementSchema(SENSOR_1, TSDataType.INT64, TSEncoding.RLE));
-    measurementSchemas.add(new MeasurementSchema(SENSOR_2, TSDataType.INT64, TSEncoding.RLE));
-    Tablet tablet = new Tablet(DEVICE_2, measurementSchemas);
-    long[] timestamps = tablet.timestamps;
-    Object[] values = tablet.values;
-    int rowNum = 100;
-    int sensorNum = measurementSchemas.size();
-    long timestamp = 1;
-    long value = 1000000L;
-    for (int r = 0; r < rowNum; r++, value++) {
-      int row = tablet.rowSize++;
-      timestamps[row] = timestamp++;
-      for (int i = 0; i < sensorNum; i++) {
-        long[] sensor = (long[]) values[i];
-        sensor[row] = value;
-      }
-      // write
-      if (tablet.rowSize == tablet.getMaxRowNumber()) {
-        tsFileWriter.write(tablet);
-        tablet.reset();
-      }
-    }
-    // write
-    if (tablet.rowSize != 0) {
-      tsFileWriter.write(tablet);
-      tablet.reset();
-    }
-  }
-}
diff --git a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteWithTSRecord.java b/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteWithTSRecord.java
deleted file mode 100644
index 9a81e8d5c9d..00000000000
--- a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteWithTSRecord.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * 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.iotdb.tsfile;
-
-import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.LongDataPoint;
-import org.apache.iotdb.tsfile.write.schema.IMeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.IOException;
-import java.nio.file.Files;
-import java.util.ArrayList;
-import java.util.List;
-
-import static org.apache.iotdb.tsfile.Constant.DEVICE_1;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_1;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_2;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_3;
-
-/**
- * An example of writing data with TSRecord to TsFile It uses the interface: public void
- * addMeasurement(MeasurementSchema measurementSchema) throws WriteProcessException
- */
-public class TsFileWriteWithTSRecord {
-  private static final Logger LOGGER = LoggerFactory.getLogger(TsFileWriteWithTSRecord.class);
-
-  public static void main(String[] args) {
-    try {
-      String path = "Record.tsfile";
-      File f = FSFactoryProducer.getFSFactory().getFile(path);
-      if (f.exists()) {
-        Files.delete(f.toPath());
-      }
-
-      try (TsFileWriter tsFileWriter = new TsFileWriter(f)) {
-        List<MeasurementSchema> schemas = new ArrayList<>();
-        schemas.add(new MeasurementSchema(SENSOR_1, TSDataType.INT64, TSEncoding.RLE));
-        schemas.add(new MeasurementSchema(SENSOR_2, TSDataType.INT64, TSEncoding.RLE));
-        schemas.add(new MeasurementSchema(SENSOR_3, TSDataType.INT64, TSEncoding.RLE));
-
-        // register timeseries
-        tsFileWriter.registerTimeseries(new Path(DEVICE_1), schemas);
-
-        // example1
-        write(tsFileWriter, DEVICE_1, schemas, 10000, 0, 0);
-      }
-    } catch (Exception e) {
-      LOGGER.error("TsFileWriteWithTSRecord meet error", e);
-    }
-  }
-
-  private static void write(
-      TsFileWriter tsFileWriter,
-      String deviceId,
-      List<MeasurementSchema> schemas,
-      long rowSize,
-      long startTime,
-      long startValue)
-      throws IOException, WriteProcessException {
-    for (long time = startTime; time < rowSize + startTime; time++) {
-      // construct TsRecord
-      TSRecord tsRecord = new TSRecord(time, deviceId);
-      for (IMeasurementSchema schema : schemas) {
-        DataPoint dPoint = new LongDataPoint(schema.getMeasurementId(), startValue++);
-        tsRecord.addTuple(dPoint);
-      }
-      // write
-      tsFileWriter.write(tsRecord);
-    }
-  }
-}
diff --git a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteWithTablet.java b/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteWithTablet.java
deleted file mode 100644
index 74c6c1781e7..00000000000
--- a/example/tsfile/src/main/java/org/apache/iotdb/tsfile/TsFileWriteWithTablet.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * 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.iotdb.tsfile;
-
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.IOException;
-import java.nio.file.Files;
-import java.util.ArrayList;
-import java.util.List;
-
-import static org.apache.iotdb.tsfile.Constant.DEVICE_1;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_1;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_2;
-import static org.apache.iotdb.tsfile.Constant.SENSOR_3;
-
-/** An example of writing data with Tablet to TsFile */
-public class TsFileWriteWithTablet {
-
-  private static final Logger LOGGER = LoggerFactory.getLogger(TsFileWriteWithTablet.class);
-
-  public static void main(String[] args) {
-    try {
-      String path = "Tablet.tsfile";
-      File f = FSFactoryProducer.getFSFactory().getFile(path);
-      if (f.exists()) {
-        Files.delete(f.toPath());
-      }
-
-      try (TsFileWriter tsFileWriter = new TsFileWriter(f)) {
-        List<MeasurementSchema> measurementSchemas = new ArrayList<>();
-        measurementSchemas.add(new MeasurementSchema(SENSOR_1, TSDataType.TEXT, TSEncoding.PLAIN));
-        measurementSchemas.add(new MeasurementSchema(SENSOR_2, TSDataType.TEXT, TSEncoding.PLAIN));
-        measurementSchemas.add(new MeasurementSchema(SENSOR_3, TSDataType.TEXT, TSEncoding.PLAIN));
-
-        // register nonAligned timeseries
-        tsFileWriter.registerTimeseries(new Path(DEVICE_1), measurementSchemas);
-
-        // example 1
-        writeWithTablet(tsFileWriter, DEVICE_1, measurementSchemas, 10000, 0, 0);
-      }
-    } catch (Exception e) {
-      LOGGER.error("meet error in TsFileWrite with tablet", e);
-    }
-  }
-
-  private static void writeWithTablet(
-      TsFileWriter tsFileWriter,
-      String deviceId,
-      List<MeasurementSchema> schemas,
-      long rowNum,
-      long startTime,
-      long startValue)
-      throws IOException, WriteProcessException {
-    Tablet tablet = new Tablet(deviceId, schemas);
-    long[] timestamps = tablet.timestamps;
-    Object[] values = tablet.values;
-    long sensorNum = schemas.size();
-
-    for (long r = 0; r < rowNum; r++, startValue++) {
-      int row = tablet.rowSize++;
-      timestamps[row] = startTime++;
-      for (int i = 0; i < sensorNum; i++) {
-        Binary[] textSensor = (Binary[]) values[i];
-        textSensor[row] = new Binary("testString.........", TSFileConfig.STRING_CHARSET);
-      }
-      // write
-      if (tablet.rowSize == tablet.getMaxRowNumber()) {
-        tsFileWriter.write(tablet);
-        tablet.reset();
-      }
-    }
-    // write
-    if (tablet.rowSize != 0) {
-      tsFileWriter.write(tablet);
-      tablet.reset();
-    }
-  }
-}
diff --git a/example/udf/src/main/java/org/apache/iotdb/udf/UDAFExample.java b/example/udf/src/main/java/org/apache/iotdb/udf/UDAFExample.java
index 5d7a95dd8a9..14c0972ce09 100644
--- a/example/udf/src/main/java/org/apache/iotdb/udf/UDAFExample.java
+++ b/example/udf/src/main/java/org/apache/iotdb/udf/UDAFExample.java
@@ -19,9 +19,6 @@
 
 package org.apache.iotdb.udf;
 
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.read.common.block.column.Column;
-import org.apache.iotdb.tsfile.utils.BitMap;
 import org.apache.iotdb.udf.api.State;
 import org.apache.iotdb.udf.api.UDAF;
 import org.apache.iotdb.udf.api.customizer.config.UDAFConfigurations;
@@ -31,6 +28,10 @@ import org.apache.iotdb.udf.api.exception.UDFException;
 import org.apache.iotdb.udf.api.type.Type;
 import org.apache.iotdb.udf.api.utils.ResultValue;
 
+import org.apache.tsfile.block.column.Column;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.utils.BitMap;
+
 import java.nio.ByteBuffer;
 
 /** This is an internal example of the UDAF implementation. */
diff --git a/integration-test/pom.xml b/integration-test/pom.xml
index 95fe392bcc6..79bd8aeefc4 100644
--- a/integration-test/pom.xml
+++ b/integration-test/pom.xml
@@ -115,9 +115,9 @@
             <version>1.3.2-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
diff --git a/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/Adder.java b/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/Adder.java
index bf43997aa74..6fb9f458d46 100644
--- a/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/Adder.java
+++ b/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/Adder.java
@@ -19,7 +19,6 @@
 
 package org.apache.iotdb.db.query.udf.example;
 
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
 import org.apache.iotdb.udf.api.UDTF;
 import org.apache.iotdb.udf.api.access.Row;
 import org.apache.iotdb.udf.api.collector.PointCollector;
@@ -29,6 +28,7 @@ import org.apache.iotdb.udf.api.customizer.parameter.UDFParameters;
 import org.apache.iotdb.udf.api.customizer.strategy.RowByRowAccessStrategy;
 import org.apache.iotdb.udf.api.type.Type;
 
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/TwoSumBlock.java b/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/TwoSumBlock.java
index eddb9b49567..0b061933ed8 100644
--- a/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/TwoSumBlock.java
+++ b/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/TwoSumBlock.java
@@ -19,8 +19,6 @@
 
 package org.apache.iotdb.db.query.udf.example;
 
-import org.apache.iotdb.tsfile.read.common.block.column.Column;
-import org.apache.iotdb.tsfile.read.common.block.column.ColumnBuilder;
 import org.apache.iotdb.udf.api.UDTF;
 import org.apache.iotdb.udf.api.customizer.config.UDTFConfigurations;
 import org.apache.iotdb.udf.api.customizer.parameter.UDFParameterValidator;
@@ -28,6 +26,9 @@ import org.apache.iotdb.udf.api.customizer.parameter.UDFParameters;
 import org.apache.iotdb.udf.api.customizer.strategy.MappableRowByRowAccessStrategy;
 import org.apache.iotdb.udf.api.type.Type;
 
+import org.apache.tsfile.block.column.Column;
+import org.apache.tsfile.block.column.ColumnBuilder;
+
 public class TwoSumBlock implements UDTF {
   private Type type;
 
diff --git a/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFAvg.java b/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFAvg.java
index 52a80c553f2..69d70a3c41a 100644
--- a/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFAvg.java
+++ b/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFAvg.java
@@ -19,9 +19,6 @@
 
 package org.apache.iotdb.db.query.udf.example;
 
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.read.common.block.column.Column;
-import org.apache.iotdb.tsfile.utils.BitMap;
 import org.apache.iotdb.udf.api.State;
 import org.apache.iotdb.udf.api.UDAF;
 import org.apache.iotdb.udf.api.customizer.config.UDAFConfigurations;
@@ -31,6 +28,10 @@ import org.apache.iotdb.udf.api.exception.UDFException;
 import org.apache.iotdb.udf.api.type.Type;
 import org.apache.iotdb.udf.api.utils.ResultValue;
 
+import org.apache.tsfile.block.column.Column;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.utils.BitMap;
+
 import java.nio.ByteBuffer;
 
 public class UDAFAvg implements UDAF {
diff --git a/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFCount.java b/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFCount.java
index bddd6dab9ba..7be14593e96 100644
--- a/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFCount.java
+++ b/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFCount.java
@@ -19,8 +19,6 @@
 
 package org.apache.iotdb.db.query.udf.example;
 
-import org.apache.iotdb.tsfile.read.common.block.column.Column;
-import org.apache.iotdb.tsfile.utils.BitMap;
 import org.apache.iotdb.udf.api.State;
 import org.apache.iotdb.udf.api.UDAF;
 import org.apache.iotdb.udf.api.customizer.config.UDAFConfigurations;
@@ -29,6 +27,9 @@ import org.apache.iotdb.udf.api.customizer.parameter.UDFParameters;
 import org.apache.iotdb.udf.api.type.Type;
 import org.apache.iotdb.udf.api.utils.ResultValue;
 
+import org.apache.tsfile.block.column.Column;
+import org.apache.tsfile.utils.BitMap;
+
 import java.nio.ByteBuffer;
 
 public class UDAFCount implements UDAF {
diff --git a/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFSum.java b/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFSum.java
index 8b86ceff844..557849ca7f0 100644
--- a/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFSum.java
+++ b/integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/UDAFSum.java
@@ -19,9 +19,6 @@
 
 package org.apache.iotdb.db.query.udf.example;
 
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.read.common.block.column.Column;
-import org.apache.iotdb.tsfile.utils.BitMap;
 import org.apache.iotdb.udf.api.State;
 import org.apache.iotdb.udf.api.UDAF;
 import org.apache.iotdb.udf.api.customizer.config.UDAFConfigurations;
@@ -31,6 +28,10 @@ import org.apache.iotdb.udf.api.exception.UDFException;
 import org.apache.iotdb.udf.api.type.Type;
 import org.apache.iotdb.udf.api.utils.ResultValue;
 
+import org.apache.tsfile.block.column.Column;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.utils.BitMap;
+
 import java.nio.ByteBuffer;
 
 public class UDAFSum implements UDAF {
diff --git a/integration-test/src/main/java/org/apache/iotdb/db/trigger/example/TriggerFireTimesCounter.java b/integration-test/src/main/java/org/apache/iotdb/db/trigger/example/TriggerFireTimesCounter.java
index 30c58053cbf..2ddfbb17125 100644
--- a/integration-test/src/main/java/org/apache/iotdb/db/trigger/example/TriggerFireTimesCounter.java
+++ b/integration-test/src/main/java/org/apache/iotdb/db/trigger/example/TriggerFireTimesCounter.java
@@ -21,8 +21,8 @@ package org.apache.iotdb.db.trigger.example;
 
 import org.apache.iotdb.trigger.api.Trigger;
 import org.apache.iotdb.trigger.api.TriggerAttributes;
-import org.apache.iotdb.tsfile.write.record.Tablet;
 
+import org.apache.tsfile.write.record.Tablet;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/EnvUtils.java b/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/EnvUtils.java
index d23a0917844..8b08edc5bfe 100644
--- a/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/EnvUtils.java
+++ b/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/EnvUtils.java
@@ -20,9 +20,9 @@
 package org.apache.iotdb.it.env.cluster;
 
 import org.apache.iotdb.it.framework.IoTDBTestLogger;
-import org.apache.iotdb.tsfile.utils.Pair;
 
 import org.apache.commons.lang3.SystemUtils;
+import org.apache.tsfile.utils.Pair;
 
 import java.io.File;
 import java.io.IOException;
diff --git a/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/env/Cluster1Env.java b/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/env/Cluster1Env.java
index 20f22e0b5ad..cffc25a4328 100644
--- a/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/env/Cluster1Env.java
+++ b/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/env/Cluster1Env.java
@@ -20,7 +20,8 @@
 package org.apache.iotdb.it.env.cluster.env;
 
 import org.apache.iotdb.it.env.cluster.EnvUtils;
-import org.apache.iotdb.tsfile.utils.Pair;
+
+import org.apache.tsfile.utils.Pair;
 
 public class Cluster1Env extends AbstractEnv {
 
diff --git a/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/env/MultiClusterEnv.java b/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/env/MultiClusterEnv.java
index 8eecd4ea00d..1eb05cb315f 100644
--- a/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/env/MultiClusterEnv.java
+++ b/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/env/MultiClusterEnv.java
@@ -20,7 +20,8 @@
 package org.apache.iotdb.it.env.cluster.env;
 
 import org.apache.iotdb.it.env.cluster.EnvUtils;
-import org.apache.iotdb.tsfile.utils.Pair;
+
+import org.apache.tsfile.utils.Pair;
 
 public class MultiClusterEnv extends AbstractEnv {
 
diff --git a/integration-test/src/main/java/org/apache/iotdb/it/utils/TsFileGenerator.java b/integration-test/src/main/java/org/apache/iotdb/it/utils/TsFileGenerator.java
index 0b95e9931ae..31f6fecdd07 100644
--- a/integration-test/src/main/java/org/apache/iotdb/it/utils/TsFileGenerator.java
+++ b/integration-test/src/main/java/org/apache/iotdb/it/utils/TsFileGenerator.java
@@ -23,15 +23,15 @@ import org.apache.iotdb.commons.exception.IllegalPathException;
 import org.apache.iotdb.commons.path.PartialPath;
 import org.apache.iotdb.db.storageengine.dataregion.modification.Deletion;
 import org.apache.iotdb.db.storageengine.dataregion.modification.ModificationFile;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
-import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.common.constant.TsFileConstant;
+import org.apache.tsfile.exception.write.WriteProcessException;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/integration-test/src/main/java/org/apache/iotdb/itbase/constant/TestConstant.java b/integration-test/src/main/java/org/apache/iotdb/itbase/constant/TestConstant.java
index cf2f51ab444..18fd6fa64d9 100644
--- a/integration-test/src/main/java/org/apache/iotdb/itbase/constant/TestConstant.java
+++ b/integration-test/src/main/java/org/apache/iotdb/itbase/constant/TestConstant.java
@@ -20,9 +20,10 @@
 package org.apache.iotdb.itbase.constant;
 
 import org.apache.iotdb.db.queryengine.common.header.ColumnHeaderConstant;
-import org.apache.iotdb.tsfile.utils.FilePathUtils;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
+
+import org.apache.tsfile.utils.FilePathUtils;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.record.datapoint.DataPoint;
 
 import java.io.File;
 
diff --git a/integration-test/src/test/java/org/apache/iotdb/confignode/it/utils/ConfigNodeTestUtils.java b/integration-test/src/test/java/org/apache/iotdb/confignode/it/utils/ConfigNodeTestUtils.java
index dfe6a136f8c..7c6719e6701 100644
--- a/integration-test/src/test/java/org/apache/iotdb/confignode/it/utils/ConfigNodeTestUtils.java
+++ b/integration-test/src/test/java/org/apache/iotdb/confignode/it/utils/ConfigNodeTestUtils.java
@@ -41,8 +41,8 @@ import org.apache.iotdb.it.env.EnvFactory;
 import org.apache.iotdb.it.env.cluster.node.ConfigNodeWrapper;
 import org.apache.iotdb.it.env.cluster.node.DataNodeWrapper;
 import org.apache.iotdb.rpc.TSStatusCode;
-import org.apache.iotdb.tsfile.utils.PublicBAOS;
 
+import org.apache.tsfile.utils.PublicBAOS;
 import org.junit.Assert;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/IOTDBLoadTsFileIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/IOTDBLoadTsFileIT.java
index 774c82e0ca2..0a3a44ee629 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/IOTDBLoadTsFileIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/IOTDBLoadTsFileIT.java
@@ -27,11 +27,11 @@ import org.apache.iotdb.it.utils.TsFileGenerator;
 import org.apache.iotdb.itbase.category.ClusterIT;
 import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 import org.apache.iotdb.jdbc.IoTDBSQLException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBPartialInsertionIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBPartialInsertionIT.java
index 18bee17a734..074da6873ee 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBPartialInsertionIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBPartialInsertionIT.java
@@ -24,13 +24,13 @@ import org.apache.iotdb.it.env.EnvFactory;
 import org.apache.iotdb.it.framework.IoTDBTestRunner;
 import org.apache.iotdb.itbase.category.ClusterIT;
 import org.apache.iotdb.itbase.category.LocalStandaloneIT;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBRepairDataIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBRepairDataIT.java
index 49f581642e2..550b0d7744b 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBRepairDataIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBRepairDataIT.java
@@ -23,12 +23,12 @@ import org.apache.iotdb.db.storageengine.dataregion.tsfile.generator.TsFileNameG
 import org.apache.iotdb.it.env.EnvFactory;
 import org.apache.iotdb.it.framework.IoTDBTestRunner;
 import org.apache.iotdb.itbase.category.LocalStandaloneIT;
-import org.apache.iotdb.tsfile.file.metadata.PlainDeviceID;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.write.chunk.ChunkWriterImpl;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.writer.TsFileIOWriter;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.PlainDeviceID;
+import org.apache.tsfile.write.chunk.ChunkWriterImpl;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.writer.TsFileIOWriter;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/selectinto/IoTDBSelectIntoIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/selectinto/IoTDBSelectIntoIT.java
index 995464ee93d..0f8ca0df38a 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/selectinto/IoTDBSelectIntoIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/selectinto/IoTDBSelectIntoIT.java
@@ -23,8 +23,8 @@ import org.apache.iotdb.it.env.EnvFactory;
 import org.apache.iotdb.it.framework.IoTDBTestRunner;
 import org.apache.iotdb.itbase.category.ClusterIT;
 import org.apache.iotdb.itbase.category.LocalStandaloneIT;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 
+import org.apache.tsfile.enums.TSDataType;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/utils/TestUtils.java b/integration-test/src/test/java/org/apache/iotdb/db/it/utils/TestUtils.java
index c7c72738d92..10679d932e4 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/utils/TestUtils.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/utils/TestUtils.java
@@ -28,8 +28,8 @@ import org.apache.iotdb.it.env.cluster.node.DataNodeWrapper;
 import org.apache.iotdb.itbase.env.BaseEnv;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 
+import org.apache.tsfile.read.common.RowRecord;
 import org.junit.Assert;
 
 import java.sql.Connection;
diff --git a/integration-test/src/test/java/org/apache/iotdb/flink/it/Utils.java b/integration-test/src/test/java/org/apache/iotdb/flink/it/Utils.java
index a5b12bfa0ba..87e39b6fe66 100644
--- a/integration-test/src/test/java/org/apache/iotdb/flink/it/Utils.java
+++ b/integration-test/src/test/java/org/apache/iotdb/flink/it/Utils.java
@@ -21,7 +21,8 @@ package org.apache.iotdb.flink.it;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
+
+import org.apache.tsfile.enums.TSDataType;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/integration-test/src/test/java/org/apache/iotdb/pipe/it/autocreate/IoTDBPipeNullValueIT.java b/integration-test/src/test/java/org/apache/iotdb/pipe/it/autocreate/IoTDBPipeNullValueIT.java
index 1522bc76cea..4d86fd5ed55 100644
--- a/integration-test/src/test/java/org/apache/iotdb/pipe/it/autocreate/IoTDBPipeNullValueIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/pipe/it/autocreate/IoTDBPipeNullValueIT.java
@@ -30,11 +30,11 @@ import org.apache.iotdb.itbase.category.MultiClusterIT2AutoCreateSchema;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.rpc.TSStatusCode;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionAlignedInsertIT.java b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionAlignedInsertIT.java
index b4b83898011..1bf996f6f95 100644
--- a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionAlignedInsertIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionAlignedInsertIT.java
@@ -26,11 +26,11 @@ import org.apache.iotdb.itbase.category.ClusterIT;
 import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionComplexIT.java b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionComplexIT.java
index ca7904d8aa4..55c93735c5c 100644
--- a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionComplexIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionComplexIT.java
@@ -29,13 +29,13 @@ import org.apache.iotdb.itbase.category.ClusterIT;
 import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionDisableMemControlIT.java b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionDisableMemControlIT.java
index b38e59f0c59..98d9f8106a0 100644
--- a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionDisableMemControlIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionDisableMemControlIT.java
@@ -25,15 +25,15 @@ import org.apache.iotdb.it.framework.IoTDBTestRunner;
 import org.apache.iotdb.itbase.category.ClusterIT;
 import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Ignore;
diff --git a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionInsertNullIT.java b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionInsertNullIT.java
index 2ecaccdf7f8..f101a833fbb 100644
--- a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionInsertNullIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionInsertNullIT.java
@@ -26,12 +26,12 @@ import org.apache.iotdb.itbase.category.ClusterIT;
 import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.RowRecord;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionInsertWithTriggerExecutionIT.java b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionInsertWithTriggerExecutionIT.java
index 608d21e99c7..ab482592eac 100644
--- a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionInsertWithTriggerExecutionIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionInsertWithTriggerExecutionIT.java
@@ -25,12 +25,12 @@ import org.apache.iotdb.it.framework.IoTDBTestRunner;
 import org.apache.iotdb.itbase.category.ClusterIT;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
diff --git a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSchemaTemplateIT.java b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSchemaTemplateIT.java
index 66cd2d6905b..b943df6d8b6 100644
--- a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSchemaTemplateIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSchemaTemplateIT.java
@@ -30,12 +30,12 @@ import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.rpc.TSStatusCode;
 import org.apache.iotdb.session.template.MeasurementNode;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 import org.apache.iotdb.util.AbstractSchemaIT;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.RowRecord;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
diff --git a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSimpleIT.java b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSimpleIT.java
index bb52fffda5d..9af5ca0f190 100644
--- a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSimpleIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSimpleIT.java
@@ -31,19 +31,19 @@ import org.apache.iotdb.rpc.BatchExecutionException;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.rpc.TSStatusCode;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
 import org.apache.commons.lang3.StringUtils;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.common.constant.TsFileConstant;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
diff --git a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSyntaxConventionIT.java b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSyntaxConventionIT.java
index 439244f66e3..1f4369f9d2e 100644
--- a/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSyntaxConventionIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionSyntaxConventionIT.java
@@ -29,14 +29,14 @@ import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.rpc.TSStatusCode;
 import org.apache.iotdb.session.template.MeasurementNode;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.BytesUtils;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.utils.BytesUtils;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/integration-test/src/test/java/org/apache/iotdb/session/it/SessionIT.java b/integration-test/src/test/java/org/apache/iotdb/session/it/SessionIT.java
index 0fc27e180b6..84e42a438d3 100644
--- a/integration-test/src/test/java/org/apache/iotdb/session/it/SessionIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/session/it/SessionIT.java
@@ -25,15 +25,15 @@ import org.apache.iotdb.it.framework.IoTDBTestRunner;
 import org.apache.iotdb.itbase.category.ClusterIT;
 import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.BytesUtils;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.utils.BytesUtils;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
diff --git a/integration-test/src/test/java/org/apache/iotdb/session/it/pool/SessionPoolIT.java b/integration-test/src/test/java/org/apache/iotdb/session/it/pool/SessionPoolIT.java
index ef11420d191..d8fb9bb4c50 100644
--- a/integration-test/src/test/java/org/apache/iotdb/session/it/pool/SessionPoolIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/session/it/pool/SessionPoolIT.java
@@ -29,8 +29,8 @@ import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 import org.apache.iotdb.itbase.env.BaseNodeWrapper;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 
+import org.apache.tsfile.enums.TSDataType;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/integration-test/src/test/java/org/apache/iotdb/subscription/it/dual/IoTDBSubscriptionConsumerGroupIT.java b/integration-test/src/test/java/org/apache/iotdb/subscription/it/dual/IoTDBSubscriptionConsumerGroupIT.java
index 54d3867c99c..612bc4dc7b4 100644
--- a/integration-test/src/test/java/org/apache/iotdb/subscription/it/dual/IoTDBSubscriptionConsumerGroupIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/subscription/it/dual/IoTDBSubscriptionConsumerGroupIT.java
@@ -31,8 +31,8 @@ import org.apache.iotdb.session.subscription.SubscriptionMessage;
 import org.apache.iotdb.session.subscription.SubscriptionPullConsumer;
 import org.apache.iotdb.session.subscription.SubscriptionSessionDataSet;
 import org.apache.iotdb.session.subscription.SubscriptionSessionDataSets;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 
+import org.apache.tsfile.read.common.RowRecord;
 import org.awaitility.Awaitility;
 import org.junit.Assert;
 import org.junit.Test;
diff --git a/integration-test/src/test/java/org/apache/iotdb/subscription/it/dual/IoTDBSubscriptionTopicIT.java b/integration-test/src/test/java/org/apache/iotdb/subscription/it/dual/IoTDBSubscriptionTopicIT.java
index e345c7232a3..f71df45ae6d 100644
--- a/integration-test/src/test/java/org/apache/iotdb/subscription/it/dual/IoTDBSubscriptionTopicIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/subscription/it/dual/IoTDBSubscriptionTopicIT.java
@@ -28,8 +28,8 @@ import org.apache.iotdb.session.subscription.SubscriptionMessage;
 import org.apache.iotdb.session.subscription.SubscriptionPullConsumer;
 import org.apache.iotdb.session.subscription.SubscriptionSession;
 import org.apache.iotdb.session.subscription.SubscriptionSessionDataSets;
-import org.apache.iotdb.tsfile.write.record.Tablet;
 
+import org.apache.tsfile.write.record.Tablet;
 import org.awaitility.Awaitility;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
diff --git a/iotdb-api/common-api/pom.xml b/iotdb-api/common-api/pom.xml
deleted file mode 100644
index 362f8f64065..00000000000
--- a/iotdb-api/common-api/pom.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<?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/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <artifactId>iotdb-api</artifactId>
-        <groupId>org.apache.iotdb</groupId>
-        <version>1.3.2-SNAPSHOT</version>
-    </parent>
-    <artifactId>common-api</artifactId>
-    <name>IoTDB: API: Common API</name>
-    <profiles>
-        <profile>
-            <id>get-jar-with-dependencies</id>
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-assembly-plugin</artifactId>
-                        <configuration>
-                            <descriptorRefs>
-                                <descriptorRef>jar-with-dependencies</descriptorRef>
-                            </descriptorRefs>
-                        </configuration>
-                        <executions>
-                            <execution>
-                                <id>make-assembly</id>
-                                <!-- bind to the packaging phase -->
-                                <goals>
-                                    <goal>single</goal>
-                                </goals>
-                                <!-- this is used for inheritance merges -->
-                                <phase>package</phase>
-                            </execution>
-                        </executions>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-    </profiles>
-</project>
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/exception/write/UnSupportedDataTypeException.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/exception/write/UnSupportedDataTypeException.java
deleted file mode 100644
index 8d8f2539d80..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/exception/write/UnSupportedDataTypeException.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * 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.iotdb.tsfile.exception.write;
-
-public class UnSupportedDataTypeException extends RuntimeException {
-
-  public UnSupportedDataTypeException(String message) {
-    super("Unsupported dataType: " + message);
-  }
-
-  public UnSupportedDataTypeException(String message, Throwable e) {
-    super(message + e.getMessage());
-  }
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/file/metadata/enums/TSDataType.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/file/metadata/enums/TSDataType.java
deleted file mode 100644
index 8c5ffc7e368..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/file/metadata/enums/TSDataType.java
+++ /dev/null
@@ -1,193 +0,0 @@
-/*
- * 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.iotdb.tsfile.file.metadata.enums;
-
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-
-import java.io.DataOutputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.nio.ByteBuffer;
-
-public enum TSDataType {
-  /** BOOLEAN. */
-  BOOLEAN((byte) 0),
-
-  /** INT32. */
-  INT32((byte) 1),
-
-  /** INT64. */
-  INT64((byte) 2),
-
-  /** FLOAT. */
-  FLOAT((byte) 3),
-
-  /** DOUBLE. */
-  DOUBLE((byte) 4),
-
-  /** TEXT. */
-  TEXT((byte) 5),
-
-  /** VECTOR. */
-  VECTOR((byte) 6),
-
-  /** UNKNOWN. */
-  UNKNOWN((byte) 7);
-
-  private final byte type;
-
-  TSDataType(byte type) {
-    this.type = type;
-  }
-
-  /**
-   * give an integer to return a data type.
-   *
-   * @param type -param to judge enum type
-   * @return -enum type
-   */
-  public static TSDataType deserialize(byte type) {
-    return getTsDataType(type);
-  }
-
-  public byte getType() {
-    return type;
-  }
-
-  public static TSDataType getTsDataType(byte type) {
-    switch (type) {
-      case 0:
-        return TSDataType.BOOLEAN;
-      case 1:
-        return TSDataType.INT32;
-      case 2:
-        return TSDataType.INT64;
-      case 3:
-        return TSDataType.FLOAT;
-      case 4:
-        return TSDataType.DOUBLE;
-      case 5:
-        return TSDataType.TEXT;
-      case 6:
-        return TSDataType.VECTOR;
-      case 7:
-        return TSDataType.UNKNOWN;
-      default:
-        throw new IllegalArgumentException("Invalid input: " + type);
-    }
-  }
-
-  public static TSDataType deserializeFrom(ByteBuffer buffer) {
-    return deserialize(buffer.get());
-  }
-
-  public static TSDataType deserializeFrom(InputStream stream) throws IOException {
-    return deserialize((byte) stream.read());
-  }
-
-  public static int getSerializedSize() {
-    return Byte.BYTES;
-  }
-
-  public void serializeTo(ByteBuffer byteBuffer) {
-    byteBuffer.put(serialize());
-  }
-
-  public void serializeTo(DataOutputStream outputStream) throws IOException {
-    outputStream.write(serialize());
-  }
-
-  public void serializeTo(FileOutputStream outputStream) throws IOException {
-    outputStream.write(serialize());
-  }
-
-  public int getDataTypeSize() {
-    switch (this) {
-      case BOOLEAN:
-        return 1;
-      case INT32:
-      case FLOAT:
-        return 4;
-        // For text: return the size of reference here
-      case TEXT:
-      case INT64:
-      case DOUBLE:
-      case VECTOR:
-        return 8;
-      default:
-        throw new UnSupportedDataTypeException(this.toString());
-    }
-  }
-
-  /**
-   * get type byte.
-   *
-   * @return byte number
-   */
-  public byte serialize() {
-    return type;
-  }
-
-  /**
-   * numeric datatype judgement.
-   *
-   * @return whether it is a numeric datatype
-   * @throws UnSupportedDataTypeException when meets unSupported DataType
-   */
-  public boolean isNumeric() {
-    switch (this) {
-      case INT32:
-      case INT64:
-      case FLOAT:
-      case DOUBLE:
-        return true;
-        // For text: return the size of reference here
-      case BOOLEAN:
-      case TEXT:
-      case VECTOR:
-        return false;
-      default:
-        throw new UnSupportedDataTypeException(this.toString());
-    }
-  }
-
-  /**
-   * comparable datatype judgement.
-   *
-   * @return whether it is a comparable datatype
-   * @throws UnSupportedDataTypeException when meets unSupported DataType
-   */
-  public boolean isComparable() {
-    switch (this) {
-      case INT32:
-      case INT64:
-      case FLOAT:
-      case DOUBLE:
-      case TEXT:
-      case BOOLEAN:
-        return true;
-      case VECTOR:
-        return false;
-      default:
-        throw new UnSupportedDataTypeException(this.toString());
-    }
-  }
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/TsBlockBuilderStatus.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/TsBlockBuilderStatus.java
deleted file mode 100644
index 02cbd9d2e18..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/TsBlockBuilderStatus.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * 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.iotdb.tsfile.read.common.block;
-
-import org.apache.iotdb.tsfile.read.common.block.column.ColumnBuilderStatus;
-
-public class TsBlockBuilderStatus {
-
-  private final int maxTsBlockSizeInBytes;
-
-  private long currentSize;
-
-  public TsBlockBuilderStatus(int maxTsBlockSizeInBytes) {
-    this.maxTsBlockSizeInBytes = maxTsBlockSizeInBytes;
-  }
-
-  public ColumnBuilderStatus createColumnBuilderStatus() {
-    return new ColumnBuilderStatus(this);
-  }
-
-  public int getMaxTsBlockSizeInBytes() {
-    return maxTsBlockSizeInBytes;
-  }
-
-  public boolean isEmpty() {
-    return currentSize == 0;
-  }
-
-  public boolean isFull() {
-    return currentSize >= maxTsBlockSizeInBytes;
-  }
-
-  public void addBytes(int bytes) {
-    if (bytes < 0) {
-      throw new IllegalArgumentException("bytes cannot be negative");
-    }
-    currentSize += bytes;
-  }
-
-  public long getSizeInBytes() {
-    return currentSize;
-  }
-
-  @Override
-  public String toString() {
-    return "TsBlockBuilderStatus{"
-        + "maxTsBlockSizeInBytes="
-        + maxTsBlockSizeInBytes
-        + ", currentSize="
-        + currentSize
-        + '}';
-  }
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/Column.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/Column.java
deleted file mode 100644
index 5cc8385daea..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/Column.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * 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.iotdb.tsfile.read.common.block.column;
-
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.TsPrimitiveType;
-
-public interface Column {
-
-  /** Get the data type. */
-  TSDataType getDataType();
-
-  /** Get the encoding for this column. */
-  ColumnEncoding getEncoding();
-
-  /** Gets a boolean at {@code position}. */
-  default boolean getBoolean(int position) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets a little endian int at {@code position}. */
-  default int getInt(int position) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets a little endian long at {@code position}. */
-  default long getLong(int position) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets a float at {@code position}. */
-  default float getFloat(int position) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets a double at {@code position}. */
-  default double getDouble(int position) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets a Binary at {@code position}. */
-  default Binary getBinary(int position) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets an Object at {@code position}. */
-  default Object getObject(int position) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets the boolean array. */
-  default boolean[] getBooleans() {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets the little endian int array. */
-  default int[] getInts() {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets the little endian long array. */
-  default long[] getLongs() {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets the float array. */
-  default float[] getFloats() {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets the double array. */
-  default double[] getDoubles() {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets the Binary list. */
-  default Binary[] getBinaries() {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets the Object array. */
-  default Object[] getObjects() {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Gets a TsPrimitiveType at {@code position}. */
-  default TsPrimitiveType getTsPrimitiveType(int position) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /**
-   * Is it possible the column may have a null value? If false, the column cannot contain a null,
-   * but if true, the column may or may not have a null.
-   */
-  boolean mayHaveNull();
-
-  /**
-   * Is the specified position null?
-   *
-   * @throws IllegalArgumentException if this position is not valid. The method may return false
-   *     without throwing exception when there are no nulls in the block, even if the position is
-   *     invalid
-   */
-  boolean isNull(int position);
-
-  /** Returns the array to determine whether each position of the column is null or not. */
-  boolean[] isNull();
-
-  /** Returns the number of positions in this block. */
-  int getPositionCount();
-
-  /**
-   * Returns the retained size of this column in memory, including over-allocations. This method is
-   * called from the inner most execution loop and must be fast.
-   */
-  long getRetainedSizeInBytes();
-
-  /**
-   * Returns a column starting at the specified position and extends for the specified length. The
-   * specified region must be entirely contained within this column.
-   *
-   * <p>The region can be a view over this column. If this column is released, the region column may
-   * also be released. If the region column is released, this block may also be released.
-   */
-  Column getRegion(int positionOffset, int length);
-
-  /**
-   * This method will create a temporary view of origin column, which will reuse the array of column
-   * but with different array offset.
-   */
-  Column subColumn(int fromIndex);
-
-  /** reverse the column */
-  void reverse();
-
-  int getInstanceSize();
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/ColumnBuilder.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/ColumnBuilder.java
deleted file mode 100644
index 14b946dbb83..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/ColumnBuilder.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * 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.iotdb.tsfile.read.common.block.column;
-
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.TsPrimitiveType;
-
-public interface ColumnBuilder {
-
-  /** Write a boolean to the current entry; */
-  default ColumnBuilder writeBoolean(boolean value) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Write an int to the current entry; */
-  default ColumnBuilder writeInt(int value) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Write a long to the current entry; */
-  default ColumnBuilder writeLong(long value) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Write a float to the current entry; */
-  default ColumnBuilder writeFloat(float value) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Write a double to the current entry; */
-  default ColumnBuilder writeDouble(double value) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Write a Binary to the current entry; */
-  default ColumnBuilder writeBinary(Binary value) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Write a TsPrimitiveType sequences to the current entry; */
-  default ColumnBuilder writeTsPrimitiveType(TsPrimitiveType value) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /** Write an Object to the current entry, which should be the corresponding type; */
-  default ColumnBuilder writeObject(Object value) {
-    throw new UnsupportedOperationException(getClass().getName());
-  }
-
-  /**
-   * Write value at index of passing column
-   *
-   * <p>Caller should make sure that value at index is not null
-   *
-   * @param column source column whose type should be same as ColumnBuilder
-   * @param index index of source column to read from
-   */
-  ColumnBuilder write(Column column, int index);
-
-  /** Appends a null value to the block. */
-  ColumnBuilder appendNull();
-
-  /** Appends nullCount null value to the block. */
-  default ColumnBuilder appendNull(int nullCount) {
-    for (int i = 0; i < nullCount; i++) {
-      appendNull();
-    }
-    return this;
-  }
-
-  /** Builds the block. This method can be called multiple times. */
-  Column build();
-
-  /** Get the data type. */
-  TSDataType getDataType();
-
-  /**
-   * Returns the retained size of this column in memory, including over-allocations. This method is
-   * called from the inner most execution loop and must be fast.
-   */
-  long getRetainedSizeInBytes();
-
-  /**
-   * Creates a new column builder of the same type based on the current usage statistics of this
-   * column builder.
-   */
-  ColumnBuilder newColumnBuilderLike(ColumnBuilderStatus columnBuilderStatus);
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/ColumnBuilderStatus.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/ColumnBuilderStatus.java
deleted file mode 100644
index a3a5e7b4c6c..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/ColumnBuilderStatus.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * 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.iotdb.tsfile.read.common.block.column;
-
-import org.apache.iotdb.tsfile.read.common.block.TsBlockBuilderStatus;
-import org.apache.iotdb.tsfile.utils.RamUsageEstimator;
-
-import java.lang.reflect.Field;
-import java.lang.reflect.Modifier;
-
-import static java.lang.String.format;
-import static java.util.Objects.requireNonNull;
-
-public class ColumnBuilderStatus {
-
-  public static final long INSTANCE_SIZE = deepInstanceSize(ColumnBuilderStatus.class);
-
-  private final TsBlockBuilderStatus tsBlockBuilderStatus;
-
-  private int currentSize;
-
-  public ColumnBuilderStatus(TsBlockBuilderStatus tsBlockBuilderStatus) {
-    this.tsBlockBuilderStatus =
-        requireNonNull(tsBlockBuilderStatus, "tsBlockBuilderStatus must not be null");
-  }
-
-  public int getMaxTsBlockSizeInBytes() {
-    return tsBlockBuilderStatus.getMaxTsBlockSizeInBytes();
-  }
-
-  public void addBytes(int bytes) {
-    currentSize += bytes;
-    tsBlockBuilderStatus.addBytes(bytes);
-  }
-
-  @Override
-  public String toString() {
-    return "ColumnBuilderStatus{" + ", currentSize=" + currentSize + '}';
-  }
-
-  /**
-   * Computes the size of an instance of this class assuming that all reference fields are non-null
-   */
-  private static long deepInstanceSize(Class<?> clazz) {
-    if (clazz.isArray()) {
-      throw new IllegalArgumentException(
-          format(
-              "Cannot determine size of %s because it contains an array", clazz.getSimpleName()));
-    }
-    if (clazz.isInterface()) {
-      throw new IllegalArgumentException(format("%s is an interface", clazz.getSimpleName()));
-    }
-    if (Modifier.isAbstract(clazz.getModifiers())) {
-      throw new IllegalArgumentException(format("%s is abstract", clazz.getSimpleName()));
-    }
-    if (!clazz.getSuperclass().equals(Object.class)) {
-      throw new IllegalArgumentException(
-          format(
-              "Cannot determine size of a subclass. %s extends from %s",
-              clazz.getSimpleName(), clazz.getSuperclass().getSimpleName()));
-    }
-
-    long size = RamUsageEstimator.shallowSizeOf(clazz);
-    for (Field field : clazz.getDeclaredFields()) {
-      // if the field is not static and is a reference field and it's not synthetic
-      if (!Modifier.isStatic(field.getModifiers())
-          && !field.getType().isPrimitive()
-          && !field.isSynthetic()) {
-        size += deepInstanceSize(field.getType());
-      }
-    }
-    return size;
-  }
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/ColumnEncoding.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/ColumnEncoding.java
deleted file mode 100644
index f8008ae288e..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/ColumnEncoding.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * 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.iotdb.tsfile.read.common.block.column;
-
-import java.io.DataOutputStream;
-import java.io.IOException;
-import java.nio.ByteBuffer;
-
-public enum ColumnEncoding {
-  /** BOOLEAN. */
-  BYTE_ARRAY((byte) 0),
-  /** INT32, FLOAT */
-  INT32_ARRAY((byte) 1),
-  /** INT64, DOUBLE. */
-  INT64_ARRAY((byte) 2),
-  /** TEXT. */
-  BINARY_ARRAY((byte) 3),
-  /** All data types. */
-  RLE((byte) 4);
-
-  private final byte value;
-
-  ColumnEncoding(byte value) {
-    this.value = value;
-  }
-
-  public static ColumnEncoding deserializeFrom(ByteBuffer buffer) {
-    return getColumnEncoding(buffer.get());
-  }
-
-  public void serializeTo(DataOutputStream stream) throws IOException {
-    stream.writeByte(value);
-  }
-
-  private static ColumnEncoding getColumnEncoding(byte value) {
-    switch (value) {
-      case 0:
-        return BYTE_ARRAY;
-      case 1:
-        return INT32_ARRAY;
-      case 2:
-        return INT64_ARRAY;
-      case 3:
-        return BINARY_ARRAY;
-      case 4:
-        return RLE;
-      default:
-        throw new IllegalArgumentException("Invalid value: " + value);
-    }
-  }
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/Accountable.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/Accountable.java
deleted file mode 100644
index db6c2a4115d..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/Accountable.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * 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.iotdb.tsfile.utils;
-
-public interface Accountable {
-  /** Return the memory usage of this object in bytes. Negative values are illegal. */
-  long ramBytesUsed();
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/Binary.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/Binary.java
deleted file mode 100644
index cd000c87041..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/Binary.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * 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.iotdb.tsfile.utils;
-
-import java.io.Serializable;
-import java.nio.charset.Charset;
-import java.nio.charset.StandardCharsets;
-import java.util.Arrays;
-
-/**
- * Override compareTo() and equals() function to Binary class. This class is used to accept Java
- * String type
- */
-public class Binary implements Comparable<Binary>, Serializable {
-
-  private static final long serialVersionUID = 6394197743397020735L;
-  public static final Binary EMPTY_VALUE = new Binary(new byte[0]);
-
-  private byte[] values;
-
-  /** if the bytes v is modified, the modification is visible to this binary. */
-  public Binary(byte[] v) {
-    this.values = v;
-  }
-
-  public Binary(String s, Charset charset) {
-    this.values = (s == null) ? null : s.getBytes(charset);
-  }
-
-  @Override
-  public int compareTo(Binary other) {
-    if (other == null) {
-      if (this.values == null) {
-        return 0;
-      } else {
-        return 1;
-      }
-    }
-
-    // copied from StringLatin1.compareT0
-    int len1 = getLength();
-    int len2 = other.getLength();
-    int lim = Math.min(len1, len2);
-    for (int k = 0; k < lim; k++) {
-      if (this.values[k] != other.values[k]) {
-        return getChar(values, k) - getChar(other.values, k);
-      }
-    }
-    return len1 - len2;
-  }
-
-  // avoid overflow
-  private char getChar(byte[] val, int index) {
-    return (char) (val[index] & 0xff);
-  }
-
-  @Override
-  public boolean equals(Object other) {
-    if (this == other) {
-      return true;
-    }
-    if (other == null) {
-      return false;
-    }
-    if (getClass() != other.getClass()) {
-      return false;
-    }
-
-    return compareTo((Binary) other) == 0;
-  }
-
-  @Override
-  public int hashCode() {
-    return Arrays.hashCode(values);
-  }
-
-  /**
-   * get length.
-   *
-   * @return length
-   */
-  public int getLength() {
-    if (this.values == null) {
-      return -1;
-    }
-    return this.values.length;
-  }
-
-  public String getStringValue(Charset charset) {
-    return new String(this.values, charset);
-  }
-
-  @Override
-  public String toString() {
-    // use UTF_8 by default since toString do not provide parameter
-    return getStringValue(StandardCharsets.UTF_8);
-  }
-
-  public byte[] getValues() {
-    return values;
-  }
-
-  public void setValues(byte[] values) {
-    this.values = values;
-  }
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/BitMap.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/BitMap.java
deleted file mode 100644
index 8092e28c9f8..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/BitMap.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
- * 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.iotdb.tsfile.utils;
-
-import java.util.Arrays;
-import java.util.Objects;
-
-public class BitMap {
-  private static final byte[] BIT_UTIL = new byte[] {1, 2, 4, 8, 16, 32, 64, -128};
-  private static final byte[] UNMARK_BIT_UTIL =
-      new byte[] {
-        (byte) 0XFE, // 11111110
-        (byte) 0XFD, // 11111101
-        (byte) 0XFB, // 11111011
-        (byte) 0XF7, // 11110111
-        (byte) 0XEF, // 11101111
-        (byte) 0XDF, // 11011111
-        (byte) 0XBF, // 10111111
-        (byte) 0X7F // 01111111
-      };
-
-  private final byte[] bits;
-  private final int size;
-
-  /** Initialize a BitMap with given size. */
-  public BitMap(int size) {
-    this.size = size;
-    bits = new byte[size / Byte.SIZE + 1];
-    Arrays.fill(bits, (byte) 0);
-  }
-
-  /** Initialize a BitMap with given size and bytes. */
-  public BitMap(int size, byte[] bits) {
-    this.size = size;
-    this.bits = bits;
-  }
-
-  public byte[] getByteArray() {
-    return this.bits;
-  }
-
-  public int getSize() {
-    return this.size;
-  }
-
-  /** returns the value of the bit with the specified index. */
-  public boolean isMarked(int position) {
-    return (bits[position / Byte.SIZE] & BIT_UTIL[position % Byte.SIZE]) != 0;
-  }
-
-  /** mark as 1 at all positions. */
-  public void markAll() {
-    Arrays.fill(bits, (byte) 0XFF);
-  }
-
-  /** mark as 1 at the given bit position. */
-  public void mark(int position) {
-    bits[position / Byte.SIZE] |= BIT_UTIL[position % Byte.SIZE];
-  }
-
-  /** mark as 0 at all positions. */
-  public void reset() {
-    Arrays.fill(bits, (byte) 0);
-  }
-
-  public void unmark(int position) {
-    bits[position / Byte.SIZE] &= UNMARK_BIT_UTIL[position % Byte.SIZE];
-  }
-
-  /** whether all bits are zero, i.e., no Null value */
-  public boolean isAllUnmarked() {
-    int j;
-    for (j = 0; j < size / Byte.SIZE; j++) {
-      if (bits[j] != (byte) 0) {
-        return false;
-      }
-    }
-    for (j = 0; j < size % Byte.SIZE; j++) {
-      if ((bits[size / Byte.SIZE] & BIT_UTIL[j]) != 0) {
-        return false;
-      }
-    }
-    return true;
-  }
-
-  /** whether all bits are one, i.e., all are Null */
-  public boolean isAllMarked() {
-    int j;
-    for (j = 0; j < size / Byte.SIZE; j++) {
-      if (bits[j] != (byte) 0XFF) {
-        return false;
-      }
-    }
-    for (j = 0; j < size % Byte.SIZE; j++) {
-      if ((bits[size / Byte.SIZE] & BIT_UTIL[j]) == 0) {
-        return false;
-      }
-    }
-    return true;
-  }
-
-  @Override
-  public String toString() {
-    StringBuilder res = new StringBuilder();
-    for (int i = 0; i < size; i++) {
-      res.append(isMarked(i) ? 1 : 0);
-    }
-    return res.toString();
-  }
-
-  @Override
-  public int hashCode() {
-    int result = Objects.hash(size);
-    result = 31 * result + Arrays.hashCode(bits);
-    return result;
-  }
-
-  @Override
-  public boolean equals(Object obj) {
-    if (obj == this) {
-      return true;
-    }
-    if (obj == null) {
-      return false;
-    }
-    if (!(obj instanceof BitMap)) {
-      return false;
-    }
-    BitMap other = (BitMap) obj;
-    return this.size == other.size && Arrays.equals(this.bits, other.bits);
-  }
-
-  @Override
-  public BitMap clone() {
-    byte[] cloneBytes = new byte[this.bits.length];
-    System.arraycopy(this.bits, 0, cloneBytes, 0, this.bits.length);
-    return new BitMap(this.size, cloneBytes);
-  }
-
-  /**
-   * Copies a bitmap from the specified source bitmap, beginning at the specified position, to the
-   * specified position of the destination bitmap. A subsequence of bits are copied from the source
-   * bitmap referenced by src to the destination bitmap referenced by dest. The number of bits
-   * copied is equal to the length argument. The bits at positions srcPos through srcPos+length-1 in
-   * the source bitmap are copied into positions destPos through destPos+length-1, respectively, of
-   * the destination bitmap.
-   *
-   * @param src the source bitmap.
-   * @param srcPos starting position in the source bitmap.
-   * @param dest the destination bitmap.
-   * @param destPos starting position in the destination bitmap.
-   * @param length the number of bits to be copied.
-   * @throws IndexOutOfBoundsException if copying would cause access of data outside bitmap bounds.
-   */
-  public static void copyOfRange(BitMap src, int srcPos, BitMap dest, int destPos, int length) {
-    if (srcPos + length > src.size) {
-      throw new IndexOutOfBoundsException(
-          (srcPos + length - 1) + " is out of src range " + src.size);
-    } else if (destPos + length > dest.size) {
-      throw new IndexOutOfBoundsException(
-          (destPos + length - 1) + " is out of dest range " + dest.size);
-    }
-    for (int i = 0; i < length; ++i) {
-      if (src.isMarked(srcPos + i)) {
-        dest.mark(destPos + i);
-      } else {
-        dest.unmark(destPos + i);
-      }
-    }
-  }
-
-  public BitMap getRegion(int positionOffset, int length) {
-    BitMap newBitMap = new BitMap(length);
-    copyOfRange(this, positionOffset, newBitMap, 0, length);
-    return newBitMap;
-  }
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/Constants.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/Constants.java
deleted file mode 100644
index fad8af19314..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/Constants.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * 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.iotdb.tsfile.utils;
-
-import java.util.StringTokenizer;
-
-/**
- * This class is copied from apache lucene, version 8.4.0. Estimates the size(memory representation)
- * of Java objects. <a
- * href="https://github.com/LuXugang/Lucene-7.x-9.x/blob/master/solr-8.4.0/lucene/core/src/java/org/apache/lucene/util/Constants.java">Constants.java</a>
- * Some useful constants.
- */
-public final class Constants {
-
-  private Constants() {} // can't construct
-
-  /** JVM vendor info. */
-  public static final String JVM_VENDOR = System.getProperty("java.vm.vendor");
-
-  public static final String JVM_VERSION = System.getProperty("java.vm.version");
-  public static final String JVM_NAME = System.getProperty("java.vm.name");
-  public static final String JVM_SPEC_VERSION = System.getProperty("java.specification.version");
-
-  /** The value of <tt>System.getProperty("java.version")</tt>. * */
-  public static final String JAVA_VERSION = System.getProperty("java.version");
-
-  /** The value of <tt>System.getProperty("os.name")</tt>. * */
-  public static final String OS_NAME = System.getProperty("os.name");
-  /** True iff running on Linux. */
-  public static final boolean LINUX = OS_NAME.startsWith("Linux");
-  /** True iff running on Windows. */
-  public static final boolean WINDOWS = OS_NAME.startsWith("Windows");
-  /** True iff running on SunOS. */
-  public static final boolean SUN_OS = OS_NAME.startsWith("SunOS");
-  /** True iff running on Mac OS X */
-  public static final boolean MAC_OS_X = OS_NAME.startsWith("Mac OS X");
-  /** True iff running on FreeBSD */
-  public static final boolean FREE_BSD = OS_NAME.startsWith("FreeBSD");
-
-  public static final String OS_ARCH = System.getProperty("os.arch");
-  public static final String OS_VERSION = System.getProperty("os.version");
-  public static final String JAVA_VENDOR = System.getProperty("java.vendor");
-
-  private static final int JVM_MAJOR_VERSION;
-  private static final int JVM_MINOR_VERSION;
-
-  /** True iff running on a 64bit JVM */
-  public static final boolean JRE_IS_64BIT;
-
-  static {
-    final StringTokenizer st = new StringTokenizer(JVM_SPEC_VERSION, ".");
-    JVM_MAJOR_VERSION = Integer.parseInt(st.nextToken());
-    if (st.hasMoreTokens()) {
-      JVM_MINOR_VERSION = Integer.parseInt(st.nextToken());
-    } else {
-      JVM_MINOR_VERSION = 0;
-    }
-    boolean is64Bit = false;
-    String datamodel = null;
-    try {
-      datamodel = System.getProperty("sun.arch.data.model");
-      if (datamodel != null) {
-        is64Bit = datamodel.contains("64");
-      }
-    } catch (SecurityException ex) {
-    }
-    if (datamodel == null) {
-      if (OS_ARCH != null && OS_ARCH.contains("64")) {
-        is64Bit = true;
-      } else {
-        is64Bit = false;
-      }
-    }
-    JRE_IS_64BIT = is64Bit;
-  }
-
-  public static final boolean JRE_IS_MINIMUM_JAVA8 =
-      JVM_MAJOR_VERSION > 1 || (JVM_MAJOR_VERSION == 1 && JVM_MINOR_VERSION >= 8);
-  public static final boolean JRE_IS_MINIMUM_JAVA9 =
-      JVM_MAJOR_VERSION > 1 || (JVM_MAJOR_VERSION == 1 && JVM_MINOR_VERSION >= 9);
-  public static final boolean JRE_IS_MINIMUM_JAVA11 =
-      JVM_MAJOR_VERSION > 1 || (JVM_MAJOR_VERSION == 1 && JVM_MINOR_VERSION >= 11);
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/RamUsageEstimator.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/RamUsageEstimator.java
deleted file mode 100644
index 5a2b44db9a7..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/RamUsageEstimator.java
+++ /dev/null
@@ -1,576 +0,0 @@
-/*
- * 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.iotdb.tsfile.utils;
-
-import java.lang.reflect.Array;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-import java.text.DecimalFormat;
-import java.text.DecimalFormatSymbols;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.IdentityHashMap;
-import java.util.Locale;
-import java.util.Map;
-
-/**
- * This class is copied from apache lucene, version 8.4.0. Estimates the size(memory representation)
- * of Java objects. <a
- * href="https://github.com/LuXugang/Lucene-7.x-9.x/blob/master/solr-8.4.0/lucene/core/src/java/org/apache/lucene/util/RamUsageEstimator.java">RamUsageEstimator.java</a>
- * Estimates the size (memory representation) of Java objects.
- *
- * <p>This class uses assumptions that were discovered for the Hotspot virtual machine. If you use a
- * non-OpenJDK/Oracle-based JVM, the measurements may be slightly wrong.
- *
- * @see #shallowSizeOf(Object)
- * @see #shallowSizeOfInstance(Class)
- */
-public final class RamUsageEstimator {
-
-  /** One kilobyte bytes. */
-  public static final long ONE_KB = 1024;
-
-  /** One megabyte bytes. */
-  public static final long ONE_MB = ONE_KB * ONE_KB;
-
-  /** One gigabyte bytes. */
-  public static final long ONE_GB = ONE_KB * ONE_MB;
-
-  /** No instantiation. */
-  private RamUsageEstimator() {}
-
-  /** True, iff compressed references (oops) are enabled by this JVM */
-  public static final boolean COMPRESSED_REFS_ENABLED;
-
-  /** Number of bytes this JVM uses to represent an object reference. */
-  public static final int NUM_BYTES_OBJECT_REF;
-
-  /** Number of bytes to represent an object header (no fields, no alignments). */
-  public static final int NUM_BYTES_OBJECT_HEADER;
-
-  /** Number of bytes to represent an array header (no content, but with alignments). */
-  public static final int NUM_BYTES_ARRAY_HEADER;
-
-  /**
-   * A constant specifying the object alignment boundary inside the JVM. Objects will always take a
-   * full multiple of this constant, possibly wasting some space.
-   */
-  public static final int NUM_BYTES_OBJECT_ALIGNMENT;
-
-  /**
-   * Approximate memory usage that we assign to all unknown queries - this maps roughly to a
-   * BooleanQuery with a couple term clauses.
-   */
-  public static final int QUERY_DEFAULT_RAM_BYTES_USED = 1024;
-
-  /**
-   * Approximate memory usage that we assign to all unknown objects - this maps roughly to a few
-   * primitive fields and a couple short String-s.
-   */
-  public static final int UNKNOWN_DEFAULT_RAM_BYTES_USED = 256;
-
-  /** Sizes of primitive classes. */
-  public static final Map<Class<?>, Integer> primitiveSizes;
-
-  static {
-    Map<Class<?>, Integer> primitiveSizesMap = new IdentityHashMap<>();
-    primitiveSizesMap.put(boolean.class, 1);
-    primitiveSizesMap.put(byte.class, 1);
-    primitiveSizesMap.put(char.class, Character.BYTES);
-    primitiveSizesMap.put(short.class, Short.BYTES);
-    primitiveSizesMap.put(int.class, Integer.BYTES);
-    primitiveSizesMap.put(float.class, Float.BYTES);
-    primitiveSizesMap.put(double.class, Double.BYTES);
-    primitiveSizesMap.put(long.class, Long.BYTES);
-
-    primitiveSizes = Collections.unmodifiableMap(primitiveSizesMap);
-  }
-
-  /** JVMs typically cache small longs. This tries to find out what the range is. */
-  static final long LONG_CACHE_MIN_VALUE, LONG_CACHE_MAX_VALUE;
-
-  static final int LONG_SIZE, STRING_SIZE;
-
-  /** For testing only */
-  static final boolean JVM_IS_HOTSPOT_64BIT;
-
-  static final String MANAGEMENT_FACTORY_CLASS = "java.lang.management.ManagementFactory";
-  static final String HOTSPOT_BEAN_CLASS = "com.sun.management.HotSpotDiagnosticMXBean";
-
-  // Initialize constants and try to collect information about the JVM internals.
-  static {
-    if (Constants.JRE_IS_64BIT) {
-      // Try to get compressed oops and object alignment (the default seems to be 8 on Hotspot);
-      // (this only works on 64 bit, on 32 bits the alignment and reference size is fixed):
-      boolean compressedOops = false;
-      int objectAlignment = 8;
-      boolean isHotspot = false;
-      try {
-        final Class<?> beanClazz = Class.forName(HOTSPOT_BEAN_CLASS);
-        // we use reflection for this, because the management factory is not part
-        // of Java 8's compact profile:
-        final Object hotSpotBean =
-            Class.forName(MANAGEMENT_FACTORY_CLASS)
-                .getMethod("getPlatformMXBean", Class.class)
-                .invoke(null, beanClazz);
-        if (hotSpotBean != null) {
-          isHotspot = true;
-          final Method getVMOptionMethod = beanClazz.getMethod("getVMOption", String.class);
-          try {
-            final Object vmOption = getVMOptionMethod.invoke(hotSpotBean, "UseCompressedOops");
-            compressedOops =
-                Boolean.parseBoolean(
-                    vmOption.getClass().getMethod("getValue").invoke(vmOption).toString());
-          } catch (ReflectiveOperationException | RuntimeException e) {
-            isHotspot = false;
-          }
-          try {
-            final Object vmOption = getVMOptionMethod.invoke(hotSpotBean, "ObjectAlignmentInBytes");
-            objectAlignment =
-                Integer.parseInt(
-                    vmOption.getClass().getMethod("getValue").invoke(vmOption).toString());
-          } catch (ReflectiveOperationException | RuntimeException e) {
-            isHotspot = false;
-          }
-        }
-      } catch (ReflectiveOperationException | RuntimeException e) {
-        isHotspot = false;
-      }
-      JVM_IS_HOTSPOT_64BIT = isHotspot;
-      COMPRESSED_REFS_ENABLED = compressedOops;
-      NUM_BYTES_OBJECT_ALIGNMENT = objectAlignment;
-      // reference size is 4, if we have compressed oops:
-      NUM_BYTES_OBJECT_REF = COMPRESSED_REFS_ENABLED ? 4 : 8;
-      // "best guess" based on reference size:
-      NUM_BYTES_OBJECT_HEADER = 8 + NUM_BYTES_OBJECT_REF;
-      // array header is NUM_BYTES_OBJECT_HEADER + NUM_BYTES_INT, but aligned (object alignment):
-      NUM_BYTES_ARRAY_HEADER = (int) alignObjectSize(NUM_BYTES_OBJECT_HEADER + Integer.BYTES);
-    } else {
-      JVM_IS_HOTSPOT_64BIT = false;
-      COMPRESSED_REFS_ENABLED = false;
-      NUM_BYTES_OBJECT_ALIGNMENT = 8;
-      NUM_BYTES_OBJECT_REF = 4;
-      NUM_BYTES_OBJECT_HEADER = 8;
-      // For 32 bit JVMs, no extra alignment of array header:
-      NUM_BYTES_ARRAY_HEADER = NUM_BYTES_OBJECT_HEADER + Integer.BYTES;
-    }
-
-    // get min/max value of cached Long class instances:
-    long longCacheMinValue = 0;
-    while (longCacheMinValue > Long.MIN_VALUE
-        && Long.valueOf(longCacheMinValue - 1) == Long.valueOf(longCacheMinValue - 1)) {
-      longCacheMinValue -= 1;
-    }
-    long longCacheMaxValue = -1;
-    while (longCacheMaxValue < Long.MAX_VALUE
-        && Long.valueOf(longCacheMaxValue + 1) == Long.valueOf(longCacheMaxValue + 1)) {
-      longCacheMaxValue += 1;
-    }
-    LONG_CACHE_MIN_VALUE = longCacheMinValue;
-    LONG_CACHE_MAX_VALUE = longCacheMaxValue;
-    LONG_SIZE = (int) shallowSizeOfInstance(Long.class);
-    STRING_SIZE = (int) shallowSizeOfInstance(String.class);
-  }
-
-  /** Approximate memory usage that we assign to a Hashtable / HashMap entry. */
-  public static final long HASHTABLE_RAM_BYTES_PER_ENTRY =
-      2
-          * NUM_BYTES_OBJECT_REF // key + value
-          * 2; // hash tables need to be oversized to avoid collisions, assume 2x capacity
-
-  /** Approximate memory usage that we assign to a LinkedHashMap entry. */
-  public static final long LINKED_HASHTABLE_RAM_BYTES_PER_ENTRY =
-      HASHTABLE_RAM_BYTES_PER_ENTRY + 2 * NUM_BYTES_OBJECT_REF; // previous & next references
-
-  /** Aligns an object size to be the next multiple of {@link #NUM_BYTES_OBJECT_ALIGNMENT}. */
-  public static long alignObjectSize(long size) {
-    size += NUM_BYTES_OBJECT_ALIGNMENT - 1L;
-    return size - (size % NUM_BYTES_OBJECT_ALIGNMENT);
-  }
-
-  /**
-   * Return the size of the provided {@link Long} object, returning 0 if it is cached by the JVM and
-   * its shallow size otherwise.
-   */
-  public static long sizeOf(Long value) {
-    if (value >= LONG_CACHE_MIN_VALUE && value <= LONG_CACHE_MAX_VALUE) {
-      return 0;
-    }
-    return LONG_SIZE;
-  }
-
-  /** Returns the size in bytes of the byte[] object. */
-  public static long sizeOf(byte[] arr) {
-    return arr == null ? 0 : alignObjectSize((long) NUM_BYTES_ARRAY_HEADER + arr.length);
-  }
-
-  /** Returns the size in bytes of the boolean[] object. */
-  public static long sizeOf(boolean[] arr) {
-    return arr == null ? 0 : alignObjectSize((long) NUM_BYTES_ARRAY_HEADER + arr.length);
-  }
-
-  /** Returns the size in bytes of the char[] object. */
-  public static long sizeOf(char[] arr) {
-    return arr == null
-        ? 0
-        : alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Character.BYTES * arr.length);
-  }
-
-  /** Returns the size in bytes of the short[] object. */
-  public static long sizeOf(short[] arr) {
-    return arr == null
-        ? 0
-        : alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Short.BYTES * arr.length);
-  }
-
-  /** Returns the size in bytes of the int[] object. */
-  public static long sizeOf(int[] arr) {
-    return arr == null
-        ? 0
-        : alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Integer.BYTES * arr.length);
-  }
-
-  /** Returns the size in bytes of the float[] object. */
-  public static long sizeOf(float[] arr) {
-    return arr == null
-        ? 0
-        : alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Float.BYTES * arr.length);
-  }
-
-  /** Returns the size in bytes of the long[] object. */
-  public static long sizeOf(long[] arr) {
-    return arr == null
-        ? 0
-        : alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Long.BYTES * arr.length);
-  }
-
-  /** Returns the size in bytes of the double[] object. */
-  public static long sizeOf(double[] arr) {
-    return arr == null
-        ? 0
-        : alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Double.BYTES * arr.length);
-  }
-
-  /** Returns the size in bytes of the String[] object. */
-  public static long sizeOf(String[] arr) {
-    long size = shallowSizeOf(arr);
-    for (String s : arr) {
-      if (s == null) {
-        continue;
-      }
-      size += sizeOf(s);
-    }
-    return size;
-  }
-
-  /** Recurse only into immediate descendants. */
-  public static final int MAX_DEPTH = 1;
-
-  /**
-   * Returns the size in bytes of a Map object, including sizes of its keys and values, supplying
-   * {@link #UNKNOWN_DEFAULT_RAM_BYTES_USED} when object type is not well known. This method
-   * recurses up to {@link #MAX_DEPTH}.
-   */
-  public static long sizeOfMap(Map<?, ?> map) {
-    return sizeOfMap(map, 0, UNKNOWN_DEFAULT_RAM_BYTES_USED);
-  }
-
-  /**
-   * Returns the size in bytes of a Map object, including sizes of its keys and values, supplying
-   * default object size when object type is not well known. This method recurses up to {@link
-   * #MAX_DEPTH}.
-   */
-  public static long sizeOfMap(Map<?, ?> map, long defSize) {
-    return sizeOfMap(map, 0, defSize);
-  }
-
-  private static long sizeOfMap(Map<?, ?> map, int depth, long defSize) {
-    if (map == null) {
-      return 0;
-    }
-    long size = shallowSizeOf(map);
-    if (depth > MAX_DEPTH) {
-      return size;
-    }
-    long sizeOfEntry = -1;
-    for (Map.Entry<?, ?> entry : map.entrySet()) {
-      if (sizeOfEntry == -1) {
-        sizeOfEntry = shallowSizeOf(entry);
-      }
-      size += sizeOfEntry;
-      size += sizeOfObject(entry.getKey(), depth, defSize);
-      size += sizeOfObject(entry.getValue(), depth, defSize);
-    }
-    return alignObjectSize(size);
-  }
-
-  /**
-   * Returns the size in bytes of a Collection object, including sizes of its values, supplying
-   * {@link #UNKNOWN_DEFAULT_RAM_BYTES_USED} when object type is not well known. This method
-   * recurses up to {@link #MAX_DEPTH}.
-   */
-  public static long sizeOfCollection(Collection<?> collection) {
-    return sizeOfCollection(collection, 0, UNKNOWN_DEFAULT_RAM_BYTES_USED);
-  }
-
-  /**
-   * Returns the size in bytes of a Collection object, including sizes of its values, supplying
-   * default object size when object type is not well known. This method recurses up to {@link
-   * #MAX_DEPTH}.
-   */
-  public static long sizeOfCollection(Collection<?> collection, long defSize) {
-    return sizeOfCollection(collection, 0, defSize);
-  }
-
-  private static long sizeOfCollection(Collection<?> collection, int depth, long defSize) {
-    if (collection == null) {
-      return 0;
-    }
-    long size = shallowSizeOf(collection);
-    if (depth > MAX_DEPTH) {
-      return size;
-    }
-    // assume array-backed collection and add per-object references
-    size += NUM_BYTES_ARRAY_HEADER + (long) collection.size() * NUM_BYTES_OBJECT_REF;
-    for (Object o : collection) {
-      size += sizeOfObject(o, depth, defSize);
-    }
-    return alignObjectSize(size);
-  }
-
-  /**
-   * Best effort attempt to estimate the size in bytes of an undetermined object. Known types will
-   * be estimated according to their formulas, and all other object sizes will be estimated as
-   * {@link #UNKNOWN_DEFAULT_RAM_BYTES_USED}.
-   */
-  public static long sizeOfObject(Object o) {
-    return sizeOfObject(o, 0, UNKNOWN_DEFAULT_RAM_BYTES_USED);
-  }
-
-  /**
-   * Best effort attempt to estimate the size in bytes of an undetermined object. Known types will
-   * be estimated according to their formulas, and all other object sizes will be estimated using
-   * {@link #shallowSizeOf(Object)}, or using the supplied <code>defSize</code> parameter if its
-   * value is greater than 0.
-   */
-  public static long sizeOfObject(Object o, long defSize) {
-    return sizeOfObject(o, 0, defSize);
-  }
-
-  private static long sizeOfObject(Object o, int depth, long defSize) {
-    if (o == null) {
-      return 0;
-    }
-    long size;
-    if (o instanceof Accountable) {
-      size = ((Accountable) o).ramBytesUsed();
-    } else if (o instanceof String) {
-      size = sizeOf((String) o);
-    } else if (o instanceof boolean[]) {
-      size = sizeOf((boolean[]) o);
-    } else if (o instanceof byte[]) {
-      size = sizeOf((byte[]) o);
-    } else if (o instanceof char[]) {
-      size = sizeOf((char[]) o);
-    } else if (o instanceof double[]) {
-      size = sizeOf((double[]) o);
-    } else if (o instanceof float[]) {
-      size = sizeOf((float[]) o);
-    } else if (o instanceof int[]) {
-      size = sizeOf((int[]) o);
-    } else if (o instanceof Long) {
-      size = sizeOf((Long) o);
-    } else if (o instanceof long[]) {
-      size = sizeOf((long[]) o);
-    } else if (o instanceof short[]) {
-      size = sizeOf((short[]) o);
-    } else if (o instanceof String[]) {
-      size = sizeOf((String[]) o);
-    } else if (o instanceof Map) {
-      size = sizeOfMap((Map) o, ++depth, defSize);
-    } else if (o instanceof Collection) {
-      size = sizeOfCollection((Collection) o, ++depth, defSize);
-    } else {
-      if (defSize > 0) {
-        size = defSize;
-      } else {
-        size = shallowSizeOf(o);
-      }
-    }
-    return size;
-  }
-
-  /** Returns the size in bytes of the String object. */
-  public static long sizeOf(String s) {
-    if (s == null) {
-      return 0;
-    }
-    // may not be true in Java 9+ and CompactStrings - but we have no way to determine this
-
-    // char[] + hashCode
-    long size = STRING_SIZE + (long) NUM_BYTES_ARRAY_HEADER + (long) Character.BYTES * s.length();
-    return alignObjectSize(size);
-  }
-
-  /** Returns the shallow size in bytes of the Object[] object. */
-  // Use this method instead of #shallowSizeOf(Object) to avoid costly reflection
-  public static long shallowSizeOf(Object[] arr) {
-    return arr == null
-        ? 0
-        : alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) NUM_BYTES_OBJECT_REF * arr.length);
-  }
-
-  /**
-   * Estimates a "shallow" memory usage of the given object. For arrays, this will be the memory
-   * taken by array storage (no subreferences will be followed). For objects, this will be the
-   * memory taken by the fields.
-   *
-   * <p>JVM object alignments are also applied.
-   */
-  public static long shallowSizeOf(Object obj) {
-    if (obj == null) {
-      return 0;
-    }
-    final Class<?> clz = obj.getClass();
-    if (clz.isArray()) {
-      return shallowSizeOfArray(obj);
-    } else {
-      return shallowSizeOfInstance(clz);
-    }
-  }
-
-  /**
-   * Returns the shallow instance size in bytes an instance of the given class would occupy. This
-   * works with all conventional classes and primitive types, but not with arrays (the size then
-   * depends on the number of elements and varies from object to object).
-   *
-   * @see #shallowSizeOf(Object)
-   * @throws IllegalArgumentException if {@code clazz} is an array class.
-   */
-  public static long shallowSizeOfInstance(Class<?> clazz) {
-    if (clazz.isArray()) {
-      throw new IllegalArgumentException("This method does not work with array classes.");
-    }
-    if (clazz.isPrimitive()) {
-      return primitiveSizes.get(clazz);
-    }
-
-    long size = NUM_BYTES_OBJECT_HEADER;
-
-    // Walk type hierarchy
-    for (; clazz != null; clazz = clazz.getSuperclass()) {
-      final Field[] fields =
-          AccessController.doPrivileged((PrivilegedAction<Field[]>) clazz::getDeclaredFields);
-      for (Field f : fields) {
-        if (!Modifier.isStatic(f.getModifiers())) {
-          size = adjustForField(size, f);
-        }
-      }
-    }
-    return alignObjectSize(size);
-  }
-
-  /** Return shallow size of any <code>array</code>. */
-  private static long shallowSizeOfArray(Object array) {
-    long size = NUM_BYTES_ARRAY_HEADER;
-    final int len = Array.getLength(array);
-    if (len > 0) {
-      Class<?> arrayElementClazz = array.getClass().getComponentType();
-      if (arrayElementClazz.isPrimitive()) {
-        size += (long) len * primitiveSizes.get(arrayElementClazz);
-      } else {
-        size += (long) NUM_BYTES_OBJECT_REF * len;
-      }
-    }
-    return alignObjectSize(size);
-  }
-
-  /**
-   * This method returns the maximum representation size of an object. <code>sizeSoFar</code> is the
-   * object's size measured so far. <code>f</code> is the field being probed.
-   *
-   * <p>The returned offset will be the maximum of whatever was measured so far and <code>f</code>
-   * field's offset and representation size (unaligned).
-   */
-  static long adjustForField(long sizeSoFar, final Field f) {
-    final Class<?> type = f.getType();
-    final int fsize = type.isPrimitive() ? primitiveSizes.get(type) : NUM_BYTES_OBJECT_REF;
-    // TODO: No alignments based on field type/ subclass fields alignments?
-    return sizeSoFar + fsize;
-  }
-
-  /** Returns <code>size</code> in human-readable units (GB, MB, KB or bytes). */
-  public static String humanReadableUnits(long bytes) {
-    return humanReadableUnits(
-        bytes, new DecimalFormat("0.#", DecimalFormatSymbols.getInstance(Locale.ROOT)));
-  }
-
-  /** Returns <code>size</code> in human-readable units (GB, MB, KB or bytes). */
-  public static String humanReadableUnits(long bytes, DecimalFormat df) {
-    if (bytes / ONE_GB > 0) {
-      return df.format((float) bytes / ONE_GB) + " GB";
-    } else if (bytes / ONE_MB > 0) {
-      return df.format((float) bytes / ONE_MB) + " MB";
-    } else if (bytes / ONE_KB > 0) {
-      return df.format((float) bytes / ONE_KB) + " KB";
-    } else {
-      return bytes + " bytes";
-    }
-  }
-
-  public static long sizeOfBooleanArray(int length) {
-    return alignObjectSize((long) NUM_BYTES_ARRAY_HEADER + length);
-  }
-
-  public static long sizeOfByteArray(int length) {
-    return alignObjectSize((long) NUM_BYTES_ARRAY_HEADER + length);
-  }
-
-  public static long sizeOfShortArray(int length) {
-    return alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Short.BYTES * length);
-  }
-
-  public static long sizeOfCharArray(int length) {
-    return alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Character.BYTES * length);
-  }
-
-  public static long sizeOfIntArray(int length) {
-    return alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Integer.BYTES * length);
-  }
-
-  public static long sizeOfLongArray(int length) {
-    return alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Long.BYTES * length);
-  }
-
-  public static long sizeOfFloatArray(int length) {
-    return alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Float.BYTES * length);
-  }
-
-  public static long sizeOfDoubleArray(int length) {
-    return alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) Double.BYTES * length);
-  }
-
-  public static long sizeOfObjectArray(int length) {
-    return alignObjectSize(NUM_BYTES_ARRAY_HEADER + (long) NUM_BYTES_OBJECT_REF * length);
-  }
-}
diff --git a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/TsPrimitiveType.java b/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/TsPrimitiveType.java
deleted file mode 100644
index 42d8c96cfa4..00000000000
--- a/iotdb-api/common-api/src/main/java/org/apache/iotdb/tsfile/utils/TsPrimitiveType.java
+++ /dev/null
@@ -1,695 +0,0 @@
-/*
- * 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.iotdb.tsfile.utils;
-
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-
-import java.io.Serializable;
-import java.util.Arrays;
-
-public abstract class TsPrimitiveType implements Serializable {
-
-  /**
-   * get tsPrimitiveType by resultDataType.
-   *
-   * @param dataType given TsDataType
-   */
-  public static TsPrimitiveType getByType(TSDataType dataType) {
-    switch (dataType) {
-      case BOOLEAN:
-        return new TsPrimitiveType.TsBoolean();
-      case INT32:
-        return new TsPrimitiveType.TsInt();
-      case INT64:
-        return new TsPrimitiveType.TsLong();
-      case FLOAT:
-        return new TsPrimitiveType.TsFloat();
-      case DOUBLE:
-        return new TsPrimitiveType.TsDouble();
-      case TEXT:
-        return new TsPrimitiveType.TsBinary();
-      case VECTOR:
-        return new TsPrimitiveType.TsVector();
-      default:
-        throw new UnSupportedDataTypeException("Unsupported data type:" + dataType);
-    }
-  }
-
-  /**
-   * get tsPrimitiveType by resultDataType and initial value.
-   *
-   * @param dataType given TsDataType
-   * @param v initial value
-   */
-  public static TsPrimitiveType getByType(TSDataType dataType, Object v) {
-    switch (dataType) {
-      case BOOLEAN:
-        return new TsPrimitiveType.TsBoolean((boolean) v);
-      case INT32:
-        return new TsPrimitiveType.TsInt((int) v);
-      case INT64:
-        return new TsPrimitiveType.TsLong((long) v);
-      case FLOAT:
-        return new TsPrimitiveType.TsFloat((float) v);
-      case DOUBLE:
-        return new TsPrimitiveType.TsDouble((double) v);
-      case TEXT:
-        return new TsPrimitiveType.TsBinary((Binary) v);
-      case VECTOR:
-        return new TsPrimitiveType.TsVector((TsPrimitiveType[]) v);
-      default:
-        throw new UnSupportedDataTypeException("Unsupported data type:" + dataType);
-    }
-  }
-
-  public boolean getBoolean() {
-    throw new UnsupportedOperationException("getBoolean() is not supported for current sub-class");
-  }
-
-  public int getInt() {
-    throw new UnsupportedOperationException("getInt() is not supported for current sub-class");
-  }
-
-  public long getLong() {
-    throw new UnsupportedOperationException("getLong() is not supported for current sub-class");
-  }
-
-  public float getFloat() {
-    throw new UnsupportedOperationException("getFloat() is not supported for current sub-class");
-  }
-
-  public double getDouble() {
-    throw new UnsupportedOperationException("getDouble() is not supported for current sub-class");
-  }
-
-  public Binary getBinary() {
-    throw new UnsupportedOperationException("getBinary() is not supported for current sub-class");
-  }
-
-  public TsPrimitiveType[] getVector() {
-    throw new UnsupportedOperationException("getVector() is not supported for current sub-class");
-  }
-
-  public void setBoolean(boolean val) {
-    throw new UnsupportedOperationException("setBoolean() is not supported for current sub-class");
-  }
-
-  public void setInt(int val) {
-    throw new UnsupportedOperationException("setInt() is not supported for current sub-class");
-  }
-
-  public void setLong(long val) {
-    throw new UnsupportedOperationException("setLong() is not supported for current sub-class");
-  }
-
-  public void setFloat(float val) {
-    throw new UnsupportedOperationException("setFloat() is not supported for current sub-class");
-  }
-
-  public void setDouble(double val) {
-    throw new UnsupportedOperationException("setDouble() is not supported for current sub-class");
-  }
-
-  public void setBinary(Binary val) {
-    throw new UnsupportedOperationException("setBinary() is not supported for current sub-class");
-  }
-
-  public void setVector(TsPrimitiveType[] val) {
-    throw new UnsupportedOperationException("setVector() is not supported for current sub-class");
-  }
-
-  public abstract void setObject(Object val);
-
-  public abstract void reset();
-
-  /**
-   * get the size of one instance of current class.
-   *
-   * @return size of one instance of current class
-   */
-  public abstract int getSize();
-
-  public abstract Object getValue();
-
-  public abstract String getStringValue();
-
-  public abstract TSDataType getDataType();
-
-  @Override
-  public String toString() {
-    return getStringValue();
-  }
-
-  @Override
-  public boolean equals(Object object) {
-    return (object instanceof TsPrimitiveType)
-        && (((TsPrimitiveType) object).getValue().equals(getValue()));
-  }
-
-  @Override
-  public int hashCode() {
-    return getValue().hashCode();
-  }
-
-  public static class TsBoolean extends TsPrimitiveType {
-
-    private boolean value;
-
-    public TsBoolean() {}
-
-    public TsBoolean(boolean value) {
-      this.value = value;
-    }
-
-    @Override
-    public boolean getBoolean() {
-      return value;
-    }
-
-    @Override
-    public void setBoolean(boolean val) {
-      this.value = val;
-    }
-
-    @Override
-    public void setObject(Object val) {
-      if (val instanceof Boolean) {
-        setBoolean((Boolean) val);
-        return;
-      }
-      throw new UnSupportedDataTypeException("TsBoolean can only be set Boolean value");
-    }
-
-    @Override
-    public void reset() {
-      value = false;
-    }
-
-    @Override
-    public int getSize() {
-      return 4 + 1;
-    }
-
-    @Override
-    public Object getValue() {
-      return getBoolean();
-    }
-
-    @Override
-    public String getStringValue() {
-      return String.valueOf(value);
-    }
-
-    @Override
-    public TSDataType getDataType() {
-      return TSDataType.BOOLEAN;
-    }
-
-    @Override
-    public int hashCode() {
-      return Boolean.hashCode(value);
-    }
-
-    @Override
-    public boolean equals(Object anObject) {
-      if (this == anObject) {
-        return true;
-      }
-      if (anObject instanceof TsBoolean) {
-        TsBoolean anotherTs = (TsBoolean) anObject;
-        return value == anotherTs.value;
-      }
-      return false;
-    }
-  }
-
-  public static class TsInt extends TsPrimitiveType {
-
-    private int value;
-
-    public TsInt() {}
-
-    public TsInt(int value) {
-      this.value = value;
-    }
-
-    @Override
-    public int getInt() {
-      return value;
-    }
-
-    @Override
-    public void setInt(int val) {
-      this.value = val;
-    }
-
-    @Override
-    public void setObject(Object val) {
-      if (val instanceof Integer) {
-        setInt((Integer) val);
-        return;
-      }
-      throw new UnSupportedDataTypeException("TsInt can only be set Integer value");
-    }
-
-    @Override
-    public void reset() {
-      value = 0;
-    }
-
-    @Override
-    public int getSize() {
-      return 4 + 4;
-    }
-
-    @Override
-    public Object getValue() {
-      return getInt();
-    }
-
-    @Override
-    public String getStringValue() {
-      return String.valueOf(value);
-    }
-
-    @Override
-    public TSDataType getDataType() {
-      return TSDataType.INT32;
-    }
-
-    @Override
-    public int hashCode() {
-      return Integer.hashCode(value);
-    }
-
-    @Override
-    public boolean equals(Object anObject) {
-      if (this == anObject) {
-        return true;
-      }
-      if (anObject instanceof TsInt) {
-        TsInt anotherTs = (TsInt) anObject;
-        return value == anotherTs.value;
-      }
-      return false;
-    }
-  }
-
-  public static class TsLong extends TsPrimitiveType {
-
-    private long value;
-
-    public TsLong() {}
-
-    public TsLong(long value) {
-      this.value = value;
-    }
-
-    @Override
-    public long getLong() {
-      return value;
-    }
-
-    @Override
-    public void setLong(long val) {
-      this.value = val;
-    }
-
-    @Override
-    public void setObject(Object val) {
-      if (val instanceof Long) {
-        setLong((Long) val);
-        return;
-      }
-      throw new UnSupportedDataTypeException("TsLong can only be set Long value");
-    }
-
-    @Override
-    public void reset() {
-      value = 0;
-    }
-
-    @Override
-    public int getSize() {
-      return 4 + 8;
-    }
-
-    @Override
-    public String getStringValue() {
-      return String.valueOf(value);
-    }
-
-    @Override
-    public TSDataType getDataType() {
-      return TSDataType.INT64;
-    }
-
-    @Override
-    public Object getValue() {
-      return getLong();
-    }
-
-    @Override
-    public int hashCode() {
-      return Long.hashCode(value);
-    }
-
-    @Override
-    public boolean equals(Object anObject) {
-      if (this == anObject) {
-        return true;
-      }
-      if (anObject instanceof TsLong) {
-        TsLong anotherTs = (TsLong) anObject;
-        return value == anotherTs.value;
-      }
-      return false;
-    }
-  }
-
-  public static class TsFloat extends TsPrimitiveType {
-
-    private float value;
-
-    public TsFloat() {}
-
-    public TsFloat(float value) {
-      this.value = value;
-    }
-
-    @Override
-    public float getFloat() {
-      return value;
-    }
-
-    @Override
-    public void setFloat(float val) {
-      this.value = val;
-    }
-
-    @Override
-    public void setObject(Object val) {
-      if (val instanceof Float) {
-        setFloat((Float) val);
-        return;
-      }
-      throw new UnSupportedDataTypeException("TsFloat can only be set float value");
-    }
-
-    @Override
-    public void reset() {
-      value = 0;
-    }
-
-    @Override
-    public int getSize() {
-      return 4 + 4;
-    }
-
-    @Override
-    public Object getValue() {
-      return getFloat();
-    }
-
-    @Override
-    public String getStringValue() {
-      return String.valueOf(value);
-    }
-
-    @Override
-    public TSDataType getDataType() {
-      return TSDataType.FLOAT;
-    }
-
-    @Override
-    public int hashCode() {
-      return Float.hashCode(value);
-    }
-
-    @Override
-    public boolean equals(Object anObject) {
-      if (this == anObject) {
-        return true;
-      }
-      if (anObject instanceof TsFloat) {
-        TsFloat anotherTs = (TsFloat) anObject;
-        return value == anotherTs.value;
-      }
-      return false;
-    }
-  }
-
-  public static class TsDouble extends TsPrimitiveType {
-
-    private double value;
-
-    public TsDouble() {}
-
-    public TsDouble(double value) {
-      this.value = value;
-    }
-
-    @Override
-    public double getDouble() {
-      return value;
-    }
-
-    @Override
-    public void setDouble(double val) {
-      this.value = val;
-    }
-
-    @Override
-    public void setObject(Object val) {
-      if (val instanceof Double) {
-        setDouble((Double) val);
-        return;
-      }
-      throw new UnSupportedDataTypeException("TsDouble can only be set Double value");
-    }
-
-    @Override
-    public void reset() {
-      value = 0.0;
-    }
-
-    @Override
-    public int getSize() {
-      return 4 + 8;
-    }
-
-    @Override
-    public Object getValue() {
-      return getDouble();
-    }
-
-    @Override
-    public String getStringValue() {
-      return String.valueOf(value);
-    }
-
-    @Override
-    public TSDataType getDataType() {
-      return TSDataType.DOUBLE;
-    }
-
-    @Override
-    public int hashCode() {
-      return Double.hashCode(value);
-    }
-
-    @Override
-    public boolean equals(Object anObject) {
-      if (this == anObject) {
-        return true;
-      }
-      if (anObject instanceof TsDouble) {
-        TsDouble anotherTs = (TsDouble) anObject;
-        return value == anotherTs.value;
-      }
-      return false;
-    }
-  }
-
-  public static class TsBinary extends TsPrimitiveType {
-
-    private Binary value;
-
-    public TsBinary() {}
-
-    public TsBinary(Binary value) {
-      this.value = value;
-    }
-
-    @Override
-    public Binary getBinary() {
-      return value;
-    }
-
-    @Override
-    public void setBinary(Binary val) {
-      this.value = val;
-    }
-
-    @Override
-    public void setObject(Object val) {
-      if (val instanceof Binary) {
-        setBinary((Binary) val);
-        return;
-      }
-      throw new UnSupportedDataTypeException("TsBinary can only be set Binary value");
-    }
-
-    @Override
-    public void reset() {
-      value = null;
-    }
-
-    @Override
-    public int getSize() {
-      return 4 + 4 + value.getLength();
-    }
-
-    @Override
-    public Object getValue() {
-      return getBinary();
-    }
-
-    @Override
-    public String getStringValue() {
-      return String.valueOf(value);
-    }
-
-    @Override
-    public TSDataType getDataType() {
-      return TSDataType.TEXT;
-    }
-
-    @Override
-    public int hashCode() {
-      return value.hashCode();
-    }
-
-    @Override
-    public boolean equals(Object anObject) {
-      if (this == anObject) {
-        return true;
-      }
-      if (anObject instanceof TsBinary) {
-        TsBinary anotherTs = (TsBinary) anObject;
-        return value.equals(anotherTs.value);
-      }
-      return false;
-    }
-  }
-
-  public static class TsVector extends TsPrimitiveType {
-
-    private TsPrimitiveType[] values;
-
-    public TsVector() {}
-
-    public TsVector(TsPrimitiveType[] values) {
-      this.values = values;
-    }
-
-    @Override
-    public TsPrimitiveType[] getVector() {
-      return values;
-    }
-
-    @Override
-    public void setVector(TsPrimitiveType[] vals) {
-      this.values = vals;
-    }
-
-    @Override
-    public void setObject(Object val) {
-      if (val instanceof TsPrimitiveType[]) {
-        setVector((TsPrimitiveType[]) val);
-        return;
-      }
-      throw new UnSupportedDataTypeException("TsVector can only be set TsPrimitiveType[] value");
-    }
-
-    @Override
-    public void reset() {
-      values = null;
-    }
-
-    @Override
-    public int getSize() {
-      int size = 0;
-      for (TsPrimitiveType type : values) {
-        if (type != null) {
-          size += type.getSize();
-        }
-      }
-      // object header + array object header
-      return 4 + 4 + size;
-    }
-
-    @Override
-    public Object getValue() {
-      return getVector();
-    }
-
-    @Override
-    public String getStringValue() {
-      StringBuilder builder = new StringBuilder("[");
-      builder.append(values[0] == null ? "null" : values[0].getStringValue());
-      for (int i = 1; i < values.length; i++) {
-        builder.append(", ").append(values[i] == null ? "null" : values[i].getStringValue());
-      }
-      builder.append("]");
-      return builder.toString();
-    }
-
-    @Override
-    public TSDataType getDataType() {
-      return TSDataType.VECTOR;
-    }
-
-    @Override
-    public int hashCode() {
-      return Arrays.hashCode(values);
-    }
-
-    @Override
-    public boolean equals(Object anObject) {
-      if (this == anObject) {
-        return true;
-      }
-      if (anObject instanceof TsVector) {
-        TsVector anotherTs = (TsVector) anObject;
-        if (anotherTs.values.length != this.values.length) {
-          return false;
-        }
-        for (int i = 0; i < this.values.length; i++) {
-          if (!values[i].equals(anotherTs.values[i])) {
-            return false;
-          }
-        }
-        return true;
-      }
-      return false;
-    }
-  }
-}
diff --git a/iotdb-api/pipe-api/pom.xml b/iotdb-api/pipe-api/pom.xml
index 83775f8386e..10944b63e75 100644
--- a/iotdb-api/pipe-api/pom.xml
+++ b/iotdb-api/pipe-api/pom.xml
@@ -30,9 +30,9 @@
     <name>IoTDB: API: Pipe API</name>
     <dependencies>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
             <scope>provided</scope>
         </dependency>
     </dependencies>
diff --git a/iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/access/Row.java b/iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/access/Row.java
index e98968b0fef..b3c1342347d 100644
--- a/iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/access/Row.java
+++ b/iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/access/Row.java
@@ -22,7 +22,8 @@ package org.apache.iotdb.pipe.api.access;
 import org.apache.iotdb.pipe.api.exception.PipeParameterNotValidException;
 import org.apache.iotdb.pipe.api.type.Binary;
 import org.apache.iotdb.pipe.api.type.Type;
-import org.apache.iotdb.tsfile.read.common.Path;
+
+import org.apache.tsfile.read.common.Path;
 
 import java.util.List;
 
diff --git a/iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/event/dml/insertion/TabletInsertionEvent.java b/iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/event/dml/insertion/TabletInsertionEvent.java
index 22729e02643..6e1575a464f 100644
--- a/iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/event/dml/insertion/TabletInsertionEvent.java
+++ b/iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/event/dml/insertion/TabletInsertionEvent.java
@@ -22,7 +22,8 @@ package org.apache.iotdb.pipe.api.event.dml.insertion;
 import org.apache.iotdb.pipe.api.access.Row;
 import org.apache.iotdb.pipe.api.collector.RowCollector;
 import org.apache.iotdb.pipe.api.event.Event;
-import org.apache.iotdb.tsfile.write.record.Tablet;
+
+import org.apache.tsfile.write.record.Tablet;
 
 import java.util.function.BiConsumer;
 
diff --git a/iotdb-api/pom.xml b/iotdb-api/pom.xml
index 15a345d5a5a..3744f1f5b1e 100644
--- a/iotdb-api/pom.xml
+++ b/iotdb-api/pom.xml
@@ -30,7 +30,6 @@
     <packaging>pom</packaging>
     <name>IoTDB: API</name>
     <modules>
-        <module>common-api</module>
         <module>external-api</module>
         <module>pipe-api</module>
         <module>trigger-api</module>
diff --git a/iotdb-api/trigger-api/pom.xml b/iotdb-api/trigger-api/pom.xml
index 8292ed5aa79..88cb4ed0bab 100644
--- a/iotdb-api/trigger-api/pom.xml
+++ b/iotdb-api/trigger-api/pom.xml
@@ -30,9 +30,9 @@
     <name>IoTDB: API: Trigger API</name>
     <dependencies>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
     </dependencies>
     <profiles>
diff --git a/iotdb-api/trigger-api/src/main/java/org/apache/iotdb/trigger/api/Trigger.java b/iotdb-api/trigger-api/src/main/java/org/apache/iotdb/trigger/api/Trigger.java
index e693dcca2e6..753fe8b7fec 100644
--- a/iotdb-api/trigger-api/src/main/java/org/apache/iotdb/trigger/api/Trigger.java
+++ b/iotdb-api/trigger-api/src/main/java/org/apache/iotdb/trigger/api/Trigger.java
@@ -20,7 +20,8 @@
 package org.apache.iotdb.trigger.api;
 
 import org.apache.iotdb.trigger.api.enums.FailureStrategy;
-import org.apache.iotdb.tsfile.write.record.Tablet;
+
+import org.apache.tsfile.write.record.Tablet;
 
 public interface Trigger {
 
diff --git a/iotdb-api/trigger-api/src/main/java/org/apache/iotdb/trigger/api/enums/FailureStrategy.java b/iotdb-api/trigger-api/src/main/java/org/apache/iotdb/trigger/api/enums/FailureStrategy.java
index 7f32f7c1e88..18d9478f14b 100644
--- a/iotdb-api/trigger-api/src/main/java/org/apache/iotdb/trigger/api/enums/FailureStrategy.java
+++ b/iotdb-api/trigger-api/src/main/java/org/apache/iotdb/trigger/api/enums/FailureStrategy.java
@@ -20,7 +20,8 @@
 package org.apache.iotdb.trigger.api.enums;
 
 import org.apache.iotdb.trigger.api.Trigger;
-import org.apache.iotdb.tsfile.write.record.Tablet;
+
+import org.apache.tsfile.write.record.Tablet;
 
 /**
  * Type of FailureStrategy indicates what will happen when a trigger failed to do {@link
diff --git a/iotdb-api/udf-api/pom.xml b/iotdb-api/udf-api/pom.xml
index fcb22d6d4ca..d11ae4dbceb 100644
--- a/iotdb-api/udf-api/pom.xml
+++ b/iotdb-api/udf-api/pom.xml
@@ -30,9 +30,9 @@
     <name>IoTDB: API: UDF API</name>
     <dependencies>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
     </dependencies>
     <profiles>
diff --git a/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/UDAF.java b/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/UDAF.java
index 4e8869b180b..6cd71f8d58b 100644
--- a/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/UDAF.java
+++ b/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/UDAF.java
@@ -19,12 +19,13 @@
 
 package org.apache.iotdb.udf.api;
 
-import org.apache.iotdb.tsfile.read.common.block.column.Column;
-import org.apache.iotdb.tsfile.utils.BitMap;
 import org.apache.iotdb.udf.api.customizer.config.UDAFConfigurations;
 import org.apache.iotdb.udf.api.customizer.parameter.UDFParameters;
 import org.apache.iotdb.udf.api.utils.ResultValue;
 
+import org.apache.tsfile.block.column.Column;
+import org.apache.tsfile.utils.BitMap;
+
 public interface UDAF extends UDF {
   void beforeStart(UDFParameters parameters, UDAFConfigurations configurations);
 
diff --git a/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/UDTF.java b/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/UDTF.java
index 39ed5c6564e..002e174476d 100644
--- a/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/UDTF.java
+++ b/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/UDTF.java
@@ -19,9 +19,6 @@
 
 package org.apache.iotdb.udf.api;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.block.column.Column;
-import org.apache.iotdb.tsfile.read.common.block.column.ColumnBuilder;
 import org.apache.iotdb.udf.api.access.Row;
 import org.apache.iotdb.udf.api.access.RowWindow;
 import org.apache.iotdb.udf.api.collector.PointCollector;
@@ -34,6 +31,10 @@ import org.apache.iotdb.udf.api.customizer.strategy.SlidingSizeWindowAccessStrat
 import org.apache.iotdb.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
 import org.apache.iotdb.udf.api.utils.RowImpl;
 
+import org.apache.tsfile.block.column.Column;
+import org.apache.tsfile.block.column.ColumnBuilder;
+import org.apache.tsfile.enums.TSDataType;
+
 /**
  * User-defined Time-series Generating Function (UDTF)
  *
diff --git a/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/utils/ResultValue.java b/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/utils/ResultValue.java
index a65bdf0ed5f..8e27cb3008c 100644
--- a/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/utils/ResultValue.java
+++ b/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/utils/ResultValue.java
@@ -19,8 +19,8 @@
 
 package org.apache.iotdb.udf.api.utils;
 
-import org.apache.iotdb.tsfile.read.common.block.column.ColumnBuilder;
-import org.apache.iotdb.tsfile.utils.Binary;
+import org.apache.tsfile.block.column.ColumnBuilder;
+import org.apache.tsfile.utils.Binary;
 
 public class ResultValue {
   private ColumnBuilder builder;
diff --git a/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/utils/RowImpl.java b/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/utils/RowImpl.java
index 654081400c8..55481eff021 100644
--- a/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/utils/RowImpl.java
+++ b/iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/utils/RowImpl.java
@@ -19,11 +19,12 @@
 
 package org.apache.iotdb.udf.api.utils;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 import org.apache.iotdb.udf.api.access.Row;
 import org.apache.iotdb.udf.api.type.Binary;
 import org.apache.iotdb.udf.api.type.Type;
 
+import org.apache.tsfile.enums.TSDataType;
+
 public class RowImpl implements Row {
 
   private final TSDataType[] dataTypes;
diff --git a/iotdb-client/cli/pom.xml b/iotdb-client/cli/pom.xml
index 9e14c6239ee..c8451aac10e 100644
--- a/iotdb-client/cli/pom.xml
+++ b/iotdb-client/cli/pom.xml
@@ -70,14 +70,14 @@
             <version>1.3.2-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
diff --git a/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ExportData.java b/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ExportData.java
index bae7195a9b7..69c342cec73 100644
--- a/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ExportData.java
+++ b/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ExportData.java
@@ -29,10 +29,6 @@ import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.RpcUtils;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 
 import org.apache.commons.cli.CommandLine;
 import org.apache.commons.cli.CommandLineParser;
@@ -44,6 +40,10 @@ import org.apache.commons.cli.ParseException;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.ObjectUtils;
 import org.apache.thrift.TException;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.read.common.RowRecord;
 import org.jline.reader.LineReader;
 
 import java.io.BufferedReader;
diff --git a/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ExportTsFile.java b/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ExportTsFile.java
index 7eb12390d21..6949142ca07 100644
--- a/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ExportTsFile.java
+++ b/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ExportTsFile.java
@@ -28,17 +28,6 @@ import org.apache.iotdb.isession.SessionDataSet;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
 import org.apache.commons.cli.CommandLine;
 import org.apache.commons.cli.CommandLineParser;
@@ -47,6 +36,17 @@ import org.apache.commons.cli.HelpFormatter;
 import org.apache.commons.cli.Option;
 import org.apache.commons.cli.Options;
 import org.apache.commons.cli.ParseException;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.exception.write.WriteProcessException;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.fileSystem.FSFactoryProducer;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.jline.reader.LineReader;
 
 import java.io.BufferedReader;
diff --git a/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ImportData.java b/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ImportData.java
index 5e33f956bee..44bd9a7eebb 100644
--- a/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ImportData.java
+++ b/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ImportData.java
@@ -31,10 +31,6 @@ import org.apache.iotdb.jdbc.Config;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 
 import org.apache.commons.cli.CommandLine;
 import org.apache.commons.cli.CommandLineParser;
@@ -47,6 +43,10 @@ import org.apache.commons.csv.CSVParser;
 import org.apache.commons.csv.CSVRecord;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.thrift.annotation.Nullable;
+import org.apache.tsfile.common.constant.TsFileConstant;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.io.BufferedReader;
 import java.io.File;
@@ -74,12 +74,12 @@ import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
 import static org.apache.iotdb.jdbc.Config.IOTDB_ERROR_PREFIX;
-import static org.apache.iotdb.tsfile.file.metadata.enums.TSDataType.BOOLEAN;
-import static org.apache.iotdb.tsfile.file.metadata.enums.TSDataType.DOUBLE;
-import static org.apache.iotdb.tsfile.file.metadata.enums.TSDataType.FLOAT;
-import static org.apache.iotdb.tsfile.file.metadata.enums.TSDataType.INT32;
-import static org.apache.iotdb.tsfile.file.metadata.enums.TSDataType.INT64;
-import static org.apache.iotdb.tsfile.file.metadata.enums.TSDataType.TEXT;
+import static org.apache.tsfile.file.metadata.enums.TSDataType.BOOLEAN;
+import static org.apache.tsfile.file.metadata.enums.TSDataType.DOUBLE;
+import static org.apache.tsfile.file.metadata.enums.TSDataType.FLOAT;
+import static org.apache.tsfile.file.metadata.enums.TSDataType.INT32;
+import static org.apache.tsfile.file.metadata.enums.TSDataType.INT64;
+import static org.apache.tsfile.file.metadata.enums.TSDataType.TEXT;
 
 public class ImportData extends AbstractDataTool {
 
diff --git a/iotdb-client/isession/pom.xml b/iotdb-client/isession/pom.xml
index 44dbe968cc7..c6f139346d8 100644
--- a/iotdb-client/isession/pom.xml
+++ b/iotdb-client/isession/pom.xml
@@ -35,14 +35,14 @@
             <version>1.3.2-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
diff --git a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/ISession.java b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/ISession.java
index 9176dbd6827..3324d5d5880 100644
--- a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/ISession.java
+++ b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/ISession.java
@@ -28,12 +28,12 @@ import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.service.rpc.thrift.TSBackupConfigurationResp;
 import org.apache.iotdb.service.rpc.thrift.TSConnectionInfoResp;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.write.record.Tablet;
 
 import org.apache.thrift.TException;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.write.record.Tablet;
 
 import java.io.IOException;
 import java.nio.ByteBuffer;
diff --git a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/ISessionDataSet.java b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/ISessionDataSet.java
index be77a2235bb..d6206750ed0 100644
--- a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/ISessionDataSet.java
+++ b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/ISessionDataSet.java
@@ -19,7 +19,7 @@
 
 package org.apache.iotdb.isession;
 
-import org.apache.iotdb.tsfile.read.common.RowRecord;
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.util.List;
 
diff --git a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/SessionDataSet.java b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/SessionDataSet.java
index b0de2a331bb..4ae1954e3ed 100644
--- a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/SessionDataSet.java
+++ b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/SessionDataSet.java
@@ -23,12 +23,12 @@ import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.IoTDBRpcDataSet;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.service.rpc.thrift.IClientRPCService;
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 
 import org.apache.thrift.TException;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.nio.ByteBuffer;
 import java.sql.Timestamp;
diff --git a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/pool/ISessionPool.java b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/pool/ISessionPool.java
index f2a9d425ee6..090fb8eca58 100644
--- a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/pool/ISessionPool.java
+++ b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/pool/ISessionPool.java
@@ -27,10 +27,11 @@ import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.service.rpc.thrift.TSBackupConfigurationResp;
 import org.apache.iotdb.service.rpc.thrift.TSConnectionInfoResp;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.write.record.Tablet;
+
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.write.record.Tablet;
 
 import java.io.IOException;
 import java.nio.ByteBuffer;
diff --git a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/pool/SessionDataSetWrapper.java b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/pool/SessionDataSetWrapper.java
index de36ee10787..77f347bd341 100644
--- a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/pool/SessionDataSetWrapper.java
+++ b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/pool/SessionDataSetWrapper.java
@@ -23,7 +23,8 @@ import org.apache.iotdb.isession.ISession;
 import org.apache.iotdb.isession.SessionDataSet;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
+
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.util.List;
 
diff --git a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/template/Template.java b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/template/Template.java
index 7751ad30bcd..90171c7dd50 100644
--- a/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/template/Template.java
+++ b/iotdb-client/isession/src/main/java/org/apache/iotdb/isession/template/Template.java
@@ -20,9 +20,10 @@
 package org.apache.iotdb.isession.template;
 
 import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
-import org.apache.iotdb.tsfile.utils.Pair;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
+
+import org.apache.tsfile.common.constant.TsFileConstant;
+import org.apache.tsfile.utils.Pair;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.io.IOException;
 import java.io.OutputStream;
diff --git a/iotdb-client/jdbc/pom.xml b/iotdb-client/jdbc/pom.xml
index 7fdbd09e516..bd9bf106631 100644
--- a/iotdb-client/jdbc/pom.xml
+++ b/iotdb-client/jdbc/pom.xml
@@ -46,14 +46,14 @@
             <version>1.3.2-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
diff --git a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/GroupedLSBWatermarkEncoder.java b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/GroupedLSBWatermarkEncoder.java
index b781d127397..fb286e75e1c 100644
--- a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/GroupedLSBWatermarkEncoder.java
+++ b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/GroupedLSBWatermarkEncoder.java
@@ -19,11 +19,10 @@
 
 package org.apache.iotdb.jdbc;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-
 import org.apache.thrift.EncodingUtils;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.math.BigInteger;
 import java.security.MessageDigest;
diff --git a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBDatabaseMetadata.java b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBDatabaseMetadata.java
index 6bd5b23b7e3..e2db05db8b9 100644
--- a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBDatabaseMetadata.java
+++ b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBDatabaseMetadata.java
@@ -24,15 +24,15 @@ import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.service.rpc.thrift.IClientRPCService;
 import org.apache.iotdb.service.rpc.thrift.TSFetchMetadataReq;
 import org.apache.iotdb.service.rpc.thrift.TSFetchMetadataResp;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.block.TsBlock;
-import org.apache.iotdb.tsfile.read.common.block.TsBlockBuilder;
-import org.apache.iotdb.tsfile.read.common.block.column.TsBlockSerde;
-import org.apache.iotdb.tsfile.utils.Binary;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.thrift.TException;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.read.common.block.TsBlock;
+import org.apache.tsfile.read.common.block.TsBlockBuilder;
+import org.apache.tsfile.read.common.block.column.TsBlockSerde;
+import org.apache.tsfile.utils.Binary;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBNonAlignJDBCResultSet.java b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBNonAlignJDBCResultSet.java
index 5b7eaa9916c..333180e7818 100644
--- a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBNonAlignJDBCResultSet.java
+++ b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBNonAlignJDBCResultSet.java
@@ -26,12 +26,12 @@ import org.apache.iotdb.service.rpc.thrift.TSFetchResultsReq;
 import org.apache.iotdb.service.rpc.thrift.TSFetchResultsResp;
 import org.apache.iotdb.service.rpc.thrift.TSQueryNonAlignDataSet;
 import org.apache.iotdb.service.rpc.thrift.TSTracingInfo;
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.utils.BytesUtils;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
 
 import org.apache.thrift.TException;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.utils.BytesUtils;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.nio.ByteBuffer;
 import java.sql.SQLException;
diff --git a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBPreparedStatement.java b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBPreparedStatement.java
index c93c1d55027..72f32fc5e4c 100644
--- a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBPreparedStatement.java
+++ b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBPreparedStatement.java
@@ -20,10 +20,10 @@
 package org.apache.iotdb.jdbc;
 
 import org.apache.iotdb.service.rpc.thrift.IClientRPCService.Iface;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.utils.Binary;
 
 import org.apache.thrift.TException;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.utils.Binary;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/WatermarkEncoder.java b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/WatermarkEncoder.java
index 615f8a4841f..4547d20c692 100644
--- a/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/WatermarkEncoder.java
+++ b/iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/WatermarkEncoder.java
@@ -19,7 +19,7 @@
 
 package org.apache.iotdb.jdbc;
 
-import org.apache.iotdb.tsfile.read.common.RowRecord;
+import org.apache.tsfile.read.common.RowRecord;
 
 public interface WatermarkEncoder {
   int encodeInt(int value, long time);
diff --git a/iotdb-client/jdbc/src/test/java/org/apache/iotdb/jdbc/IoTDBJDBCResultSetTest.java b/iotdb-client/jdbc/src/test/java/org/apache/iotdb/jdbc/IoTDBJDBCResultSetTest.java
index ede07f93def..e69c7673d66 100644
--- a/iotdb-client/jdbc/src/test/java/org/apache/iotdb/jdbc/IoTDBJDBCResultSetTest.java
+++ b/iotdb-client/jdbc/src/test/java/org/apache/iotdb/jdbc/IoTDBJDBCResultSetTest.java
@@ -29,10 +29,10 @@ import org.apache.iotdb.service.rpc.thrift.TSFetchMetadataReq;
 import org.apache.iotdb.service.rpc.thrift.TSFetchMetadataResp;
 import org.apache.iotdb.service.rpc.thrift.TSFetchResultsReq;
 import org.apache.iotdb.service.rpc.thrift.TSFetchResultsResp;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.block.TsBlockBuilder;
-import org.apache.iotdb.tsfile.read.common.block.column.TsBlockSerde;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.read.common.block.TsBlockBuilder;
+import org.apache.tsfile.read.common.block.column.TsBlockSerde;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/iotdb-client/service-rpc/pom.xml b/iotdb-client/service-rpc/pom.xml
index e66f399a5ad..f91a0b23875 100644
--- a/iotdb-client/service-rpc/pom.xml
+++ b/iotdb-client/service-rpc/pom.xml
@@ -36,9 +36,9 @@
     </properties>
     <dependencies>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>${project.version}</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
@@ -46,9 +46,9 @@
             <version>${project.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
             <!-- we want to reduce the size of JDBC -->
             <exclusions>
                 <exclusion>
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBJDBCDataSet.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBJDBCDataSet.java
index 52dbb2c4592..3a36db62ca5 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBJDBCDataSet.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBJDBCDataSet.java
@@ -25,12 +25,12 @@ import org.apache.iotdb.service.rpc.thrift.TSCloseOperationReq;
 import org.apache.iotdb.service.rpc.thrift.TSFetchResultsReq;
 import org.apache.iotdb.service.rpc.thrift.TSFetchResultsResp;
 import org.apache.iotdb.service.rpc.thrift.TSQueryDataSet;
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.utils.BytesUtils;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
 
 import org.apache.thrift.TException;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.utils.BytesUtils;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.nio.ByteBuffer;
 import java.nio.charset.StandardCharsets;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java
index 6ff111e6bad..eb92120c090 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java
@@ -24,13 +24,13 @@ import org.apache.iotdb.service.rpc.thrift.IClientRPCService;
 import org.apache.iotdb.service.rpc.thrift.TSCloseOperationReq;
 import org.apache.iotdb.service.rpc.thrift.TSFetchResultsReq;
 import org.apache.iotdb.service.rpc.thrift.TSFetchResultsResp;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.block.TsBlock;
-import org.apache.iotdb.tsfile.read.common.block.column.TsBlockSerde;
-import org.apache.iotdb.tsfile.utils.Binary;
 
 import org.apache.thrift.TException;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.read.common.block.TsBlock;
+import org.apache.tsfile.read.common.block.column.TsBlockSerde;
+import org.apache.tsfile.utils.Binary;
 
 import java.nio.ByteBuffer;
 import java.sql.Timestamp;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/config/ConsumerConfig.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/config/ConsumerConfig.java
index 7915e1ef1e3..976ad9c4952 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/config/ConsumerConfig.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/config/ConsumerConfig.java
@@ -20,7 +20,8 @@
 package org.apache.iotdb.rpc.subscription.config;
 
 import org.apache.iotdb.pipe.api.customizer.parameter.PipeParameters;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
+
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/config/TopicConfig.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/config/TopicConfig.java
index 8e1fc70ab1c..330d129790c 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/config/TopicConfig.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/config/TopicConfig.java
@@ -20,7 +20,8 @@
 package org.apache.iotdb.rpc.subscription.config;
 
 import org.apache.iotdb.pipe.api.customizer.parameter.PipeParameters;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
+
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/EnrichedTablets.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/EnrichedTablets.java
index 9bcae958d68..d020e172e0e 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/EnrichedTablets.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/EnrichedTablets.java
@@ -19,8 +19,8 @@
 
 package org.apache.iotdb.rpc.subscription.payload;
 
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
-import org.apache.iotdb.tsfile.write.record.Tablet;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
+import org.apache.tsfile.write.record.Tablet;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeCommitReq.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeCommitReq.java
index 89c844c7ebd..91446dfa56f 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeCommitReq.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeCommitReq.java
@@ -20,8 +20,9 @@
 package org.apache.iotdb.rpc.subscription.payload.request;
 
 import org.apache.iotdb.service.rpc.thrift.TPipeSubscribeReq;
-import org.apache.iotdb.tsfile.utils.PublicBAOS;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
+
+import org.apache.tsfile.utils.PublicBAOS;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeHandshakeReq.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeHandshakeReq.java
index f0dc2d1880d..800794a65f0 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeHandshakeReq.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeHandshakeReq.java
@@ -21,7 +21,8 @@ package org.apache.iotdb.rpc.subscription.payload.request;
 
 import org.apache.iotdb.rpc.subscription.config.ConsumerConfig;
 import org.apache.iotdb.service.rpc.thrift.TPipeSubscribeReq;
-import org.apache.iotdb.tsfile.utils.PublicBAOS;
+
+import org.apache.tsfile.utils.PublicBAOS;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribePollReq.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribePollReq.java
index 0188633239f..a6146447c19 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribePollReq.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribePollReq.java
@@ -20,8 +20,9 @@
 package org.apache.iotdb.rpc.subscription.payload.request;
 
 import org.apache.iotdb.service.rpc.thrift.TPipeSubscribeReq;
-import org.apache.iotdb.tsfile.utils.PublicBAOS;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
+
+import org.apache.tsfile.utils.PublicBAOS;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeSubscribeReq.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeSubscribeReq.java
index 53bc708dc66..eb3b90ec12d 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeSubscribeReq.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeSubscribeReq.java
@@ -20,8 +20,9 @@
 package org.apache.iotdb.rpc.subscription.payload.request;
 
 import org.apache.iotdb.service.rpc.thrift.TPipeSubscribeReq;
-import org.apache.iotdb.tsfile.utils.PublicBAOS;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
+
+import org.apache.tsfile.utils.PublicBAOS;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeUnsubscribeReq.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeUnsubscribeReq.java
index 0fa729b858d..2de93a56b75 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeUnsubscribeReq.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/request/PipeSubscribeUnsubscribeReq.java
@@ -20,8 +20,9 @@
 package org.apache.iotdb.rpc.subscription.payload.request;
 
 import org.apache.iotdb.service.rpc.thrift.TPipeSubscribeReq;
-import org.apache.iotdb.tsfile.utils.PublicBAOS;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
+
+import org.apache.tsfile.utils.PublicBAOS;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/response/PipeSubscribeHandshakeResp.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/response/PipeSubscribeHandshakeResp.java
index 932c88a3374..58d7baee483 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/response/PipeSubscribeHandshakeResp.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/response/PipeSubscribeHandshakeResp.java
@@ -23,8 +23,9 @@ import org.apache.iotdb.common.rpc.thrift.TSStatus;
 import org.apache.iotdb.rpc.RpcUtils;
 import org.apache.iotdb.rpc.TSStatusCode;
 import org.apache.iotdb.service.rpc.thrift.TPipeSubscribeResp;
-import org.apache.iotdb.tsfile.utils.PublicBAOS;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
+
+import org.apache.tsfile.utils.PublicBAOS;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/response/PipeSubscribePollResp.java b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/response/PipeSubscribePollResp.java
index 0d1ed4eb0e2..d0bc8ccc95a 100644
--- a/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/response/PipeSubscribePollResp.java
+++ b/iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/payload/response/PipeSubscribePollResp.java
@@ -24,8 +24,9 @@ import org.apache.iotdb.rpc.RpcUtils;
 import org.apache.iotdb.rpc.TSStatusCode;
 import org.apache.iotdb.rpc.subscription.payload.EnrichedTablets;
 import org.apache.iotdb.service.rpc.thrift.TPipeSubscribeResp;
-import org.apache.iotdb.tsfile.utils.Pair;
-import org.apache.iotdb.tsfile.utils.PublicBAOS;
+
+import org.apache.tsfile.utils.Pair;
+import org.apache.tsfile.utils.PublicBAOS;
 
 import java.io.DataOutputStream;
 import java.io.IOException;
diff --git a/iotdb-client/session/pom.xml b/iotdb-client/session/pom.xml
index d43ca10e06f..82b24c39d3b 100644
--- a/iotdb-client/session/pom.xml
+++ b/iotdb-client/session/pom.xml
@@ -50,14 +50,14 @@
             <version>1.3.2-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
diff --git a/iotdb-client/session/src/main/java/org/apache/iotdb/session/Session.java b/iotdb-client/session/src/main/java/org/apache/iotdb/session/Session.java
index b87d8937a1e..c0f5f43737e 100644
--- a/iotdb-client/session/src/main/java/org/apache/iotdb/session/Session.java
+++ b/iotdb-client/session/src/main/java/org/apache/iotdb/session/Session.java
@@ -60,18 +60,18 @@ import org.apache.iotdb.session.template.MeasurementNode;
 import org.apache.iotdb.session.template.TemplateQueryType;
 import org.apache.iotdb.session.util.SessionUtils;
 import org.apache.iotdb.session.util.ThreadUtils;
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.utils.Pair;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.IMeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
 import org.apache.thrift.TException;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.utils.Pair;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.IMeasurementSchema;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-client/session/src/main/java/org/apache/iotdb/session/SessionConnection.java b/iotdb-client/session/src/main/java/org/apache/iotdb/session/SessionConnection.java
index 993626762d0..731172a5bd2 100644
--- a/iotdb-client/session/src/main/java/org/apache/iotdb/session/SessionConnection.java
+++ b/iotdb-client/session/src/main/java/org/apache/iotdb/session/SessionConnection.java
@@ -64,13 +64,13 @@ import org.apache.iotdb.service.rpc.thrift.TSSetSchemaTemplateReq;
 import org.apache.iotdb.service.rpc.thrift.TSSetTimeZoneReq;
 import org.apache.iotdb.service.rpc.thrift.TSUnsetSchemaTemplateReq;
 import org.apache.iotdb.session.util.SessionUtils;
-import org.apache.iotdb.tsfile.utils.Pair;
 
 import org.apache.thrift.TException;
 import org.apache.thrift.protocol.TBinaryProtocol;
 import org.apache.thrift.protocol.TCompactProtocol;
 import org.apache.thrift.transport.TTransport;
 import org.apache.thrift.transport.TTransportException;
+import org.apache.tsfile.utils.Pair;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/SessionPool.java b/iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/SessionPool.java
index 6db8113d7ba..1f10b625b74 100644
--- a/iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/SessionPool.java
+++ b/iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/SessionPool.java
@@ -37,12 +37,12 @@ import org.apache.iotdb.session.DummyNodesSupplier;
 import org.apache.iotdb.session.NodesSupplier;
 import org.apache.iotdb.session.Session;
 import org.apache.iotdb.session.util.SessionUtils;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.write.record.Tablet;
 
 import org.apache.thrift.TException;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.write.record.Tablet;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSession.java b/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSession.java
index 8346277e2b5..656528d066b 100644
--- a/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSession.java
+++ b/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSession.java
@@ -29,8 +29,9 @@ import org.apache.iotdb.session.Session;
 import org.apache.iotdb.session.SessionConnection;
 import org.apache.iotdb.session.subscription.model.Subscription;
 import org.apache.iotdb.session.subscription.model.Topic;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
+
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.time.ZoneId;
 import java.util.HashSet;
diff --git a/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSessionDataSet.java b/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSessionDataSet.java
index 0e08d2f0db4..4eebd0e665c 100644
--- a/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSessionDataSet.java
+++ b/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSessionDataSet.java
@@ -20,13 +20,14 @@
 package org.apache.iotdb.session.subscription;
 
 import org.apache.iotdb.isession.ISessionDataSet;
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
+
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 
 import java.util.ArrayList;
 import java.util.Iterator;
diff --git a/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSessionDataSets.java b/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSessionDataSets.java
index 87633457cdc..f2c74de868a 100644
--- a/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSessionDataSets.java
+++ b/iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/SubscriptionSessionDataSets.java
@@ -19,7 +19,7 @@
 
 package org.apache.iotdb.session.subscription;
 
-import org.apache.iotdb.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.record.Tablet;
 
 import java.util.ArrayList;
 import java.util.Iterator;
diff --git a/iotdb-client/session/src/main/java/org/apache/iotdb/session/template/MeasurementNode.java b/iotdb-client/session/src/main/java/org/apache/iotdb/session/template/MeasurementNode.java
index 3ce23d62081..36d15c36e5d 100644
--- a/iotdb-client/session/src/main/java/org/apache/iotdb/session/template/MeasurementNode.java
+++ b/iotdb-client/session/src/main/java/org/apache/iotdb/session/template/MeasurementNode.java
@@ -20,10 +20,11 @@
 package org.apache.iotdb.session.template;
 
 import org.apache.iotdb.isession.template.TemplateNode;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
+
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
 
 import java.io.IOException;
 import java.io.OutputStream;
diff --git a/iotdb-client/session/src/main/java/org/apache/iotdb/session/util/SessionUtils.java b/iotdb-client/session/src/main/java/org/apache/iotdb/session/util/SessionUtils.java
index df133794854..89bf056791f 100644
--- a/iotdb-client/session/src/main/java/org/apache/iotdb/session/util/SessionUtils.java
+++ b/iotdb-client/session/src/main/java/org/apache/iotdb/session/util/SessionUtils.java
@@ -22,15 +22,16 @@ package org.apache.iotdb.session.util;
 import org.apache.iotdb.common.rpc.thrift.TEndPoint;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.UrlUtils;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.utils.BytesUtils;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
+
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.utils.BytesUtils;
+import org.apache.tsfile.utils.ReadWriteIOUtils;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
diff --git a/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionCacheLeaderTest.java b/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionCacheLeaderTest.java
index ef42f358283..69a45806079 100644
--- a/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionCacheLeaderTest.java
+++ b/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionCacheLeaderTest.java
@@ -31,10 +31,10 @@ import org.apache.iotdb.service.rpc.thrift.TSInsertStringRecordReq;
 import org.apache.iotdb.service.rpc.thrift.TSInsertStringRecordsReq;
 import org.apache.iotdb.service.rpc.thrift.TSInsertTabletReq;
 import org.apache.iotdb.service.rpc.thrift.TSInsertTabletsReq;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.Assert;
 import org.junit.Test;
 
diff --git a/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionTest.java b/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionTest.java
index 09e8f24ad31..aec44fe3430 100644
--- a/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionTest.java
+++ b/iotdb-client/session/src/test/java/org/apache/iotdb/session/SessionTest.java
@@ -27,15 +27,15 @@ import org.apache.iotdb.isession.util.Version;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.service.rpc.thrift.TSQueryTemplateResp;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
diff --git a/iotdb-client/session/src/test/java/org/apache/iotdb/session/TabletTest.java b/iotdb-client/session/src/test/java/org/apache/iotdb/session/TabletTest.java
index 31f335444e3..689ebab4684 100644
--- a/iotdb-client/session/src/test/java/org/apache/iotdb/session/TabletTest.java
+++ b/iotdb-client/session/src/test/java/org/apache/iotdb/session/TabletTest.java
@@ -19,11 +19,10 @@
 
 package org.apache.iotdb.session;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.Test;
 
 import java.util.ArrayList;
diff --git a/iotdb-client/session/src/test/java/org/apache/iotdb/session/pool/SessionPoolExceptionTest.java b/iotdb-client/session/src/test/java/org/apache/iotdb/session/pool/SessionPoolExceptionTest.java
index b2a0749ee5f..cfe1a3f5ce7 100644
--- a/iotdb-client/session/src/test/java/org/apache/iotdb/session/pool/SessionPoolExceptionTest.java
+++ b/iotdb-client/session/src/test/java/org/apache/iotdb/session/pool/SessionPoolExceptionTest.java
@@ -24,13 +24,13 @@ import org.apache.iotdb.isession.pool.ISessionPool;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.FixMethodOrder;
diff --git a/iotdb-client/session/src/test/java/org/apache/iotdb/session/pool/SessionPoolTest.java b/iotdb-client/session/src/test/java/org/apache/iotdb/session/pool/SessionPoolTest.java
index 6ffecc961c5..0ceea65d982 100644
--- a/iotdb-client/session/src/test/java/org/apache/iotdb/session/pool/SessionPoolTest.java
+++ b/iotdb-client/session/src/test/java/org/apache/iotdb/session/pool/SessionPoolTest.java
@@ -41,16 +41,16 @@ import org.apache.iotdb.service.rpc.thrift.TSFetchResultsResp;
 import org.apache.iotdb.session.Session;
 import org.apache.iotdb.session.template.InternalNode;
 import org.apache.iotdb.session.template.MeasurementNode;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.block.TsBlockBuilder;
-import org.apache.iotdb.tsfile.read.common.block.column.TsBlockSerde;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
 import org.apache.thrift.TException;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.block.TsBlockBuilder;
+import org.apache.tsfile.read.common.block.column.TsBlockSerde;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
diff --git a/iotdb-client/session/src/test/java/org/apache/iotdb/session/util/SessionUtilsTest.java b/iotdb-client/session/src/test/java/org/apache/iotdb/session/util/SessionUtilsTest.java
index bc678a42c38..7fb93e49a23 100644
--- a/iotdb-client/session/src/test/java/org/apache/iotdb/session/util/SessionUtilsTest.java
+++ b/iotdb-client/session/src/test/java/org/apache/iotdb/session/util/SessionUtilsTest.java
@@ -21,14 +21,14 @@ package org.apache.iotdb.session.util;
 
 import org.apache.iotdb.common.rpc.thrift.TEndPoint;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.junit.Assert;
 import org.junit.Test;
 
diff --git a/iotdb-connector/flink-iotdb-connector/pom.xml b/iotdb-connector/flink-iotdb-connector/pom.xml
index 90ff8b0bae3..84c742c342f 100644
--- a/iotdb-connector/flink-iotdb-connector/pom.xml
+++ b/iotdb-connector/flink-iotdb-connector/pom.xml
@@ -40,14 +40,14 @@
             <version>1.3.2-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
diff --git a/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/DefaultIoTSerializationSchema.java b/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/DefaultIoTSerializationSchema.java
index c522b0cb12e..77495198acd 100644
--- a/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/DefaultIoTSerializationSchema.java
+++ b/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/DefaultIoTSerializationSchema.java
@@ -18,7 +18,7 @@
 
 package org.apache.iotdb.flink;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
+import org.apache.tsfile.enums.TSDataType;
 
 import java.util.ArrayList;
 import java.util.Arrays;
diff --git a/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/Event.java b/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/Event.java
index bc71f2b1197..dc0298a5fa2 100644
--- a/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/Event.java
+++ b/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/Event.java
@@ -18,7 +18,7 @@
 
 package org.apache.iotdb.flink;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
+import org.apache.tsfile.enums.TSDataType;
 
 import java.util.List;
 
diff --git a/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/IoTDBSink.java b/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/IoTDBSink.java
index b215021541e..5986e8040b7 100644
--- a/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/IoTDBSink.java
+++ b/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/IoTDBSink.java
@@ -20,12 +20,12 @@ package org.apache.iotdb.flink;
 
 import org.apache.iotdb.flink.options.IoTDBSinkOptions;
 import org.apache.iotdb.session.pool.SessionPool;
-import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 
 import com.google.common.base.Preconditions;
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.streaming.api.functions.sink.RichSinkFunction;
+import org.apache.tsfile.common.constant.TsFileConstant;
+import org.apache.tsfile.enums.TSDataType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/IoTDBSource.java b/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/IoTDBSource.java
index 264317c9f7a..8c514303159 100644
--- a/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/IoTDBSource.java
+++ b/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/IoTDBSource.java
@@ -23,10 +23,10 @@ import org.apache.iotdb.isession.SessionDataSet;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.streaming.api.functions.source.RichSourceFunction;
+import org.apache.tsfile.read.common.RowRecord;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/options/IoTDBSinkOptions.java b/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/options/IoTDBSinkOptions.java
index 1a709b05cf7..c2a6917becf 100644
--- a/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/options/IoTDBSinkOptions.java
+++ b/iotdb-connector/flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/options/IoTDBSinkOptions.java
@@ -18,9 +18,9 @@
 
 package org.apache.iotdb.flink.options;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
 
 import java.io.Serializable;
 import java.util.List;
diff --git a/iotdb-connector/flink-sql-iotdb-connector/pom.xml b/iotdb-connector/flink-sql-iotdb-connector/pom.xml
index adcd2452bb1..3dd69a427d8 100644
--- a/iotdb-connector/flink-sql-iotdb-connector/pom.xml
+++ b/iotdb-connector/flink-sql-iotdb-connector/pom.xml
@@ -51,14 +51,14 @@
             <version>1.3.2-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
diff --git a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/client/IoTDBWebSocketClient.java b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/client/IoTDBWebSocketClient.java
index bec3171119f..d36994d27b9 100644
--- a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/client/IoTDBWebSocketClient.java
+++ b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/client/IoTDBWebSocketClient.java
@@ -21,8 +21,8 @@ package org.apache.iotdb.flink.sql.client;
 
 import org.apache.iotdb.flink.sql.function.IoTDBCDCSourceFunction;
 import org.apache.iotdb.flink.sql.wrapper.TabletWrapper;
-import org.apache.iotdb.tsfile.write.record.Tablet;
 
+import org.apache.tsfile.write.record.Tablet;
 import org.java_websocket.client.WebSocketClient;
 import org.java_websocket.handshake.ServerHandshake;
 import org.slf4j.Logger;
diff --git a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/common/Utils.java b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/common/Utils.java
index 03d1f33634e..e60e6824c7a 100644
--- a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/common/Utils.java
+++ b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/common/Utils.java
@@ -19,12 +19,6 @@
 package org.apache.iotdb.flink.sql.common;
 
 import org.apache.iotdb.flink.sql.exception.UnsupportedDataTypeException;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.exception.NullFieldException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.utils.Binary;
 
 import org.apache.flink.api.java.tuple.Tuple2;
 import org.apache.flink.table.api.DataTypes;
@@ -32,6 +26,12 @@ import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.data.StringData;
 import org.apache.flink.table.types.DataType;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.exception.NullFieldException;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.utils.Binary;
 
 import javax.annotation.Nullable;
 
diff --git a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBBoundedScanFunction.java b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBBoundedScanFunction.java
index d8a49e7e776..f5f181ca052 100644
--- a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBBoundedScanFunction.java
+++ b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBBoundedScanFunction.java
@@ -26,8 +26,6 @@ import org.apache.iotdb.isession.SessionDataSet;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 
 import org.apache.flink.api.common.io.DefaultInputSplitAssigner;
 import org.apache.flink.api.common.io.RichInputFormat;
@@ -40,6 +38,8 @@ import org.apache.flink.core.io.InputSplit;
 import org.apache.flink.core.io.InputSplitAssigner;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.types.DataType;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.util.Arrays;
 import java.util.List;
diff --git a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBCDCSourceFunction.java b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBCDCSourceFunction.java
index c05bbe5005c..c355171670f 100644
--- a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBCDCSourceFunction.java
+++ b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBCDCSourceFunction.java
@@ -28,12 +28,6 @@ import org.apache.iotdb.flink.sql.wrapper.SchemaWrapper;
 import org.apache.iotdb.flink.sql.wrapper.TabletWrapper;
 import org.apache.iotdb.isession.SessionDataSet;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.utils.BitMap;
-import org.apache.iotdb.tsfile.utils.Pair;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
 
 import org.apache.flink.api.java.tuple.Tuple2;
 import org.apache.flink.configuration.Configuration;
@@ -42,6 +36,12 @@ import org.apache.flink.streaming.api.functions.source.RichSourceFunction;
 import org.apache.flink.table.data.GenericRowData;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.types.DataType;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.utils.BitMap;
+import org.apache.tsfile.utils.Pair;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 import org.java_websocket.client.WebSocketClient;
 import org.java_websocket.enums.ReadyState;
 import org.slf4j.Logger;
diff --git a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBLookupFunction.java b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBLookupFunction.java
index 1c9afa6c3e8..20538465245 100644
--- a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBLookupFunction.java
+++ b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBLookupFunction.java
@@ -26,9 +26,6 @@ import org.apache.iotdb.isession.SessionDataSet;
 import org.apache.iotdb.rpc.IoTDBConnectionException;
 import org.apache.iotdb.rpc.StatementExecutionException;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
 
 import com.google.common.cache.Cache;
 import com.google.common.cache.CacheBuilder;
@@ -39,6 +36,9 @@ import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.functions.FunctionContext;
 import org.apache.flink.table.functions.TableFunction;
 import org.apache.flink.table.types.DataType;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.util.ArrayList;
 import java.util.Arrays;
diff --git a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBSinkFunction.java b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBSinkFunction.java
index ac9054669c9..f32729d45da 100644
--- a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBSinkFunction.java
+++ b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/function/IoTDBSinkFunction.java
@@ -25,7 +25,6 @@ import org.apache.iotdb.flink.sql.common.Utils;
 import org.apache.iotdb.flink.sql.exception.IllegalIoTDBPathException;
 import org.apache.iotdb.flink.sql.wrapper.SchemaWrapper;
 import org.apache.iotdb.session.Session;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.flink.api.java.tuple.Tuple2;
@@ -35,6 +34,7 @@ import org.apache.flink.table.api.DataTypes;
 import org.apache.flink.table.data.RowData;
 import org.apache.flink.table.types.DataType;
 import org.apache.flink.types.RowKind;
+import org.apache.tsfile.enums.TSDataType;
 
 import java.util.ArrayList;
 import java.util.Arrays;
diff --git a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/wrapper/TabletWrapper.java b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/wrapper/TabletWrapper.java
index 4ef08386695..eabce700e14 100644
--- a/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/wrapper/TabletWrapper.java
+++ b/iotdb-connector/flink-sql-iotdb-connector/src/main/java/org/apache/iotdb/flink/sql/wrapper/TabletWrapper.java
@@ -19,7 +19,8 @@
 package org.apache.iotdb.flink.sql.wrapper;
 
 import org.apache.iotdb.flink.sql.client.IoTDBWebSocketClient;
-import org.apache.iotdb.tsfile.write.record.Tablet;
+
+import org.apache.tsfile.write.record.Tablet;
 
 public class TabletWrapper {
   private final long commitId;
diff --git a/iotdb-connector/flink-tsfile-connector/pom.xml b/iotdb-connector/flink-tsfile-connector/pom.xml
index 6c68fe5f537..572fea7240e 100644
--- a/iotdb-connector/flink-tsfile-connector/pom.xml
+++ b/iotdb-connector/flink-tsfile-connector/pom.xml
@@ -30,14 +30,14 @@
     <name>IoTDB: Connector: Apache Flink TSFile</name>
     <dependencies>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
             <exclusions>
                 <!--
                     We need the flink-shaded-zookeeper-3 dependency for some shaded classes.
diff --git a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowRecordParser.java b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowRecordParser.java
index 70ffba3a3b9..8dcdc0b8f61 100644
--- a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowRecordParser.java
+++ b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowRecordParser.java
@@ -19,9 +19,8 @@
 
 package org.apache.iotdb.flink.tsfile;
 
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-
 import org.apache.flink.api.java.typeutils.ResultTypeQueryable;
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.io.Serializable;
 
diff --git a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowRowRecordParser.java b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowRowRecordParser.java
index 67d60e20278..a6910b0963e 100644
--- a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowRowRecordParser.java
+++ b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowRowRecordParser.java
@@ -19,15 +19,14 @@
 
 package org.apache.iotdb.flink.tsfile;
 
-import org.apache.iotdb.tsfile.common.constant.QueryConstant;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-
 import org.apache.flink.api.common.typeinfo.TypeInformation;
 import org.apache.flink.api.java.typeutils.ResultTypeQueryable;
 import org.apache.flink.api.java.typeutils.RowTypeInfo;
 import org.apache.flink.types.Row;
+import org.apache.tsfile.common.constant.QueryConstant;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.read.common.RowRecord;
 
 import java.util.List;
 import java.util.stream.Collectors;
diff --git a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowTSRecordConverter.java b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowTSRecordConverter.java
index 6420c2bfce7..bf60a283b04 100644
--- a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowTSRecordConverter.java
+++ b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/RowTSRecordConverter.java
@@ -19,23 +19,22 @@
 
 package org.apache.iotdb.flink.tsfile;
 
-import org.apache.iotdb.tsfile.common.constant.QueryConstant;
-import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.utils.BytesUtils;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.BooleanDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.DoubleDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.FloatDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.IntDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.LongDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.StringDataPoint;
-import org.apache.iotdb.tsfile.write.schema.Schema;
-
 import org.apache.flink.api.java.typeutils.RowTypeInfo;
 import org.apache.flink.types.Row;
 import org.apache.flink.util.Collector;
+import org.apache.tsfile.common.constant.QueryConstant;
+import org.apache.tsfile.common.constant.TsFileConstant;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.utils.BytesUtils;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.record.datapoint.BooleanDataPoint;
+import org.apache.tsfile.write.record.datapoint.DataPoint;
+import org.apache.tsfile.write.record.datapoint.DoubleDataPoint;
+import org.apache.tsfile.write.record.datapoint.FloatDataPoint;
+import org.apache.tsfile.write.record.datapoint.IntDataPoint;
+import org.apache.tsfile.write.record.datapoint.LongDataPoint;
+import org.apache.tsfile.write.record.datapoint.StringDataPoint;
+import org.apache.tsfile.write.schema.Schema;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TSRecordConverter.java b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TSRecordConverter.java
index 8ca33fdf8b2..564d381447f 100644
--- a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TSRecordConverter.java
+++ b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TSRecordConverter.java
@@ -19,10 +19,9 @@
 
 package org.apache.iotdb.flink.tsfile;
 
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.schema.Schema;
-
 import org.apache.flink.util.Collector;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.schema.Schema;
 
 import java.io.Serializable;
 
diff --git a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TSRecordOutputFormat.java b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TSRecordOutputFormat.java
index c64b04549c3..b2070a3ccde 100644
--- a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TSRecordOutputFormat.java
+++ b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TSRecordOutputFormat.java
@@ -19,13 +19,12 @@
 
 package org.apache.iotdb.flink.tsfile;
 
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.schema.Schema;
-
 import org.apache.flink.util.Collector;
 import org.apache.flink.util.FlinkRuntimeException;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.exception.write.WriteProcessException;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.schema.Schema;
 
 import java.io.IOException;
 
diff --git a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TsFileInputFormat.java b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TsFileInputFormat.java
index 47e97aa0a1d..d7c87e2ce26 100644
--- a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TsFileInputFormat.java
+++ b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TsFileInputFormat.java
@@ -21,14 +21,6 @@ package org.apache.iotdb.flink.tsfile;
 
 import org.apache.iotdb.flink.tsfile.util.TSFileConfigUtil;
 import org.apache.iotdb.hadoop.fileSystem.HDFSInput;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.read.TsFileReader;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.read.expression.QueryExpression;
-import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet;
-import org.apache.iotdb.tsfile.read.reader.LocalTsFileInput;
-import org.apache.iotdb.tsfile.read.reader.TsFileInput;
 
 import org.apache.flink.api.common.io.FileInputFormat;
 import org.apache.flink.api.common.typeinfo.TypeInformation;
@@ -39,6 +31,14 @@ import org.apache.flink.core.fs.FileInputSplit;
 import org.apache.flink.core.fs.Path;
 import org.apache.flink.runtime.util.HadoopUtils;
 import org.apache.flink.util.FlinkRuntimeException;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.read.TsFileReader;
+import org.apache.tsfile.read.TsFileSequenceReader;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.read.expression.QueryExpression;
+import org.apache.tsfile.read.query.dataset.QueryDataSet;
+import org.apache.tsfile.read.reader.LocalTsFileInput;
+import org.apache.tsfile.read.reader.TsFileInput;
 
 import javax.annotation.Nullable;
 
diff --git a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TsFileOutputFormat.java b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TsFileOutputFormat.java
index 106e0ef7c39..a9597ae2a86 100644
--- a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TsFileOutputFormat.java
+++ b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/TsFileOutputFormat.java
@@ -21,17 +21,17 @@ package org.apache.iotdb.flink.tsfile;
 
 import org.apache.iotdb.flink.tsfile.util.TSFileConfigUtil;
 import org.apache.iotdb.hadoop.fileSystem.HDFSOutput;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.schema.Schema;
-import org.apache.iotdb.tsfile.write.writer.LocalTsFileOutput;
-import org.apache.iotdb.tsfile.write.writer.TsFileOutput;
 
 import org.apache.flink.api.common.io.FileOutputFormat;
 import org.apache.flink.core.fs.Path;
 import org.apache.flink.runtime.util.HadoopUtils;
 import org.apache.flink.util.Preconditions;
 import org.apache.hadoop.conf.Configuration;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.schema.Schema;
+import org.apache.tsfile.write.writer.LocalTsFileOutput;
+import org.apache.tsfile.write.writer.TsFileOutput;
 
 import javax.annotation.Nullable;
 
diff --git a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/util/TSFileConfigUtil.java b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/util/TSFileConfigUtil.java
index e147390dd9a..535ff744a62 100644
--- a/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/util/TSFileConfigUtil.java
+++ b/iotdb-connector/flink-tsfile-connector/src/main/java/org/apache/iotdb/flink/tsfile/util/TSFileConfigUtil.java
@@ -19,8 +19,8 @@
 
 package org.apache.iotdb.flink.tsfile.util;
 
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.common.conf.TSFileDescriptor;
 
 /** Utils of setting global TSFileConfig. */
 public class TSFileConfigUtil {
diff --git a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileConnectorTestBase.java b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileConnectorTestBase.java
index 51403372c23..e7aef2a7a61 100644
--- a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileConnectorTestBase.java
+++ b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileConnectorTestBase.java
@@ -20,14 +20,14 @@
 package org.apache.iotdb.flink.tsfile;
 
 import org.apache.iotdb.flink.util.TsFileWriteUtil;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.common.constant.QueryConstant;
-import org.apache.iotdb.tsfile.read.common.Path;
 
 import org.apache.flink.api.common.typeinfo.TypeInformation;
 import org.apache.flink.api.common.typeinfo.Types;
 import org.apache.flink.api.java.typeutils.RowTypeInfo;
 import org.apache.flink.util.FileUtils;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.common.constant.QueryConstant;
+import org.apache.tsfile.read.common.Path;
 import org.junit.After;
 import org.junit.Before;
 
diff --git a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileInputFormatTest.java b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileInputFormatTest.java
index 91a01267b88..4eed08a2da6 100644
--- a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileInputFormatTest.java
+++ b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileInputFormatTest.java
@@ -19,12 +19,11 @@
 
 package org.apache.iotdb.flink.tsfile;
 
-import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
-
 import org.apache.flink.api.common.ExecutionConfig;
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.core.fs.FileInputSplit;
 import org.apache.flink.types.Row;
+import org.apache.tsfile.common.conf.TSFileDescriptor;
 import org.junit.Test;
 
 import java.io.IOException;
diff --git a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileInputFormatTestBase.java b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileInputFormatTestBase.java
index 0b7ce8391e4..ca44ae8accc 100644
--- a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileInputFormatTestBase.java
+++ b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileInputFormatTestBase.java
@@ -20,9 +20,9 @@
 package org.apache.iotdb.flink.tsfile;
 
 import org.apache.iotdb.flink.util.TsFileWriteUtil;
-import org.apache.iotdb.tsfile.read.expression.QueryExpression;
 
 import org.apache.flink.types.Row;
+import org.apache.tsfile.read.expression.QueryExpression;
 import org.junit.Before;
 
 import java.io.File;
diff --git a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileOutputFormatTestBase.java b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileOutputFormatTestBase.java
index a35b7f3c557..c2b31d4476f 100644
--- a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileOutputFormatTestBase.java
+++ b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/tsfile/RowTsFileOutputFormatTestBase.java
@@ -19,21 +19,20 @@
 
 package org.apache.iotdb.flink.tsfile;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.TsFileReader;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.read.expression.QueryExpression;
-import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.Schema;
-
 import org.apache.flink.api.java.DataSet;
 import org.apache.flink.api.java.ExecutionEnvironment;
 import org.apache.flink.api.java.tuple.Tuple7;
 import org.apache.flink.types.Row;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.TsFileReader;
+import org.apache.tsfile.read.TsFileSequenceReader;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.read.expression.QueryExpression;
+import org.apache.tsfile.read.query.dataset.QueryDataSet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.schema.Schema;
 import org.junit.Before;
 
 import java.io.IOException;
diff --git a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/util/TSFileConfigUtilCompletenessTest.java b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/util/TSFileConfigUtilCompletenessTest.java
index 5189faf6506..738fd67eb6f 100644
--- a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/util/TSFileConfigUtilCompletenessTest.java
+++ b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/util/TSFileConfigUtilCompletenessTest.java
@@ -19,8 +19,7 @@
 
 package org.apache.iotdb.flink.util;
 
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-
+import org.apache.tsfile.common.conf.TSFileConfig;
 import org.junit.Test;
 
 import java.lang.reflect.Method;
diff --git a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/util/TsFileWriteUtil.java b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/util/TsFileWriteUtil.java
index c38ade45ed6..adc03d8e0eb 100644
--- a/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/util/TsFileWriteUtil.java
+++ b/iotdb-connector/flink-tsfile-connector/src/test/java/org/apache/iotdb/flink/util/TsFileWriteUtil.java
@@ -19,15 +19,15 @@
 
 package org.apache.iotdb.flink.util;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.FloatDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.IntDataPoint;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.Schema;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.record.datapoint.DataPoint;
+import org.apache.tsfile.write.record.datapoint.FloatDataPoint;
+import org.apache.tsfile.write.record.datapoint.IntDataPoint;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.schema.Schema;
 
 import java.io.File;
 
diff --git a/iotdb-connector/grafana-connector/pom.xml b/iotdb-connector/grafana-connector/pom.xml
index 1a53619c06f..8d8bf709c30 100644
--- a/iotdb-connector/grafana-connector/pom.xml
+++ b/iotdb-connector/grafana-connector/pom.xml
@@ -38,9 +38,9 @@
     </properties>
     <dependencies>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
diff --git a/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/controller/DatabaseConnectController.java b/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/controller/DatabaseConnectController.java
index 06f37295bb1..01ccb564b81 100644
--- a/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/controller/DatabaseConnectController.java
+++ b/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/controller/DatabaseConnectController.java
@@ -18,7 +18,6 @@
  */
 package org.apache.iotdb.web.grafana.controller;
 
-import org.apache.iotdb.tsfile.utils.Pair;
 import org.apache.iotdb.web.grafana.bean.TimeValues;
 import org.apache.iotdb.web.grafana.service.DatabaseConnectService;
 
@@ -26,6 +25,7 @@ import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.google.gson.JsonArray;
 import com.google.gson.JsonObject;
+import org.apache.tsfile.utils.Pair;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
diff --git a/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/dao/BasicDao.java b/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/dao/BasicDao.java
index b24e536b1a8..077bb50e8cd 100644
--- a/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/dao/BasicDao.java
+++ b/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/dao/BasicDao.java
@@ -18,9 +18,10 @@
  */
 package org.apache.iotdb.web.grafana.dao;
 
-import org.apache.iotdb.tsfile.utils.Pair;
 import org.apache.iotdb.web.grafana.bean.TimeValues;
 
+import org.apache.tsfile.utils.Pair;
+
 import java.time.ZonedDateTime;
 import java.util.List;
 
diff --git a/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/dao/impl/BasicDaoImpl.java b/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/dao/impl/BasicDaoImpl.java
index 587b5a8bd1c..851ce9d2181 100644
--- a/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/dao/impl/BasicDaoImpl.java
+++ b/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/dao/impl/BasicDaoImpl.java
@@ -18,10 +18,10 @@
  */
 package org.apache.iotdb.web.grafana.dao.impl;
 
-import org.apache.iotdb.tsfile.utils.Pair;
 import org.apache.iotdb.web.grafana.bean.TimeValues;
 import org.apache.iotdb.web.grafana.dao.BasicDao;
 
+import org.apache.tsfile.utils.Pair;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
diff --git a/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/service/DatabaseConnectService.java b/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/service/DatabaseConnectService.java
index 8244b4338b4..1c189913383 100644
--- a/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/service/DatabaseConnectService.java
+++ b/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/service/DatabaseConnectService.java
@@ -18,9 +18,10 @@
  */
 package org.apache.iotdb.web.grafana.service;
 
-import org.apache.iotdb.tsfile.utils.Pair;
 import org.apache.iotdb.web.grafana.bean.TimeValues;
 
+import org.apache.tsfile.utils.Pair;
+
 import java.time.ZonedDateTime;
 import java.util.List;
 
diff --git a/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/service/impl/DatabaseConnectServiceImpl.java b/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/service/impl/DatabaseConnectServiceImpl.java
index 31ccf7edfb7..6d7af5ddd9e 100644
--- a/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/service/impl/DatabaseConnectServiceImpl.java
+++ b/iotdb-connector/grafana-connector/src/main/java/org/apache/iotdb/web/grafana/service/impl/DatabaseConnectServiceImpl.java
@@ -18,11 +18,11 @@
  */
 package org.apache.iotdb.web.grafana.service.impl;
 
-import org.apache.iotdb.tsfile.utils.Pair;
 import org.apache.iotdb.web.grafana.bean.TimeValues;
 import org.apache.iotdb.web.grafana.dao.BasicDao;
 import org.apache.iotdb.web.grafana.service.DatabaseConnectService;
 
+import org.apache.tsfile.utils.Pair;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
diff --git a/iotdb-connector/hadoop/pom.xml b/iotdb-connector/hadoop/pom.xml
index 0123aa200ee..19a14c8442a 100644
--- a/iotdb-connector/hadoop/pom.xml
+++ b/iotdb-connector/hadoop/pom.xml
@@ -35,14 +35,14 @@
     </properties>
     <dependencies>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
diff --git a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSConfUtil.java b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSConfUtil.java
index 2907efdb2d2..b3c945f0474 100644
--- a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSConfUtil.java
+++ b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSConfUtil.java
@@ -19,13 +19,12 @@
 
 package org.apache.iotdb.hadoop.fileSystem;
 
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
-import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
-import org.apache.iotdb.tsfile.fileSystem.FSType;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.security.UserGroupInformation;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.common.conf.TSFileDescriptor;
+import org.apache.tsfile.common.constant.TsFileConstant;
+import org.apache.tsfile.fileSystem.FSType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSInput.java b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSInput.java
index 5c0940d495f..c0dc363c1a3 100644
--- a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSInput.java
+++ b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSInput.java
@@ -18,13 +18,12 @@
  */
 package org.apache.iotdb.hadoop.fileSystem;
 
-import org.apache.iotdb.tsfile.read.reader.TsFileInput;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.ChecksumFileSystem;
 import org.apache.hadoop.fs.FSDataInputStream;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
+import org.apache.tsfile.read.reader.TsFileInput;
 
 import java.io.IOException;
 import java.io.InputStream;
diff --git a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSOutput.java b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSOutput.java
index aea0f72d792..f8cd28709ac 100644
--- a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSOutput.java
+++ b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/fileSystem/HDFSOutput.java
@@ -18,12 +18,11 @@
  */
 package org.apache.iotdb.hadoop.fileSystem;
 
-import org.apache.iotdb.tsfile.write.writer.TsFileOutput;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FSDataOutputStream;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
+import org.apache.tsfile.write.writer.TsFileOutput;
 
 import java.io.IOException;
 import java.io.OutputStream;
diff --git a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/IReaderSet.java b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/IReaderSet.java
index 5c7abae7704..90738cbb5a2 100644
--- a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/IReaderSet.java
+++ b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/IReaderSet.java
@@ -18,7 +18,7 @@
  */
 package org.apache.iotdb.hadoop.tsfile;
 
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
+import org.apache.tsfile.read.TsFileSequenceReader;
 
 import java.util.List;
 
diff --git a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFInputFormat.java b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFInputFormat.java
index 9ca11412511..f38cc084e00 100644
--- a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFInputFormat.java
+++ b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFInputFormat.java
@@ -41,7 +41,7 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.stream.Collectors;
 
-import static org.apache.iotdb.tsfile.common.constant.TsFileConstant.TSFILE_SUFFIX;
+import static org.apache.tsfile.common.constant.TsFileConstant.TSFILE_SUFFIX;
 
 public class TSFInputFormat extends FileInputFormat<NullWritable, MapWritable> {
 
diff --git a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFOutputFormat.java b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFOutputFormat.java
index dabe710d041..88aa8188f92 100644
--- a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFOutputFormat.java
+++ b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFOutputFormat.java
@@ -19,13 +19,13 @@
 package org.apache.iotdb.hadoop.tsfile;
 
 import org.apache.iotdb.hadoop.tsfile.record.HDFSTSRecord;
-import org.apache.iotdb.tsfile.write.schema.Schema;
 
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.NullWritable;
 import org.apache.hadoop.mapreduce.RecordWriter;
 import org.apache.hadoop.mapreduce.TaskAttemptContext;
 import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFRecordReader.java b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFRecordReader.java
index ceaa96b89a8..49bcf86455c 100644
--- a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFRecordReader.java
+++ b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFRecordReader.java
@@ -19,14 +19,6 @@
 package org.apache.iotdb.hadoop.tsfile;
 
 import org.apache.iotdb.hadoop.fileSystem.HDFSInput;
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
-import org.apache.iotdb.tsfile.read.TsFileReader;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.read.expression.QueryExpression;
-import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.io.BooleanWritable;
@@ -40,6 +32,14 @@ import org.apache.hadoop.io.Text;
 import org.apache.hadoop.mapreduce.InputSplit;
 import org.apache.hadoop.mapreduce.RecordReader;
 import org.apache.hadoop.mapreduce.TaskAttemptContext;
+import org.apache.tsfile.common.conf.TSFileConfig;
+import org.apache.tsfile.read.TsFileReader;
+import org.apache.tsfile.read.TsFileSequenceReader;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.read.expression.QueryExpression;
+import org.apache.tsfile.read.query.dataset.QueryDataSet;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFRecordWriter.java b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFRecordWriter.java
index 1be665911ee..356f57ac291 100644
--- a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFRecordWriter.java
+++ b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/TSFRecordWriter.java
@@ -20,14 +20,14 @@ package org.apache.iotdb.hadoop.tsfile;
 
 import org.apache.iotdb.hadoop.fileSystem.HDFSOutput;
 import org.apache.iotdb.hadoop.tsfile.record.HDFSTSRecord;
-import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.schema.Schema;
 
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.NullWritable;
 import org.apache.hadoop.mapreduce.RecordWriter;
 import org.apache.hadoop.mapreduce.TaskAttemptContext;
+import org.apache.tsfile.exception.write.WriteProcessException;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/record/HDFSTSRecord.java b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/record/HDFSTSRecord.java
index 9cdcef080b1..3682f0cc89b 100644
--- a/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/record/HDFSTSRecord.java
+++ b/iotdb-connector/hadoop/src/main/java/org/apache/iotdb/hadoop/tsfile/record/HDFSTSRecord.java
@@ -18,20 +18,19 @@
  */
 package org.apache.iotdb.hadoop.tsfile.record;
 
-import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.utils.StringContainer;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.BooleanDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.DoubleDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.FloatDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.IntDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.LongDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.StringDataPoint;
-
 import org.apache.hadoop.io.Writable;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.exception.write.UnSupportedDataTypeException;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.utils.StringContainer;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.record.datapoint.BooleanDataPoint;
+import org.apache.tsfile.write.record.datapoint.DataPoint;
+import org.apache.tsfile.write.record.datapoint.DoubleDataPoint;
+import org.apache.tsfile.write.record.datapoint.FloatDataPoint;
+import org.apache.tsfile.write.record.datapoint.IntDataPoint;
+import org.apache.tsfile.write.record.datapoint.LongDataPoint;
+import org.apache.tsfile.write.record.datapoint.StringDataPoint;
 
 import java.io.DataInput;
 import java.io.DataOutput;
diff --git a/iotdb-connector/hadoop/src/test/java/org/apache/iotdb/hadoop/tsfile/TSFHadoopTest.java b/iotdb-connector/hadoop/src/test/java/org/apache/iotdb/hadoop/tsfile/TSFHadoopTest.java
index 3307ec01bc9..88040febff2 100644
--- a/iotdb-connector/hadoop/src/test/java/org/apache/iotdb/hadoop/tsfile/TSFHadoopTest.java
+++ b/iotdb-connector/hadoop/src/test/java/org/apache/iotdb/hadoop/tsfile/TSFHadoopTest.java
@@ -20,9 +20,6 @@ package org.apache.iotdb.hadoop.tsfile;
 
 import org.apache.iotdb.hadoop.fileSystem.HDFSInput;
 import org.apache.iotdb.hadoop.tsfile.constant.TestConstant;
-import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
-import org.apache.iotdb.tsfile.fileSystem.FSType;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
 
 import org.apache.hadoop.io.BooleanWritable;
 import org.apache.hadoop.io.DoubleWritable;
@@ -35,6 +32,9 @@ import org.apache.hadoop.mapreduce.InputSplit;
 import org.apache.hadoop.mapreduce.Job;
 import org.apache.hadoop.mapreduce.TaskAttemptID;
 import org.apache.hadoop.mapreduce.task.TaskAttemptContextImpl;
+import org.apache.tsfile.common.conf.TSFileDescriptor;
+import org.apache.tsfile.fileSystem.FSType;
+import org.apache.tsfile.read.TsFileSequenceReader;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/iotdb-connector/hadoop/src/test/java/org/apache/iotdb/hadoop/tsfile/TsFileTestHelper.java b/iotdb-connector/hadoop/src/test/java/org/apache/iotdb/hadoop/tsfile/TsFileTestHelper.java
index 4f280874d6d..3e80c361523 100644
--- a/iotdb-connector/hadoop/src/test/java/org/apache/iotdb/hadoop/tsfile/TsFileTestHelper.java
+++ b/iotdb-connector/hadoop/src/test/java/org/apache/iotdb/hadoop/tsfile/TsFileTestHelper.java
@@ -18,15 +18,14 @@
  */
 package org.apache.iotdb.hadoop.tsfile;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.Schema;
-
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.TsFileSequenceReader;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/hive-connector/pom.xml b/iotdb-connector/hive-connector/pom.xml
index 55b7405d214..28fba4a72d3 100644
--- a/iotdb-connector/hive-connector/pom.xml
+++ b/iotdb-connector/hive-connector/pom.xml
@@ -39,15 +39,15 @@
             <version>1.3.2-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
diff --git a/iotdb-connector/hive-connector/src/main/java/org/apache/iotdb/hive/TSFHiveRecordReader.java b/iotdb-connector/hive-connector/src/main/java/org/apache/iotdb/hive/TSFHiveRecordReader.java
index 84479074e58..b99869bce90 100644
--- a/iotdb-connector/hive-connector/src/main/java/org/apache/iotdb/hive/TSFHiveRecordReader.java
+++ b/iotdb-connector/hive-connector/src/main/java/org/apache/iotdb/hive/TSFHiveRecordReader.java
@@ -21,10 +21,6 @@ package org.apache.iotdb.hive;
 import org.apache.iotdb.hadoop.tsfile.IReaderSet;
 import org.apache.iotdb.hadoop.tsfile.TSFInputSplit;
 import org.apache.iotdb.hadoop.tsfile.TSFRecordReader;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.read.common.Field;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet;
 
 import org.apache.hadoop.io.MapWritable;
 import org.apache.hadoop.io.NullWritable;
@@ -32,6 +28,10 @@ import org.apache.hadoop.io.Text;
 import org.apache.hadoop.mapred.InputSplit;
 import org.apache.hadoop.mapred.JobConf;
 import org.apache.hadoop.mapred.RecordReader;
+import org.apache.tsfile.read.TsFileSequenceReader;
+import org.apache.tsfile.read.common.Field;
+import org.apache.tsfile.read.common.RowRecord;
+import org.apache.tsfile.read.query.dataset.QueryDataSet;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/hive-connector/src/main/java/org/apache/iotdb/hive/TSFHiveRecordWriter.java b/iotdb-connector/hive-connector/src/main/java/org/apache/iotdb/hive/TSFHiveRecordWriter.java
index d3b58de9e03..86f6ae85d15 100644
--- a/iotdb-connector/hive-connector/src/main/java/org/apache/iotdb/hive/TSFHiveRecordWriter.java
+++ b/iotdb-connector/hive-connector/src/main/java/org/apache/iotdb/hive/TSFHiveRecordWriter.java
@@ -20,14 +20,14 @@ package org.apache.iotdb.hive;
 
 import org.apache.iotdb.hadoop.fileSystem.HDFSOutput;
 import org.apache.iotdb.hadoop.tsfile.record.HDFSTSRecord;
-import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.schema.Schema;
 
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.hive.ql.exec.FileSinkOperator;
 import org.apache.hadoop.io.Writable;
 import org.apache.hadoop.mapred.JobConf;
+import org.apache.tsfile.exception.write.WriteProcessException;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TSFHiveInputFormatTest.java b/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TSFHiveInputFormatTest.java
index 031a1b5b8a1..596af693d21 100644
--- a/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TSFHiveInputFormatTest.java
+++ b/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TSFHiveInputFormatTest.java
@@ -20,8 +20,6 @@ package org.apache.iotdb.hive;
 
 import org.apache.iotdb.hadoop.tsfile.TSFInputSplit;
 import org.apache.iotdb.hive.constant.TestConstant;
-import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
-import org.apache.iotdb.tsfile.fileSystem.FSType;
 
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.MapWritable;
@@ -30,6 +28,8 @@ import org.apache.hadoop.mapred.InputSplit;
 import org.apache.hadoop.mapred.JobConf;
 import org.apache.hadoop.mapred.RecordReader;
 import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
+import org.apache.tsfile.common.conf.TSFileDescriptor;
+import org.apache.tsfile.fileSystem.FSType;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TSFHiveRecordReaderTest.java b/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TSFHiveRecordReaderTest.java
index 92c20e2c62e..77f25f4f0f8 100644
--- a/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TSFHiveRecordReaderTest.java
+++ b/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TSFHiveRecordReaderTest.java
@@ -20,8 +20,6 @@ package org.apache.iotdb.hive;
 
 import org.apache.iotdb.hadoop.tsfile.TSFInputSplit;
 import org.apache.iotdb.hive.constant.TestConstant;
-import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
-import org.apache.iotdb.tsfile.fileSystem.FSType;
 
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.LongWritable;
@@ -29,6 +27,8 @@ import org.apache.hadoop.io.MapWritable;
 import org.apache.hadoop.io.NullWritable;
 import org.apache.hadoop.io.Text;
 import org.apache.hadoop.mapred.JobConf;
+import org.apache.tsfile.common.conf.TSFileDescriptor;
+import org.apache.tsfile.fileSystem.FSType;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TsFileTestHelper.java b/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TsFileTestHelper.java
index d74c2680a11..ccd8747fbcc 100644
--- a/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TsFileTestHelper.java
+++ b/iotdb-connector/hive-connector/src/test/java/org/apache/iotdb/hive/TsFileTestHelper.java
@@ -18,16 +18,15 @@
  */
 package org.apache.iotdb.hive;
 
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.Tablet;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.Schema;
-
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.CompressionType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.TsFileSequenceReader;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.Tablet;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/spark-iotdb-connector/pom.xml b/iotdb-connector/spark-iotdb-connector/pom.xml
index d9fec137edb..412f6e26eb1 100644
--- a/iotdb-connector/spark-iotdb-connector/pom.xml
+++ b/iotdb-connector/spark-iotdb-connector/pom.xml
@@ -54,9 +54,9 @@
             <version>1.3.2-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
diff --git a/iotdb-connector/spark-iotdb-connector/src/main/scala/org/apache/iotdb/spark/db/DataFrameTools.scala b/iotdb-connector/spark-iotdb-connector/src/main/scala/org/apache/iotdb/spark/db/DataFrameTools.scala
index f77e828c539..38a3316a05c 100644
--- a/iotdb-connector/spark-iotdb-connector/src/main/scala/org/apache/iotdb/spark/db/DataFrameTools.scala
+++ b/iotdb-connector/spark-iotdb-connector/src/main/scala/org/apache/iotdb/spark/db/DataFrameTools.scala
@@ -20,8 +20,8 @@
 package org.apache.iotdb.spark.db
 
 import org.apache.iotdb.session.Session
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType.{BOOLEAN, DOUBLE, FLOAT, INT32, INT64, TEXT}
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType
+import org.apache.tsfile.enums.TSDataType.{BOOLEAN, DOUBLE, FLOAT, INT32, INT64, TEXT}
+import org.apache.tsfile.enums.TSDataType
 import org.apache.spark.sql.{DataFrame, Row}
 
 import java.util
diff --git a/iotdb-connector/spark-tsfile/pom.xml b/iotdb-connector/spark-tsfile/pom.xml
index 2ff7b904258..3a8094c1c6d 100644
--- a/iotdb-connector/spark-tsfile/pom.xml
+++ b/iotdb-connector/spark-tsfile/pom.xml
@@ -30,14 +30,14 @@
     <name>IoTDB: Connector: Apache Spark TSFile</name>
     <dependencies>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
diff --git a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/io/TsFileOutputFormat.java b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/io/TsFileOutputFormat.java
index 28113a8dce5..ce5f534fb9b 100644
--- a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/io/TsFileOutputFormat.java
+++ b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/io/TsFileOutputFormat.java
@@ -18,14 +18,13 @@
  */
 package org.apache.iotdb.spark.tsfile.io;
 
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.schema.Schema;
-
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.NullWritable;
 import org.apache.hadoop.mapreduce.RecordWriter;
 import org.apache.hadoop.mapreduce.TaskAttemptContext;
 import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.schema.Schema;
 
 import java.io.IOException;
 
diff --git a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/io/TsFileRecordWriter.java b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/io/TsFileRecordWriter.java
index 6c20b0e12b4..69ee90d095c 100644
--- a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/io/TsFileRecordWriter.java
+++ b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/io/TsFileRecordWriter.java
@@ -19,15 +19,15 @@
 package org.apache.iotdb.spark.tsfile.io;
 
 import org.apache.iotdb.hadoop.fileSystem.HDFSOutput;
-import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.schema.Schema;
 
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.NullWritable;
 import org.apache.hadoop.mapreduce.RecordWriter;
 import org.apache.hadoop.mapreduce.TaskAttemptContext;
+import org.apache.tsfile.exception.write.WriteProcessException;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.schema.Schema;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/Executor.java b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/Executor.java
index e61ef03d341..6643630ebf3 100755
--- a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/Executor.java
+++ b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/Executor.java
@@ -18,10 +18,9 @@
  */
 package org.apache.iotdb.spark.tsfile.qp;
 
-import org.apache.iotdb.tsfile.read.TsFileReader;
-import org.apache.iotdb.tsfile.read.expression.QueryExpression;
-import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet;
-
+import org.apache.tsfile.read.TsFileReader;
+import org.apache.tsfile.read.expression.QueryExpression;
+import org.apache.tsfile.read.query.dataset.QueryDataSet;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/QueryProcessor.java b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/QueryProcessor.java
index c9f7ba67f45..666deadb2c0 100755
--- a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/QueryProcessor.java
+++ b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/QueryProcessor.java
@@ -28,7 +28,8 @@ import org.apache.iotdb.spark.tsfile.qp.optimizer.DNFFilterOptimizer;
 import org.apache.iotdb.spark.tsfile.qp.optimizer.MergeSingleFilterOptimizer;
 import org.apache.iotdb.spark.tsfile.qp.optimizer.PhysicalOptimizer;
 import org.apache.iotdb.spark.tsfile.qp.optimizer.RemoveNotOptimizer;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
+
+import org.apache.tsfile.read.TsFileSequenceReader;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/common/FilterOperator.java b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/common/FilterOperator.java
index eb43b272b89..2fa510475a4 100755
--- a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/common/FilterOperator.java
+++ b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/common/FilterOperator.java
@@ -18,7 +18,7 @@
  */
 package org.apache.iotdb.spark.tsfile.qp.common;
 
-import org.apache.iotdb.tsfile.utils.StringContainer;
+import org.apache.tsfile.utils.StringContainer;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/optimizer/PhysicalOptimizer.java b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/optimizer/PhysicalOptimizer.java
index a41c7d14960..735d1aa520f 100755
--- a/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/optimizer/PhysicalOptimizer.java
+++ b/iotdb-connector/spark-tsfile/src/main/java/org/apache/iotdb/spark/tsfile/qp/optimizer/PhysicalOptimizer.java
@@ -23,10 +23,11 @@ import org.apache.iotdb.spark.tsfile.qp.common.FilterOperator;
 import org.apache.iotdb.spark.tsfile.qp.common.SQLConstant;
 import org.apache.iotdb.spark.tsfile.qp.common.SingleQuery;
 import org.apache.iotdb.spark.tsfile.qp.common.TSQueryPlan;
-import org.apache.iotdb.tsfile.file.metadata.PlainDeviceID;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader;
-import org.apache.iotdb.tsfile.utils.Pair;
+
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.PlainDeviceID;
+import org.apache.tsfile.read.TsFileSequenceReader;
+import org.apache.tsfile.utils.Pair;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/Converter.scala b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/Converter.scala
index ba5b6c4f516..f3df0b8b508 100644
--- a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/Converter.scala
+++ b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/Converter.scala
@@ -19,9 +19,9 @@
 
 package org.apache.iotdb.spark.tsfile
 
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType
+import org.apache.tsfile.enums.TSDataType
 import java.util
-import org.apache.iotdb.tsfile.read.common.Field
+import org.apache.tsfile.read.common.Field
 import org.apache.spark.sql.sources._
 import org.apache.spark.sql.types._
 
diff --git a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/DefaultSource.scala b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/DefaultSource.scala
index 018435ae3a8..d92e663bf63 100755
--- a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/DefaultSource.scala
+++ b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/DefaultSource.scala
@@ -25,11 +25,11 @@ import org.apache.hadoop.mapreduce.Job
 import org.apache.iotdb.hadoop.fileSystem.HDFSInput
 import org.apache.iotdb.spark.tsfile.DefaultSource.SerializableConfiguration
 import org.apache.iotdb.spark.tsfile.qp.Executor
-import org.apache.iotdb.tsfile.common.constant.QueryConstant
-import org.apache.iotdb.tsfile.file.metadata.PlainDeviceID
-import org.apache.iotdb.tsfile.read.common.Field
-import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet
-import org.apache.iotdb.tsfile.read.{TsFileReader, TsFileSequenceReader}
+import org.apache.tsfile.common.constant.QueryConstant
+import org.apache.tsfile.file.metadata.PlainDeviceID
+import org.apache.tsfile.read.common.Field
+import org.apache.tsfile.read.query.dataset.QueryDataSet
+import org.apache.tsfile.read.{TsFileReader, TsFileSequenceReader}
 import org.apache.spark.TaskContext
 import org.apache.spark.sql.SparkSession
 import org.apache.spark.sql.catalyst.InternalRow
diff --git a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/NarrowConverter.scala b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/NarrowConverter.scala
index 25e2c2fb802..7e9b7f21a95 100644
--- a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/NarrowConverter.scala
+++ b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/NarrowConverter.scala
@@ -24,17 +24,17 @@ import org.apache.hadoop.fs.FileStatus
 import org.apache.iotdb.hadoop.fileSystem.HDFSInput
 import org.apache.iotdb.spark.tsfile.qp.QueryProcessor
 import org.apache.iotdb.spark.tsfile.qp.common.{BasicOperator, FilterOperator, SQLConstant, TSQueryPlan}
-import org.apache.iotdb.tsfile.common.constant.QueryConstant
-import org.apache.iotdb.tsfile.file.metadata.TsFileMetadata
-import org.apache.iotdb.tsfile.file.metadata.enums.{TSDataType, TSEncoding}
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader
-import org.apache.iotdb.tsfile.read.common.Path
-import org.apache.iotdb.tsfile.read.expression.impl.{BinaryExpression, GlobalTimeExpression, SingleSeriesExpression}
-import org.apache.iotdb.tsfile.read.expression.{IExpression, QueryExpression}
-import org.apache.iotdb.tsfile.read.filter.factory.{TimeFilterApi, ValueFilterApi}
-import org.apache.iotdb.tsfile.write.record.TSRecord
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint
-import org.apache.iotdb.tsfile.write.schema.{MeasurementSchema, Schema}
+import org.apache.tsfile.common.constant.QueryConstant
+import org.apache.tsfile.file.metadata.TsFileMetadata
+import org.apache.tsfile.file.metadata.enums.{TSDataType, TSEncoding}
+import org.apache.tsfile.read.TsFileSequenceReader
+import org.apache.tsfile.read.common.Path
+import org.apache.tsfile.read.expression.impl.{BinaryExpression, GlobalTimeExpression, SingleSeriesExpression}
+import org.apache.tsfile.read.expression.{IExpression, QueryExpression}
+import org.apache.tsfile.read.filter.factory.{TimeFilterApi, ValueFilterApi}
+import org.apache.tsfile.write.record.TSRecord
+import org.apache.tsfile.write.record.datapoint.DataPoint
+import org.apache.tsfile.write.schema.{MeasurementSchema, Schema}
 import org.apache.spark.sql.catalyst.InternalRow
 import org.apache.spark.sql.sources._
 import org.apache.spark.sql.types._
diff --git a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/NarrowTsFileOutputWriter.scala b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/NarrowTsFileOutputWriter.scala
index 5346f2de093..ea7b02a60b5 100644
--- a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/NarrowTsFileOutputWriter.scala
+++ b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/NarrowTsFileOutputWriter.scala
@@ -22,7 +22,7 @@ package org.apache.iotdb.spark.tsfile
 import org.apache.hadoop.io.NullWritable
 import org.apache.hadoop.mapreduce.{RecordWriter, TaskAttemptContext}
 import org.apache.iotdb.spark.tsfile.io.TsFileOutputFormat
-import org.apache.iotdb.tsfile.write.record.TSRecord
+import org.apache.tsfile.write.record.TSRecord
 import org.apache.spark.sql.catalyst.InternalRow
 import org.apache.spark.sql.execution.datasources.OutputWriter
 import org.apache.spark.sql.types._
diff --git a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/Transformer.scala b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/Transformer.scala
index 1c1fcb245c0..a9a7c17f3f2 100644
--- a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/Transformer.scala
+++ b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/Transformer.scala
@@ -19,7 +19,7 @@
 
 package org.apache.iotdb.spark.tsfile
 
-import org.apache.iotdb.tsfile.common.constant.QueryConstant
+import org.apache.tsfile.common.constant.QueryConstant
 import org.apache.spark.sql.types._
 import org.apache.spark.sql.{SparkSession, _}
 
diff --git a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/WideConverter.scala b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/WideConverter.scala
index 6a63a3c2518..156f7aeec5b 100755
--- a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/WideConverter.scala
+++ b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/WideConverter.scala
@@ -24,19 +24,19 @@ import java.util
 import org.apache.hadoop.conf.Configuration
 import org.apache.hadoop.fs.FileStatus
 import org.apache.iotdb.hadoop.fileSystem.HDFSInput
-import org.apache.iotdb.tsfile.common.constant.QueryConstant
-import org.apache.iotdb.tsfile.file.metadata.TsFileMetadata
-import org.apache.iotdb.tsfile.file.metadata.enums.{TSDataType, TSEncoding}
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader
-import org.apache.iotdb.tsfile.read.common.Path
-import org.apache.iotdb.tsfile.read.expression.impl.{BinaryExpression, GlobalTimeExpression, SingleSeriesExpression}
-import org.apache.iotdb.tsfile.read.expression.{IExpression, QueryExpression}
-import org.apache.iotdb.tsfile.read.filter.factory.{TimeFilterApi, ValueFilterApi}
-import org.apache.iotdb.tsfile.utils.Binary
-import org.apache.iotdb.tsfile.write.record.TSRecord
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint
-import org.apache.iotdb.tsfile.write.schema.{IMeasurementSchema, MeasurementSchema, Schema}
+import org.apache.tsfile.common.constant.QueryConstant
+import org.apache.tsfile.file.metadata.TsFileMetadata
+import org.apache.tsfile.file.metadata.enums.{TSDataType, TSEncoding}
+import org.apache.tsfile.common.conf.TSFileConfig
+import org.apache.tsfile.read.TsFileSequenceReader
+import org.apache.tsfile.read.common.Path
+import org.apache.tsfile.read.expression.impl.{BinaryExpression, GlobalTimeExpression, SingleSeriesExpression}
+import org.apache.tsfile.read.expression.{IExpression, QueryExpression}
+import org.apache.tsfile.read.filter.factory.{TimeFilterApi, ValueFilterApi}
+import org.apache.tsfile.utils.Binary
+import org.apache.tsfile.write.record.TSRecord
+import org.apache.tsfile.write.record.datapoint.DataPoint
+import org.apache.tsfile.write.schema.{IMeasurementSchema, MeasurementSchema, Schema}
 import org.apache.spark.sql.catalyst.InternalRow
 import org.apache.spark.sql.sources._
 import org.apache.spark.sql.types._
diff --git a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/WideTsFileOutputWriter.scala b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/WideTsFileOutputWriter.scala
index 34f1f8429a5..da21a7e3492 100644
--- a/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/WideTsFileOutputWriter.scala
+++ b/iotdb-connector/spark-tsfile/src/main/scala/org/apache/iotdb/spark/tsfile/WideTsFileOutputWriter.scala
@@ -22,7 +22,7 @@ package org.apache.iotdb.spark.tsfile
 import org.apache.hadoop.io.NullWritable
 import org.apache.hadoop.mapreduce.{RecordWriter, TaskAttemptContext}
 import org.apache.iotdb.spark.tsfile.io.TsFileOutputFormat
-import org.apache.iotdb.tsfile.write.record.TSRecord
+import org.apache.tsfile.write.record.TSRecord
 import org.apache.spark.sql.catalyst.InternalRow
 import org.apache.spark.sql.execution.datasources.OutputWriter
 import org.apache.spark.sql.types._
diff --git a/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tool/TsFileExample.java b/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tool/TsFileExample.java
index dd7088d8952..68fabb9daf2 100644
--- a/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tool/TsFileExample.java
+++ b/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tool/TsFileExample.java
@@ -19,18 +19,18 @@
 package org.apache.iotdb.spark.tool;
 
 import java.io.File;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.BooleanDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.FloatDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.StringDataPoint;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.fileSystem.FSFactoryProducer;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.record.datapoint.BooleanDataPoint;
+import org.apache.tsfile.write.record.datapoint.DataPoint;
+import org.apache.tsfile.write.record.datapoint.FloatDataPoint;
+import org.apache.tsfile.write.record.datapoint.StringDataPoint;
+import org.apache.tsfile.write.schema.MeasurementSchema;
 
 /** Write an example TsFile as shown in README. */
 public class TsFileExample {
diff --git a/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tool/TsFileWriteTool.java b/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tool/TsFileWriteTool.java
index 7ae98c3579f..42fc3a143c3 100644
--- a/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tool/TsFileWriteTool.java
+++ b/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tool/TsFileWriteTool.java
@@ -19,20 +19,20 @@
 package org.apache.iotdb.spark.tool;
 
 import java.io.File;
-import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-import org.apache.iotdb.tsfile.read.common.Path;
-import org.apache.iotdb.tsfile.utils.Binary;
-import org.apache.iotdb.tsfile.write.TsFileWriter;
-import org.apache.iotdb.tsfile.write.record.TSRecord;
-import org.apache.iotdb.tsfile.write.record.datapoint.BooleanDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.DataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.FloatDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.IntDataPoint;
-import org.apache.iotdb.tsfile.write.record.datapoint.StringDataPoint;
-import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
-import org.apache.iotdb.tsfile.write.schema.Schema;
+import org.apache.tsfile.common.conf.TSFileDescriptor;
+import org.apache.tsfile.enums.TSDataType;
+import org.apache.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.tsfile.read.common.Path;
+import org.apache.tsfile.utils.Binary;
+import org.apache.tsfile.write.TsFileWriter;
+import org.apache.tsfile.write.record.TSRecord;
+import org.apache.tsfile.write.record.datapoint.BooleanDataPoint;
+import org.apache.tsfile.write.record.datapoint.DataPoint;
+import org.apache.tsfile.write.record.datapoint.FloatDataPoint;
+import org.apache.tsfile.write.record.datapoint.IntDataPoint;
+import org.apache.tsfile.write.record.datapoint.StringDataPoint;
+import org.apache.tsfile.write.schema.MeasurementSchema;
+import org.apache.tsfile.write.schema.Schema;
 
 /** An example of writing data to TsFile */
 public class TsFileWriteTool {
diff --git a/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tsfile/ConverterTest.scala b/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tsfile/ConverterTest.scala
index 87a7a6da738..7a89c4f0c4c 100644
--- a/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tsfile/ConverterTest.scala
+++ b/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tsfile/ConverterTest.scala
@@ -28,12 +28,12 @@ import org.apache.hadoop.fs.{FileStatus, FileSystem, Path}
 import org.apache.iotdb.hadoop.fileSystem.HDFSInput
 import org.apache.iotdb.spark.constant.TestConstant
 import org.apache.iotdb.spark.tool.TsFileWriteTool
-import org.apache.iotdb.tsfile.common.constant.QueryConstant
-import org.apache.iotdb.tsfile.read.TsFileSequenceReader
-import org.apache.iotdb.tsfile.read.common.Field
-import org.apache.iotdb.tsfile.utils.Binary
-import org.apache.iotdb.tsfile.common.conf.TSFileConfig
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType
+import org.apache.tsfile.common.constant.QueryConstant
+import org.apache.tsfile.read.TsFileSequenceReader
+import org.apache.tsfile.read.common.Field
+import org.apache.tsfile.utils.Binary
+import org.apache.tsfile.common.conf.TSFileConfig
+import org.apache.tsfile.enums.TSDataType
 import org.apache.spark.sql.SparkSession
 import org.apache.spark.sql.catalyst.InternalRow
 import org.apache.spark.sql.catalyst.expressions.GenericInternalRow
diff --git a/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tsfile/TSFileSuit.scala b/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tsfile/TSFileSuit.scala
index a802e97da4d..030392a1727 100644
--- a/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tsfile/TSFileSuit.scala
+++ b/iotdb-connector/spark-tsfile/src/test/scala/org/apache/iotdb/spark/tsfile/TSFileSuit.scala
@@ -24,8 +24,8 @@ import org.apache.hadoop.fs.Path
 import org.apache.iotdb.hadoop.fileSystem.HDFSInput
 import org.apache.iotdb.spark.constant.TestConstant
 import org.apache.iotdb.spark.tool.TsFileWriteTool
-import org.apache.iotdb.tsfile.common.constant.QueryConstant
-import org.apache.iotdb.tsfile.read.{TsFileSequenceReader, common}
+import org.apache.tsfile.common.constant.QueryConstant
+import org.apache.tsfile.read.{TsFileSequenceReader, common}
 import org.apache.spark.sql.SparkSession
 import org.apache.spark.sql.types._
 import org.junit.Assert
diff --git a/iotdb-core/confignode/pom.xml b/iotdb-core/confignode/pom.xml
index b1ed2eb7ff6..1e007335c9e 100644
--- a/iotdb-core/confignode/pom.xml
+++ b/iotdb-core/confignode/pom.xml
@@ -35,9 +35,9 @@
     </properties>
     <dependencies>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
-            <artifactId>common-api</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <groupId>org.apache.tsfile</groupId>
+            <artifactId>common</artifactId>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
@@ -95,9 +95,9 @@
             <version>1.3.2-SNAPSHOT</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.iotdb</groupId>
+            <groupId>org.apache.tsfile</groupId>
             <artifactId>tsfile</artifactId>
-            <version>1.3.2-SNAPSHOT</version>
+            <version>${tsfile.version}</version>
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
diff --git a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/client/async/handlers/heartbeat/DataNodeHeartbeatHandler.java b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/client/async/handlers/heartbeat/DataNodeHeartbeatHandler.java
index 6d8a292ebc8..db0435066ec 100644
--- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/client/async/handlers/heartbeat/DataNodeHeartbeatHandler.java
+++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/client/async/handlers/heartbeat/DataNodeHeartbeatHandler.java
@@ -28,9 +28,9 @@ import org.apache.iotdb.confignode.manager.load.cache.node.NodeHeartbeatSample;
 import org.apache.iotdb.confignode.manager.load.cache.region.RegionHeartbeatSample;
 import org.apache.iotdb.confignode.manager.pipe.coordinator.runtime.PipeRuntimeCoordinator;
 import org.apache.iotdb.mpp.rpc.thrift.TDataNodeHeartbeatResp;
-import org.apache.iotdb.tsfile.utils.Pair;
 
 import org.apache.thrift.async.AsyncMethodCallback;
... 111543 lines suppressed ...